/** Typedef for the list of user-channel records for a user
*/
-typedef std::vector<ucrec*> UserChanList;
+typedef std::map<chanrec*, char> UserChanList;
+typedef UserChanList::iterator UCListIter;
/** Holds all information about a user
* This class stores all information about a user connected to the irc server. Everything about a
*/
long recvqmax;
+ /** This is true if the user matched an exception when they connected to the ircd.
+ * It isnt valid after this point, and you should not attempt to do anything with it
+ * after this point, because the eline might be removed at a later time, and/or no
+ * longer be applicable to this user. It is only used to save doing the eline lookup
+ * twice (instead we do it once and set this value).
+ */
+ bool exempt;
+
/** Default constructor
* @throw Nothing at present
*/
/** Sets of time and users in whowas list
*/
- typedef std::map<time_t, irc::string> whowas_users_fifo;
+ typedef std::map<time_t,irc::string> whowas_users_fifo;
/** Called every hour by the core to remove expired entries
*/
/* Configuration callbacks */
class ServerConfig;
-bool InitTypes(ServerConfig* conf, const char* tag);
-bool InitClasses(ServerConfig* conf, const char* tag);
-bool DoType(ServerConfig* conf, const char* tag, char** entries, void** values, int* types);
-bool DoClass(ServerConfig* conf, const char* tag, char** entries, void** values, int* types);
-bool DoneClassesAndTypes(ServerConfig* conf, const char* tag);
#endif