[sundance] Add reset completion check
[gpxe.git] / src / include / gpxe / arp.h
blob6464ce0c5a53528049cb05abcef4d1a757c9238d
1 #ifndef _GPXE_ARP_H
2 #define _GPXE_ARP_H
4 /** @file
6 * Address Resolution Protocol
8 */
10 #include <gpxe/tables.h>
12 struct net_device;
13 struct net_protocol;
15 /** A network-layer protocol that relies upon ARP */
16 struct arp_net_protocol {
17 /** Network-layer protocol */
18 struct net_protocol *net_protocol;
19 /** Check existence of address
21 * @v netdev Network device
22 * @v net_addr Network-layer address
23 * @ret rc Return status code
25 int ( * check ) ( struct net_device *netdev,
26 const void *net_addr );
29 /** Declare an ARP protocol */
30 #define __arp_net_protocol \
31 __table ( struct arp_net_protocol, arp_net_protocols, 01 )
33 extern struct net_protocol arp_protocol;
35 extern int arp_resolve ( struct net_device *netdev,
36 struct net_protocol *net_protocol,
37 const void *dest_net_addr,
38 const void *source_net_addr,
39 void *dest_ll_addr );
41 #endif /* _GPXE_ARP_H */