]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
Compensate for ~ in ident length
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Sun, 29 May 2005 05:53:30 +0000 (05:53 +0000)
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Sun, 29 May 2005 05:53:30 +0000 (05:53 +0000)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@1551 e03df62e-2008-0410-955e-edbf42e46eb7

include/users.h
src/commands.cpp

index a093e633efd9634aa65d16f836efbc9f54e3ed35..69ea434fb5adb646524f709dd0010a01bde123e6 100644 (file)
@@ -121,8 +121,9 @@ class userrec : public connection
        char nick[NICKMAX];
        
        /** The users ident reply.
        char nick[NICKMAX];
        
        /** The users ident reply.
+        * Two characters are added to the user-defined limit to compensate for the tilde etc.
         */
         */
-       char ident[IDENTMAX+1];
+       char ident[IDENTMAX+2];
 
        /** The host displayed to non-opers (used for cloaking etc).
         * This usually matches the value of userrec::host.
 
        /** The host displayed to non-opers (used for cloaking etc).
         * This usually matches the value of userrec::host.
index 692c5fc40b128614ea13a84604261b40ae73d223..26cfa0da690303b3633210a38b01147b5404abee 100644 (file)
@@ -1163,7 +1163,7 @@ void handle_user(char **parameters, int pcnt, userrec *user)
                }
                else {
                        strcpy(user->ident,"~"); /* we arent checking ident... but these days why bother anyway? */
                }
                else {
                        strcpy(user->ident,"~"); /* we arent checking ident... but these days why bother anyway? */
-                       strlcat(user->ident,parameters[0],IDENTMAX);
+                       strlcat(user->ident,parameters[0],IDENTMAX+1);
                        strlcpy(user->fullname,parameters[3],MAXGECOS);
                        user->registered = (user->registered | 1);
                }
                        strlcpy(user->fullname,parameters[3],MAXGECOS);
                        user->registered = (user->registered | 1);
                }
@@ -2407,7 +2407,7 @@ void handle_N(char token,char* params,serverrec* source,serverrec* reply, char*
        strlcpy(clientlist[nick]->host, host,160);
        strlcpy(clientlist[nick]->dhost, dhost,160);
        clientlist[nick]->server = (char*)FindServerNamePtr(server);
        strlcpy(clientlist[nick]->host, host,160);
        strlcpy(clientlist[nick]->dhost, dhost,160);
        clientlist[nick]->server = (char*)FindServerNamePtr(server);
-       strlcpy(clientlist[nick]->ident, ident,IDENTMAX); // +1 char to compensate for tilde
+       strlcpy(clientlist[nick]->ident, ident,IDENTMAX+1); // +1 char to compensate for tilde
        strlcpy(clientlist[nick]->fullname, gecos,MAXGECOS);
        strlcpy(clientlist[nick]->ip,ipaddr,16);
        clientlist[nick]->signon = TS;
        strlcpy(clientlist[nick]->fullname, gecos,MAXGECOS);
        strlcpy(clientlist[nick]->ip,ipaddr,16);
        clientlist[nick]->signon = TS;