From: Victor Julien Date: Mon, 16 Jun 2014 12:21:11 +0000 (+0200) Subject: defrag: fix timeout setting when config is missing X-Git-Tag: suricata-2.0.2~2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=27eb0f450ab6218a7c7061fa772426483cb24ba6;p=thirdparty%2Fsuricata.git defrag: fix timeout setting when config is missing When the config is missing, DefragPolicyGetHostTimeout will default to returning -1. This will effectively set no timeout at all, leading to defrag trackers being freed too early. --- diff --git a/src/defrag-config.c b/src/defrag-config.c index 8fc5bdf7a5..5bc4be36b6 100644 --- a/src/defrag-config.c +++ b/src/defrag-config.c @@ -96,7 +96,8 @@ int DefragPolicyGetHostTimeout(Packet *p) timeout = DefragPolicyGetIPv4HostTimeout((uint8_t *)GET_IPV4_DST_ADDR_PTR(p)); else if (PKT_IS_IPV6(p)) timeout = DefragPolicyGetIPv6HostTimeout((uint8_t *)GET_IPV6_DST_ADDR(p)); - else + + if (timeout <= 0) timeout = default_timeout; return timeout;