12 #ifndef NETLINK_NEIGHBOUR_H_
13 #define NETLINK_NEIGHBOUR_H_
15 #include <netlink/netlink.h>
16 #include <netlink/cache.h>
17 #include <netlink/addr.h>
25 extern struct rtnl_neigh *rtnl_neigh_alloc(
void);
26 extern void rtnl_neigh_put(
struct rtnl_neigh *);
32 extern int rtnl_neigh_parse(
struct nlmsghdr *,
struct rtnl_neigh **);
34 extern char * rtnl_neigh_state2str(
int,
char *,
size_t);
35 extern int rtnl_neigh_str2state(
const char *);
37 extern char * rtnl_neigh_flags2str(
int,
char *,
size_t);
38 extern int rtnl_neigh_str2flag(
const char *);
40 extern int rtnl_neigh_add(
struct nl_sock *,
struct rtnl_neigh *,
int);
48 extern void rtnl_neigh_set_state(
struct rtnl_neigh *,
int);
49 extern int rtnl_neigh_get_state(
struct rtnl_neigh *);
50 extern void rtnl_neigh_unset_state(
struct rtnl_neigh *,
53 extern void rtnl_neigh_set_flags(
struct rtnl_neigh *,
55 extern void rtnl_neigh_unset_flags(
struct rtnl_neigh *,
57 extern unsigned int rtnl_neigh_get_flags(
struct rtnl_neigh *);
59 extern void rtnl_neigh_set_ifindex(
struct rtnl_neigh *,
61 extern int rtnl_neigh_get_ifindex(
struct rtnl_neigh *);
63 extern void rtnl_neigh_set_lladdr(
struct rtnl_neigh *,
65 extern struct nl_addr * rtnl_neigh_get_lladdr(
struct rtnl_neigh *);
67 extern int rtnl_neigh_set_dst(
struct rtnl_neigh *,
69 extern struct nl_addr * rtnl_neigh_get_dst(
struct rtnl_neigh *);
71 extern void rtnl_neigh_set_type(
struct rtnl_neigh *,
int);
72 extern int rtnl_neigh_get_type(
struct rtnl_neigh *);
74 extern void rtnl_neigh_set_family(
struct rtnl_neigh *,
int);
75 extern int rtnl_neigh_get_family(
struct rtnl_neigh *);