]> git.hungrycats.org Git - linux/commit
[NETFILTER_IPV4]: De-linearization of IP Connection Tracking.
authorRusty Russell <rusty@rustcorp.com.au>
Tue, 15 Apr 2003 14:56:40 +0000 (07:56 -0700)
committerDavid S. Miller <davem@nuts.ninka.net>
Tue, 15 Apr 2003 14:56:40 +0000 (07:56 -0700)
commit98fab1e40cc093ab9ebb64aa6c4c1a0359b409ec
treee37240c1a16fb90d44b9610fb0ffab789ab80540
parent0eb8fea5d90585e11ee68e20f282e22d3e86db4d
[NETFILTER_IPV4]: De-linearization of IP Connection Tracking.

This converts connection tracking and all the connection tracking
modules to handle non-linear skbs.  Enough interfaces have been
broken in the process that old helpers won't compile.

Interfaces which used to take a "void *data, int len" or
"struct iphdr *iph, int len" now take the skb itself (and an offset to
the data in the case of the first interface), which is not
linearized in any way (although Alexey says after ip_rcv the IP header
is always linear, so IPv4 netfilter hooks can always assume a linear
IP hdr).

Helpers which examine data (amanda, FTP, IRC) now copy it into a buffer
and examine that.
18 files changed:
include/linux/netfilter_ipv4/ip_conntrack_amanda.h
include/linux/netfilter_ipv4/ip_conntrack_core.h
include/linux/netfilter_ipv4/ip_conntrack_helper.h
include/linux/netfilter_ipv4/ip_conntrack_irc.h
include/linux/netfilter_ipv4/ip_conntrack_protocol.h
net/ipv4/netfilter/ip_conntrack_amanda.c
net/ipv4/netfilter/ip_conntrack_core.c
net/ipv4/netfilter/ip_conntrack_ftp.c
net/ipv4/netfilter/ip_conntrack_irc.c
net/ipv4/netfilter/ip_conntrack_proto_generic.c
net/ipv4/netfilter/ip_conntrack_proto_icmp.c
net/ipv4/netfilter/ip_conntrack_proto_tcp.c
net/ipv4/netfilter/ip_conntrack_proto_udp.c
net/ipv4/netfilter/ip_conntrack_standalone.c
net/ipv4/netfilter/ip_conntrack_tftp.c
net/ipv4/netfilter/ip_fw_compat_masq.c
net/ipv4/netfilter/ip_nat_core.c
net/ipv4/netfilter/ip_nat_tftp.c