| /linux-6.15/net/ipv4/ |
| H A D | arp.c | 552 struct arphdr *arp; in arp_create() local 594 arp->ar_pro = htons(ETH_P_IP); in arp_create() 614 arp->ar_pro = htons(ETH_P_IP); in arp_create() 619 arp->ar_hln = dev->addr_len; in arp_create() 620 arp->ar_pln = 4; in arp_create() 621 arp->ar_op = htons(type); in arp_create() 705 struct arphdr *arp; in arp_process() local 724 arp = arp_hdr(skb); in arp_process() 969 const struct arphdr *arp; in arp_rcv() local 985 arp = arp_hdr(skb); in arp_rcv() [all …]
|
| /linux-6.15/drivers/net/bonding/ |
| H A D | bond_alb.c | 256 hash_index = _simple_hash((u8 *)&(arp->ip_src), sizeof(arp->ip_src)); in rlb_update_entry_from_arp() 275 struct arp_pkt *arp, _arp; in rlb_arp_recv() local 281 if (!arp) in rlb_arp_recv() 294 rlb_purge_src_ip(bond, arp); in rlb_arp_recv() 555 const struct arp_pkt *arp) in rlb_choose_channel() argument 566 hash_index = _simple_hash((u8 *)&arp->ip_dst, sizeof(arp->ip_dst)); in rlb_choose_channel() 606 sizeof(arp->ip_src)); in rlb_choose_channel() 611 client_info->ip_src = arp->ip_src; in rlb_choose_channel() 612 client_info->ip_dst = arp->ip_dst; in rlb_choose_channel() 657 struct arp_pkt *arp; in rlb_arp_xmit() local [all …]
|
| /linux-6.15/tools/testing/selftests/drivers/net/hw/ |
| H A D | loopback.sh | 39 tc filter add dev $h1 ingress protocol arp pref 1 handle 101 flower \ 42 $MZ $h1 -c 1 -t arp -q 52 $MZ $h1 -c 1 -t arp -q 60 $MZ $h1 -c 1 -t arp -q 65 tc filter del dev $h1 ingress protocol arp pref 1 handle 101 flower
|
| /linux-6.15/net/ipv4/netfilter/ |
| H A D | arpt_mangle.c | 16 const struct arphdr *arp; in target() local 23 arp = arp_hdr(skb); in target() 24 arpptr = skb_network_header(skb) + sizeof(*arp); in target() 25 pln = arp->ar_pln; in target() 26 hln = arp->ar_hln; in target()
|
| H A D | arp_tables.c | 145 static inline int arp_checkentry(const struct arpt_arp *arp) in arp_checkentry() argument 147 if (arp->flags & ~ARPT_F_MASK) in arp_checkentry() 149 if (arp->invflags & ~ARPT_INV_MASK) in arp_checkentry() 190 const struct arphdr *arp; in arpt_do_table() local 220 arp = arp_hdr(skb); in arpt_do_table() 225 if (!arp_packet_match(arp, skb->dev, indev, outdev, &e->arp)) { in arpt_do_table() 274 arp = arp_hdr(skb); in arpt_do_table() 296 memcmp(&e->arp, &uncond, sizeof(uncond)) == 0; in unconditional() 472 if (!arp_checkentry(&e->arp)) in check_entry_size_and_hooks() 1094 if (!arp_checkentry(&e->arp)) in check_compat_entry_size_and_hooks()
|
| /linux-6.15/drivers/net/wireless/intel/iwlwifi/mei/ |
| H A D | net.c | 85 const struct arphdr *arp; in iwl_mei_rx_filter_arp() local 92 arp = arp_hdr(skb); in iwl_mei_rx_filter_arp() 95 if (arp->ar_hrd != htons(ARPHRD_ETHER) || in iwl_mei_rx_filter_arp() 96 arp->ar_pro != htons(ETH_P_IP)) in iwl_mei_rx_filter_arp() 105 target_ip = (const void *)((const u8 *)(arp + 1) + in iwl_mei_rx_filter_arp() 112 if (arp->ar_op == htons(ARPOP_REQUEST) && in iwl_mei_rx_filter_arp() 125 arp->ar_op == htons(ARPOP_REPLY)) { in iwl_mei_rx_filter_arp()
|
| /linux-6.15/drivers/net/wireless/marvell/mwifiex/ |
| H A D | sta_rx.c | 26 const struct mwifiex_arp_eth_header *arp; in mwifiex_discard_gratuitous_arp() local 34 arp = (void *)(skb->data + sizeof(struct ethhdr)); in mwifiex_discard_gratuitous_arp() 35 if (arp->hdr.ar_op == htons(ARPOP_REPLY) || in mwifiex_discard_gratuitous_arp() 36 arp->hdr.ar_op == htons(ARPOP_REQUEST)) { in mwifiex_discard_gratuitous_arp() 37 if (!memcmp(arp->ar_sip, arp->ar_tip, 4)) in mwifiex_discard_gratuitous_arp()
|
| /linux-6.15/samples/bpf/ |
| H A D | xdp_router_ipv4_user.c | 111 struct arp_table arp; in read_route() member 172 direct_entry.arp.mac = 0; in read_route() 173 direct_entry.arp.dst = 0; in read_route() 181 &direct_entry.arp.mac) == 0) in read_route() 182 direct_entry.arp.dst = route.dst; in read_route() 328 struct arp_table arp; in read_arp() member 360 direct_entry.arp.dst = 0; in read_arp() 361 direct_entry.arp.mac = 0; in read_arp() 363 direct_entry.arp.dst = arp_entry.dst; in read_arp() 364 direct_entry.arp.mac = arp_entry.mac; in read_arp()
|
| H A D | xdp_router_ipv4.bpf.c | 36 struct arp_entry arp; member 122 direct_entry->arp.mac) { in xdp_router_ipv4_prog() 124 dest_mac = &direct_entry->arp.mac; in xdp_router_ipv4_prog()
|
| /linux-6.15/net/openvswitch/ |
| H A D | flow.c | 765 struct arp_eth_header *arp; in key_extract_l3l4() local 768 arp = (struct arp_eth_header *)skb_network_header(skb); in key_extract_l3l4() 771 arp->ar_hrd == htons(ARPHRD_ETHER) && in key_extract_l3l4() 772 arp->ar_pro == htons(ETH_P_IP) && in key_extract_l3l4() 773 arp->ar_hln == ETH_ALEN && in key_extract_l3l4() 774 arp->ar_pln == 4) { in key_extract_l3l4() 777 if (ntohs(arp->ar_op) <= 0xff) in key_extract_l3l4() 778 key->ip.proto = ntohs(arp->ar_op); in key_extract_l3l4() 782 memcpy(&key->ipv4.addr.src, arp->ar_sip, sizeof(key->ipv4.addr.src)); in key_extract_l3l4() 784 ether_addr_copy(key->ipv4.arp.sha, arp->ar_sha); in key_extract_l3l4() [all …]
|
| /linux-6.15/drivers/net/ethernet/mscc/ |
| H A D | ocelot_vcap.c | 441 struct ocelot_vcap_key_arp *arp = &filter->key.arp; in is2_entry_set() local 445 arp->smac.value, arp->smac.mask); in is2_entry_set() 448 arp->ethernet); in is2_entry_set() 451 arp->ip); in is2_entry_set() 454 arp->length); in is2_entry_set() 457 arp->dmac_match); in is2_entry_set() 463 arp->unknown); in is2_entry_set() 467 (arp->arp == OCELOT_VCAP_BIT_0 ? 2 : 0)); in is2_entry_set() 469 (arp->arp == OCELOT_VCAP_BIT_ANY ? 0 : 2)); in is2_entry_set() 474 arp->dip.value.addr, arp->dip.mask.addr); in is2_entry_set() [all …]
|
| /linux-6.15/drivers/net/arcnet/ |
| H A D | rfc1201.c | 209 struct arphdr *arp = (struct arphdr *)soft->payload; in rx() local 212 if (arp->ar_hln == 1 && arp->ar_pln == 4) { in rx() 213 uint8_t *cptr = (uint8_t *)arp + sizeof(struct arphdr); in rx() 227 arp->ar_hln, arp->ar_pln); in rx()
|
| /linux-6.15/tools/testing/selftests/drivers/net/mlxsw/ |
| H A D | sharedbuffer.sh | 184 tc filter add dev $h1 egress protocol arp pref 1 handle 101 flower \ 189 $MZ $h1 -c 1 -p 10 -a $h1mac -A 192.0.1.1 -t arp -q 203 tc filter del dev $h1 egress protocol arp pref 1 handle 101 flower \
|
| H A D | qos_defprio.sh | 94 mausezahn -q $h1 -d 100m -c 10 -t arp reply
|
| /linux-6.15/net/sched/ |
| H A D | cls_flower.c | 68 struct flow_dissector_key_arp arp; member 2006 sizeof(key->arp.sip)); in fl_set_key() 2009 sizeof(key->arp.tip)); in fl_set_key() 2012 sizeof(key->arp.op)); in fl_set_key() 2015 sizeof(key->arp.sha)); in fl_set_key() 2018 sizeof(key->arp.tha)); in fl_set_key() 3588 sizeof(key->arp.sip)) || in fl_dump_key() 3592 sizeof(key->arp.tip)) || in fl_dump_key() 3596 sizeof(key->arp.op)) || in fl_dump_key() 3599 sizeof(key->arp.sha)) || in fl_dump_key() [all …]
|
| /linux-6.15/tools/testing/selftests/drivers/net/bonding/ |
| H A D | Makefile | 5 bond-arp-interval-causes-panic.sh \
|
| /linux-6.15/include/linux/netfilter_arp/ |
| H A D | arp_tables.h | 64 struct arpt_arp arp; member
|
| /linux-6.15/net/bridge/netfilter/ |
| H A D | Kconfig | 189 tristate "ebt: arp reply target support" 192 This option adds the arp reply target, which allows 193 automatically sending arp replies to arp requests.
|
| /linux-6.15/net/core/ |
| H A D | flow_dissector.c | 585 const struct arphdr *arp; in __skb_flow_dissect_arp() local 591 arp = __skb_header_pointer(skb, nhoff, sizeof(_arp), data, in __skb_flow_dissect_arp() 593 if (!arp) in __skb_flow_dissect_arp() 596 if (arp->ar_hrd != htons(ARPHRD_ETHER) || in __skb_flow_dissect_arp() 597 arp->ar_pro != htons(ETH_P_IP) || in __skb_flow_dissect_arp() 598 arp->ar_hln != ETH_ALEN || in __skb_flow_dissect_arp() 599 arp->ar_pln != 4 || in __skb_flow_dissect_arp() 600 (arp->ar_op != htons(ARPOP_REPLY) && in __skb_flow_dissect_arp() 601 arp->ar_op != htons(ARPOP_REQUEST))) in __skb_flow_dissect_arp() 620 key_arp->op = ntohs(arp->ar_op) & 0xff; in __skb_flow_dissect_arp()
|
| /linux-6.15/Documentation/netlink/specs/ |
| H A D | rt_link.yaml | 30 name: no-arp 311 name: proxy-arp 356 name: arp-announce 359 name: arp-ignore 365 name: arp-accept 368 name: arp-notify 377 name: proxy-arp-pvlan 1342 name: arp-interval 1345 name: arp-ip-target 1351 name: arp-validate [all …]
|
| H A D | ovs_flow.yaml | 189 name: ovs-key-arp 193 name: arp-sip 197 name: arp-tip 201 name: arp-op 205 name: arp-sha 210 name: arp-tha 518 name: arp 520 struct: ovs-key-arp
|
| /linux-6.15/net/batman-adv/ |
| H A D | Makefile | 14 batman-adv-$(CONFIG_BATMAN_ADV_DAT) += distributed-arp-table.o
|
| /linux-6.15/tools/testing/selftests/net/forwarding/ |
| H A D | bridge_sticky_fdb.sh | 54 $MZ $h2 -c 1 -a $TEST_MAC -t arp "request" -q
|
| /linux-6.15/include/uapi/linux/netfilter_arp/ |
| H A D | arp_tables.h | 98 struct arpt_arp arp; member
|
| /linux-6.15/include/soc/mscc/ |
| H A D | ocelot_vcap.h | 531 enum ocelot_vcap_bit arp; /* Opcode ARP/RARP */ member 716 struct ocelot_vcap_key_arp arp; member
|