linux/include/net/netfilter
Holger Eitzenberger d0dba7255b netfilter: ctnetlink: add callbacks to the per-proto nlattrs
There is added a single callback for the l3 proto helper.  The two
callbacks for the l4 protos are necessary because of the general
structure of a ctnetlink event, which is in short:

 CTA_TUPLE_ORIG
   <l3/l4-proto-attributes>
 CTA_TUPLE_REPLY
   <l3/l4-proto-attributes>
 CTA_ID
 ...
 CTA_PROTOINFO
   <l4-proto-attributes>
 CTA_TUPLE_MASTER
   <l3/l4-proto-attributes>

Therefore the formular is

 size := sizeof(generic-nlas) + 3 * sizeof(tuple_nlas) + sizeof(protoinfo_nlas)

Some of the NLAs are optional, e. g. CTA_TUPLE_MASTER, which is only
set if it's an expected connection.  But the number of optional NLAs is
small enough to prevent netlink_trim() from reallocating if calculated
properly.

Signed-off-by: Holger Eitzenberger <holger@eitzenberger.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
2009-03-25 18:24:48 +01:00
..
ipv4 netfilter: split netfilter IPv4 defragmentation into a separate module 2008-10-08 11:35:12 +02:00
ipv6 [NETNS][FRAGS]: Move ctl tables around. 2008-01-28 15:10:34 -08:00
nf_conntrack_acct.h netfilter: netns nf_conntrack: per-netns conntrack accounting 2008-10-08 11:35:09 +02:00
nf_conntrack_core.h netfilter: netns nf_conntrack: pass netns pointer to nf_conntrack_in() 2008-10-08 11:35:04 +02:00
nf_conntrack_ecache.h netfilter: ctnetlink: deliver events for conntracks changed from userspace 2008-11-18 11:56:20 +01:00
nf_conntrack_expect.h netfilter: ctnetlink: deliver events for conntracks changed from userspace 2008-11-18 11:56:20 +01:00
nf_conntrack_extend.h netfilter: accounting rework: ct_extend + 64bit counters (v4) 2008-07-21 10:10:58 -07:00
nf_conntrack_helper.h netfilter: ctnetlink: helper modules load-on-demand support 2008-11-18 11:54:05 +01:00
nf_conntrack_l3proto.h netfilter: ctnetlink: add callbacks to the per-proto nlattrs 2009-03-25 18:24:48 +01:00
nf_conntrack_l4proto.h netfilter: ctnetlink: add callbacks to the per-proto nlattrs 2009-03-25 18:24:48 +01:00
nf_conntrack_tuple.h misc: replace NIPQUAD() 2008-10-31 00:56:49 -07:00
nf_conntrack.h netfilter: nf_conntrack: table max size should hold at least table size 2009-02-20 10:47:09 +01:00
nf_log.h netfilter: use a linked list of loggers 2009-03-16 14:54:21 +01:00
nf_nat_core.h netfilter: ctnetlink: remove bogus module dependency between ctnetlink and nf_nat 2008-10-14 11:58:31 -07:00
nf_nat_helper.h [NETFILTER]: nf_nat: kill helper and seq_adjust hooks 2008-04-14 11:15:52 +02:00
nf_nat_protocol.h [NETFILTER]: nf_nat: use bool type in nf_nat_proto 2008-04-14 11:15:53 +02:00
nf_nat_rule.h [NETFILTER]: nf_nat: don't add NAT extension for confirmed conntracks 2008-04-14 11:15:51 +02:00
nf_nat.h [NETFILTER]: nf_nat: pass manip type instead of hook to nf_nat_setup_info 2008-01-28 14:58:57 -08:00
nf_queue.h netfilter: Use unsigned types for hooknum and pf vars 2008-10-08 11:35:00 +02:00
nf_tproxy_core.h netfilter: iptables tproxy core 2008-10-08 11:35:12 +02:00
nfnetlink_log.h netfilter: nfnetlink_log: fix warning and prototype mismatch 2008-11-18 12:16:52 +01:00
xt_rateest.h [NETFILTER]: x_tables: add RATEEST target 2008-01-28 14:56:02 -08:00