]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/client.c
New configuration opion "MorePrivacy" to "censor" some user information
[ngircd-alex.git] / src / ngircd / client.c
index 11decc8689584e116b6505a3369f20cbcd59f073..d038fd2481cde6bc01aca29d1669c93fdf01c1ff 100644 (file)
@@ -319,8 +319,8 @@ Client_SetHostname( CLIENT *Client, const char *Hostname )
        assert( Client != NULL );
        assert( Hostname != NULL );
 
-       if (strlen(Conf_ClientHost)) {
-               strlcpy( Client->host, Conf_ClientHost, sizeof( Client->host ));
+       if (strlen(Conf_CloakHost)) {
+               strlcpy( Client->host, Conf_CloakHost, sizeof( Client->host ));
        } else {
                strlcpy( Client->host, Hostname, sizeof( Client->host ));
        }
@@ -335,6 +335,11 @@ Client_SetID( CLIENT *Client, const char *ID )
        
        strlcpy( Client->id, ID, sizeof( Client->id ));
 
+       if (Conf_CloakUserToNick) {
+               strlcpy( Client->user, ID, sizeof( Client->user ));
+               strlcpy( Client->info, ID, sizeof( Client->info ));
+       }
+
        /* Hash */
        Client->hash = Hash( Client->id );
 } /* Client_SetID */
@@ -348,7 +353,9 @@ Client_SetUser( CLIENT *Client, const char *User, bool Idented )
        assert( Client != NULL );
        assert( User != NULL );
 
-       if (Idented) {
+       if (Conf_CloakUserToNick) {
+               strlcpy(Client->user, Client->id, sizeof(Client->user));
+       } else if (Idented) {
                strlcpy(Client->user, User, sizeof(Client->user));
        } else {
                Client->user[0] = '~';
@@ -385,7 +392,10 @@ Client_SetInfo( CLIENT *Client, const char *Info )
        assert( Client != NULL );
        assert( Info != NULL );
 
-       strlcpy(Client->info, Info, sizeof(Client->info));
+       if (Conf_CloakUserToNick)
+               strlcpy(Client->info, Client->id, sizeof(Client->info));
+       else
+               strlcpy(Client->info, Info, sizeof(Client->info));
 } /* Client_SetInfo */