whowas: Use the normal rules for IP visibility.

Add the flags (auth{} spoof, dynamic spoof) to struct Whowas and add a
show_ip_whowas().

Normal users now see IPs of unspoofed users, and remote opers can see IPs
behind dynamic spoofs. Also, general::hide_spoof_ips is now applied when
the IP is shown, not when the client exits.
This commit is contained in:
Jilles Tjoelker 2013-09-14 12:26:32 +02:00
parent 2635cc8089
commit 364e59f82a
6 changed files with 24 additions and 7 deletions

View file

@ -55,6 +55,7 @@ struct Whowas
char sockhost[HOSTIPLEN + 1];
char realname[REALLEN + 1];
char suser[NICKLEN + 1];
unsigned char flags;
const char *servername;
time_t logoff;
struct Client *online; /* Pointer to new nickname for chasing or NULL */
@ -64,6 +65,10 @@ struct Whowas
struct Whowas *cprev; /* for client struct linked list */
};
/* Flags */
#define WHOWAS_IP_SPOOFING 0x1
#define WHOWAS_DYNSPOOF 0x2
/*
** initwhowas
*/