linux/net/netfilter
Patrick McHarrdy 3c158f7f57 [NETFILTER]: nf_conntrack: fix helper module unload races
When a helper module is unloaded all conntracks refering to it have their
helper pointer NULLed out, leading to lots of races. In most places this
can be fixed by proper use of RCU (they do already check for != NULL,
but in a racy way), additionally nf_conntrack_expect_related needs to
bail out when no helper is present.

Also remove two paranoid BUG_ONs in nf_conntrack_proto_gre that are racy
and not worth fixing.

Signed-off-by: Patrick McHarrdy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-06-07 13:40:26 -07:00
..
core.c [NETFILTER]: nf_conntrack: kill destroy() in struct nf_conntrack for diet 2007-04-25 22:27:45 -07:00
Kconfig Fix trivial typos in Kconfig* files 2007-05-09 07:12:20 +02:00
Makefile
nf_conntrack_amanda.c
nf_conntrack_core.c [NETFILTER]: nf_conntrack: fix helper module unload races 2007-06-07 13:40:26 -07:00
nf_conntrack_ecache.c
nf_conntrack_expect.c [NETFILTER]: nf_conntrack: fix helper module unload races 2007-06-07 13:40:26 -07:00
nf_conntrack_ftp.c [NETFILTER]: nf_conntrack_ftp: fix newline sequence number calculation 2007-05-24 16:41:50 -07:00
nf_conntrack_h323_asn1.c
nf_conntrack_h323_main.c [NETFILTER]: nf_conntrack_h323: add missing T.120 address in OLCA 2007-05-24 16:44:11 -07:00
nf_conntrack_h323_types.c [NETFILTER]: nf_conntrack_h323: fix ASN.1 types 2007-05-24 16:42:26 -07:00
nf_conntrack_helper.c [NETFILTER]: nf_conntrack: fix helper module unload races 2007-06-07 13:40:26 -07:00
nf_conntrack_irc.c
nf_conntrack_l3proto_generic.c
nf_conntrack_netbios_ns.c
nf_conntrack_netlink.c [NETFILTER]: nf_conntrack: fix helper module unload races 2007-06-07 13:40:26 -07:00
nf_conntrack_pptp.c
nf_conntrack_proto_generic.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
nf_conntrack_proto_gre.c [NETFILTER]: nf_conntrack: fix helper module unload races 2007-06-07 13:40:26 -07:00
nf_conntrack_proto_sctp.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
nf_conntrack_proto_tcp.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
nf_conntrack_proto_udp.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
nf_conntrack_proto.c [NETLINK]: Possible cleanups. 2007-04-26 00:57:41 -07:00
nf_conntrack_sane.c
nf_conntrack_sip.c
nf_conntrack_standalone.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
nf_conntrack_tftp.c
nf_internals.h
nf_log.c
nf_queue.c
nf_sockopt.c
nf_sysctl.c
nfnetlink_log.c [NETFILTER]: nfnetlink_log: remove fallback to group 0 2007-04-25 22:29:01 -07:00
nfnetlink_queue.c [SK_BUFF]: Introduce skb_copy_to_linear_data{_offset} 2007-04-25 22:28:29 -07:00
nfnetlink.c [NETLINK]: Switch cb_lock spinlock to mutex and allow to override it 2007-04-25 22:29:03 -07:00
x_tables.c
xt_CLASSIFY.c
xt_comment.c
xt_connbytes.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
xt_connmark.c
xt_CONNMARK.c
xt_CONNSECMARK.c
xt_conntrack.c [NETFILTER]: xt_conntrack: add compat support 2007-05-10 23:48:00 -07:00
xt_dccp.c
xt_dscp.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
xt_DSCP.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
xt_esp.c
xt_hashlimit.c [NETFILTER]: Use setup_timer 2007-04-25 22:27:43 -07:00
xt_helper.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
xt_length.c
xt_limit.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
xt_mac.c
xt_mark.c
xt_MARK.c
xt_multiport.c
xt_NFLOG.c
xt_NFQUEUE.c
xt_NOTRACK.c
xt_physdev.c
xt_pkttype.c
xt_policy.c
xt_quota.c
xt_realm.c [NETFILTER]: Remove changelogs and CVS IDs 2007-04-25 22:27:35 -07:00
xt_sctp.c
xt_SECMARK.c
xt_state.c
xt_statistic.c
xt_string.c
xt_tcpmss.c
xt_TCPMSS.c
xt_tcpudp.c