diff options
author | pdw <> | 2011-10-03 20:21:55 +0000 |
---|---|---|
committer | pdw <> | 2011-10-03 20:21:55 +0000 |
commit | fc511cfea99e21c5359259728b360670abcd8068 (patch) | |
tree | fb277e1270b5a4b7b3f67d55b258d1e1db1beed0 /options.c | |
parent | cd57e7672730bfb08bf087d090601e168e7d69d7 (diff) | |
download | iftop-fc511cfea99e21c5359259728b360670abcd8068.zip |
Patch from Scott Bertilson <ssb@umn.edu> to remove dependence on s6_addr32.
Diffstat (limited to 'options.c')
-rw-r--r-- | options.c | 19 |
1 files changed, 10 insertions, 9 deletions
@@ -163,7 +163,7 @@ void options_set_defaults() { } static void die(char *msg) { - fprintf(stderr, msg); + fprintf(stderr, "%s", msg); exit(1); } @@ -538,18 +538,19 @@ int options_config_get_net_filter6() { } else { int bl, rem; - const uint32_t mm = 0xffffffff; - uint32_t part = mm; + const uint8_t mm = 0xff; + uint8_t part = mm; - bl = n / 32; - rem = n % 32; - part <<= 32 - rem; + bl = n / 8; + rem = n % 8; + part <<= 8 - rem; for (j=0; j < bl; ++j) - options.netfilter6mask.s6_addr32[j] = htonl(mm); + options.netfilter6mask.s6_addr[j] = mm; + if (rem > 0) - options.netfilter6mask.s6_addr32[bl] = htonl(part); + options.netfilter6mask.s6_addr[bl] = part; options.netfilter6 = 1; - } + } } else { if (inet_pton(AF_INET6, mask, &options.netfilter6mask) != 0) |