[NETFILTER]: remove NF_CONNTRACK_ENABLED option
[safe/jmp/linux-2.6] / net / netfilter / Kconfig
1 menu "Core Netfilter Configuration"
2         depends on NET && INET && NETFILTER
3
4 config NETFILTER_NETLINK
5        tristate "Netfilter netlink interface"
6        help
7          If this option is enabled, the kernel will include support
8          for the new netfilter netlink interface.
9
10 config NETFILTER_NETLINK_QUEUE
11         tristate "Netfilter NFQUEUE over NFNETLINK interface"
12         depends on NETFILTER_NETLINK
13         help
14           If this option is enabled, the kernel will include support
15           for queueing packets via NFNETLINK.
16           
17 config NETFILTER_NETLINK_LOG
18         tristate "Netfilter LOG over NFNETLINK interface"
19         depends on NETFILTER_NETLINK
20         help
21           If this option is enabled, the kernel will include support
22           for logging packets via NFNETLINK.
23
24           This obsoletes the existing ipt_ULOG and ebg_ulog mechanisms,
25           and is also scheduled to replace the old syslog-based ipt_LOG
26           and ip6t_LOG modules.
27
28 config NF_CONNTRACK
29         tristate "Netfilter connection tracking support"
30         help
31           Connection tracking keeps a record of what packets have passed
32           through your machine, in order to figure out how they are related
33           into connections.
34
35           This is required to do Masquerading or other kinds of Network
36           Address Translation (except for Fast NAT).  It can also be used to
37           enhance packet filtering (see `Connection state match support'
38           below).
39
40           To compile it as a module, choose M here.  If unsure, say N.
41
42 config NF_CT_ACCT
43         bool "Connection tracking flow accounting"
44         depends on NF_CONNTRACK
45         help
46           If this option is enabled, the connection tracking code will
47           keep per-flow packet and byte counters.
48
49           Those counters can be used for flow-based accounting or the
50           `connbytes' match.
51
52           If unsure, say `N'.
53
54 config NF_CONNTRACK_MARK
55         bool  'Connection mark tracking support'
56         depends on NF_CONNTRACK
57         help
58           This option enables support for connection marks, used by the
59           `CONNMARK' target and `connmark' match. Similar to the mark value
60           of packets, but this mark value is kept in the conntrack session
61           instead of the individual packets.
62
63 config NF_CONNTRACK_SECMARK
64         bool  'Connection tracking security mark support'
65         depends on NF_CONNTRACK && NETWORK_SECMARK
66         help
67           This option enables security markings to be applied to
68           connections.  Typically they are copied to connections from
69           packets using the CONNSECMARK target and copied back from
70           connections to packets with the same target, with the packets
71           being originally labeled via SECMARK.
72
73           If unsure, say 'N'.
74
75 config NF_CONNTRACK_EVENTS
76         bool "Connection tracking events (EXPERIMENTAL)"
77         depends on EXPERIMENTAL && NF_CONNTRACK
78         help
79           If this option is enabled, the connection tracking code will
80           provide a notifier chain that can be used by other kernel code
81           to get notified about changes in the connection tracking state.
82
83           If unsure, say `N'.
84
85 config NF_CT_PROTO_GRE
86         tristate
87         depends on NF_CONNTRACK
88
89 config NF_CT_PROTO_SCTP
90         tristate 'SCTP protocol connection tracking support (EXPERIMENTAL)'
91         depends on EXPERIMENTAL && NF_CONNTRACK
92         default n
93         help
94           With this option enabled, the layer 3 independent connection
95           tracking code will be able to do state tracking on SCTP connections.
96
97           If you want to compile it as a module, say M here and read
98           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
99
100 config NF_CT_PROTO_UDPLITE
101         tristate 'UDP-Lite protocol connection tracking support (EXPERIMENTAL)'
102         depends on EXPERIMENTAL && NF_CONNTRACK
103         help
104           With this option enabled, the layer 3 independent connection
105           tracking code will be able to do state tracking on UDP-Lite
106           connections.
107
108           To compile it as a module, choose M here.  If unsure, say N.
109
110 config NF_CONNTRACK_AMANDA
111         tristate "Amanda backup protocol support"
112         depends on NF_CONNTRACK
113         select TEXTSEARCH
114         select TEXTSEARCH_KMP
115         help
116           If you are running the Amanda backup package <http://www.amanda.org/>
117           on this machine or machines that will be MASQUERADED through this
118           machine, then you may want to enable this feature.  This allows the
119           connection tracking and natting code to allow the sub-channels that
120           Amanda requires for communication of the backup data, messages and
121           index.
122
123           To compile it as a module, choose M here.  If unsure, say N.
124
125 config NF_CONNTRACK_FTP
126         tristate "FTP protocol support"
127         depends on NF_CONNTRACK
128         help
129           Tracking FTP connections is problematic: special helpers are
130           required for tracking them, and doing masquerading and other forms
131           of Network Address Translation on them.
132
133           This is FTP support on Layer 3 independent connection tracking.
134           Layer 3 independent connection tracking is experimental scheme
135           which generalize ip_conntrack to support other layer 3 protocols.
136
137           To compile it as a module, choose M here.  If unsure, say N.
138
139 config NF_CONNTRACK_H323
140         tristate "H.323 protocol support (EXPERIMENTAL)"
141         depends on EXPERIMENTAL && NF_CONNTRACK && (IPV6 || IPV6=n)
142         help
143           H.323 is a VoIP signalling protocol from ITU-T. As one of the most
144           important VoIP protocols, it is widely used by voice hardware and
145           software including voice gateways, IP phones, Netmeeting, OpenPhone,
146           Gnomemeeting, etc.
147
148           With this module you can support H.323 on a connection tracking/NAT
149           firewall.
150
151           This module supports RAS, Fast Start, H.245 Tunnelling, Call
152           Forwarding, RTP/RTCP and T.120 based audio, video, fax, chat,
153           whiteboard, file transfer, etc. For more information, please
154           visit http://nath323.sourceforge.net/.
155
156           To compile it as a module, choose M here.  If unsure, say N.
157
158 config NF_CONNTRACK_IRC
159         tristate "IRC protocol support"
160         depends on NF_CONNTRACK
161         help
162           There is a commonly-used extension to IRC called
163           Direct Client-to-Client Protocol (DCC).  This enables users to send
164           files to each other, and also chat to each other without the need
165           of a server.  DCC Sending is used anywhere you send files over IRC,
166           and DCC Chat is most commonly used by Eggdrop bots.  If you are
167           using NAT, this extension will enable you to send files and initiate
168           chats.  Note that you do NOT need this extension to get files or
169           have others initiate chats, or everything else in IRC.
170
171           To compile it as a module, choose M here.  If unsure, say N.
172
173 config NF_CONNTRACK_NETBIOS_NS
174         tristate "NetBIOS name service protocol support (EXPERIMENTAL)"
175         depends on EXPERIMENTAL && NF_CONNTRACK
176         help
177           NetBIOS name service requests are sent as broadcast messages from an
178           unprivileged port and responded to with unicast messages to the
179           same port. This make them hard to firewall properly because connection
180           tracking doesn't deal with broadcasts. This helper tracks locally
181           originating NetBIOS name service requests and the corresponding
182           responses. It relies on correct IP address configuration, specifically
183           netmask and broadcast address. When properly configured, the output
184           of "ip address show" should look similar to this:
185
186           $ ip -4 address show eth0
187           4: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
188               inet 172.16.2.252/24 brd 172.16.2.255 scope global eth0
189
190           To compile it as a module, choose M here.  If unsure, say N.
191
192 config NF_CONNTRACK_PPTP
193         tristate "PPtP protocol support"
194         depends on NF_CONNTRACK
195         select NF_CT_PROTO_GRE
196         help
197           This module adds support for PPTP (Point to Point Tunnelling
198           Protocol, RFC2637) connection tracking and NAT.
199
200           If you are running PPTP sessions over a stateful firewall or NAT
201           box, you may want to enable this feature.
202
203           Please note that not all PPTP modes of operation are supported yet.
204           Specifically these limitations exist:
205             - Blindly assumes that control connections are always established
206               in PNS->PAC direction. This is a violation of RFC2637.
207             - Only supports a single call within each session
208
209           To compile it as a module, choose M here.  If unsure, say N.
210
211 config NF_CONNTRACK_SANE
212         tristate "SANE protocol support (EXPERIMENTAL)"
213         depends on EXPERIMENTAL && NF_CONNTRACK
214         help
215           SANE is a protocol for remote access to scanners as implemented
216           by the 'saned' daemon. Like FTP, it uses separate control and
217           data connections.
218
219           With this module you can support SANE on a connection tracking
220           firewall.
221
222           To compile it as a module, choose M here.  If unsure, say N.
223
224 config NF_CONNTRACK_SIP
225         tristate "SIP protocol support (EXPERIMENTAL)"
226         depends on EXPERIMENTAL && NF_CONNTRACK
227         help
228           SIP is an application-layer control protocol that can establish,
229           modify, and terminate multimedia sessions (conferences) such as
230           Internet telephony calls. With the ip_conntrack_sip and
231           the nf_nat_sip modules you can support the protocol on a connection
232           tracking/NATing firewall.
233
234           To compile it as a module, choose M here.  If unsure, say N.
235
236 config NF_CONNTRACK_TFTP
237         tristate "TFTP protocol support"
238         depends on NF_CONNTRACK
239         help
240           TFTP connection tracking helper, this is required depending
241           on how restrictive your ruleset is.
242           If you are using a tftp client behind -j SNAT or -j MASQUERADING
243           you will need this.
244
245           To compile it as a module, choose M here.  If unsure, say N.
246
247 config NF_CT_NETLINK
248         tristate 'Connection tracking netlink interface (EXPERIMENTAL)'
249         depends on EXPERIMENTAL && NF_CONNTRACK && NETFILTER_NETLINK
250         depends on NF_CONNTRACK!=y || NETFILTER_NETLINK!=m
251         depends on NF_NAT=n || NF_NAT
252         help
253           This option enables support for a netlink-based userspace interface
254
255 config NETFILTER_XTABLES
256         tristate "Netfilter Xtables support (required for ip_tables)"
257         help
258           This is required if you intend to use any of ip_tables,
259           ip6_tables or arp_tables.
260
261 # alphabetically ordered list of targets
262
263 config NETFILTER_XT_TARGET_CLASSIFY
264         tristate '"CLASSIFY" target support'
265         depends on NETFILTER_XTABLES
266         help
267           This option adds a `CLASSIFY' target, which enables the user to set
268           the priority of a packet. Some qdiscs can use this value for
269           classification, among these are:
270
271           atm, cbq, dsmark, pfifo_fast, htb, prio
272
273           To compile it as a module, choose M here.  If unsure, say N.
274
275 config NETFILTER_XT_TARGET_CONNMARK
276         tristate  '"CONNMARK" target support'
277         depends on NETFILTER_XTABLES
278         depends on IP_NF_MANGLE || IP6_NF_MANGLE
279         depends on NF_CONNTRACK
280         select NF_CONNTRACK_MARK
281         help
282           This option adds a `CONNMARK' target, which allows one to manipulate
283           the connection mark value.  Similar to the MARK target, but
284           affects the connection mark value rather than the packet mark value.
285         
286           If you want to compile it as a module, say M here and read
287           <file:Documentation/kbuild/modules.txt>.  The module will be called
288           ipt_CONNMARK.ko.  If unsure, say `N'.
289
290 config NETFILTER_XT_TARGET_DSCP
291         tristate '"DSCP" and "TOS" target support'
292         depends on NETFILTER_XTABLES
293         depends on IP_NF_MANGLE || IP6_NF_MANGLE
294         help
295           This option adds a `DSCP' target, which allows you to manipulate
296           the IPv4/IPv6 header DSCP field (differentiated services codepoint).
297
298           The DSCP field can have any value between 0x0 and 0x3f inclusive.
299
300           It also adds the "TOS" target, which allows you to create rules in
301           the "mangle" table which alter the Type Of Service field of an IPv4
302           or the Priority field of an IPv6 packet, prior to routing.
303
304           To compile it as a module, choose M here.  If unsure, say N.
305
306 config NETFILTER_XT_TARGET_MARK
307         tristate '"MARK" target support'
308         depends on NETFILTER_XTABLES
309         help
310           This option adds a `MARK' target, which allows you to create rules
311           in the `mangle' table which alter the netfilter mark (nfmark) field
312           associated with the packet prior to routing. This can change
313           the routing method (see `Use netfilter MARK value as routing
314           key') and can also be used by other subsystems to change their
315           behavior.
316
317           To compile it as a module, choose M here.  If unsure, say N.
318
319 config NETFILTER_XT_TARGET_NFQUEUE
320         tristate '"NFQUEUE" target Support'
321         depends on NETFILTER_XTABLES
322         help
323           This target replaced the old obsolete QUEUE target.
324
325           As opposed to QUEUE, it supports 65535 different queues,
326           not just one.
327
328           To compile it as a module, choose M here.  If unsure, say N.
329
330 config NETFILTER_XT_TARGET_NFLOG
331         tristate '"NFLOG" target support'
332         depends on NETFILTER_XTABLES
333         help
334           This option enables the NFLOG target, which allows to LOG
335           messages through the netfilter logging API, which can use
336           either the old LOG target, the old ULOG target or nfnetlink_log
337           as backend.
338
339           To compile it as a module, choose M here.  If unsure, say N.
340
341 config NETFILTER_XT_TARGET_NOTRACK
342         tristate  '"NOTRACK" target support'
343         depends on NETFILTER_XTABLES
344         depends on IP_NF_RAW || IP6_NF_RAW
345         depends on NF_CONNTRACK
346         help
347           The NOTRACK target allows a select rule to specify
348           which packets *not* to enter the conntrack/NAT
349           subsystem with all the consequences (no ICMP error tracking,
350           no protocol helpers for the selected packets).
351         
352           If you want to compile it as a module, say M here and read
353           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
354
355 config NETFILTER_XT_TARGET_RATEEST
356         tristate '"RATEEST" target support'
357         depends on NETFILTER_XTABLES
358         help
359           This option adds a `RATEEST' target, which allows to measure
360           rates similar to TC estimators. The `rateest' match can be
361           used to match on the measured rates.
362
363           To compile it as a module, choose M here.  If unsure, say N.
364
365 config NETFILTER_XT_TARGET_TRACE
366         tristate  '"TRACE" target support'
367         depends on NETFILTER_XTABLES
368         depends on IP_NF_RAW || IP6_NF_RAW
369         help
370           The TRACE target allows you to mark packets so that the kernel
371           will log every rule which match the packets as those traverse
372           the tables, chains, rules.
373
374           If you want to compile it as a module, say M here and read
375           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
376
377 config NETFILTER_XT_TARGET_SECMARK
378         tristate '"SECMARK" target support'
379         depends on NETFILTER_XTABLES && NETWORK_SECMARK
380         help
381           The SECMARK target allows security marking of network
382           packets, for use with security subsystems.
383
384           To compile it as a module, choose M here.  If unsure, say N.
385
386 config NETFILTER_XT_TARGET_CONNSECMARK
387         tristate '"CONNSECMARK" target support'
388         depends on NETFILTER_XTABLES && NF_CONNTRACK && NF_CONNTRACK_SECMARK
389         help
390           The CONNSECMARK target copies security markings from packets
391           to connections, and restores security markings from connections
392           to packets (if the packets are not already marked).  This would
393           normally be used in conjunction with the SECMARK target.
394
395           To compile it as a module, choose M here.  If unsure, say N.
396
397 config NETFILTER_XT_TARGET_TCPMSS
398         tristate '"TCPMSS" target support'
399         depends on NETFILTER_XTABLES && (IPV6 || IPV6=n)
400         ---help---
401           This option adds a `TCPMSS' target, which allows you to alter the
402           MSS value of TCP SYN packets, to control the maximum size for that
403           connection (usually limiting it to your outgoing interface's MTU
404           minus 40).
405
406           This is used to overcome criminally braindead ISPs or servers which
407           block ICMP Fragmentation Needed packets.  The symptoms of this
408           problem are that everything works fine from your Linux
409           firewall/router, but machines behind it can never exchange large
410           packets:
411                 1) Web browsers connect, then hang with no data received.
412                 2) Small mail works fine, but large emails hang.
413                 3) ssh works fine, but scp hangs after initial handshaking.
414
415           Workaround: activate this option and add a rule to your firewall
416           configuration like:
417
418           iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN \
419                          -j TCPMSS --clamp-mss-to-pmtu
420
421           To compile it as a module, choose M here.  If unsure, say N.
422
423 config NETFILTER_XT_TARGET_TCPOPTSTRIP
424         tristate '"TCPOPTSTRIP" target support (EXPERIMENTAL)'
425         depends on EXPERIMENTAL && NETFILTER_XTABLES
426         depends on IP_NF_MANGLE || IP6_NF_MANGLE
427         help
428           This option adds a "TCPOPTSTRIP" target, which allows you to strip
429           TCP options from TCP packets.
430
431 config NETFILTER_XT_MATCH_COMMENT
432         tristate  '"comment" match support'
433         depends on NETFILTER_XTABLES
434         help
435           This option adds a `comment' dummy-match, which allows you to put
436           comments in your iptables ruleset.
437
438           If you want to compile it as a module, say M here and read
439           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
440
441 config NETFILTER_XT_MATCH_CONNBYTES
442         tristate  '"connbytes" per-connection counter match support'
443         depends on NETFILTER_XTABLES
444         depends on NF_CONNTRACK
445         select NF_CT_ACCT
446         help
447           This option adds a `connbytes' match, which allows you to match the
448           number of bytes and/or packets for each direction within a connection.
449
450           If you want to compile it as a module, say M here and read
451           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
452
453 config NETFILTER_XT_MATCH_CONNLIMIT
454         tristate '"connlimit" match support"'
455         depends on NETFILTER_XTABLES
456         depends on NF_CONNTRACK
457         ---help---
458           This match allows you to match against the number of parallel
459           connections to a server per client IP address (or address block).
460
461 config NETFILTER_XT_MATCH_CONNMARK
462         tristate  '"connmark" connection mark match support'
463         depends on NETFILTER_XTABLES
464         depends on NF_CONNTRACK
465         select NF_CONNTRACK_MARK
466         help
467           This option adds a `connmark' match, which allows you to match the
468           connection mark value previously set for the session by `CONNMARK'. 
469         
470           If you want to compile it as a module, say M here and read
471           <file:Documentation/kbuild/modules.txt>.  The module will be called
472           ipt_connmark.ko.  If unsure, say `N'.
473
474 config NETFILTER_XT_MATCH_CONNTRACK
475         tristate '"conntrack" connection tracking match support'
476         depends on NETFILTER_XTABLES
477         depends on NF_CONNTRACK
478         help
479           This is a general conntrack match module, a superset of the state match.
480
481           It allows matching on additional conntrack information, which is
482           useful in complex configurations, such as NAT gateways with multiple
483           internet links or tunnels.
484
485           To compile it as a module, choose M here.  If unsure, say N.
486
487 config NETFILTER_XT_MATCH_DCCP
488         tristate '"dccp" protocol match support'
489         depends on NETFILTER_XTABLES
490         help
491           With this option enabled, you will be able to use the iptables
492           `dccp' match in order to match on DCCP source/destination ports
493           and DCCP flags.
494
495           If you want to compile it as a module, say M here and read
496           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
497
498 config NETFILTER_XT_MATCH_DSCP
499         tristate '"dscp" and "tos" match support'
500         depends on NETFILTER_XTABLES
501         help
502           This option adds a `DSCP' match, which allows you to match against
503           the IPv4/IPv6 header DSCP field (differentiated services codepoint).
504
505           The DSCP field can have any value between 0x0 and 0x3f inclusive.
506
507           It will also add a "tos" match, which allows you to match packets
508           based on the Type Of Service fields of the IPv4 packet (which share
509           the same bits as DSCP).
510
511           To compile it as a module, choose M here.  If unsure, say N.
512
513 config NETFILTER_XT_MATCH_ESP
514         tristate '"esp" match support'
515         depends on NETFILTER_XTABLES
516         help
517           This match extension allows you to match a range of SPIs
518           inside ESP header of IPSec packets.
519
520           To compile it as a module, choose M here.  If unsure, say N.
521
522 config NETFILTER_XT_MATCH_HELPER
523         tristate '"helper" match support'
524         depends on NETFILTER_XTABLES
525         depends on NF_CONNTRACK
526         help
527           Helper matching allows you to match packets in dynamic connections
528           tracked by a conntrack-helper, ie. ip_conntrack_ftp
529
530           To compile it as a module, choose M here.  If unsure, say Y.
531
532 config NETFILTER_XT_MATCH_LENGTH
533         tristate '"length" match support'
534         depends on NETFILTER_XTABLES
535         help
536           This option allows you to match the length of a packet against a
537           specific value or range of values.
538
539           To compile it as a module, choose M here.  If unsure, say N.
540
541 config NETFILTER_XT_MATCH_LIMIT
542         tristate '"limit" match support'
543         depends on NETFILTER_XTABLES
544         help
545           limit matching allows you to control the rate at which a rule can be
546           matched: mainly useful in combination with the LOG target ("LOG
547           target support", below) and to avoid some Denial of Service attacks.
548
549           To compile it as a module, choose M here.  If unsure, say N.
550
551 config NETFILTER_XT_MATCH_MAC
552         tristate '"mac" address match support'
553         depends on NETFILTER_XTABLES
554         help
555           MAC matching allows you to match packets based on the source
556           Ethernet address of the packet.
557
558           To compile it as a module, choose M here.  If unsure, say N.
559
560 config NETFILTER_XT_MATCH_MARK
561         tristate '"mark" match support'
562         depends on NETFILTER_XTABLES
563         help
564           Netfilter mark matching allows you to match packets based on the
565           `nfmark' value in the packet.  This can be set by the MARK target
566           (see below).
567
568           To compile it as a module, choose M here.  If unsure, say N.
569
570 config NETFILTER_XT_MATCH_OWNER
571         tristate '"owner" match support'
572         depends on NETFILTER_XTABLES
573         ---help---
574         Socket owner matching allows you to match locally-generated packets
575         based on who created the socket: the user or group. It is also
576         possible to check whether a socket actually exists.
577
578 config NETFILTER_XT_MATCH_POLICY
579         tristate 'IPsec "policy" match support'
580         depends on NETFILTER_XTABLES && XFRM
581         help
582           Policy matching allows you to match packets based on the
583           IPsec policy that was used during decapsulation/will
584           be used during encapsulation.
585
586           To compile it as a module, choose M here.  If unsure, say N.
587
588 config NETFILTER_XT_MATCH_MULTIPORT
589         tristate '"multiport" Multiple port match support'
590         depends on NETFILTER_XTABLES
591         help
592           Multiport matching allows you to match TCP or UDP packets based on
593           a series of source or destination ports: normally a rule can only
594           match a single range of ports.
595
596           To compile it as a module, choose M here.  If unsure, say N.
597
598 config NETFILTER_XT_MATCH_PHYSDEV
599         tristate '"physdev" match support'
600         depends on NETFILTER_XTABLES && BRIDGE && BRIDGE_NETFILTER
601         help
602           Physdev packet matching matches against the physical bridge ports
603           the IP packet arrived on or will leave by.
604
605           To compile it as a module, choose M here.  If unsure, say N.
606
607 config NETFILTER_XT_MATCH_PKTTYPE
608         tristate '"pkttype" packet type match support'
609         depends on NETFILTER_XTABLES
610         help
611           Packet type matching allows you to match a packet by
612           its "class", eg. BROADCAST, MULTICAST, ...
613
614           Typical usage:
615           iptables -A INPUT -m pkttype --pkt-type broadcast -j LOG
616
617           To compile it as a module, choose M here.  If unsure, say N.
618
619 config NETFILTER_XT_MATCH_QUOTA
620         tristate '"quota" match support'
621         depends on NETFILTER_XTABLES
622         help
623           This option adds a `quota' match, which allows to match on a
624           byte counter.
625
626           If you want to compile it as a module, say M here and read
627           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
628
629 config NETFILTER_XT_MATCH_RATEEST
630         tristate '"rateest" match support'
631         depends on NETFILTER_XTABLES
632         select NETFILTER_XT_TARGET_RATEEST
633         help
634           This option adds a `rateest' match, which allows to match on the
635           rate estimated by the RATEEST target.
636
637           To compile it as a module, choose M here.  If unsure, say N.
638
639 config NETFILTER_XT_MATCH_REALM
640         tristate  '"realm" match support'
641         depends on NETFILTER_XTABLES
642         select NET_CLS_ROUTE
643         help
644           This option adds a `realm' match, which allows you to use the realm
645           key from the routing subsystem inside iptables.
646         
647           This match pretty much resembles the CONFIG_NET_CLS_ROUTE4 option 
648           in tc world.
649         
650           If you want to compile it as a module, say M here and read
651           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
652
653 config NETFILTER_XT_MATCH_SCTP
654         tristate  '"sctp" protocol match support (EXPERIMENTAL)'
655         depends on NETFILTER_XTABLES && EXPERIMENTAL
656         help
657           With this option enabled, you will be able to use the 
658           `sctp' match in order to match on SCTP source/destination ports
659           and SCTP chunk types.
660
661           If you want to compile it as a module, say M here and read
662           <file:Documentation/kbuild/modules.txt>.  If unsure, say `N'.
663
664 config NETFILTER_XT_MATCH_STATE
665         tristate '"state" match support'
666         depends on NETFILTER_XTABLES
667         depends on NF_CONNTRACK
668         help
669           Connection state matching allows you to match packets based on their
670           relationship to a tracked connection (ie. previous packets).  This
671           is a powerful tool for packet classification.
672
673           To compile it as a module, choose M here.  If unsure, say N.
674
675 config NETFILTER_XT_MATCH_STATISTIC
676         tristate '"statistic" match support'
677         depends on NETFILTER_XTABLES
678         help
679           This option adds a `statistic' match, which allows you to match
680           on packets periodically or randomly with a given percentage.
681
682           To compile it as a module, choose M here.  If unsure, say N.
683
684 config NETFILTER_XT_MATCH_STRING
685         tristate  '"string" match support'
686         depends on NETFILTER_XTABLES
687         select TEXTSEARCH
688         select TEXTSEARCH_KMP
689         select TEXTSEARCH_BM
690         select TEXTSEARCH_FSM
691         help
692           This option adds a `string' match, which allows you to look for
693           pattern matchings in packets.
694
695           To compile it as a module, choose M here.  If unsure, say N.
696
697 config NETFILTER_XT_MATCH_TCPMSS
698         tristate '"tcpmss" match support'
699         depends on NETFILTER_XTABLES
700         help
701           This option adds a `tcpmss' match, which allows you to examine the
702           MSS value of TCP SYN packets, which control the maximum packet size
703           for that connection.
704
705           To compile it as a module, choose M here.  If unsure, say N.
706
707 config NETFILTER_XT_MATCH_TIME
708         tristate '"time" match support'
709         depends on NETFILTER_XTABLES
710         ---help---
711           This option adds a "time" match, which allows you to match based on
712           the packet arrival time (at the machine which netfilter is running)
713           on) or departure time/date (for locally generated packets).
714
715           If you say Y here, try `iptables -m time --help` for
716           more information.
717
718           If you want to compile it as a module, say M here.
719           If unsure, say N.
720
721 config NETFILTER_XT_MATCH_U32
722         tristate '"u32" match support'
723         depends on NETFILTER_XTABLES
724         ---help---
725           u32 allows you to extract quantities of up to 4 bytes from a packet,
726           AND them with specified masks, shift them by specified amounts and
727           test whether the results are in any of a set of specified ranges.
728           The specification of what to extract is general enough to skip over
729           headers with lengths stored in the packet, as in IP or TCP header
730           lengths.
731
732           Details and examples are in the kernel module source.
733
734 config NETFILTER_XT_MATCH_HASHLIMIT
735         tristate '"hashlimit" match support'
736         depends on NETFILTER_XTABLES && (IP6_NF_IPTABLES || IP6_NF_IPTABLES=n)
737         help
738           This option adds a `hashlimit' match.
739
740           As opposed to `limit', this match dynamically creates a hash table
741           of limit buckets, based on your selection of source/destination
742           addresses and/or ports.
743
744           It enables you to express policies like `10kpps for any given
745           destination address' or `500pps from any given source address'
746           with a single rule.
747
748 endmenu
749