Do not leak connection class structures after they are removed from ircd.conf.
[ircu2.10.12-pk.git] / include / struct.h
index b78edd370ffd4114d3f0aeb777155583d81e20b5..b7041669c0669fe655d6fa8e311cb371d6d09a9e 100644 (file)
@@ -67,13 +67,18 @@ struct User {
   struct Client*     server;         /**< client structure of server */
   struct Membership* channel;        /**< chain of channel pointer blocks */
   struct SLink*      invited;        /**< chain of invite pointer blocks */
-  struct SLink*      silence;        /**< chain of silence pointer blocks */
+  struct Ban*        silence;        /**< chain of silence pointer blocks */
   char*              away;           /**< pointer to away message */
   time_t             last;           /**< last time user sent a message */
   unsigned int       refcnt;         /**< Number of times this block is referenced */
   unsigned int       joined;         /**< number of channels joined */
   unsigned int       invites;        /**< Number of channels we've been invited to */
-  char               username[USERLEN + 1];   /**< remote account name */
+  /** Remote account name.  Before registration is complete, this is
+   * either empty or contains the username from the USER command.
+   * After registration, that may be prefixed with ~ or it may be
+   * overwritten with the ident response.
+   */
+  char               username[USERLEN + 1];
   char               host[HOSTLEN + 1];       /**< displayed hostname */
   char               realhost[HOSTLEN + 1];   /**< actual hostname */
   char               account[ACCOUNTLEN + 1]; /**< IRC account name */