#include <users.h>
Inheritance diagram for userrec:
Public Member Functions | |
userrec () | |
virtual | ~userrec () |
virtual char * | GetFullHost () |
Returns the full displayed host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. | |
virtual char * | GetFullRealHost () |
Returns the full real host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. | |
virtual bool | IsInvited (char *channel) |
Returns true if a user is invited to a channel. | |
virtual void | InviteTo (char *channel) |
Adds a channel to a users invite list (invites them to a channel). | |
virtual void | RemoveInvite (char *channel) |
Removes a channel from a users invite list. | |
Public Attributes | |
char | nick [NICKMAX] |
The users nickname. | |
char | ident [64] |
The users ident reply. | |
char | dhost [256] |
The host displayed to non-opers (used for cloaking etc). | |
char | fullname [128] |
The users full name. | |
char | modes [MAXBUF] |
The user's mode string. | |
ucrec | chans [MAXCHANS] |
char | server [256] |
The server the user is connected to. | |
char | awaymsg [512] |
The user's away message. | |
char | result [256] |
Stores the result of the last GetFullHost or GetRealHost call. | |
unsigned long | timeout |
Private Attributes | |
InvitedList | invites |
A list of channels the user has a pending invite to. |
Everything about a connection is stored here primarily, from the user's socket ID (file descriptor) through to the user's nickname and hostname. Use the Find method of the server class to locate a specific user by nickname.
Definition at line 66 of file users.h.
|
Definition at line 11 of file users.cpp. References connection::bytes_in, connection::bytes_out, ucrec::channel, chans, connection::cmds_in, connection::cmds_out, connection::fd, connection::haspassed, connection::idle_lastmsg, invites, connection::ip, connection::lastping, connection::nping, connection::port, connection::registered, connection::signon, and timeout.
00012 { 00013 // the PROPER way to do it, AVOID bzero at *ALL* costs 00014 strcpy(nick,""); 00015 ip = 0; 00016 timeout = 0; 00017 strcpy(ident,""); 00018 strcpy(host,""); 00019 strcpy(dhost,""); 00020 strcpy(fullname,""); 00021 strcpy(modes,""); 00022 strcpy(inbuf,""); 00023 strcpy(server,""); 00024 strcpy(awaymsg,""); 00025 fd = lastping = signon = idle_lastmsg = nping = registered = 0; 00026 port = bytes_in = bytes_out = cmds_in = cmds_out = 0; 00027 haspassed = false; 00028 strcpy(result,""); 00029 for (int i = 0; i < MAXCHANS; i++) 00030 { 00031 chans[i].channel = NULL; 00032 } 00033 invites.clear(); 00034 } |
|
Definition at line 120 of file users.h.
00120 { } |
|
Returns the full displayed host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form.
Definition at line 37 of file users.cpp. References result.
00038 { 00039 sprintf(result,"%s!%s@%s",nick,ident,dhost); 00040 return result; 00041 } |
|
Returns the full real host of the user This member function returns the hostname of the user as seen by other users on the server, in nick!identhost form. If any form of hostname cloaking is in operation, e.g. through a module, then this method will ignore it and return the true hostname. Definition at line 44 of file users.cpp. References result.
00045 { 00046 sprintf(result,"%s!%s@%s",nick,ident,host); 00047 return result; 00048 } |
|
Adds a channel to a users invite list (invites them to a channel).
Definition at line 64 of file users.cpp. References Invited::channel, and invites.
|
|
Returns true if a user is invited to a channel.
Definition at line 50 of file users.cpp. References invites.
|
|
Removes a channel from a users invite list. This member function is called on successfully joining an invite only channel to which the user has previously been invited, to clear the invitation. Definition at line 71 of file users.cpp. References invites.
00072 { 00073 log(DEBUG,"Removing invites"); 00074 if (invites.size()) 00075 { 00076 for (InvitedList::iterator i = invites.begin(); i != invites.end(); i++) 00077 { 00078 if (i->channel) { 00079 if (!strcasecmp(i->channel,channel)) 00080 { 00081 invites.erase(i); 00082 return; 00083 } 00084 } 00085 } 00086 } 00087 } |
|
The user's away message. If this string is empty, the user is not marked as away. |
|
Definition at line 100 of file users.h. Referenced by userrec(). |
|
The host displayed to non-opers (used for cloaking etc). This usually matches the value of userrec::host. |
|
The users full name.
|
|
The users ident reply.
|
|
A list of channels the user has a pending invite to.
Definition at line 72 of file users.h. Referenced by InviteTo(), IsInvited(), RemoveInvite(), and userrec(). |
|
The user's mode string. This may contain any of the following RFC characters: o, w, s, i Your module may define other mode characters as it sees fit. |
|
The users nickname. An invalid nickname indicates an unregistered connection prior to the NICK command. |
|
Stores the result of the last GetFullHost or GetRealHost call. You may use this to increase the speed of use of this class. Definition at line 114 of file users.h. Referenced by GetFullHost(), and GetFullRealHost(). |
|
The server the user is connected to.
|
|
Definition at line 116 of file users.h. Referenced by userrec(). |