]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/client.h
Improved client announcement
[ngircd-alex.git] / src / ngircd / client.h
index 16b2a61ab8564808ad6c58066898602e30431cab..68d411c04f0a1625b9cb714e7d5c6cba5b74dae7 100644 (file)
@@ -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[CLIENT_HOST_LEN];  /* 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 */
@@ -71,7 +72,7 @@ typedef POINTER CLIENT;
 typedef struct _WHOWAS
 {
        time_t time;                    /* time stamp of entry or 0 if unused */
-       char id[CLIENT_NICK_LEN];       /* client nick name */
+       char id[CLIENT_NICK_LEN];       /* client nickname */
        char host[CLIENT_HOST_LEN];     /* hostname of the client */
        char user[CLIENT_USER_LEN];     /* user name ("login") */
        char info[CLIENT_INFO_LEN];     /* long user name */
@@ -92,7 +93,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 +111,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 ));
@@ -166,6 +171,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));