Home
last modified time | relevance | path

Searched refs:arp (Results 1 – 25 of 39) sorted by relevance

12

/Linux-v4.19/net/ipv4/
Darp.c532 struct arphdr *arp; in arp_create() local
547 arp = skb_put(skb, arp_hdr_len(dev)); in arp_create()
573 arp->ar_hrd = htons(dev->type); in arp_create()
574 arp->ar_pro = htons(ETH_P_IP); in arp_create()
579 arp->ar_hrd = htons(ARPHRD_AX25); in arp_create()
580 arp->ar_pro = htons(AX25_P_IP); in arp_create()
585 arp->ar_hrd = htons(ARPHRD_NETROM); in arp_create()
586 arp->ar_pro = htons(AX25_P_IP); in arp_create()
593 arp->ar_hrd = htons(ARPHRD_ETHER); in arp_create()
594 arp->ar_pro = htons(ETH_P_IP); in arp_create()
[all …]
DMakefile14 udp_offload.o arp.o icmp.o devinet.o af_inet.o igmp.o \
/Linux-v4.19/drivers/net/bonding/
Dbond_alb.c77 static void rlb_purge_src_ip(struct bonding *bond, struct arp_pkt *arp);
268 static void rlb_update_entry_from_arp(struct bonding *bond, struct arp_pkt *arp) in rlb_update_entry_from_arp() argument
276 hash_index = _simple_hash((u8 *)&(arp->ip_src), sizeof(arp->ip_src)); in rlb_update_entry_from_arp()
280 (client_info->ip_src == arp->ip_dst) && in rlb_update_entry_from_arp()
281 (client_info->ip_dst == arp->ip_src) && in rlb_update_entry_from_arp()
282 (!ether_addr_equal_64bits(client_info->mac_dst, arp->mac_src))) { in rlb_update_entry_from_arp()
284 ether_addr_copy(client_info->mac_dst, arp->mac_src); in rlb_update_entry_from_arp()
295 struct arp_pkt *arp, _arp; in rlb_arp_recv() local
300 arp = skb_header_pointer(skb, 0, sizeof(_arp), &_arp); in rlb_arp_recv()
301 if (!arp) in rlb_arp_recv()
[all …]
Dbond_main.c2526 struct arphdr *arp = (struct arphdr *)skb->data; in bond_arp_rcv() local
2548 arp = kmalloc(alen, GFP_ATOMIC); in bond_arp_rcv()
2549 if (!arp) in bond_arp_rcv()
2551 if (skb_copy_bits(skb, 0, arp, alen) < 0) in bond_arp_rcv()
2555 if (arp->ar_hln != bond->dev->addr_len || in bond_arp_rcv()
2558 arp->ar_hrd != htons(ARPHRD_ETHER) || in bond_arp_rcv()
2559 arp->ar_pro != htons(ETH_P_IP) || in bond_arp_rcv()
2560 arp->ar_pln != 4) in bond_arp_rcv()
2563 arp_ptr = (unsigned char *)(arp + 1); in bond_arp_rcv()
2606 else if (curr_arp_slave && (arp->ar_op == htons(ARPOP_REPLY)) && in bond_arp_rcv()
[all …]
/Linux-v4.19/net/ipv4/netfilter/
Darpt_mangle.c15 const struct arphdr *arp; in target() local
22 arp = arp_hdr(skb); in target()
23 arpptr = skb_network_header(skb) + sizeof(*arp); in target()
24 pln = arp->ar_pln; in target()
25 hln = arp->ar_hln; in target()
Dipt_CLUSTERIP.c599 struct arphdr *arp = arp_hdr(skb); in arp_mangle() local
605 if (arp->ar_hrd != htons(ARPHRD_ETHER) || in arp_mangle()
606 arp->ar_pro != htons(ETH_P_IP) || in arp_mangle()
607 arp->ar_pln != 4 || arp->ar_hln != ETH_ALEN) in arp_mangle()
611 if (arp->ar_op != htons(ARPOP_REPLY) && in arp_mangle()
612 arp->ar_op != htons(ARPOP_REQUEST)) in arp_mangle()
615 payload = (void *)(arp+1); in arp_mangle()
635 memcpy(payload->src_hw, c->clustermac, arp->ar_hln); in arp_mangle()
Darp_tables.c144 static inline int arp_checkentry(const struct arpt_arp *arp) in arp_checkentry() argument
146 if (arp->flags & ~ARPT_F_MASK) in arp_checkentry()
148 if (arp->invflags & ~ARPT_INV_MASK) in arp_checkentry()
188 const struct arphdr *arp; in arpt_do_table() local
218 arp = arp_hdr(skb); in arpt_do_table()
223 if (!arp_packet_match(arp, skb->dev, indev, outdev, &e->arp)) { in arpt_do_table()
272 arp = arp_hdr(skb); in arpt_do_table()
294 memcmp(&e->arp, &uncond, sizeof(uncond)) == 0; in unconditional()
468 if (!arp_checkentry(&e->arp)) in check_entry_size_and_hooks()
1086 if (!arp_checkentry(&e->arp)) in check_compat_entry_size_and_hooks()
/Linux-v4.19/drivers/net/wireless/marvell/mwifiex/
Dsta_rx.c38 const struct mwifiex_arp_eth_header *arp; in mwifiex_discard_gratuitous_arp() local
46 arp = (void *)(skb->data + sizeof(struct ethhdr)); in mwifiex_discard_gratuitous_arp()
47 if (arp->hdr.ar_op == htons(ARPOP_REPLY) || in mwifiex_discard_gratuitous_arp()
48 arp->hdr.ar_op == htons(ARPOP_REQUEST)) { in mwifiex_discard_gratuitous_arp()
49 if (!memcmp(arp->ar_sip, arp->ar_tip, 4)) in mwifiex_discard_gratuitous_arp()
/Linux-v4.19/net/openvswitch/
Dflow.c691 struct arp_eth_header *arp; in key_extract() local
694 arp = (struct arp_eth_header *)skb_network_header(skb); in key_extract()
697 arp->ar_hrd == htons(ARPHRD_ETHER) && in key_extract()
698 arp->ar_pro == htons(ETH_P_IP) && in key_extract()
699 arp->ar_hln == ETH_ALEN && in key_extract()
700 arp->ar_pln == 4) { in key_extract()
703 if (ntohs(arp->ar_op) <= 0xff) in key_extract()
704 key->ip.proto = ntohs(arp->ar_op); in key_extract()
708 memcpy(&key->ipv4.addr.src, arp->ar_sip, sizeof(key->ipv4.addr.src)); in key_extract()
709 memcpy(&key->ipv4.addr.dst, arp->ar_tip, sizeof(key->ipv4.addr.dst)); in key_extract()
[all …]
Dflow.h131 } arp; member
/Linux-v4.19/net/sched/
Dcls_flower.c46 struct flow_dissector_key_arp arp; member
895 fl_set_key_val(tb, &key->arp.sip, TCA_FLOWER_KEY_ARP_SIP, in fl_set_key()
896 &mask->arp.sip, TCA_FLOWER_KEY_ARP_SIP_MASK, in fl_set_key()
897 sizeof(key->arp.sip)); in fl_set_key()
898 fl_set_key_val(tb, &key->arp.tip, TCA_FLOWER_KEY_ARP_TIP, in fl_set_key()
899 &mask->arp.tip, TCA_FLOWER_KEY_ARP_TIP_MASK, in fl_set_key()
900 sizeof(key->arp.tip)); in fl_set_key()
901 fl_set_key_val(tb, &key->arp.op, TCA_FLOWER_KEY_ARP_OP, in fl_set_key()
902 &mask->arp.op, TCA_FLOWER_KEY_ARP_OP_MASK, in fl_set_key()
903 sizeof(key->arp.op)); in fl_set_key()
[all …]
/Linux-v4.19/samples/bpf/
Dxdp_router_ipv4_user.c127 struct arp_table arp; in read_route() member
206 direct_entry.arp.mac = 0; in read_route()
207 direct_entry.arp.dst = 0; in read_route()
212 if (bpf_map_lookup_elem(map_fd[2], &route.dst, &direct_entry.arp.mac) == 0) in read_route()
213 direct_entry.arp.dst = route.dst; in read_route()
373 struct arp_table arp; in read_arp() member
407 direct_entry.arp.dst = 0; in read_arp()
408 direct_entry.arp.mac = 0; in read_arp()
410 direct_entry.arp.dst = arp_entry.dst; in read_arp()
411 direct_entry.arp.mac = arp_entry.mac; in read_arp()
Dxdp_router_ipv4_kern.c39 struct arp_entry arp; member
147 if (direct_entry && direct_entry->mac && direct_entry->arp.mac) { in xdp_router_ipv4_prog()
149 dest_mac = &direct_entry->arp.mac; in xdp_router_ipv4_prog()
/Linux-v4.19/drivers/net/arcnet/
Drfc1201.c208 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-v4.19/net/core/
Dflow_dissector.c305 const struct arphdr *arp; in __skb_flow_dissect_arp() local
311 arp = __skb_header_pointer(skb, nhoff, sizeof(_arp), data, in __skb_flow_dissect_arp()
313 if (!arp) in __skb_flow_dissect_arp()
316 if (arp->ar_hrd != htons(ARPHRD_ETHER) || in __skb_flow_dissect_arp()
317 arp->ar_pro != htons(ETH_P_IP) || in __skb_flow_dissect_arp()
318 arp->ar_hln != ETH_ALEN || in __skb_flow_dissect_arp()
319 arp->ar_pln != 4 || in __skb_flow_dissect_arp()
320 (arp->ar_op != htons(ARPOP_REPLY) && in __skb_flow_dissect_arp()
321 arp->ar_op != htons(ARPOP_REQUEST))) in __skb_flow_dissect_arp()
340 key_arp->op = ntohs(arp->ar_op) & 0xff; in __skb_flow_dissect_arp()
/Linux-v4.19/include/linux/netfilter_arp/
Darp_tables.h65 struct arpt_arp arp; member
/Linux-v4.19/net/bridge/netfilter/
DKconfig157 tristate "ebt: arp reply target support"
160 This option adds the arp reply target, which allows
161 automatically sending arp replies to arp requests.
/Linux-v4.19/net/batman-adv/
DMakefile28 batman-adv-$(CONFIG_BATMAN_ADV_DAT) += distributed-arp-table.o
/Linux-v4.19/include/uapi/linux/netfilter_arp/
Darp_tables.h98 struct arpt_arp arp; member
/Linux-v4.19/tools/testing/selftests/bpf/
Dtest_tunnel.sh171 ip netns exec at_ns0 arp -s 10.1.1.200 52:54:00:d9:02:00
178 arp -s 10.1.1.100 52:54:00:d9:01:00
/Linux-v4.19/drivers/net/wireless/intel/iwlwifi/
DKconfig86 patterns (e.g. incoming arp requests).
/Linux-v4.19/drivers/net/wireless/ath/ath10k/
Dwmi-tlv.c2159 struct wmi_sta_keepalive_arp_resp *arp; in ath10k_wmi_tlv_op_gen_sta_keepalive() local
2166 sizeof(*tlv) + sizeof(*arp); in ath10k_wmi_tlv_op_gen_sta_keepalive()
2186 tlv->len = __cpu_to_le16(sizeof(*arp)); in ath10k_wmi_tlv_op_gen_sta_keepalive()
2187 arp = (void *)tlv->value; in ath10k_wmi_tlv_op_gen_sta_keepalive()
2189 arp->src_ip4_addr = arg->src_ip4_addr; in ath10k_wmi_tlv_op_gen_sta_keepalive()
2190 arp->dest_ip4_addr = arg->dest_ip4_addr; in ath10k_wmi_tlv_op_gen_sta_keepalive()
2191 ether_addr_copy(arp->dest_mac_addr.addr, arg->dest_mac_addr); in ath10k_wmi_tlv_op_gen_sta_keepalive()
/Linux-v4.19/Documentation/networking/
Dip-sysctl.txt1074 Do proxy arp.
1080 Private VLAN proxy arp.
1081 Basically allow proxy arp replies back to the same interface
1177 of which cards (usually 1) will respond to an arp request.
1179 0 - (default) The kernel can respond to arp requests with addresses
1242 1 - Generate gratuitous arp requests when device is brought up
1251 Both replies and requests type gratuitous arp will trigger the
1255 gratuitous arp frame, the arp table will be updated regardless
1919 1 : pass bridged vlan-tagged ARP/IP/IPv6 traffic to {arp,ip,ip6}tables.
Dnetconsole.txt181 ping -c 1 10.0.0.2 ; /sbin/arp -n | grep 10.0.0.2
/Linux-v4.19/drivers/net/ethernet/chelsio/cxgb3/
Dsge.c2019 struct arphdr *arp; in cxgb3_arp_process() local
2028 arp = arp_hdr(skb); in cxgb3_arp_process()
2030 if (arp->ar_op != htons(ARPOP_REQUEST)) in cxgb3_arp_process()
2033 arp_ptr = (unsigned char *)(arp + 1); in cxgb3_arp_process()

12