DPDK 25.03.0-rc0
rte_arp.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2013 6WIND S.A.
3 */
4
5#ifndef _RTE_ARP_H_
6#define _RTE_ARP_H_
7
14#include <stdint.h>
15#include <rte_ether.h>
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
24struct __rte_aligned(2) rte_arp_ipv4 {
25 struct rte_ether_addr arp_sha;
26 rte_be32_t arp_sip;
27 struct rte_ether_addr arp_tha;
28 rte_be32_t arp_tip;
30
34struct __rte_aligned(2) rte_arp_hdr {
35 rte_be16_t arp_hardware;
36#define RTE_ARP_HRD_ETHER 1
38 rte_be16_t arp_protocol;
39 uint8_t arp_hlen;
40 uint8_t arp_plen;
41 rte_be16_t arp_opcode;
42#define RTE_ARP_OP_REQUEST 1
43#define RTE_ARP_OP_REPLY 2
44#define RTE_ARP_OP_REVREQUEST 3
45#define RTE_ARP_OP_REVREPLY 4
46#define RTE_ARP_OP_INVREQUEST 8
47#define RTE_ARP_OP_INVREPLY 9
49 struct rte_arp_ipv4 arp_data;
51
63struct rte_mbuf *
65 const struct rte_ether_addr *mac);
66
67#ifdef __cplusplus
68}
69#endif
70
71#endif /* _RTE_ARP_H_ */
struct rte_mbuf * rte_net_make_rarp_packet(struct rte_mempool *mpool, const struct rte_ether_addr *mac)
struct __rte_aligned(2) rte_arp_ipv4
Definition: rte_arp.h:24
uint32_t rte_be32_t
uint16_t rte_be16_t
#define __rte_packed
Definition: rte_common.h:108