1
0
This commit is contained in:
Daniel Tartavel 2020-05-08 12:56:09 +02:00
parent ce94df8dbd
commit 0fa9cf9456

9
main.c
View File

@ -42,14 +42,13 @@ void getutmp( int pid, char user[], char host_ip[], char host_ipv6[], time_t * t
sprintf(host_ip, "%s", utmp->ut_host); //got ip of origin sprintf(host_ip, "%s", utmp->ut_host); //got ip of origin
if((utmp->ut_addr_v6[1] && utmp->ut_addr_v6[2] && utmp->ut_addr_v6[3]) == 0) if((utmp->ut_addr_v6[1] && utmp->ut_addr_v6[2] && utmp->ut_addr_v6[3]) == 0)
{ {
ipv4 = (utmp->ut_addr_v6[0] & 0x00000000ff000000) ; ipv4 = (utmp->ut_addr_v6[0] & 0x00000000ff000000) >> 24;
ipv4 >>= 6;
sprintf( str, "%x.", ipv4); sprintf( str, "%x.", ipv4);
strcat(host_ip, str); strcat(host_ip, str);
ipv4 = (utmp->ut_addr_v6[0] & 0x0000000000ff0000) >> 4; ipv4 = (utmp->ut_addr_v6[0] & 0x0000000000ff0000) >> 16;
sprintf( str, "%x.", ipv4); sprintf( str, "%x.", ipv4);
strcat(host_ip, str); strcat(host_ip, str);
ipv4 = (utmp->ut_addr_v6[0] & 0x000000000000ff00) >> 2; ipv4 = (utmp->ut_addr_v6[0] & 0x000000000000ff00) >> 8;
sprintf( str, "%x.", ipv4); sprintf( str, "%x.", ipv4);
strcat(host_ip, str); strcat(host_ip, str);
ipv4 = utmp->ut_addr_v6[0] & 0x00000000000000ff; ipv4 = utmp->ut_addr_v6[0] & 0x00000000000000ff;
@ -61,7 +60,7 @@ void getutmp( int pid, char user[], char host_ip[], char host_ipv6[], time_t * t
for (x=0;x<4;x++) for (x=0;x<4;x++)
{ {
ipv6_1 = (utmp->ut_addr_v6[x] & 0xffffffff00000000) >> 8; ipv6_1 = (utmp->ut_addr_v6[x] & 0xffffffff00000000) >> 32;
sprintf( str, "%x:", ipv6_1); sprintf( str, "%x:", ipv6_1);
strcat(host_ipv6, str); strcat(host_ipv6, str);
ipv6_2 = utmp->ut_addr_v6[x] & 0x00000000ffffffff; ipv6_2 = utmp->ut_addr_v6[x] & 0x00000000ffffffff;