linux/net/ipv4
Dmitry Mishin 4c1b52bc7a [NETFILTER]: ip_tables: fix compat related crash
check_compat_entry_size_and_hooks iterates over the matches and calls
compat_check_calc_match, which loads the match and calculates the
compat offsets, but unlike the non-compat version, doesn't call
->checkentry yet. On error however it calls cleanup_matches, which in
turn calls ->destroy, which can result in crashes if the destroy
function (validly) expects to only get called after the checkentry
function.

Add a compat_release_match function that only drops the module reference
on error and rename compat_check_calc_match to compat_find_calc_match to
reflect the fact that it doesn't call the checkentry function.

Reported by Jan Engelhardt <jengelh@linux01.gwdg.de>

Signed-off-by: Dmitry Mishin <dim@openvz.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2007-06-07 13:40:32 -07:00
..
ipvs [IPVS]: Use menuconfig objects. 2007-05-24 16:36:47 -07:00
netfilter [NETFILTER]: ip_tables: fix compat related crash 2007-06-07 13:40:32 -07:00
af_inet.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
ah4.c [SK_BUFF]: unions of just one member don't get anything done, kill them 2007-04-25 22:26:20 -07:00
arp.c [IPV4]: Convert IPv4 devconf to an array 2007-06-07 13:39:13 -07:00
cipso_ipv4.c Fix occurrences of "the the " 2007-05-09 08:57:56 +02:00
datagram.c [IPV4]: Fix "ipOutNoRoutes" counter error for TCP and UDP 2007-06-03 18:08:50 -07:00
devinet.c [NETLINK]: Mark netlink policies const 2007-06-07 13:40:10 -07:00
esp4.c [XFRM]: beet: fix worst case header_len calculation 2007-04-25 22:28:39 -07:00
fib_frontend.c [NETLINK]: Mark netlink policies const 2007-06-07 13:40:10 -07:00
fib_hash.c [RTNETLINK]: Fix sending netlink message when replace route. 2007-05-24 16:36:53 -07:00
fib_lookup.h [RTNETLINK]: Fix sending netlink message when replace route. 2007-05-24 16:36:53 -07:00
fib_rules.c [NETLINK]: Mark netlink policies const 2007-06-07 13:40:10 -07:00
fib_semantics.c [RTNETLINK]: Fix sending netlink message when replace route. 2007-05-24 16:36:53 -07:00
fib_trie.c [RTNETLINK]: Fix sending netlink message when replace route. 2007-05-24 16:36:53 -07:00
icmp.c [ICMP]: Fix icmp_errors_use_inbound_ifaddr sysctl 2007-06-03 18:08:51 -07:00
igmp.c [IPV4]: Convert IPv4 devconf to an array 2007-06-07 13:39:13 -07:00
inet_connection_sock.c [TCP]: Use default 32768-61000 outgoing port range in all cases. 2007-06-03 18:08:43 -07:00
inet_diag.c [NETLINK]: Switch cb_lock spinlock to mutex and allow to override it 2007-04-25 22:29:03 -07:00
inet_hashtables.c [NET] IPV4: Fix whitespace errors. 2007-02-10 23:19:39 -08:00
inet_timewait_sock.c [NET]: change layout of ehash table 2007-02-08 14:16:46 -08:00
inetpeer.c [IPV4]: Optimize inet_getpeer() 2007-04-25 22:23:49 -07:00
ip_forward.c [NET]: Allow forwarding of ip_summed except CHECKSUM_COMPLETE 2007-04-25 22:28:16 -07:00
ip_fragment.c [SK_BUFF]: Introduce ip_hdr(), remove skb->nh.iph 2007-04-25 22:25:10 -07:00
ip_gre.c [IPV4] IP_GRE: Unify code path to get hash array index. 2007-04-25 22:29:56 -07:00
ip_input.c [IPV4] SNMP: Support InMcastPkts and InBcastPkts 2007-04-30 00:58:29 -07:00
ip_options.c [SK_BUFF]: Introduce ip_hdr(), remove skb->nh.iph 2007-04-25 22:25:10 -07:00
ip_output.c [TCP]: Honour sk_bound_dev_if in tcp_v4_send_ack 2007-06-07 13:38:51 -07:00
ip_sockglue.c [INET]: Add IP(V6)_PMTUDISC_RPOBE 2007-04-25 22:29:10 -07:00
ipcomp.c [SK_BUFF]: Introduce skb_copy_to_linear_data{_offset} 2007-04-25 22:28:29 -07:00
ipconfig.c [NET]: Rework dev_base via list_head (v3) 2007-05-03 15:13:45 -07:00
ipip.c [IPV4] IPIP: Unify code path to get hash array index. 2007-04-25 22:29:55 -07:00
ipmr.c [IPV4]: Restore old behaviour of default config values 2007-06-07 13:39:26 -07:00
Kconfig [IPV4]: Correct rp_filter help text. 2007-05-17 15:02:21 -07:00
Makefile [IPV4]: Consolidate common SNMP code 2007-04-25 22:29:51 -07:00
multipath_drr.c [NET]: cleanup extra semicolons 2007-04-25 22:29:24 -07:00
multipath_random.c [IPV4]: Use random32() in net/ipv4/multipath 2007-02-26 11:43:00 -08:00
multipath_rr.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
multipath_wrandom.c [IPV4]: Use random32() in net/ipv4/multipath 2007-02-26 11:43:00 -08:00
multipath.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
netfilter.c [SK_BUFF]: Introduce ip_hdr(), remove skb->nh.iph 2007-04-25 22:25:10 -07:00
proc.c [IPV4]: Convert IPv4 devconf to an array 2007-06-07 13:39:13 -07:00
protocol.c [IPV4]: align inet_protos[] on SMP 2007-04-25 22:28:20 -07:00
raw.c [SK_BUFF]: unions of just one member don't get anything done, kill them 2007-04-25 22:26:20 -07:00
route.c [IPV4]: Convert IPv4 devconf to an array 2007-06-07 13:39:13 -07:00
syncookies.c [SK_BUFF]: Introduce tcp_hdr(), remove skb->h.th 2007-04-25 22:25:26 -07:00
sysctl_net_ipv4.c [IPV4]: Convert IPv4 devconf to an array 2007-06-07 13:39:13 -07:00
tcp_bic.c [TCP]: Congestion control API update. 2007-04-25 22:29:45 -07:00
tcp_cong.c [TCP] slow start: Make comments and code logic clearer. 2007-05-17 14:20:31 -07:00
tcp_cubic.c [TCP]: Congestion control API update. 2007-04-25 22:29:45 -07:00
tcp_diag.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_highspeed.c [TCP] Highspeed: Limited slow-start is nowadays in tcp_slow_start 2007-05-03 13:28:35 -07:00
tcp_htcp.c [TCP]: Congestion control API update. 2007-04-25 22:29:45 -07:00
tcp_hybla.c [TCP]: whitespace cleanup 2007-04-25 22:24:13 -07:00
tcp_illinois.c [TCP]: Fix linkage errors on i386. 2007-04-25 22:29:49 -07:00
tcp_input.c [TCP]: Fix GSO ignorance of pkts_acked arg (cong.cntrl modules) 2007-06-03 18:08:48 -07:00
tcp_ipv4.c [TCP]: Honour sk_bound_dev_if in tcp_v4_send_ack 2007-06-07 13:38:51 -07:00
tcp_lp.c [TCP]: Fix linkage errors on i386. 2007-04-25 22:29:49 -07:00
tcp_minisocks.c [SK_BUFF]: Introduce tcp_hdr(), remove skb->h.th 2007-04-25 22:25:26 -07:00
tcp_output.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
tcp_probe.c [TCP] tcp_probe: Attach printf attribute properly to printl(). 2007-06-07 13:40:09 -07:00
tcp_scalable.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
tcp_timer.c [TCP]: Use LIMIT_NETDEBUG in tcp_retransmit_timer(). 2007-06-07 13:40:08 -07:00
tcp_vegas.c [TCP]: Fix linkage errors on i386. 2007-04-25 22:29:49 -07:00
tcp_vegas.h [TCP] TCP YEAH: Use vegas dont copy it. 2007-04-25 22:29:46 -07:00
tcp_veno.c [TCP]: Fix linkage errors on i386. 2007-04-25 22:29:49 -07:00
tcp_westwood.c [TCP]: Congestion control API update. 2007-04-25 22:29:45 -07:00
tcp_yeah.c [TCP] TCP YEAH: Use vegas dont copy it. 2007-04-25 22:29:46 -07:00
tcp.c [TCP]: Use default 32768-61000 outgoing port range in all cases. 2007-06-03 18:08:43 -07:00
tunnel4.c [IPSEC]: Changing API of xfrm4_tunnel_register. 2007-02-13 12:54:47 -08:00
udp_impl.h [UDP]: Fix AF-specific references in AF-agnostic code. 2007-05-10 23:47:22 -07:00
udp.c [IPV4]: Fix "ipOutNoRoutes" counter error for TCP and UDP 2007-06-03 18:08:50 -07:00
udplite.c [UDP]: Fix AF-specific references in AF-agnostic code. 2007-05-10 23:47:22 -07:00
xfrm4_input.c [IPSEC]: Fix panic when using inter address familiy IPsec on loopback. 2007-05-31 01:23:28 -07:00
xfrm4_mode_beet.c [XFRM]: beet: fix worst case header_len calculation 2007-04-25 22:28:39 -07:00
xfrm4_mode_transport.c [SK_BUFF]: unions of just one member don't get anything done, kill them 2007-04-25 22:26:20 -07:00
xfrm4_mode_tunnel.c [IPSEC]: Fix panic when using inter address familiy IPsec on loopback. 2007-05-31 01:23:28 -07:00
xfrm4_output.c [SK_BUFF]: Introduce ip_hdr(), remove skb->nh.iph 2007-04-25 22:25:10 -07:00
xfrm4_policy.c [NET]: cleanup extra semicolons 2007-04-25 22:29:24 -07:00
xfrm4_state.c [IPSEC]: exporting xfrm_state_afinfo 2007-02-08 12:39:00 -08:00
xfrm4_tunnel.c [SK_BUFF]: Introduce ip_hdr(), remove skb->nh.iph 2007-04-25 22:25:10 -07:00