From: Eric Leblond Date: Mon, 18 Sep 2017 18:30:20 +0000 (+0200) Subject: af-packet: free bpf program X-Git-Tag: suricata-4.0.1~27 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8fa6e065bc7292d3cb93298f72f9af7264a273bc;p=thirdparty%2Fsuricata.git af-packet: free bpf program This fixes a small memory leak when Suricata is running with a BPF filter. --- diff --git a/src/source-af-packet.c b/src/source-af-packet.c index 7a9d2abd07..3c1d000eb7 100644 --- a/src/source-af-packet.c +++ b/src/source-af-packet.c @@ -2100,6 +2100,7 @@ TmEcode AFPSetBPFFilter(AFPThreadVars *ptv) if (filter.bf_insns == NULL) { SCLogError(SC_ERR_AFP_CREATE, "Filter badly setup."); + pcap_freecode(&filter); return TM_ECODE_FAILED; } @@ -2108,6 +2109,7 @@ TmEcode AFPSetBPFFilter(AFPThreadVars *ptv) rc = setsockopt(ptv->socket, SOL_SOCKET, SO_ATTACH_FILTER, &fcode, sizeof(fcode)); + pcap_freecode(&filter); if(rc == -1) { SCLogError(SC_ERR_AFP_CREATE, "Failed to attach filter: %s", strerror(errno)); return TM_ECODE_FAILED;