xref: /openbmc/linux/include/net/arp.h (revision 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2)
1*1da177e4SLinus Torvalds /* linux/net/inet/arp.h */
2*1da177e4SLinus Torvalds #ifndef _ARP_H
3*1da177e4SLinus Torvalds #define _ARP_H
4*1da177e4SLinus Torvalds 
5*1da177e4SLinus Torvalds #include <linux/if_arp.h>
6*1da177e4SLinus Torvalds #include <net/neighbour.h>
7*1da177e4SLinus Torvalds 
8*1da177e4SLinus Torvalds #define HAVE_ARP_CREATE
9*1da177e4SLinus Torvalds 
10*1da177e4SLinus Torvalds extern struct neigh_table arp_tbl;
11*1da177e4SLinus Torvalds 
12*1da177e4SLinus Torvalds extern void	arp_init(void);
13*1da177e4SLinus Torvalds extern int	arp_rcv(struct sk_buff *skb, struct net_device *dev,
14*1da177e4SLinus Torvalds 			struct packet_type *pt);
15*1da177e4SLinus Torvalds extern int	arp_find(unsigned char *haddr, struct sk_buff *skb);
16*1da177e4SLinus Torvalds extern int	arp_ioctl(unsigned int cmd, void __user *arg);
17*1da177e4SLinus Torvalds extern void     arp_send(int type, int ptype, u32 dest_ip,
18*1da177e4SLinus Torvalds 			 struct net_device *dev, u32 src_ip,
19*1da177e4SLinus Torvalds 			 unsigned char *dest_hw, unsigned char *src_hw, unsigned char *th);
20*1da177e4SLinus Torvalds extern int	arp_bind_neighbour(struct dst_entry *dst);
21*1da177e4SLinus Torvalds extern int	arp_mc_map(u32 addr, u8 *haddr, struct net_device *dev, int dir);
22*1da177e4SLinus Torvalds extern void	arp_ifdown(struct net_device *dev);
23*1da177e4SLinus Torvalds 
24*1da177e4SLinus Torvalds extern struct sk_buff *arp_create(int type, int ptype, u32 dest_ip,
25*1da177e4SLinus Torvalds 				  struct net_device *dev, u32 src_ip,
26*1da177e4SLinus Torvalds 				  unsigned char *dest_hw, unsigned char *src_hw,
27*1da177e4SLinus Torvalds 				  unsigned char *target_hw);
28*1da177e4SLinus Torvalds extern void arp_xmit(struct sk_buff *skb);
29*1da177e4SLinus Torvalds 
30*1da177e4SLinus Torvalds extern struct neigh_ops arp_broken_ops;
31*1da177e4SLinus Torvalds 
32*1da177e4SLinus Torvalds #endif	/* _ARP_H */
33