Commits

Anonymous committed ef3b9df

Show the services login name in WHOWAS.

The numeric is the same (330) as used in WHOIS.

This takes at most half a megabyte of memory (large network, 30 char nicks).

Comments (0)

Files changed (3)

 	char username[USERLEN + 1];
 	char hostname[HOSTLEN + 1];
 	char sockhost[HOSTIPLEN + 1];
+	char realname[REALLEN + 1];
+	char suser[NICKLEN + 1];
 	const char *servername;
-	char realname[REALLEN + 1];
 	time_t logoff;
 	struct Client *online;	/* Pointer to new nickname for chasing or NULL */
 	struct Whowas *next;	/* for hash table... */
 						   form_str(RPL_WHOISACTUALLY),
 						   temp->name, temp->sockhost);
 #endif
+			if (!EmptyString(temp->suser))
+				sendto_one_numeric(source_p, RPL_WHOISLOGGEDIN,
+						   "%s %s :was logged in as",
+						   temp->name, temp->suser);
 			sendto_one_numeric(source_p, RPL_WHOISSERVER,
 					   form_str(RPL_WHOISSERVER),
 					   temp->name, temp->servername,
 	strcpy(who->username, client_p->username);
 	strcpy(who->hostname, client_p->host);
 	strcpy(who->realname, client_p->info);
+	strcpy(who->suser, client_p->user->suser);
 	if (!EmptyString(client_p->sockhost) && strcmp(client_p->sockhost, "0") && show_ip(NULL, client_p))
 		strcpy(who->sockhost, client_p->sockhost);
 	else