update LOC hostmask in the authlog when the "real" user connects and show current...
authorpk910 <philipp@zoelle1.de>
Tue, 10 Jan 2012 15:56:54 +0000 (16:56 +0100)
committerpk910 <philipp@zoelle1.de>
Tue, 10 Jan 2012 15:58:09 +0000 (16:58 +0100)
src/nickserv.c

index 768148f4a755f6260de4be15a67535cdafd6cade..bc507adf659b2be8c7e871ce4c1dbce8e10f2a0c 100644 (file)
@@ -2052,8 +2052,12 @@ static MODCMD_FUNC(cmd_authlog)
         tbl.contents[i][1] = ptr;
         if(authlog->logout_time)
             str = intervalString(intervalBuf, now - authlog->logout_time, hi);
-        else
-            str = (authlog->user ? "Never" : "Unknown");
+        else if(!authlog->user)
+            str = "Unknown";
+        else {
+            sprintf(intervalBuf, "Never (%s)", authlog->user->nick);
+            str = intervalBuf;
+        }
         ptr = malloc(strlen(str)+1);
         strcpy(ptr, str);
         tbl.contents[i][2] = ptr;
@@ -4684,6 +4688,8 @@ check_user_nick(struct userNode *user) {
             next = pending->next;
             if(user->handle_info == pending->handle_info) {
                 pending->authlog->user = user;
+                free((char*) pending->authlog->hostmask);
+                pending->authlog->hostmask = generate_hostmask(user, GENMASK_USENICK|GENMASK_STRICT_IDENT|GENMASK_NO_HIDING|GENMASK_STRICT_HOST);
                 if(prev)
                     prev->next = next;
                 else