Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

users.h

Go to the documentation of this file.
00001 /*
00002 
00003 $Log$
00003 Revision 1.1  2003/01/23 19:45:58  brain
00003 Initial revision
00003 
00003 Revision 1.6  2003/01/22 20:59:12  brain
00003 Added FileReader class documentation
00003 
00004 Revision 1.9  2003/01/22 00:44:26  brain
00005 Added documentation comments
00006 
00007 Revision 1.8  2003/01/21 21:11:17  brain
00008 Added documentation
00009 
00010 Revision 1.7  2003/01/17 13:21:38  brain
00011 Added CONNECT ALLOW and CONNECT DENY config tags
00012 Added PASS command
00013 
00014 Revision 1.6  2003/01/17 10:37:55  brain
00015 Added /INVITE command and relevent structures
00016 
00017 Revision 1.5  2003/01/16 20:11:56  brain
00018 fixed some ugly pointer bugs (thanks dblack and a|KK|y!)
00019 
00020 Revision 1.4  2003/01/15 22:47:44  brain
00021 Changed user and channel structs to classes (finally)
00022 
00023 Revision 1.3  2003/01/14 21:14:30  brain
00024 added /ISON command (for mIRC etc basic notify)
00025 
00026 
00027 */
00028 
00029 #include "inspircd_config.h" 
00030 #include "channels.h"
00031 
00032 #include <string>
00033  
00034 #ifndef __USERS_H__ 
00035 #define __USERS_H__ 
00036  
00037 #define STATUS_OP       4
00038 #define STATUS_HOP      2
00039 #define STATUS_VOICE    1
00040 #define STATUS_NORMAL   0
00041 
00042 #define CC_ALLOW        0
00043 #define CC_DENY         1
00044 
00047 class Invited
00048 {
00049  public:
00050         char channel[CHANMAX];
00051 };
00052 
00053 
00056 class ConnectClass
00057 {
00058  public:
00059         int type;
00060         char host[MAXBUF];
00061         char pass[MAXBUF];
00062 };
00063 
00066 typedef vector<Invited> InvitedList;
00067 
00068 
00069 
00072 typedef vector<ConnectClass> ClassVector;
00073 
00080 class userrec
00081 {
00082  private:
00083 
00086         InvitedList invites;
00087  public:
00088         
00093         char nick[NICKMAX];
00094         
00097         unsigned long ip;
00098 
00101         char ident[64];
00102 
00105         char host[256];
00106         
00110         char dhost[256];
00111         
00114         char fullname[128];
00115         
00120         int fd;
00121         
00126         char modes[32];
00127         
00131         char inbuf[MAXBUF];
00132         
00138         time_t lastping;
00139         
00142         time_t signon;
00143         
00147         time_t idle_lastmsg;
00148         
00153         time_t nping;
00154         
00159         int registered;
00160         
00165         ucrec chans[MAXCHANS];
00166         
00169         char server[256];
00170         
00174         char awaymsg[512];
00175         
00178         int port;
00179         
00183         long bytes_in;
00184         
00188         long bytes_out;
00189         
00193         long cmds_in;
00194         
00198         long cmds_out;
00199         
00203         char result[256];
00204         
00209         bool haspassed;
00210 
00211         userrec();
00212         
00213         virtual ~userrec() {  }
00214         
00219         virtual char* GetFullHost();
00220         
00226         virtual char* GetFullRealHost();
00227         
00230         virtual bool IsInvited(char* channel);
00231         
00234         virtual void InviteTo(char* channel);
00235         
00240         virtual void RemoveInvite(char* channel);
00241         
00242 };
00243 
00244 
00245 #endif

Generated on Wed Jan 22 20:56:47 2003 for InspIRCd by doxygen1.3-rc2