X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Fclient.h;h=702f114cf0f484d773f6d237d81a2152cbbb03f5;hp=7a383af8696b7b685dc408b63cce5c02d99f7f6f;hb=3af0ece2bcf550cccd7b647c111ce503c2faa459;hpb=48326e061aacd954e24f76c53ded10448cbc28eb diff --git a/src/ngircd/client.h b/src/ngircd/client.h index 7a383af8..702f114c 100644 --- a/src/ngircd/client.h +++ b/src/ngircd/client.h @@ -48,6 +48,7 @@ typedef struct _CLIENT struct _CLIENT *introducer; /* ID of the servers which the client is connected to */ struct _CLIENT *topserver; /* toplevel servers (only valid if client is a server) */ char host[CLIENT_HOST_LEN]; /* hostname of the client */ + char *cloaked; /* cloaked hostname of the client */ char user[CLIENT_USER_LEN]; /* user name ("login") */ #if defined(PAM) && defined(IDENTAUTH) char orig_user[CLIENT_USER_LEN];/* user name supplied by USER command */ @@ -58,6 +59,7 @@ typedef struct _CLIENT bool oper_by_me; /* client is local IRC operator on this server? */ char away[CLIENT_AWAY_LEN]; /* AWAY text (valid if mode 'a' is set) */ char flags[CLIENT_FLAGS_LEN]; /* flags of the client */ + char *account_name; /* login account (for services) */ int capabilities; /* enabled IRC capabilities */ } CLIENT; @@ -92,7 +94,10 @@ GLOBAL CLIENT *Client_ThisServer PARAMS(( void )); GLOBAL CLIENT *Client_GetFromToken PARAMS(( CLIENT *Client, int Token )); +GLOBAL bool Client_Announce PARAMS(( CLIENT *Client, CLIENT *Prefix, CLIENT *User )); + GLOBAL CLIENT *Client_Search PARAMS(( const char *ID )); +GLOBAL CLIENT *Client_SearchServer PARAMS(( const char *ID )); GLOBAL CLIENT *Client_First PARAMS(( void )); GLOBAL CLIENT *Client_Next PARAMS(( CLIENT *c )); @@ -107,7 +112,8 @@ GLOBAL char *Client_User PARAMS(( CLIENT *Client )); GLOBAL char *Client_OrigUser PARAMS(( CLIENT *Client )); #endif GLOBAL char *Client_Hostname PARAMS(( CLIENT *Client )); -GLOBAL char *Client_HostnameCloaked PARAMS(( CLIENT *Client )); +GLOBAL char *Client_HostnameCloaked PARAMS((CLIENT *Client)); +GLOBAL char *Client_HostnameDisplayed PARAMS(( CLIENT *Client )); GLOBAL char *Client_Modes PARAMS(( CLIENT *Client )); GLOBAL char *Client_Flags PARAMS(( CLIENT *Client )); GLOBAL CLIENT *Client_Introducer PARAMS(( CLIENT *Client )); @@ -118,9 +124,11 @@ GLOBAL int Client_MyToken PARAMS(( CLIENT *Client )); GLOBAL CLIENT *Client_TopServer PARAMS(( CLIENT *Client )); GLOBAL CLIENT *Client_NextHop PARAMS(( CLIENT *Client )); GLOBAL char *Client_Away PARAMS(( CLIENT *Client )); +GLOBAL char *Client_AccountName PARAMS((CLIENT *Client)); GLOBAL time_t Client_StartTime PARAMS(( CLIENT *Client )); GLOBAL bool Client_HasMode PARAMS(( CLIENT *Client, char Mode )); +GLOBAL bool Client_HasFlag PARAMS(( CLIENT *Client, char Flag )); GLOBAL void Client_SetHostname PARAMS(( CLIENT *Client, const char *Hostname )); GLOBAL void Client_SetID PARAMS(( CLIENT *Client, const char *Nick )); @@ -135,6 +143,7 @@ GLOBAL void Client_SetModes PARAMS(( CLIENT *Client, const char *Modes )); GLOBAL void Client_SetFlags PARAMS(( CLIENT *Client, const char *Flags )); GLOBAL void Client_SetIntroducer PARAMS(( CLIENT *Client, CLIENT *Introducer )); GLOBAL void Client_SetAway PARAMS(( CLIENT *Client, const char *Txt )); +GLOBAL void Client_SetAccountName PARAMS((CLIENT *Client, const char *AccountName)); GLOBAL bool Client_ModeAdd PARAMS(( CLIENT *Client, char Mode )); GLOBAL bool Client_ModeDel PARAMS(( CLIENT *Client, char Mode )); @@ -166,6 +175,10 @@ GLOBAL void Client_Reject PARAMS((CLIENT *Client, const char *Reason, bool InformClient)); GLOBAL void Client_Introduce PARAMS((CLIENT *From, CLIENT *Client, int Type)); +GLOBAL void Client_UpdateCloakedHostname PARAMS((CLIENT *Client, + CLIENT *Originator, + const char *hostname)); + #ifdef DEBUG GLOBAL void Client_DebugDump PARAMS((void));