xref: /mOS-networking-stack/core/src/include/arp.h (revision 76404edc)
1 #ifndef __ARP_H_
2 #define __ARP_H_
3 
4 #include "mos_api.h"
5 
6 #define MAX_ARPENTRY			1024
7 #define RUN_ARP				1
8 #define ARP_TIMEOUT_SEC			1
9 
10 int
11 InitARPTable();
12 
13 unsigned char *
14 GetHWaddr(uint32_t ip);
15 
16 unsigned char *
17 GetDestinationHWaddr(uint32_t dip);
18 
19 void
20 RequestARP(mtcp_manager_t mtcp, uint32_t ip, int nif, uint32_t cur_ts);
21 
22 int
23 ProcessARPPacket(mtcp_manager_t mtcp, uint32_t cur_ts,
24 		const int ifidx, unsigned char* pkt_data, int len);
25 
26 void
27 PublishARP(mtcp_manager_t mtcp);
28 
29 void
30 PrintARPTable();
31 
32 void
33 ForwardARPPacket(mtcp_manager_t mtcp, struct pkt_ctx *pctx);
34 
35 void
36 ARPTimer(mtcp_manager_t mtcp, uint32_t cur_ts);
37 
38 #endif /* __ARP_H_ */
39