| /linux/tools/testing/selftests/bpf/prog_tests/ |
| H A D | tc_bpf.c | 26 static int test_tc_bpf_basic(const struct bpf_tc_hook *hook, int fd) in test_tc_bpf_basic() argument 37 ret = bpf_tc_attach(hook, &opts); in test_tc_bpf_basic() 48 ret = bpf_tc_attach(hook, &opts); in test_tc_bpf_basic() 53 ret = bpf_tc_query(hook, &opts); in test_tc_bpf_basic() 64 ret = bpf_tc_detach(hook, &opts); in test_tc_bpf_basic() 69 static int test_tc_bpf_api(struct bpf_tc_hook *hook, int fd) in test_tc_bpf_api() argument 209 ret = bpf_tc_detach(hook, NULL); in test_tc_bpf_api() 213 ret = bpf_tc_detach(hook, &opts_hpr); in test_tc_bpf_api() 217 ret = bpf_tc_detach(hook, &opts_hpf); in test_tc_bpf_api() 221 ret = bpf_tc_detach(hook, &opts_hpi); in test_tc_bpf_api() [all …]
|
| H A D | xfrm_info.c | 72 static int attach_tc_prog(struct bpf_tc_hook *hook, int igr_fd, int egr_fd) in attach_tc_prog() argument 80 ret = bpf_tc_hook_create(hook); in attach_tc_prog() 85 hook->attach_point = BPF_TC_INGRESS; in attach_tc_prog() 86 ret = bpf_tc_attach(hook, &opts1); in attach_tc_prog() 88 bpf_tc_hook_destroy(hook); in attach_tc_prog() 94 hook->attach_point = BPF_TC_EGRESS; in attach_tc_prog() 95 ret = bpf_tc_attach(hook, &opts2); in attach_tc_prog() 97 bpf_tc_hook_destroy(hook); in attach_tc_prog()
|
| H A D | vrf_socket_lookup.c | 107 LIBBPF_OPTS(bpf_tc_hook, hook, .attach_point = BPF_TC_INGRESS); in attach_progs() 115 hook.ifindex = ifindex; in attach_progs() 117 ret = bpf_tc_hook_create(&hook); in attach_progs() 121 ret = bpf_tc_attach(&hook, &opts); in attach_progs() 123 bpf_tc_hook_destroy(&hook); in attach_progs() 128 bpf_tc_hook_destroy(&hook); in attach_progs()
|
| H A D | test_tunnel.c | 553 /* load and attach bpf prog to tunnel dev tc hook point */ in test_ip6vxlan_tunnel() 562 /* load and attach bpf prog to veth dev tc hook point */ in test_ipip_tunnel() 567 /* load and attach prog set_md to tunnel dev tc hook point at_ns0 */ in test_ipip_tunnel() 613 /* load and attach bpf prog to tunnel dev tc hook point */ in test_ipip_tunnel() 622 /* load and attach prog set_md to tunnel dev tc hook point at_ns0 */ in test_ipip_tunnel() 663 /* load and attach bpf prog to tunnel dev tc hook point */ in test_xfrm_tunnel() 367 attach_tc_prog(struct bpf_tc_hook * hook,int igr_fd,int egr_fd) attach_tc_prog() argument
|
| /linux/net/netfilter/ |
| H A D | nf_bpf_link.c | 38 const struct nf_defrag_hook *hook; in get_proto_defrag_hook() local 43 hook = rcu_dereference(*ptr_global_hook); in get_proto_defrag_hook() 44 if (!hook) { in get_proto_defrag_hook() 51 hook = rcu_dereference(*ptr_global_hook); in get_proto_defrag_hook() 54 if (hook && try_module_get(hook->owner)) { in get_proto_defrag_hook() 56 hook = rcu_pointer_handoff(hook); in get_proto_defrag_hook() 58 WARN_ONCE(!hook, "%s has bad registration", mod); in get_proto_defrag_hook() 59 hook = ERR_PTR(-ENOENT); in get_proto_defrag_hook() 63 if (!IS_ERR(hook)) { in get_proto_defrag_hook() 64 err = hook->enable(link->net); in get_proto_defrag_hook() [all …]
|
| H A D | nf_conntrack_pptp.c | 92 const struct nf_nat_pptp_hook *hook; in pptp_expectfn() local 103 hook = rcu_dereference(nf_nat_pptp_hook); in pptp_expectfn() 104 if (hook && ct->master->status & IPS_NAT_MASK) in pptp_expectfn() 105 hook->expectfn(ct, exp); in pptp_expectfn() 190 const struct nf_nat_pptp_hook *hook; in exp_gre() local 220 hook = rcu_dereference(nf_nat_pptp_hook); in exp_gre() 221 if (hook && ct->status & IPS_NAT_MASK) in exp_gre() 222 hook->exp_gre(exp_orig, exp_reply); in exp_gre() 260 const struct nf_nat_pptp_hook *hook; in pptp_inbound_pkt() local 364 hook = rcu_dereference(nf_nat_pptp_hook); in pptp_inbound_pkt() [all …]
|
| H A D | nft_chain_filter.c | 175 ingress_state.hook = NF_INET_INGRESS; in nft_do_chain_inet_ingress() 183 ingress_state.hook = NF_INET_INGRESS; in nft_do_chain_inet_ingress() 327 struct nft_hook *hook; in nft_netdev_event() local 330 list_for_each_entry(hook, &basechain->hook_list, list) { in nft_netdev_event() 331 ops = nft_hook_find_ops(hook, dev); in nft_netdev_event() 332 match = !strncmp(hook->ifname, dev->name, hook->ifnamelen); in nft_netdev_event() 364 list_add_tail_rcu(&ops->list, &hook->ops_list); in nft_netdev_event()
|
| H A D | nf_tables_api.c | 322 struct nft_hook *hook; in nft_netdev_register_hooks() local 326 list_for_each_entry(hook, hook_list, list) { in nft_netdev_register_hooks() 327 list_for_each_entry(ops, &hook->ops_list, list) { in nft_netdev_register_hooks() 338 list_for_each_entry(hook, hook_list, list) { in nft_netdev_register_hooks() 339 list_for_each_entry(ops, &hook->ops_list, list) { in nft_netdev_register_hooks() 349 static void nft_netdev_hook_free_ops(struct nft_hook *hook) in nft_netdev_hook_free_ops() argument 353 list_for_each_entry_safe(ops, next, &hook->ops_list, list) { in nft_netdev_hook_free_ops() 359 static void nft_netdev_hook_free(struct nft_hook *hook) in nft_netdev_hook_free() argument 361 nft_netdev_hook_free_ops(hook); in nft_netdev_hook_free() 362 kfree(hook); in nft_netdev_hook_free() [all …]
|
| H A D | nf_tables_offload.c | 225 struct nft_hook *hook; in nft_chain_offload_support() local 230 list_for_each_entry(hook, &basechain->hook_list, list) { in nft_chain_offload_support() 231 list_for_each_entry(ops, &hook->ops_list, list) { in nft_chain_offload_support() 463 struct nft_hook *hook; in nft_flow_block_chain() local 466 list_for_each_entry(hook, &basechain->hook_list, list) { in nft_flow_block_chain() 467 list_for_each_entry(ops, &hook->ops_list, list) { in nft_flow_block_chain() 485 list_for_each_entry(hook, &basechain->hook_list, list) { in nft_flow_block_chain() 486 list_for_each_entry(ops, &hook->ops_list, list) { in nft_flow_block_chain() 632 struct nft_hook *hook, *found; in __nft_offload_get_chain() local 647 list_for_each_entry(hook, &basechain->hook_list, list) { in __nft_offload_get_chain() [all …]
|
| H A D | nf_flow_table_inet.c | 74 .hook = nf_flow_offload_inet_hook, 84 .hook = nf_flow_offload_ip_hook, 94 .hook = nf_flow_offload_ipv6_hook,
|
| /linux/include/linux/ |
| H A D | netfilter.h | 79 u8 hook; member 103 nf_hookfn *hook; member 114 nf_hookfn *hook; member 158 return entry->hook(entry->priv, skb, state); in nf_hook_entry_hookfn() 162 unsigned int hook, in nf_hook_state_init() argument 170 p->hook = hook; in nf_hook_state_init() 227 static inline int nf_hook(u_int8_t pf, unsigned int hook, struct net *net, in nf_hook() argument 237 __builtin_constant_p(hook) && in nf_hook() 238 !static_key_false(&nf_hooks_needed[pf][hook])) in nf_hook() 245 hook_head = rcu_dereference(net->nf.hooks_ipv4[hook]); in nf_hook() [all …]
|
| /linux/tools/lib/bpf/ |
| H A D | netlink.c | 534 typedef int (*qdisc_config_t)(struct libbpf_nla_req *req, const struct bpf_tc_hook *hook); 536 static int clsact_config(struct libbpf_nla_req *req, const struct bpf_tc_hook *hook) in clsact_config() argument 544 static int qdisc_config(struct libbpf_nla_req *req, const struct bpf_tc_hook *hook) in qdisc_config() argument 546 const char *qdisc = OPTS_GET(hook, qdisc, NULL); in qdisc_config() 548 req->tc.tcm_parent = OPTS_GET(hook, parent, TC_H_ROOT); in qdisc_config() 549 req->tc.tcm_handle = OPTS_GET(hook, handle, 0); in qdisc_config() 554 static int attach_point_to_config(struct bpf_tc_hook *hook, in attach_point_to_config() argument 557 switch (OPTS_GET(hook, attach_point, 0)) { in attach_point_to_config() 561 if (OPTS_GET(hook, parent, 0)) in attach_point_to_config() 597 static int tc_qdisc_modify(struct bpf_tc_hook *hook, int cmd, int flags) in tc_qdisc_modify() argument [all …]
|
| /linux/net/ipv4/netfilter/ |
| H A D | ipt_REJECT.c | 34 int hook = xt_hooknum(par); in reject_tg() local 38 nf_send_unreach(skb, ICMP_NET_UNREACH, hook); in reject_tg() 41 nf_send_unreach(skb, ICMP_HOST_UNREACH, hook); in reject_tg() 44 nf_send_unreach(skb, ICMP_PROT_UNREACH, hook); in reject_tg() 47 nf_send_unreach(skb, ICMP_PORT_UNREACH, hook); in reject_tg() 50 nf_send_unreach(skb, ICMP_NET_ANO, hook); in reject_tg() 53 nf_send_unreach(skb, ICMP_HOST_ANO, hook); in reject_tg() 56 nf_send_unreach(skb, ICMP_PKT_FILTERED, hook); in reject_tg() 59 nf_send_reset(xt_net(par), par->state->sk, skb, hook); in reject_tg()
|
| H A D | iptable_nat.c | 34 .hook = ipt_do_table, 40 .hook = ipt_do_table, 46 .hook = ipt_do_table, 52 .hook = ipt_do_table,
|
| /linux/fs/xfs/ |
| H A D | xfs_hooks.h | 37 typedef int (*xfs_hook_fn_t)(struct xfs_hook *hook, unsigned long action, 41 int xfs_hooks_add(struct xfs_hooks *chain, struct xfs_hook *hook); 42 void xfs_hooks_del(struct xfs_hooks *chain, struct xfs_hook *hook); 46 static inline void xfs_hook_setup(struct xfs_hook *hook, notifier_fn_t fn) in xfs_hook_setup() argument 48 hook->nb.notifier_call = fn; in xfs_hook_setup() 49 hook->nb.priority = 0; in xfs_hook_setup()
|
| /linux/include/acpi/ |
| H A D | battery.h | 16 int (*add_battery)(struct power_supply *battery, struct acpi_battery_hook *hook); 17 int (*remove_battery)(struct power_supply *battery, struct acpi_battery_hook *hook); 21 void battery_hook_register(struct acpi_battery_hook *hook); 22 void battery_hook_unregister(struct acpi_battery_hook *hook); 23 int devm_battery_hook_register(struct device *dev, struct acpi_battery_hook *hook);
|
| /linux/security/integrity/ima/ |
| H A D | ima.h | 49 /* bitset of digests algorithms allowed in the setxattr hook */ 340 #define __ima_hooks(hook) \ in func_measure_str() 341 hook(NONE, none) \ in func_measure_str() 342 hook(FILE_CHECK, file) \ in func_measure_str() 343 hook(MMAP_CHECK, mmap) \ in func_measure_str() 344 hook(MMAP_CHECK_REQPROT, mmap_reqprot) \ in func_measure_str() 345 hook(BPRM_CHECK, bprm) \ in func_measure_str() 346 hook(CREDS_CHECK, creds) \ 347 hook(POST_SETATTR, post_setattr) \ 348 hook(MODULE_CHEC 307 __ima_hooks(hook) global() argument [all...] |
| /linux/tools/testing/selftests/net/netfilter/ |
| H A D | nft_queue.sh | 98 type filter hook prerouting priority $prio; policy accept; 102 type filter hook input priority $prio; policy accept; 106 type filter hook forward priority $prio; policy accept; 111 type filter hook output priority $prio; policy accept; 117 type filter hook postrouting priority $prio; policy accept; 130 type filter hook prerouting priority $prio; policy accept; 134 type filter hook input priority $prio; policy accept; 138 type filter hook forward priority $prio; policy accept; 142 type filter hook output priority $prio; policy accept; 146 type filter hook postrouting priority $prio; policy accept; [all …]
|
| H A D | conntrack_vrf.sh | 90 type filter hook prerouting priority raw; 100 type filter hook output priority raw; 144 type filter hook output priority raw; 149 type filter hook postrouting priority mangle; 154 type nat hook postrouting priority 0; 191 type nat hook postrouting priority 0;
|
| /linux/arch/csky/kernel/ |
| H A D | ftrace.c | 70 static int ftrace_check_current_nop(unsigned long hook) in ftrace_check_current_nop() argument 73 unsigned long hook_pos = hook - 2; in ftrace_check_current_nop() 91 static int ftrace_modify_code(unsigned long hook, unsigned long target, in ftrace_modify_code() argument 96 unsigned long hook_pos = hook - 2; in ftrace_modify_code() 99 make_jbsr(target, hook, call, nolr); in ftrace_modify_code()
|
| /linux/sound/core/ |
| H A D | vmaster.c | 36 void (*hook)(void *private_data, int); member 124 if (master->hook) in master_init() 125 master->hook(master->hook_private_data, master->val); in master_init() 379 if (master->hook && !first_init) in master_put() 380 master->hook(master->hook_private_data, master->val); in master_put() 476 void (*hook)(void *private_data, int), in snd_ctl_add_vmaster_hook() 480 master->hook = hook; in snd_ctl_add_vmaster_hook() 513 if (master->hook && !first_init) in snd_ctl_sync_vmaster() 514 master->hook(master->hook_private_data, master->val); in snd_ctl_sync_vmaster()
|
| /linux/net/ipv6/netfilter/ |
| H A D | ip6table_nat.c | 36 .hook = ip6t_do_table, 42 .hook = ip6t_do_table, 48 .hook = ip6t_do_table, 54 .hook = ip6t_do_table,
|
| /linux/net/bridge/netfilter/ |
| H A D | ebtable_nat.c | 55 .hook = ebt_do_table, 61 .hook = ebt_do_table, 67 .hook = ebt_do_table,
|
| H A D | ebtable_filter.c | 55 .hook = ebt_do_table, 61 .hook = ebt_do_table, 67 .hook = ebt_do_table,
|
| /linux/net/sched/ |
| H A D | em_ipt.c | 23 u32 hook; member 52 mtpar.hook_mask = 1 << im->hook; in check_match() 167 im->hook = nla_get_u32(tb[TCA_EM_IPT_HOOK]); in em_ipt_change() 237 nf_hook_state_init(&state, im->hook, nfproto, in em_ipt_match() 256 if (nla_put_u32(skb, TCA_EM_IPT_HOOK, im->hook) < 0) in em_ipt_dump()
|