forked from osmocom/wireshark
If "pcap_compile()" fails to compile an empty filter string (because,
for example, the libpcap code generator doesn't support the link-layer type for the capture), "dfilter_compile()" will succeed but return a null rfcode pointer. In that case, instead of telling people that it looks like a valid display filter (which it does, but it also looks like a complete list of all the Basque words likely to be known by Hammurabi :-)), and then crashing when we try to "free" that non-existent dfilter code, we just report it as a "sorry, couldn't compile that capture filter. svn path=/trunk/; revision=9912
This commit is contained in:
parent
70fa1b55ff
commit
d90d26ece2
|
@ -1,7 +1,7 @@
|
|||
/* capture.c
|
||||
* Routines for packet capture windows
|
||||
*
|
||||
* $Id: capture.c,v 1.228 2004/01/25 21:55:09 guy Exp $
|
||||
* $Id: capture.c,v 1.229 2004/01/31 01:32:51 guy Exp $
|
||||
*
|
||||
* Ethereal - Network traffic analyzer
|
||||
* By Gerald Combs <gerald@ethereal.com>
|
||||
|
@ -1532,7 +1532,7 @@ capture(gboolean *stats_known, struct pcap_stat *stats)
|
|||
}
|
||||
if (pcap_compile(pch, &fcode, cfile.cfilter, 1, netmask) < 0) {
|
||||
dfilter_t *rfcode = NULL;
|
||||
if (dfilter_compile(cfile.cfilter, &rfcode)) {
|
||||
if (dfilter_compile(cfile.cfilter, &rfcode) && rfcode != NULL) {
|
||||
snprintf(errmsg, sizeof errmsg,
|
||||
"Unable to parse capture filter string (%s).\n"
|
||||
" Interestingly enough, this looks like a valid display filter\n"
|
||||
|
|
Loading…
Reference in New Issue