/linux-6.6.21/net/ipv4/ |
D | arp.c | 551 struct arphdr *arp; in arp_create() local 566 arp = skb_put(skb, arp_hdr_len(dev)); in arp_create() 592 arp->ar_hrd = htons(dev->type); in arp_create() 593 arp->ar_pro = htons(ETH_P_IP); in arp_create() 598 arp->ar_hrd = htons(ARPHRD_AX25); in arp_create() 599 arp->ar_pro = htons(AX25_P_IP); in arp_create() 604 arp->ar_hrd = htons(ARPHRD_NETROM); in arp_create() 605 arp->ar_pro = htons(AX25_P_IP); in arp_create() 612 arp->ar_hrd = htons(ARPHRD_ETHER); in arp_create() 613 arp->ar_pro = htons(ETH_P_IP); in arp_create() [all …]
|
/linux-6.6.21/drivers/net/bonding/ |
D | bond_alb.c | 56 static void rlb_purge_src_ip(struct bonding *bond, struct arp_pkt *arp); 248 static void rlb_update_entry_from_arp(struct bonding *bond, struct arp_pkt *arp) in rlb_update_entry_from_arp() argument 256 hash_index = _simple_hash((u8 *)&(arp->ip_src), sizeof(arp->ip_src)); in rlb_update_entry_from_arp() 260 (client_info->ip_src == arp->ip_dst) && in rlb_update_entry_from_arp() 261 (client_info->ip_dst == arp->ip_src) && in rlb_update_entry_from_arp() 262 (!ether_addr_equal_64bits(client_info->mac_dst, arp->mac_src))) { in rlb_update_entry_from_arp() 264 ether_addr_copy(client_info->mac_dst, arp->mac_src); in rlb_update_entry_from_arp() 275 struct arp_pkt *arp, _arp; in rlb_arp_recv() local 280 arp = skb_header_pointer(skb, 0, sizeof(_arp), &_arp); in rlb_arp_recv() 281 if (!arp) in rlb_arp_recv() [all …]
|
/linux-6.6.21/tools/testing/selftests/net/forwarding/ |
D | loopback.sh | 38 tc filter add dev $h1 ingress protocol arp pref 1 handle 101 flower \ 41 $MZ $h1 -c 1 -t arp -q 51 $MZ $h1 -c 1 -t arp -q 59 $MZ $h1 -c 1 -t arp -q 64 tc filter del dev $h1 ingress protocol arp pref 1 handle 101 flower
|
D | bridge_sticky_fdb.sh | 54 $MZ $h2 -c 1 -a $TEST_MAC -t arp "request" -q
|
/linux-6.6.21/net/ipv4/netfilter/ |
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()
|
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() 1090 if (!arp_checkentry(&e->arp)) in check_compat_entry_size_and_hooks()
|
/linux-6.6.21/drivers/net/wireless/intel/iwlwifi/mei/ |
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.6.21/drivers/net/wireless/marvell/mwifiex/ |
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.6.21/samples/bpf/ |
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()
|
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.6.21/net/openvswitch/ |
D | flow.c | 764 struct arp_eth_header *arp; in key_extract_l3l4() local 767 arp = (struct arp_eth_header *)skb_network_header(skb); in key_extract_l3l4() 770 arp->ar_hrd == htons(ARPHRD_ETHER) && in key_extract_l3l4() 771 arp->ar_pro == htons(ETH_P_IP) && in key_extract_l3l4() 772 arp->ar_hln == ETH_ALEN && in key_extract_l3l4() 773 arp->ar_pln == 4) { in key_extract_l3l4() 776 if (ntohs(arp->ar_op) <= 0xff) in key_extract_l3l4() 777 key->ip.proto = ntohs(arp->ar_op); in key_extract_l3l4() 781 memcpy(&key->ipv4.addr.src, arp->ar_sip, sizeof(key->ipv4.addr.src)); in key_extract_l3l4() 782 memcpy(&key->ipv4.addr.dst, arp->ar_tip, sizeof(key->ipv4.addr.dst)); in key_extract_l3l4() [all …]
|
/linux-6.6.21/drivers/net/ethernet/mscc/ |
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() 460 arp->smac_match); in is2_entry_set() 463 arp->unknown); in is2_entry_set() 466 val = ((arp->req == OCELOT_VCAP_BIT_0 ? 1 : 0) | in is2_entry_set() 467 (arp->arp == OCELOT_VCAP_BIT_0 ? 2 : 0)); in is2_entry_set() [all …]
|
/linux-6.6.21/drivers/net/arcnet/ |
D | rfc1201.c | 208 struct arphdr *arp = (struct arphdr *)soft->payload; in rx() local 211 if (arp->ar_hln == 1 && arp->ar_pln == 4) { in rx() 212 uint8_t *cptr = (uint8_t *)arp + sizeof(struct arphdr); in rx() 226 arp->ar_hln, arp->ar_pln); in rx()
|
/linux-6.6.21/net/sched/ |
D | cls_flower.c | 57 struct flow_dissector_key_arp arp; member 1885 fl_set_key_val(tb, &key->arp.sip, TCA_FLOWER_KEY_ARP_SIP, in fl_set_key() 1886 &mask->arp.sip, TCA_FLOWER_KEY_ARP_SIP_MASK, in fl_set_key() 1887 sizeof(key->arp.sip)); in fl_set_key() 1888 fl_set_key_val(tb, &key->arp.tip, TCA_FLOWER_KEY_ARP_TIP, in fl_set_key() 1889 &mask->arp.tip, TCA_FLOWER_KEY_ARP_TIP_MASK, in fl_set_key() 1890 sizeof(key->arp.tip)); in fl_set_key() 1891 fl_set_key_val(tb, &key->arp.op, TCA_FLOWER_KEY_ARP_OP, in fl_set_key() 1892 &mask->arp.op, TCA_FLOWER_KEY_ARP_OP_MASK, in fl_set_key() 1893 sizeof(key->arp.op)); in fl_set_key() [all …]
|
/linux-6.6.21/tools/testing/selftests/drivers/net/bonding/ |
D | Makefile | 5 bond-arp-interval-causes-panic.sh \
|
/linux-6.6.21/Documentation/netlink/specs/ |
D | rt_link.yaml | 30 name: no-arp 289 name: proxy-arp 334 name: arp-announce 337 name: arp-ignore 343 name: arp-accept 346 name: arp-notify 355 name: proxy-arp-pvlan 373 name: drop-gratuitous-arp 379 name: arp-evict-nocarrier
|
D | ovs_flow.yaml | 188 name: ovs-key-arp 192 name: arp-sip 196 name: arp-tip 200 name: arp-op 204 name: arp-sha 209 name: arp-tha 514 name: arp 516 struct: ovs-key-arp
|
/linux-6.6.21/net/core/ |
D | flow_dissector.c | 561 const struct arphdr *arp; in __skb_flow_dissect_arp() local 567 arp = __skb_header_pointer(skb, nhoff, sizeof(_arp), data, in __skb_flow_dissect_arp() 569 if (!arp) in __skb_flow_dissect_arp() 572 if (arp->ar_hrd != htons(ARPHRD_ETHER) || in __skb_flow_dissect_arp() 573 arp->ar_pro != htons(ETH_P_IP) || in __skb_flow_dissect_arp() 574 arp->ar_hln != ETH_ALEN || in __skb_flow_dissect_arp() 575 arp->ar_pln != 4 || in __skb_flow_dissect_arp() 576 (arp->ar_op != htons(ARPOP_REPLY) && in __skb_flow_dissect_arp() 577 arp->ar_op != htons(ARPOP_REQUEST))) in __skb_flow_dissect_arp() 596 key_arp->op = ntohs(arp->ar_op) & 0xff; in __skb_flow_dissect_arp()
|
/linux-6.6.21/include/linux/netfilter_arp/ |
D | arp_tables.h | 64 struct arpt_arp arp; member
|
/linux-6.6.21/net/bridge/netfilter/ |
D | Kconfig | 176 tristate "ebt: arp reply target support" 179 This option adds the arp reply target, which allows 180 automatically sending arp replies to arp requests.
|
/linux-6.6.21/net/batman-adv/ |
D | Makefile | 14 batman-adv-$(CONFIG_BATMAN_ADV_DAT) += distributed-arp-table.o
|
/linux-6.6.21/tools/testing/selftests/drivers/net/mlxsw/ |
D | qos_defprio.sh | 94 mausezahn -q $h1 -d 100m -c 10 -t arp reply
|
D | sharedbuffer.sh | 162 $MZ $h1 -c 1 -p 10 -a $h1mac -A 192.0.1.1 -t arp -q
|
/linux-6.6.21/include/uapi/linux/netfilter_arp/ |
D | arp_tables.h | 98 struct arpt_arp arp; member
|
/linux-6.6.21/include/soc/mscc/ |
D | ocelot_vcap.h | 529 enum ocelot_vcap_bit arp; /* Opcode ARP/RARP */ member 714 struct ocelot_vcap_key_arp arp; member
|