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