X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=src%2Futils_dns.c;h=2899bd4140223229a1ae45533429d186572ddd35;hb=6ad8d0dd5414c7634dd71354f9fdcc2b005a3d99;hp=2348be24db05d55c5b1d6b6ad000ce8108594701;hpb=b3bfb951c73ea3d232e0e97a42479a5e3310125d;p=collectd.git diff --git a/src/utils_dns.c b/src/utils_dns.c index 2348be24..2899bd41 100644 --- a/src/utils_dns.c +++ b/src/utils_dns.c @@ -118,7 +118,7 @@ #if HAVE_STRUCT_UDPHDR_UH_DPORT && HAVE_STRUCT_UDPHDR_UH_SPORT # define UDP_DEST uh_dport -# define UDP_SRC uh_dport +# define UDP_SRC uh_sport #elif HAVE_STRUCT_UDPHDR_DEST && HAVE_STRUCT_UDPHDR_SOURCE # define UDP_DEST dest # define UDP_SRC source @@ -431,8 +431,7 @@ handle_ipv6 (struct ip6_hdr *ipv6, int len) unsigned int offset; int nexthdr; - struct in6_addr s_addr; - struct in6_addr d_addr; + struct in6_addr c_src_addr; uint16_t payload_len; if (0 > len) @@ -440,11 +439,10 @@ handle_ipv6 (struct ip6_hdr *ipv6, int len) offset = sizeof (struct ip6_hdr); nexthdr = ipv6->ip6_nxt; - s_addr = ipv6->ip6_src; - d_addr = ipv6->ip6_dst; + c_src_addr = ipv6->ip6_src; payload_len = ntohs (ipv6->ip6_plen); - if (ignore_list_match (&s_addr)) + if (ignore_list_match (&c_src_addr)) return (0); /* Parse extension headers. This only handles the standard headers, as @@ -453,7 +451,6 @@ handle_ipv6 (struct ip6_hdr *ipv6, int len) || (IPPROTO_HOPOPTS == nexthdr) /* Hop-by-Hop options. */ || (IPPROTO_FRAGMENT == nexthdr) /* fragmentation header. */ || (IPPROTO_DSTOPTS == nexthdr) /* destination options. */ - || (IPPROTO_DSTOPTS == nexthdr) /* destination options. */ || (IPPROTO_AH == nexthdr) /* destination options. */ || (IPPROTO_ESP == nexthdr)) /* encapsulating security payload. */ { @@ -501,15 +498,15 @@ handle_ip(const struct ip *ip, int len) { char buf[PCAP_SNAPLEN]; int offset = ip->ip_hl << 2; - struct in6_addr s_addr; - struct in6_addr d_addr; + struct in6_addr c_src_addr; + struct in6_addr c_dst_addr; if (ip->ip_v == 6) return (handle_ipv6 ((struct ip6_hdr *) ip, len)); - in6_addr_from_buffer (&s_addr, &ip->ip_src.s_addr, sizeof (ip->ip_src.s_addr), AF_INET); - in6_addr_from_buffer (&d_addr, &ip->ip_dst.s_addr, sizeof (ip->ip_dst.s_addr), AF_INET); - if (ignore_list_match (&s_addr)) + in6_addr_from_buffer (&c_src_addr, &ip->ip_src.s_addr, sizeof (ip->ip_src.s_addr), AF_INET); + in6_addr_from_buffer (&c_dst_addr, &ip->ip_dst.s_addr, sizeof (ip->ip_dst.s_addr), AF_INET); + if (ignore_list_match (&c_src_addr)) return (0); if (IPPROTO_UDP != ip->ip_p) return 0;