Home
last modified time | relevance | path

Searched refs:regs (Results 1 – 25 of 51) sorted by relevance

123

/net/netfilter/
Dnf_tables_core.c51 struct nft_regs *regs) in nft_cmp_fast_eval() argument
56 if ((regs->data[priv->sreg] & mask) == priv->data) in nft_cmp_fast_eval()
58 regs->verdict.code = NFT_BREAK; in nft_cmp_fast_eval()
62 struct nft_regs *regs, in nft_payload_fast_eval() argument
67 u32 *dest = &regs->data[priv->dreg]; in nft_payload_fast_eval()
124 struct nft_regs *regs, in expr_call_ops_eval() argument
131 return fun(expr, regs, pkt); } while (0) in expr_call_ops_eval()
145 expr->ops->eval(expr, regs, pkt); in expr_call_ops_eval()
156 struct nft_regs regs = {}; in nft_do_chain() local
164 nft_trace_init(&info, pkt, &regs.verdict, basechain); in nft_do_chain()
[all …]
Dnft_synproxy.c45 struct nft_regs *regs, in nft_synproxy_eval_v4() argument
61 regs->verdict.code = NF_STOLEN; in nft_synproxy_eval_v4()
67 regs->verdict.code = NF_STOLEN; in nft_synproxy_eval_v4()
69 regs->verdict.code = NF_DROP; in nft_synproxy_eval_v4()
76 struct nft_regs *regs, in nft_synproxy_eval_v6() argument
92 regs->verdict.code = NF_STOLEN; in nft_synproxy_eval_v6()
98 regs->verdict.code = NF_STOLEN; in nft_synproxy_eval_v6()
100 regs->verdict.code = NF_DROP; in nft_synproxy_eval_v6()
107 struct nft_regs *regs, in nft_synproxy_do_eval() argument
117 regs->verdict.code = NFT_BREAK; in nft_synproxy_do_eval()
[all …]
Dnft_xfrm.c117 struct nft_regs *regs, in nft_xfrm_state_get_key() argument
120 u32 *dest = &regs->data[priv->dreg]; in nft_xfrm_state_get_key()
125 regs->verdict.code = NFT_BREAK; in nft_xfrm_state_get_key()
154 regs->verdict.code = NFT_BREAK; in nft_xfrm_state_get_key()
158 struct nft_regs *regs, in nft_xfrm_get_eval_in() argument
165 regs->verdict.code = NFT_BREAK; in nft_xfrm_get_eval_in()
170 nft_xfrm_state_get_key(priv, regs, state); in nft_xfrm_get_eval_in()
174 struct nft_regs *regs, in nft_xfrm_get_eval_out() argument
185 nft_xfrm_state_get_key(priv, regs, dst->xfrm); in nft_xfrm_get_eval_out()
189 regs->verdict.code = NFT_BREAK; in nft_xfrm_get_eval_out()
[all …]
Dnft_tproxy.c22 struct nft_regs *regs, in nft_tproxy_eval_v4() argument
35 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v4()
41 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v4()
55 taddr = regs->data[priv->sreg_addr]; in nft_tproxy_eval_v4()
59 tport = nft_reg_load16(&regs->data[priv->sreg_port]); in nft_tproxy_eval_v4()
80 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v4()
85 struct nft_regs *regs, in nft_tproxy_eval_v6() argument
102 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v6()
109 regs->verdict.code = NFT_BREAK; in nft_tproxy_eval_v6()
123 memcpy(&taddr, &regs->data[priv->sreg_addr], sizeof(taddr)); in nft_tproxy_eval_v6()
[all …]
Dnft_fib_netdev.c22 struct nft_regs *regs, in nft_fib_netdev_eval() argument
32 return nft_fib4_eval(expr, regs, pkt); in nft_fib_netdev_eval()
34 return nft_fib4_eval_type(expr, regs, pkt); in nft_fib_netdev_eval()
43 return nft_fib6_eval(expr, regs, pkt); in nft_fib_netdev_eval()
45 return nft_fib6_eval_type(expr, regs, pkt); in nft_fib_netdev_eval()
50 regs->verdict.code = NFT_BREAK; in nft_fib_netdev_eval()
Dnft_fib_inet.c15 struct nft_regs *regs, in nft_fib_inet_eval() argument
25 return nft_fib4_eval(expr, regs, pkt); in nft_fib_inet_eval()
27 return nft_fib4_eval_type(expr, regs, pkt); in nft_fib_inet_eval()
34 return nft_fib6_eval(expr, regs, pkt); in nft_fib_inet_eval()
36 return nft_fib6_eval_type(expr, regs, pkt); in nft_fib_inet_eval()
41 regs->verdict.code = NF_DROP; in nft_fib_inet_eval()
Dnft_masq.c99 struct nft_regs *regs, in nft_masq_ipv4_eval() argument
109 &regs->data[priv->sreg_proto_min]); in nft_masq_ipv4_eval()
111 &regs->data[priv->sreg_proto_max]); in nft_masq_ipv4_eval()
113 regs->verdict.code = nf_nat_masquerade_ipv4(pkt->skb, nft_hook(pkt), in nft_masq_ipv4_eval()
145 struct nft_regs *regs, in nft_masq_ipv6_eval() argument
155 &regs->data[priv->sreg_proto_min]); in nft_masq_ipv6_eval()
157 &regs->data[priv->sreg_proto_max]); in nft_masq_ipv6_eval()
159 regs->verdict.code = nf_nat_masquerade_ipv6(pkt->skb, &range, in nft_masq_ipv6_eval()
205 struct nft_regs *regs, in nft_masq_inet_eval() argument
210 return nft_masq_ipv4_eval(expr, regs, pkt); in nft_masq_inet_eval()
[all …]
Dnft_nat.c34 struct nft_regs *regs, in nft_nat_eval() argument
46 regs->data[priv->sreg_addr_min]; in nft_nat_eval()
48 regs->data[priv->sreg_addr_max]; in nft_nat_eval()
52 &regs->data[priv->sreg_addr_min], in nft_nat_eval()
55 &regs->data[priv->sreg_addr_max], in nft_nat_eval()
63 &regs->data[priv->sreg_proto_min]); in nft_nat_eval()
65 &regs->data[priv->sreg_proto_max]); in nft_nat_eval()
71 regs->verdict.code = nf_nat_setup_info(ct, &range, priv->type); in nft_nat_eval()
279 struct nft_regs *regs, in nft_nat_inet_eval() argument
286 nft_nat_eval(expr, regs, pkt); in nft_nat_inet_eval()
Dnft_fwd_netdev.c25 struct nft_regs *regs, in nft_fwd_netdev_eval() argument
29 int oif = regs->data[priv->sreg_dev]; in nft_fwd_netdev_eval()
35 regs->verdict.code = NF_STOLEN; in nft_fwd_netdev_eval()
75 int oif = ctx->regs[priv->sreg_dev].data.data[0]; in nft_fwd_netdev_offload()
92 struct nft_regs *regs, in nft_fwd_neigh_eval() argument
96 void *addr = &regs->data[priv->sreg_addr]; in nft_fwd_neigh_eval()
97 int oif = regs->data[priv->sreg_dev]; in nft_fwd_neigh_eval()
149 regs->verdict.code = verdict; in nft_fwd_neigh_eval()
Dnft_connlimit.c23 struct nft_regs *regs, in nft_connlimit_do_eval() argument
42 regs->verdict.code = NF_DROP; in nft_connlimit_do_eval()
47 regs->verdict.code = NF_DROP; in nft_connlimit_do_eval()
54 regs->verdict.code = NFT_BREAK; in nft_connlimit_do_eval()
109 struct nft_regs *regs, in nft_connlimit_obj_eval() argument
114 nft_connlimit_do_eval(priv, regs, pkt, NULL); in nft_connlimit_obj_eval()
166 struct nft_regs *regs, in nft_connlimit_eval() argument
171 nft_connlimit_do_eval(priv, regs, pkt, NULL); in nft_connlimit_eval()
Dnft_dynset.c48 struct nft_regs *regs) in nft_dynset_new() argument
60 &regs->data[priv->sreg_key], in nft_dynset_new()
61 &regs->data[priv->sreg_data], in nft_dynset_new()
82 struct nft_regs *regs, const struct nft_pktinfo *pkt) in nft_dynset_eval() argument
91 set->ops->delete(set, &regs->data[priv->sreg_key]); in nft_dynset_eval()
95 if (set->ops->update(set, &regs->data[priv->sreg_key], nft_dynset_new, in nft_dynset_eval()
96 expr, regs, &ext)) { in nft_dynset_eval()
108 sexpr->ops->eval(sexpr, regs, pkt); in nft_dynset_eval()
111 regs->verdict.code = NFT_BREAK; in nft_dynset_eval()
116 regs->verdict.code = NFT_BREAK; in nft_dynset_eval()
Dnft_exthdr.c37 struct nft_regs *regs, in nft_exthdr_ipv6_eval() argument
41 u32 *dest = &regs->data[priv->dreg]; in nft_exthdr_ipv6_eval()
62 regs->verdict.code = NFT_BREAK; in nft_exthdr_ipv6_eval()
133 struct nft_regs *regs, in nft_exthdr_ipv4_eval() argument
137 u32 *dest = &regs->data[priv->dreg]; in nft_exthdr_ipv4_eval()
159 regs->verdict.code = NFT_BREAK; in nft_exthdr_ipv4_eval()
183 struct nft_regs *regs, in nft_exthdr_tcp_eval() argument
189 u32 *dest = &regs->data[priv->dreg]; in nft_exthdr_tcp_eval()
222 regs->verdict.code = NFT_BREAK; in nft_exthdr_tcp_eval()
226 struct nft_regs *regs, in nft_exthdr_tcp_set_eval() argument
[all …]
Dnft_ct.c59 struct nft_regs *regs, in nft_ct_get_eval() argument
63 u32 *dest = &regs->data[priv->dreg]; in nft_ct_get_eval()
227 regs->verdict.code = NFT_BREAK; in nft_ct_get_eval()
232 struct nft_regs *regs, in nft_ct_set_zone_eval() argument
239 u16 value = nft_reg_load16(&regs->data[priv->sreg]); in nft_ct_set_zone_eval()
267 regs->verdict.code = NF_DROP; in nft_ct_set_zone_eval()
278 struct nft_regs *regs, in nft_ct_set_eval() argument
284 u32 value = regs->data[priv->sreg]; in nft_ct_set_eval()
313 &regs->data[priv->sreg], in nft_ct_set_eval()
314 &regs->data[priv->sreg], in nft_ct_set_eval()
[all …]
Dnft_range.c24 struct nft_regs *regs, const struct nft_pktinfo *pkt) in nft_range_eval() argument
29 d1 = memcmp(&regs->data[priv->sreg], &priv->data_from, priv->len); in nft_range_eval()
30 d2 = memcmp(&regs->data[priv->sreg], &priv->data_to, priv->len); in nft_range_eval()
34 regs->verdict.code = NFT_BREAK; in nft_range_eval()
38 regs->verdict.code = NFT_BREAK; in nft_range_eval()
Dnft_socket.c44 struct nft_regs *regs, in nft_socket_eval() argument
50 u32 *dest = &regs->data[priv->dreg]; in nft_socket_eval()
59 regs->verdict.code = NFT_BREAK; in nft_socket_eval()
71 regs->verdict.code = NFT_BREAK; in nft_socket_eval()
77 regs->verdict.code = NFT_BREAK; in nft_socket_eval()
Dnft_osf.c20 static void nft_osf_eval(const struct nft_expr *expr, struct nft_regs *regs, in nft_osf_eval() argument
24 u32 *dest = &regs->data[priv->dreg]; in nft_osf_eval()
32 regs->verdict.code = NFT_BREAK; in nft_osf_eval()
39 regs->verdict.code = NFT_BREAK; in nft_osf_eval()
43 regs->verdict.code = NFT_BREAK; in nft_osf_eval()
Dnft_limit.c130 struct nft_regs *regs, in nft_limit_pkts_eval() argument
136 regs->verdict.code = NFT_BREAK; in nft_limit_pkts_eval()
179 struct nft_regs *regs, in nft_limit_bytes_eval() argument
186 regs->verdict.code = NFT_BREAK; in nft_limit_bytes_eval()
240 struct nft_regs *regs, in nft_limit_obj_pkts_eval() argument
246 regs->verdict.code = NFT_BREAK; in nft_limit_obj_pkts_eval()
283 struct nft_regs *regs, in nft_limit_obj_bytes_eval() argument
290 regs->verdict.code = NFT_BREAK; in nft_limit_obj_bytes_eval()
Dnft_quota.c34 struct nft_regs *regs, in nft_quota_do_eval() argument
38 regs->verdict.code = NFT_BREAK; in nft_quota_do_eval()
50 struct nft_regs *regs, in nft_quota_obj_eval() argument
58 regs->verdict.code = NFT_BREAK; in nft_quota_obj_eval()
184 struct nft_regs *regs, in nft_quota_eval() argument
189 nft_quota_do_eval(priv, regs, pkt); in nft_quota_eval()
Dnft_compat.c68 struct nft_regs *regs, in nft_target_eval_xt() argument
85 regs->verdict.code = NFT_CONTINUE; in nft_target_eval_xt()
88 regs->verdict.code = ret; in nft_target_eval_xt()
94 struct nft_regs *regs, in nft_target_eval_bridge() argument
111 regs->verdict.code = NF_ACCEPT; in nft_target_eval_bridge()
114 regs->verdict.code = NF_DROP; in nft_target_eval_bridge()
117 regs->verdict.code = NFT_CONTINUE; in nft_target_eval_bridge()
120 regs->verdict.code = NFT_RETURN; in nft_target_eval_bridge()
123 regs->verdict.code = ret; in nft_target_eval_bridge()
370 struct nft_regs *regs, in __nft_match_eval() argument
[all …]
Dnft_objref.c17 struct nft_regs *regs, in nft_objref_eval() argument
22 obj->ops->eval(obj, regs, pkt); in nft_objref_eval()
105 struct nft_regs *regs, in nft_objref_map_eval() argument
114 found = set->ops->lookup(nft_net(pkt), set, &regs->data[priv->sreg], in nft_objref_map_eval()
117 regs->verdict.code = NFT_BREAK; in nft_objref_map_eval()
121 obj->ops->eval(obj, regs, pkt); in nft_objref_map_eval()
Dnft_payload.c74 struct nft_regs *regs, in nft_payload_eval() argument
79 u32 *dest = &regs->data[priv->dreg]; in nft_payload_eval()
115 regs->verdict.code = NFT_BREAK; in nft_payload_eval()
163 struct nft_offload_reg *reg = &ctx->regs[priv->dreg]; in nft_payload_offload_ll()
191 struct nft_offload_reg *reg = &ctx->regs[priv->dreg]; in nft_payload_offload_ip()
229 struct nft_offload_reg *reg = &ctx->regs[priv->dreg]; in nft_payload_offload_ip6()
287 struct nft_offload_reg *reg = &ctx->regs[priv->dreg]; in nft_payload_offload_tcp()
315 struct nft_offload_reg *reg = &ctx->regs[priv->dreg]; in nft_payload_offload_udp()
502 struct nft_regs *regs, in nft_payload_set_eval() argument
507 const u32 *src = &regs->data[priv->sreg]; in nft_payload_set_eval()
[all …]
Dnft_queue.c29 struct nft_regs *regs, in nft_queue_eval() argument
52 regs->verdict.code = ret; in nft_queue_eval()
56 struct nft_regs *regs, in nft_queue_sreg_eval() argument
62 queue = regs->data[priv->sreg_qnum]; in nft_queue_sreg_eval()
68 regs->verdict.code = ret; in nft_queue_sreg_eval()
/net/ipv4/netfilter/
Dnft_fib_ipv4.c27 void nft_fib4_eval_type(const struct nft_expr *expr, struct nft_regs *regs, in nft_fib4_eval_type() argument
32 u32 *dst = &regs->data[priv->dreg]; in nft_fib4_eval_type()
44 regs->verdict.code = NFT_BREAK; in nft_fib4_eval_type()
57 void nft_fib4_eval(const struct nft_expr *expr, struct nft_regs *regs, in nft_fib4_eval() argument
62 u32 *dest = &regs->data[priv->dreg]; in nft_fib4_eval()
97 regs->verdict.code = NFT_BREAK; in nft_fib4_eval()
/net/ipv6/netfilter/
Dnft_fib_ipv6.c123 void nft_fib6_eval_type(const struct nft_expr *expr, struct nft_regs *regs, in nft_fib6_eval_type() argument
128 u32 *dest = &regs->data[priv->dreg]; in nft_fib6_eval_type()
133 regs->verdict.code = NFT_BREAK; in nft_fib6_eval_type()
141 void nft_fib6_eval(const struct nft_expr *expr, struct nft_regs *regs, in nft_fib6_eval() argument
147 u32 *dest = &regs->data[priv->dreg]; in nft_fib6_eval()
163 regs->verdict.code = NFT_BREAK; in nft_fib6_eval()
/net/bridge/netfilter/
Dnft_meta_bridge.c22 struct nft_regs *regs, in nft_meta_bridge_get_eval() argument
27 u32 *dest = &regs->data[priv->dreg]; in nft_meta_bridge_get_eval()
60 return nft_meta_get_eval(expr, regs, pkt); in nft_meta_bridge_get_eval()
66 regs->verdict.code = NFT_BREAK; in nft_meta_bridge_get_eval()

123