diff --git a/include/whowas.h b/include/whowas.h index 8ccb2c5..0c809a9 100644 --- a/include/whowas.h +++ b/include/whowas.h @@ -52,8 +52,9 @@ struct Whowas char username[USERLEN + 1]; char hostname[HOSTLEN + 1]; char sockhost[HOSTIPLEN + 1]; - const char *servername; char realname[REALLEN + 1]; + char suser[NICKLEN + 1]; + const char *servername; time_t logoff; struct Client *online; /* Pointer to new nickname for chasing or NULL */ struct Whowas *next; /* for hash table... */ diff --git a/modules/m_whowas.c b/modules/m_whowas.c index 37861a5..272c12b 100644 --- a/modules/m_whowas.c +++ b/modules/m_whowas.c @@ -114,6 +114,10 @@ m_whowas(struct Client *client_p, struct Client *source_p, int parc, const char 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, diff --git a/src/whowas.c b/src/whowas.c index 03c476a..8fc37d0 100644 --- a/src/whowas.c +++ b/src/whowas.c @@ -80,6 +80,7 @@ void add_history(struct Client *client_p, int online) 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