basechain        1208 include/net/netfilter/nf_tables.h 	const struct nft_base_chain	*basechain;
basechain        1219 include/net/netfilter/nf_tables.h 		    const struct nft_chain *basechain);
basechain          78 include/net/netfilter/nf_tables_offload.h int nft_chain_offload_priority(struct nft_base_chain *basechain);
basechain         160 net/netfilter/nf_tables_api.c 	const struct nft_base_chain *basechain;
basechain         167 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(chain);
basechain         168 net/netfilter/nf_tables_api.c 	ops = &basechain->ops;
basechain         170 net/netfilter/nf_tables_api.c 	if (basechain->type->ops_register)
basechain         171 net/netfilter/nf_tables_api.c 		return basechain->type->ops_register(net, ops);
basechain         180 net/netfilter/nf_tables_api.c 	const struct nft_base_chain *basechain;
basechain         186 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(chain);
basechain         187 net/netfilter/nf_tables_api.c 	ops = &basechain->ops;
basechain         189 net/netfilter/nf_tables_api.c 	if (basechain->type->ops_unregister)
basechain         190 net/netfilter/nf_tables_api.c 		return basechain->type->ops_unregister(net, ops);
basechain        1284 net/netfilter/nf_tables_api.c 		const struct nft_base_chain *basechain = nft_base_chain(chain);
basechain        1285 net/netfilter/nf_tables_api.c 		const struct nf_hook_ops *ops = &basechain->ops;
basechain        1296 net/netfilter/nf_tables_api.c 		if (basechain->dev_name[0] &&
basechain        1297 net/netfilter/nf_tables_api.c 		    nla_put_string(skb, NFTA_HOOK_DEV, basechain->dev_name))
basechain        1302 net/netfilter/nf_tables_api.c 				 htonl(basechain->policy)))
basechain        1305 net/netfilter/nf_tables_api.c 		if (nla_put_string(skb, NFTA_CHAIN_TYPE, basechain->type->name))
basechain        1308 net/netfilter/nf_tables_api.c 		stats = rcu_dereference_check(basechain->stats,
basechain        1530 net/netfilter/nf_tables_api.c 		struct nft_base_chain *basechain = nft_base_chain(chain);
basechain        1532 net/netfilter/nf_tables_api.c 		module_put(basechain->type->owner);
basechain        1533 net/netfilter/nf_tables_api.c 		if (rcu_access_pointer(basechain->stats)) {
basechain        1535 net/netfilter/nf_tables_api.c 			free_percpu(rcu_dereference_raw(basechain->stats));
basechain        1538 net/netfilter/nf_tables_api.c 		kfree(basechain);
basechain        1655 net/netfilter/nf_tables_api.c 	struct nft_base_chain *basechain;
basechain        1674 net/netfilter/nf_tables_api.c 		basechain = kzalloc(sizeof(*basechain), GFP_KERNEL);
basechain        1675 net/netfilter/nf_tables_api.c 		if (basechain == NULL) {
basechain        1681 net/netfilter/nf_tables_api.c 			strncpy(basechain->dev_name, hook.dev->name, IFNAMSIZ);
basechain        1687 net/netfilter/nf_tables_api.c 				kfree(basechain);
basechain        1690 net/netfilter/nf_tables_api.c 			rcu_assign_pointer(basechain->stats, stats);
basechain        1694 net/netfilter/nf_tables_api.c 		basechain->type = hook.type;
basechain        1695 net/netfilter/nf_tables_api.c 		chain = &basechain->chain;
basechain        1697 net/netfilter/nf_tables_api.c 		ops		= &basechain->ops;
basechain        1706 net/netfilter/nf_tables_api.c 		basechain->policy = NF_ACCEPT;
basechain        1708 net/netfilter/nf_tables_api.c 		    nft_chain_offload_priority(basechain) < 0)
basechain        1711 net/netfilter/nf_tables_api.c 		flow_block_init(&basechain->flow_block);
basechain        1777 net/netfilter/nf_tables_api.c 	struct nft_base_chain *basechain;
basechain        1796 net/netfilter/nf_tables_api.c 		basechain = nft_base_chain(chain);
basechain        1797 net/netfilter/nf_tables_api.c 		if (basechain->type != hook.type) {
basechain        1802 net/netfilter/nf_tables_api.c 		ops = &basechain->ops;
basechain        6494 net/netfilter/nf_tables_api.c 	struct nft_base_chain *basechain;
basechain        6502 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(trans->ctx.chain);
basechain        6503 net/netfilter/nf_tables_api.c 	basechain->policy = NF_DROP;
basechain        6508 net/netfilter/nf_tables_api.c 	struct nft_base_chain *basechain;
basechain        6526 net/netfilter/nf_tables_api.c 	basechain = nft_base_chain(trans->ctx.chain);
basechain        6531 net/netfilter/nf_tables_api.c 		basechain->policy = nft_trans_chain_policy(trans);
basechain        7187 net/netfilter/nf_tables_api.c 	const struct nft_base_chain *basechain;
basechain        7190 net/netfilter/nf_tables_api.c 		basechain = nft_base_chain(chain);
basechain        7191 net/netfilter/nf_tables_api.c 		if (basechain->type->type != type)
basechain        7201 net/netfilter/nf_tables_api.c 	struct nft_base_chain *basechain;
basechain        7204 net/netfilter/nf_tables_api.c 		basechain = nft_base_chain(chain);
basechain        7206 net/netfilter/nf_tables_api.c 		if ((1 << basechain->ops.hooknum) & hook_flags)
basechain         151 net/netfilter/nf_tables_core.c 	const struct nft_chain *chain = priv, *basechain = chain;
basechain         164 net/netfilter/nf_tables_core.c 		nft_trace_init(&info, pkt, &regs.verdict, basechain);
basechain         239 net/netfilter/nf_tables_core.c 	nft_trace_packet(&info, basechain, NULL, NFT_TRACETYPE_POLICY);
basechain         242 net/netfilter/nf_tables_core.c 		nft_update_chain_stats(basechain, pkt);
basechain         244 net/netfilter/nf_tables_core.c 	return nft_base_chain(basechain)->policy;
basechain         138 net/netfilter/nf_tables_offload.c static int nft_setup_cb_call(struct nft_base_chain *basechain,
basechain         144 net/netfilter/nf_tables_offload.c 	list_for_each_entry(block_cb, &basechain->flow_block.cb_list, list) {
basechain         152 net/netfilter/nf_tables_offload.c int nft_chain_offload_priority(struct nft_base_chain *basechain)
basechain         154 net/netfilter/nf_tables_offload.c 	if (basechain->ops.priority <= 0 ||
basechain         155 net/netfilter/nf_tables_offload.c 	    basechain->ops.priority > USHRT_MAX)
basechain         167 net/netfilter/nf_tables_offload.c 	struct nft_base_chain *basechain;
basechain         174 net/netfilter/nf_tables_offload.c 	basechain = nft_base_chain(chain);
basechain         180 net/netfilter/nf_tables_offload.c 				     basechain->ops.priority, &extack);
basechain         186 net/netfilter/nf_tables_offload.c 	return nft_setup_cb_call(basechain, TC_SETUP_CLSFLOWER, &cls_flow);
basechain         190 net/netfilter/nf_tables_offload.c 				 struct nft_base_chain *basechain)
basechain         192 net/netfilter/nf_tables_offload.c 	list_splice(&bo->cb_list, &basechain->flow_block.cb_list);
basechain         197 net/netfilter/nf_tables_offload.c 				   struct nft_base_chain *basechain)
basechain         209 net/netfilter/nf_tables_offload.c static int nft_block_setup(struct nft_base_chain *basechain,
basechain         217 net/netfilter/nf_tables_offload.c 		err = nft_flow_offload_bind(bo, basechain);
basechain         220 net/netfilter/nf_tables_offload.c 		err = nft_flow_offload_unbind(bo, basechain);
basechain         304 net/netfilter/nf_tables_offload.c 	struct nft_base_chain *basechain;
basechain         311 net/netfilter/nf_tables_offload.c 	basechain = nft_base_chain(chain);
basechain         312 net/netfilter/nf_tables_offload.c 	dev = basechain->ops.dev;
basechain         316 net/netfilter/nf_tables_offload.c 	policy = ppolicy ? *ppolicy : basechain->policy;
basechain         323 net/netfilter/nf_tables_offload.c 		return nft_block_offload_cmd(basechain, dev, cmd);
basechain         325 net/netfilter/nf_tables_offload.c 		return nft_indr_block_offload_cmd(basechain, dev, cmd);
basechain         406 net/netfilter/nf_tables_offload.c 	struct nft_base_chain *basechain;
basechain         420 net/netfilter/nf_tables_offload.c 			basechain = nft_base_chain(chain);
basechain         421 net/netfilter/nf_tables_offload.c 			if (strncmp(basechain->dev_name, dev->name, IFNAMSIZ))
basechain         441 net/netfilter/nf_tables_offload.c 		struct nft_base_chain *basechain;
basechain         443 net/netfilter/nf_tables_offload.c 		basechain = nft_base_chain(chain);
basechain         444 net/netfilter/nf_tables_offload.c 		nft_indr_block_ing_cmd(dev, basechain, cb, cb_priv, cmd);
basechain         227 net/netfilter/nf_tables_trace.c 	nfmsg->nfgen_family	= info->basechain->type->family;
basechain         260 net/netfilter/nf_tables_trace.c 				 htonl(info->basechain->policy)))
basechain         291 net/netfilter/nf_tables_trace.c 	info->basechain = nft_base_chain(chain);
basechain         289 net/netfilter/nft_chain_filter.c 	struct nft_base_chain *basechain = nft_base_chain(ctx->chain);
basechain         293 net/netfilter/nft_chain_filter.c 		if (strcmp(basechain->dev_name, dev->name) != 0)
basechain         306 net/netfilter/nft_chain_filter.c 		if (dev->ifindex != basechain->ops.dev->ifindex)
basechain         309 net/netfilter/nft_chain_filter.c 		strncpy(basechain->dev_name, dev->name, IFNAMSIZ);
basechain          35 net/netfilter/nft_compat.c 	const struct nft_base_chain *basechain;
basechain          41 net/netfilter/nft_compat.c 	basechain = nft_base_chain(chain);
basechain          45 net/netfilter/nft_compat.c 		if (basechain->type->type != type)
basechain         165 net/netfilter/nft_compat.c 		const struct nft_base_chain *basechain =
basechain         167 net/netfilter/nft_compat.c 		const struct nf_hook_ops *ops = &basechain->ops;
basechain         313 net/netfilter/nft_compat.c 		const struct nft_base_chain *basechain =
basechain         315 net/netfilter/nft_compat.c 		const struct nf_hook_ops *ops = &basechain->ops;
basechain         409 net/netfilter/nft_compat.c 		const struct nft_base_chain *basechain =
basechain         411 net/netfilter/nft_compat.c 		const struct nf_hook_ops *ops = &basechain->ops;
basechain         554 net/netfilter/nft_compat.c 		const struct nft_base_chain *basechain =
basechain         556 net/netfilter/nft_compat.c 		const struct nf_hook_ops *ops = &basechain->ops;