From 599e63ea72995ff36d445cd5bd9849ecdd4590ae Mon Sep 17 00:00:00 2001 From: Pablo Neira Ayuso Date: Wed, 21 May 2008 13:21:49 +0200 Subject: check for missing IPv6 address before hashing --- src/cache.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/cache.c') diff --git a/src/cache.c b/src/cache.c index 4162661..ed76680 100644 --- a/src/cache.c +++ b/src/cache.c @@ -75,6 +75,14 @@ static uint32_t hash(const void *data, struct hashtable *table) ret = __hash4(u->ct, table); break; case AF_INET6: + if (!nfct_attr_is_set(u->ct, ATTR_ORIG_IPV6_SRC) || + !nfct_attr_is_set(u->ct, ATTR_ORIG_IPV6_DST)) { + dlog(LOG_ERR, "missing IPv6 address. " + "You forgot to load " + "nf_conntrack_ipv6?"); + return 0; + } + ret = __hash6(u->ct, table); break; default: -- cgit v1.2.3