2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-10 14:43:54 +08:00
linux-next/include/linux/netfilter
Krzysztof Piotr Oledzki 584015727a netfilter: accounting rework: ct_extend + 64bit counters (v4)
Initially netfilter has had 64bit counters for conntrack-based accounting, but
it was changed in 2.6.14 to save memory. Unfortunately in-kernel 64bit counters are
still required, for example for "connbytes" extension. However, 64bit counters
waste a lot of memory and it was not possible to enable/disable it runtime.

This patch:
 - reimplements accounting with respect to the extension infrastructure,
 - makes one global version of seq_print_acct() instead of two seq_print_counters(),
 - makes it possible to enable it at boot time (for CONFIG_SYSCTL/CONFIG_SYSFS=n),
 - makes it possible to enable/disable it at runtime by sysctl or sysfs,
 - extends counters from 32bit to 64bit,
 - renames ip_conntrack_counter -> nf_conn_counter,
 - enables accounting code unconditionally (no longer depends on CONFIG_NF_CT_ACCT),
 - set initial accounting enable state based on CONFIG_NF_CT_ACCT
 - removes buggy IPCT_COUNTER_FILLING event handling.

If accounting is enabled newly created connections get additional acct extend.
Old connections are not changed as it is not possible to add a ct_extend area
to confirmed conntrack. Accounting is performed for all connections with
acct extend regardless of a current state of "net.netfilter.nf_conntrack_acct".

Signed-off-by: Krzysztof Piotr Oledzki <ole@ans.pl>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-07-21 10:10:58 -07:00
..
Kbuild [NETFILTER]: Make sure xt_policy.h is unifdef'ed. 2008-02-19 17:19:14 -08:00
nf_conntrack_amanda.h
nf_conntrack_common.h netfilter: accounting rework: ct_extend + 64bit counters (v4) 2008-07-21 10:10:58 -07:00
nf_conntrack_dccp.h [NETFILTER]: nf_conntrack: add DCCP protocol support 2008-04-14 11:15:49 +02:00
nf_conntrack_ftp.h
nf_conntrack_h323_asn1.h
nf_conntrack_h323_types.h
nf_conntrack_h323.h
nf_conntrack_irc.h
nf_conntrack_pptp.h [NETFILTER]: nf_{conntrack,nat}_pptp: annotate PPtP helper with const 2008-01-31 19:28:09 -08:00
nf_conntrack_proto_gre.h
nf_conntrack_sane.h
nf_conntrack_sctp.h
nf_conntrack_sip.h netfilter: nf_conntrack_sip: restrict RTP expect flushing on error to last request 2008-05-08 01:15:21 -07:00
nf_conntrack_tcp.h
nf_conntrack_tftp.h
nf_conntrack_tuple_common.h
nfnetlink_compat.h [NETFILTER]: nfnetlink: fix ifdef in nfnetlink_compat.h 2008-03-10 16:41:06 -07:00
nfnetlink_conntrack.h netfilter: accounting rework: ct_extend + 64bit counters (v4) 2008-07-21 10:10:58 -07:00
nfnetlink_log.h
nfnetlink_queue.h
nfnetlink.h
x_tables.h [NETFILTER]: annotate {arp,ip,ip6,x}tables with const 2008-04-14 11:15:35 +02:00
xt_CLASSIFY.h
xt_comment.h
xt_connbytes.h
xt_connlimit.h
xt_connmark.h
xt_CONNMARK.h
xt_CONNSECMARK.h
xt_conntrack.h
xt_dccp.h
xt_dscp.h
xt_DSCP.h
xt_esp.h
xt_hashlimit.h [NETFILTER]: xt_hashlimit: remove unneeded struct member 2008-02-19 17:19:44 -08:00
xt_helper.h
xt_iprange.h
xt_length.h
xt_limit.h
xt_mac.h
xt_mark.h
xt_MARK.h
xt_multiport.h
xt_NFLOG.h
xt_NFQUEUE.h
xt_owner.h [NETFILTER]: xt_owner: allow matching UID/GID ranges 2008-01-31 19:27:43 -08:00
xt_physdev.h
xt_pkttype.h
xt_policy.h
xt_quota.h
xt_rateest.h
xt_RATEEST.h
xt_realm.h
xt_sctp.h [NETFILTER]: xt_sctp: simplify xt_sctp.h 2008-04-14 09:56:04 +02:00
xt_SECMARK.h
xt_state.h
xt_statistic.h
xt_string.h netfilter: fix string extension for case insensitive pattern matching 2008-07-08 02:38:56 -07:00
xt_tcpmss.h
xt_TCPMSS.h
xt_TCPOPTSTRIP.h
xt_tcpudp.h
xt_time.h
xt_u32.h