ip6tables: check for valid init prior to calling
PATCH 1/1 ip6tables: check for valid init prior to calling
Unlike iptables, ip6tables does not check that match|target->init is !NULL prior to calling, leading to problems in those extensions which don't define init, like owner:
# ip6tables -m owner Segmentation fault
The below patch copies iptables checks.
Phil
ip6tables.c +8 -4
@@ -1919,7 +1919,8 @@ target->t =fw_calloc (1 , size); target->t->u.target_size = size;strcpy (target->t->u.user.name, jumpto); - target->init (target->t, &fw.nfcache); +if (target->init !=NULL ) + target->init (target->t, &fw.nfcache); opts =merge_options (opts, target->extra_opts, &target->option_offset); }break ;
@@ -1963,7 +1964,8 @@ m->m =fw_calloc (1 , size); m->m->u.match_size = size;strcpy (m->m->u.user.name, m->name); - m->init (m->m, &fw.nfcache); +if (m->init !=NULL ) + m->init (m->m, &fw.nfcache); opts =merge_options (opts, m->extra_opts, &m->option_offset); }break ;
@@ -2104,7 +2106,8 @@ m->m =fw_calloc (1 , size); m->m->u.match_size = size;strcpy (m->m->u.user.name, m->name); - m->init (m->m, &fw.nfcache); +if (m->init !=NULL ) + m->init (m->m, &fw.nfcache); opts =merge_options (opts, m->extra_opts, &m->option_offset);
@@ -2232,7 +2235,8 @@ target->t =fw_calloc (1 , size); target->t->u.target_size = size;strcpy (target->t->u.user.name, jumpto); - target->init (target->t, &fw.nfcache); +if (target->init !=NULL ) + target->init (target->t, &fw.nfcache); }if (!target) {
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Quoting Phil Oester on 2005-07-03 17:03 UTC:
Quoted 10 lines
Unlike iptables, ip6tables does not check that match|target->init is !NULL prior to calling, leading to problems in those extensions which don't define init, like owner:
# ip6tables -m owner Segmentation faultThe below patch copies iptables checks.
Phil
Hmm, I already fixed this three months ago :)
http://svn.netfilter.org/cgi-bin/viewcvs.cgi/trunk/iptables/ip6tables.c?rev=3818&r1=3814&r2=3818
- --
- - xkr47
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
iD8DBQFCyMEgxyF48ZTvn+4RAisrAJ9NR/P89HiNEAiJQsKfcyqPkLjEFACgpSAA qq91OSpPDFt/1CM/7EeKluI=
=ubNX
-----END PGP SIGNATURE-----
Quoted 8 lines · Jonas Berlin
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1Quoting Phil Oester on 2005-07-03 17:03 UTC:
Quoted 4 lines
Unlike iptables, ip6tables does not check that match|target->init is !NULL prior to calling, leading to problems in those extensions which don't define init, like owner:
Quoted 8 lines
Quoted 6 lines
# ip6tables -m owner Segmentation faultThe below patch copies iptables checks.
Phil
Hmm, I already fixed this three months ago :)
seems like we should be doing a 1.3.2 release. So everyone who still has pending bugs/issues with current svn iptables, please raise your voice _now_.
Signature · 5 lines
- Harald Welte <[email protected]> http://netfilter.org/ ============================================================================ "Fragmentation is like classful addressing -- an interesting early architectural error that shows how much experimentation was going on while IP was being designed." -- Paul Vixie