Merge tag 'clk-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux
[linux-block.git] / net / netfilter / Makefile
CommitLineData
b2441318 1# SPDX-License-Identifier: GPL-2.0
ef71fe27 2netfilter-objs := core.o nf_log.o nf_queue.o nf_sockopt.o utils.o
f6180121 3
a0ae2562
FW
4nf_conntrack-y := nf_conntrack_core.o nf_conntrack_standalone.o nf_conntrack_expect.o nf_conntrack_helper.o \
5 nf_conntrack_proto.o nf_conntrack_proto_generic.o nf_conntrack_proto_tcp.o nf_conntrack_proto_udp.o \
6 nf_conntrack_proto_icmp.o \
7 nf_conntrack_extend.o nf_conntrack_acct.o nf_conntrack_seqadj.o
8
9nf_conntrack-$(subst m,y,$(CONFIG_IPV6)) += nf_conntrack_proto_icmpv6.o
dd705072 10nf_conntrack-$(CONFIG_NF_CONNTRACK_TIMEOUT) += nf_conntrack_timeout.o
a992ca2a 11nf_conntrack-$(CONFIG_NF_CONNTRACK_TIMESTAMP) += nf_conntrack_timestamp.o
f6180121 12nf_conntrack-$(CONFIG_NF_CONNTRACK_EVENTS) += nf_conntrack_ecache.o
c539f017 13nf_conntrack-$(CONFIG_NF_CONNTRACK_LABELS) += nf_conntrack_labels.o
c51d3901 14nf_conntrack-$(CONFIG_NF_CT_PROTO_DCCP) += nf_conntrack_proto_dccp.o
a85406af 15nf_conntrack-$(CONFIG_NF_CT_PROTO_SCTP) += nf_conntrack_proto_sctp.o
22fc4c4c 16nf_conntrack-$(CONFIG_NF_CT_PROTO_GRE) += nf_conntrack_proto_gre.o
b4c2b959
KKD
17ifeq ($(CONFIG_NF_CONNTRACK),m)
18nf_conntrack-$(CONFIG_DEBUG_INFO_BTF_MODULES) += nf_conntrack_bpf.o
19else ifeq ($(CONFIG_NF_CONNTRACK),y)
20nf_conntrack-$(CONFIG_DEBUG_INFO_BTF) += nf_conntrack_bpf.o
21endif
f6ebe77f
HW
22
23obj-$(CONFIG_NETFILTER) = netfilter.o
24
f9e815b3 25obj-$(CONFIG_NETFILTER_NETLINK) += nfnetlink.o
94139027 26obj-$(CONFIG_NETFILTER_NETLINK_ACCT) += nfnetlink_acct.o
7af4cc3f 27obj-$(CONFIG_NETFILTER_NETLINK_QUEUE) += nfnetlink_queue.o
0597f268 28obj-$(CONFIG_NETFILTER_NETLINK_LOG) += nfnetlink_log.o
f6b7b5f4 29obj-$(CONFIG_NETFILTER_NETLINK_OSF) += nfnetlink_osf.o
e2cf17d3 30obj-$(CONFIG_NETFILTER_NETLINK_HOOK) += nfnetlink_hook.o
9fb9cbb1 31
2e4e6a17 32# connection tracking
9fb9cbb1 33obj-$(CONFIG_NF_CONNTRACK) += nf_conntrack.o
9fb9cbb1 34
c1d10adb
PNA
35# netlink interface for nf_conntrack
36obj-$(CONFIG_NF_CT_NETLINK) += nf_conntrack_netlink.o
50978462 37obj-$(CONFIG_NF_CT_NETLINK_TIMEOUT) += nfnetlink_cttimeout.o
6e9c2db3 38obj-$(CONFIG_NF_CT_NETLINK_HELPER) += nfnetlink_cthelper.o
2e4e6a17
HW
39
40# connection tracking helpers
f587de0e
PM
41nf_conntrack_h323-objs := nf_conntrack_h323_main.o nf_conntrack_h323_asn1.o
42
16958900 43obj-$(CONFIG_NF_CONNTRACK_AMANDA) += nf_conntrack_amanda.o
2e4e6a17 44obj-$(CONFIG_NF_CONNTRACK_FTP) += nf_conntrack_ftp.o
f587de0e 45obj-$(CONFIG_NF_CONNTRACK_H323) += nf_conntrack_h323.o
869f37d8 46obj-$(CONFIG_NF_CONNTRACK_IRC) += nf_conntrack_irc.o
93557f53 47obj-$(CONFIG_NF_CONNTRACK_BROADCAST) += nf_conntrack_broadcast.o
92703eee 48obj-$(CONFIG_NF_CONNTRACK_NETBIOS_NS) += nf_conntrack_netbios_ns.o
93557f53 49obj-$(CONFIG_NF_CONNTRACK_SNMP) += nf_conntrack_snmp.o
f09943fe 50obj-$(CONFIG_NF_CONNTRACK_PPTP) += nf_conntrack_pptp.o
6fecd198 51obj-$(CONFIG_NF_CONNTRACK_SANE) += nf_conntrack_sane.o
9fafcd7b 52obj-$(CONFIG_NF_CONNTRACK_SIP) += nf_conntrack_sip.o
a536df35 53obj-$(CONFIG_NF_CONNTRACK_TFTP) += nf_conntrack_tftp.o
2e4e6a17 54
5cbabeec 55nf_nat-y := nf_nat_core.o nf_nat_proto.o nf_nat_helper.o
0c4e966e 56
db3187ae 57obj-$(CONFIG_NF_LOG_SYSLOG) += nf_log_syslog.o
83e96d44 58
c7232c99 59obj-$(CONFIG_NF_NAT) += nf_nat.o
1ac89d20 60nf_nat-$(CONFIG_NF_NAT_REDIRECT) += nf_nat_redirect.o
d1aca8ab 61nf_nat-$(CONFIG_NF_NAT_MASQUERADE) += nf_nat_masquerade.o
c7232c99 62
820dc052
LB
63ifeq ($(CONFIG_NF_NAT),m)
64nf_nat-$(CONFIG_DEBUG_INFO_BTF_MODULES) += nf_nat_bpf.o
65else ifeq ($(CONFIG_NF_NAT),y)
66nf_nat-$(CONFIG_DEBUG_INFO_BTF) += nf_nat_bpf.o
67endif
68
d33cbeeb 69# NAT helpers
ee6eb966 70obj-$(CONFIG_NF_NAT_AMANDA) += nf_nat_amanda.o
d33cbeeb 71obj-$(CONFIG_NF_NAT_FTP) += nf_nat_ftp.o
5901b6be 72obj-$(CONFIG_NF_NAT_IRC) += nf_nat_irc.o
9a664821 73obj-$(CONFIG_NF_NAT_SIP) += nf_nat_sip.o
320ff567 74obj-$(CONFIG_NF_NAT_TFTP) += nf_nat_tftp.o
d33cbeeb 75
48b1de4c
PM
76# SYNPROXY
77obj-$(CONFIG_NETFILTER_SYNPROXY) += nf_synproxy_core.o
78
625c5561
FW
79obj-$(CONFIG_NETFILTER_CONNCOUNT) += nf_conncount.o
80
502061f8
PNA
81# generic packet duplication from netdev family
82obj-$(CONFIG_NF_DUP_NETDEV) += nf_dup_netdev.o
83
96518518 84# nf_tables
02c7b25e
PNA
85nf_tables-objs := nf_tables_core.o nf_tables_api.o nft_chain_filter.o \
86 nf_tables_trace.o nft_immediate.o nft_cmp.o nft_range.o \
87 nft_bitwise.o nft_byteorder.o nft_payload.o nft_lookup.o \
836382dc 88 nft_dynset.o nft_meta.o nft_rt.o nft_exthdr.o nft_last.o \
023223df 89 nft_counter.o nft_chain_route.o nf_tables_offload.o \
e32a4dc6
FW
90 nft_set_hash.o nft_set_bitmap.o nft_set_rbtree.o \
91 nft_set_pipapo.o
e240cd0d 92
7400b063 93ifdef CONFIG_X86_64
e6abef61 94ifndef CONFIG_UML
7400b063
SB
95nf_tables-objs += nft_set_pipapo_avx2.o
96endif
97endif
98
96518518 99obj-$(CONFIG_NF_TABLES) += nf_tables.o
0ca743a5 100obj-$(CONFIG_NFT_COMPAT) += nft_compat.o
290180e2 101obj-$(CONFIG_NFT_CONNLIMIT) += nft_connlimit.o
91dbc6be 102obj-$(CONFIG_NFT_NUMGEN) += nft_numgen.o
96518518 103obj-$(CONFIG_NFT_CT) += nft_ct.o
a3c90f7a 104obj-$(CONFIG_NFT_FLOW_OFFLOAD) += nft_flow_offload.o
96518518 105obj-$(CONFIG_NFT_LIMIT) += nft_limit.o
eb31628e 106obj-$(CONFIG_NFT_NAT) += nft_nat.o
c97d22e6 107obj-$(CONFIG_NFT_OBJREF) += nft_objref.o
0aff078d 108obj-$(CONFIG_NFT_QUEUE) += nft_queue.o
3d2f30a1 109obj-$(CONFIG_NFT_QUOTA) += nft_quota.o
bee11dc7 110obj-$(CONFIG_NFT_REJECT) += nft_reject.o
05513e9e 111obj-$(CONFIG_NFT_REJECT_INET) += nft_reject_inet.o
6bbb9ad3 112obj-$(CONFIG_NFT_REJECT_NETDEV) += nft_reject_netdev.o
af308b94 113obj-$(CONFIG_NFT_TUNNEL) += nft_tunnel.o
96518518 114obj-$(CONFIG_NFT_LOG) += nft_log.o
9ba1f726 115obj-$(CONFIG_NFT_MASQ) += nft_masq.o
e9105f1b 116obj-$(CONFIG_NFT_REDIR) += nft_redir.o
cb1b69b0 117obj-$(CONFIG_NFT_HASH) += nft_hash.o
f6d0cbcf
FW
118obj-$(CONFIG_NFT_FIB) += nft_fib.o
119obj-$(CONFIG_NFT_FIB_INET) += nft_fib_inet.o
6392c226 120obj-$(CONFIG_NFT_FIB_NETDEV) += nft_fib_netdev.o
554ced0a 121obj-$(CONFIG_NFT_SOCKET) += nft_socket.o
b96af92d 122obj-$(CONFIG_NFT_OSF) += nft_osf.o
4ed8eb65 123obj-$(CONFIG_NFT_TPROXY) += nft_tproxy.o
6c472602 124obj-$(CONFIG_NFT_XFRM) += nft_xfrm.o
ad49d86e 125obj-$(CONFIG_NFT_SYNPROXY) += nft_synproxy.o
96518518 126
db8ab388
FW
127obj-$(CONFIG_NFT_NAT) += nft_chain_nat.o
128
502061f8
PNA
129# nf_tables netdev
130obj-$(CONFIG_NFT_DUP_NETDEV) += nft_dup_netdev.o
39e6dea2 131obj-$(CONFIG_NFT_FWD_NETDEV) += nft_fwd_netdev.o
502061f8 132
ac2a6666
PNA
133# flow table infrastructure
134obj-$(CONFIG_NF_FLOW_TABLE) += nf_flow_table.o
c29f74e0
PNA
135nf_flow_table-objs := nf_flow_table_core.o nf_flow_table_ip.o \
136 nf_flow_table_offload.o
b0381776 137nf_flow_table-$(CONFIG_NF_FLOW_TABLE_PROCFS) += nf_flow_table_procfs.o
1a999d89 138
7c23b629 139obj-$(CONFIG_NF_FLOW_TABLE_INET) += nf_flow_table_inet.o
ac2a6666 140
b0edba2a 141# generic X tables
2e4e6a17
HW
142obj-$(CONFIG_NETFILTER_XTABLES) += x_tables.o xt_tcpudp.o
143
28b94988
JE
144# combos
145obj-$(CONFIG_NETFILTER_XT_MARK) += xt_mark.o
b8f00ba2 146obj-$(CONFIG_NETFILTER_XT_CONNMARK) += xt_connmark.o
d956798d 147obj-$(CONFIG_NETFILTER_XT_SET) += xt_set.o
8993cf8e 148obj-$(CONFIG_NETFILTER_XT_NAT) += xt_nat.o
28b94988 149
2e4e6a17 150# targets
43f393ca 151obj-$(CONFIG_NETFILTER_XT_TARGET_AUDIT) += xt_AUDIT.o
edf0e1fb 152obj-$(CONFIG_NETFILTER_XT_TARGET_CHECKSUM) += xt_CHECKSUM.o
2e4e6a17 153obj-$(CONFIG_NETFILTER_XT_TARGET_CLASSIFY) += xt_CLASSIFY.o
0795c65d 154obj-$(CONFIG_NETFILTER_XT_TARGET_CONNSECMARK) += xt_CONNSECMARK.o
84f3bb9a 155obj-$(CONFIG_NETFILTER_XT_TARGET_CT) += xt_CT.o
a468701d 156obj-$(CONFIG_NETFILTER_XT_TARGET_DSCP) += xt_DSCP.o
563d36eb 157obj-$(CONFIG_NETFILTER_XT_TARGET_HL) += xt_HL.o
cf308a1f 158obj-$(CONFIG_NETFILTER_XT_TARGET_HMARK) += xt_HMARK.o
268cb38e 159obj-$(CONFIG_NETFILTER_XT_TARGET_LED) += xt_LED.o
6939c33a 160obj-$(CONFIG_NETFILTER_XT_TARGET_LOG) += xt_LOG.o
b3d54b3e 161obj-$(CONFIG_NETFILTER_XT_TARGET_NETMAP) += xt_NETMAP.o
baf7b1e1 162obj-$(CONFIG_NETFILTER_XT_TARGET_NFLOG) += xt_NFLOG.o
0795c65d 163obj-$(CONFIG_NETFILTER_XT_TARGET_NFQUEUE) += xt_NFQUEUE.o
5859034d 164obj-$(CONFIG_NETFILTER_XT_TARGET_RATEEST) += xt_RATEEST.o
2cbc78a2 165obj-$(CONFIG_NETFILTER_XT_TARGET_REDIRECT) += xt_REDIRECT.o
adf82acc 166obj-$(CONFIG_NETFILTER_XT_TARGET_MASQUERADE) += xt_MASQUERADE.o
5e6874cd 167obj-$(CONFIG_NETFILTER_XT_TARGET_SECMARK) += xt_SECMARK.o
e8439270 168obj-$(CONFIG_NETFILTER_XT_TARGET_TPROXY) += xt_TPROXY.o
cdd289a2 169obj-$(CONFIG_NETFILTER_XT_TARGET_TCPMSS) += xt_TCPMSS.o
338e8a79 170obj-$(CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP) += xt_TCPOPTSTRIP.o
e281b198 171obj-$(CONFIG_NETFILTER_XT_TARGET_TEE) += xt_TEE.o
0795c65d 172obj-$(CONFIG_NETFILTER_XT_TARGET_TRACE) += xt_TRACE.o
0902b469 173obj-$(CONFIG_NETFILTER_XT_TARGET_IDLETIMER) += xt_IDLETIMER.o
2e4e6a17
HW
174
175# matches
de81bbea 176obj-$(CONFIG_NETFILTER_XT_MATCH_ADDRTYPE) += xt_addrtype.o
e6f30c73 177obj-$(CONFIG_NETFILTER_XT_MATCH_BPF) += xt_bpf.o
0269ea49 178obj-$(CONFIG_NETFILTER_XT_MATCH_CLUSTER) += xt_cluster.o
2e4e6a17
HW
179obj-$(CONFIG_NETFILTER_XT_MATCH_COMMENT) += xt_comment.o
180obj-$(CONFIG_NETFILTER_XT_MATCH_CONNBYTES) += xt_connbytes.o
c539f017 181obj-$(CONFIG_NETFILTER_XT_MATCH_CONNLABEL) += xt_connlabel.o
370786f9 182obj-$(CONFIG_NETFILTER_XT_MATCH_CONNLIMIT) += xt_connlimit.o
2e4e6a17 183obj-$(CONFIG_NETFILTER_XT_MATCH_CONNTRACK) += xt_conntrack.o
e8648a1f 184obj-$(CONFIG_NETFILTER_XT_MATCH_CPU) += xt_cpu.o
2e4e6a17 185obj-$(CONFIG_NETFILTER_XT_MATCH_DCCP) += xt_dccp.o
9291747f 186obj-$(CONFIG_NETFILTER_XT_MATCH_DEVGROUP) += xt_devgroup.o
9ba16276 187obj-$(CONFIG_NETFILTER_XT_MATCH_DSCP) += xt_dscp.o
d446a820 188obj-$(CONFIG_NETFILTER_XT_MATCH_ECN) += xt_ecn.o
dc5ab2fa 189obj-$(CONFIG_NETFILTER_XT_MATCH_ESP) += xt_esp.o
0795c65d 190obj-$(CONFIG_NETFILTER_XT_MATCH_HASHLIMIT) += xt_hashlimit.o
2e4e6a17 191obj-$(CONFIG_NETFILTER_XT_MATCH_HELPER) += xt_helper.o
cfac5ef7 192obj-$(CONFIG_NETFILTER_XT_MATCH_HL) += xt_hl.o
6a649f33 193obj-$(CONFIG_NETFILTER_XT_MATCH_IPCOMP) += xt_ipcomp.o
f72e25a8 194obj-$(CONFIG_NETFILTER_XT_MATCH_IPRANGE) += xt_iprange.o
9c3e1c39 195obj-$(CONFIG_NETFILTER_XT_MATCH_IPVS) += xt_ipvs.o
74f77a6b 196obj-$(CONFIG_NETFILTER_XT_MATCH_L2TP) += xt_l2tp.o
2e4e6a17
HW
197obj-$(CONFIG_NETFILTER_XT_MATCH_LENGTH) += xt_length.o
198obj-$(CONFIG_NETFILTER_XT_MATCH_LIMIT) += xt_limit.o
199obj-$(CONFIG_NETFILTER_XT_MATCH_MAC) += xt_mac.o
a89ecb6a 200obj-$(CONFIG_NETFILTER_XT_MATCH_MULTIPORT) += xt_multiport.o
ceb98d03 201obj-$(CONFIG_NETFILTER_XT_MATCH_NFACCT) += xt_nfacct.o
11eeef41 202obj-$(CONFIG_NETFILTER_XT_MATCH_OSF) += xt_osf.o
0265ab44 203obj-$(CONFIG_NETFILTER_XT_MATCH_OWNER) += xt_owner.o
82a37132 204obj-$(CONFIG_NETFILTER_XT_MATCH_CGROUP) += xt_cgroup.o
0795c65d 205obj-$(CONFIG_NETFILTER_XT_MATCH_PHYSDEV) += xt_physdev.o
2e4e6a17 206obj-$(CONFIG_NETFILTER_XT_MATCH_PKTTYPE) += xt_pkttype.o
0795c65d 207obj-$(CONFIG_NETFILTER_XT_MATCH_POLICY) += xt_policy.o
62b77434 208obj-$(CONFIG_NETFILTER_XT_MATCH_QUOTA) += xt_quota.o
50c164a8 209obj-$(CONFIG_NETFILTER_XT_MATCH_RATEEST) += xt_rateest.o
2e4e6a17 210obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o
e948b20a 211obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT) += xt_recent.o
2e4e6a17 212obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o
136cdc71 213obj-$(CONFIG_NETFILTER_XT_MATCH_SOCKET) += xt_socket.o
2e4e6a17 214obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o
f3389805 215obj-$(CONFIG_NETFILTER_XT_MATCH_STATISTIC) += xt_statistic.o
2e4e6a17
HW
216obj-$(CONFIG_NETFILTER_XT_MATCH_STRING) += xt_string.o
217obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o
0795c65d 218obj-$(CONFIG_NETFILTER_XT_MATCH_TIME) += xt_time.o
1b50b8a3 219obj-$(CONFIG_NETFILTER_XT_MATCH_U32) += xt_u32.o
cb7f6a7b 220
a7b4f989
JK
221# ipset
222obj-$(CONFIG_IP_SET) += ipset/
223
cb7f6a7b
JV
224# IPVS
225obj-$(CONFIG_IP_VS) += ipvs/
7a3f5b0d
RS
226
227# lwtunnel
228obj-$(CONFIG_LWTUNNEL) += nf_hooks_lwtunnel.o