Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef _NET_DN_NEIGH_H
0003 #define _NET_DN_NEIGH_H
0004 
0005 #include <net/neighbour.h>
0006 
0007 /*
0008  * The position of the first two fields of
0009  * this structure are critical - SJW
0010  */
0011 struct dn_neigh {
0012         struct neighbour n;
0013     __le16 addr;
0014         unsigned long flags;
0015 #define DN_NDFLAG_R1    0x0001 /* Router L1      */
0016 #define DN_NDFLAG_R2    0x0002 /* Router L2      */
0017 #define DN_NDFLAG_P3    0x0004 /* Phase III Node */
0018         unsigned long blksize;
0019     __u8 priority;
0020 };
0021 
0022 void dn_neigh_init(void);
0023 void dn_neigh_cleanup(void);
0024 int dn_neigh_router_hello(struct net *net, struct sock *sk, struct sk_buff *skb);
0025 int dn_neigh_endnode_hello(struct net *net, struct sock *sk, struct sk_buff *skb);
0026 void dn_neigh_pointopoint_hello(struct sk_buff *skb);
0027 int dn_neigh_elist(struct net_device *dev, unsigned char *ptr, int n);
0028 int dn_to_neigh_output(struct net *net, struct sock *sk, struct sk_buff *skb);
0029 
0030 extern struct neigh_table dn_neigh_table;
0031 
0032 #endif /* _NET_DN_NEIGH_H */