canacar@ came up with this just before release, so it didn't go in
at that time. So here it is again. Fixes filtering based on subnets,
and it works for me (tm). i.e.

tcpdump -pflog0 -n -vv net 192.197.205.0/24

will now show packets for 192.197.205.0/24, when before it did not.

ok?

.... Ken

Index: gencode.c
===================================================================
RCS file: /cvs/src/lib/libpcap/gencode.c,v
retrieving revision 1.34
diff -u -p -r1.34 gencode.c
--- gencode.c   27 Jul 2010 04:13:34 -0000      1.34
+++ gencode.c   17 Aug 2010 01:33:26 -0000
@@ -526,7 +526,7 @@ gen_mcmp(offset, size, v, mask)
        if (mask != 0xffffffff) {
                s = new_stmt(BPF_ALU|BPF_AND|BPF_K);
                s->s.k = mask;
-               b->stmts->next = s;
+               sappend(b->stmts, s);
        }
        return b;
 }
@@ -544,7 +544,7 @@ gen_mcmp_nl(offset, size, v, mask)
        if (mask != 0xffffffff) {
                s = new_stmt(BPF_ALU|BPF_AND|BPF_K);
                s->s.k = mask;
-               b->stmts->next = s;
+               sappend(b->stmts, s);
        }
        return b;
 }

Reply via email to