]> git.ipfire.org Git - thirdparty/iptables.git/commitdiff
Fix for -j match coredumping reported by Erik Tews <erik.tews@gmx.net>.
authorErik Tews <erik.tews@gmx.net>
Sat, 22 Apr 2000 23:16:27 +0000 (23:16 +0000)
committerMarc Boucher <marc@mbsi.ca>
Sat, 22 Apr 2000 23:16:27 +0000 (23:16 +0000)
iptables.c

index a6e16ae1a3fffbdca670a18e0d364e1a8b170fae..cf6b04cb80046c8b14191940c96acec3139f3a66 100644 (file)
@@ -1430,7 +1430,7 @@ generate_entry(const struct ipt_entry *fw,
 
        size = sizeof(struct ipt_entry);
        for (m = matches; m; m = m->next)
-               size += m->m->match_size;
+               size += m->m ? m->m->match_size : 0;
 
        e = fw_malloc(size + target->target_size);
        *e = *fw;
@@ -1439,8 +1439,10 @@ generate_entry(const struct ipt_entry *fw,
 
        size = 0;
        for (m = matches; m; m = m->next) {
-               memcpy(e->elems + size, m->m, m->m->match_size);
-               size += m->m->match_size;
+               if (m->m) {
+                       memcpy(e->elems + size, m->m, m->m->match_size);
+                       size += m->m->match_size;
+               }
        }
        memcpy(e->elems + size, target, target->target_size);