quick draft fix of ip_cloaking to make module work with ipv6 ips, cleanup later
This commit is contained in:
parent
8acef9de29
commit
3f46cd0007
|
@ -100,10 +100,17 @@ do_host_cloak_ip(const char *inbuf, char *outbuf)
|
||||||
char *tptr;
|
char *tptr;
|
||||||
unsigned int accum = get_string_weighted_entropy(inbuf);
|
unsigned int accum = get_string_weighted_entropy(inbuf);
|
||||||
char buf[HOSTLEN];
|
char buf[HOSTLEN];
|
||||||
|
int ipv6 = 0;
|
||||||
|
|
||||||
strncpy(buf, inbuf, HOSTLEN);
|
strncpy(buf, inbuf, HOSTLEN);
|
||||||
tptr = strrchr(buf, '.');
|
tptr = strrchr(buf, '.');
|
||||||
|
|
||||||
|
if (tptr == NULL)
|
||||||
|
{
|
||||||
|
tptr = strrchr(buf, ':');
|
||||||
|
ipv6 = 1;
|
||||||
|
}
|
||||||
|
|
||||||
if (tptr == NULL)
|
if (tptr == NULL)
|
||||||
{
|
{
|
||||||
strncpy(outbuf, inbuf, HOSTLEN);
|
strncpy(outbuf, inbuf, HOSTLEN);
|
||||||
|
@ -112,7 +119,14 @@ do_host_cloak_ip(const char *inbuf, char *outbuf)
|
||||||
|
|
||||||
*tptr++ = '\0';
|
*tptr++ = '\0';
|
||||||
|
|
||||||
snprintf(outbuf, HOSTLEN, "%s.%x", buf, accum);
|
if(ipv6)
|
||||||
|
{
|
||||||
|
snprintf(outbuf, HOSTLEN, "%s:%x", buf, accum);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
snprintf(outbuf, HOSTLEN, "%s.%x", buf, accum);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in New Issue