12 #ifndef NETLINK_NEIGHTBL_H_
13 #define NETLINK_NEIGHTBL_H_
15 #include <netlink/netlink.h>
16 #include <netlink/cache.h>
17 #include <netlink/addr.h>
25 extern struct rtnl_neightbl *rtnl_neightbl_alloc(
void);
26 extern void rtnl_neightbl_put(
struct rtnl_neightbl *);
27 extern void rtnl_neightbl_free(
struct rtnl_neightbl *);
31 extern void rtnl_neightbl_dump(
struct rtnl_neightbl *, FILE *,
35 struct rtnl_neightbl *,
38 struct rtnl_neightbl *);
40 extern void rtnl_neightbl_set_family(
struct rtnl_neightbl *,
int);
41 extern void rtnl_neightbl_set_gc_tresh1(
struct rtnl_neightbl *,
int);
42 extern void rtnl_neightbl_set_gc_tresh2(
struct rtnl_neightbl *,
int);
43 extern void rtnl_neightbl_set_gc_tresh3(
struct rtnl_neightbl *,
int);
44 extern void rtnl_neightbl_set_gc_interval(
struct rtnl_neightbl *, uint64_t);
45 extern void rtnl_neightbl_set_name(
struct rtnl_neightbl *,
const char *);
46 extern void rtnl_neightbl_set_dev(
struct rtnl_neightbl *,
int);
int rtnl_neightbl_alloc_cache(struct nl_sock *, struct nl_cache **)
Build a neighbour table cache including all neighbour tables currently configured in the kernel...
int rtnl_neightbl_build_change_request(struct rtnl_neightbl *, struct rtnl_neightbl *, struct nl_msg **)
Builds a netlink change request message to change neighbour table attributes.
void rtnl_neightbl_set_locktime(struct rtnl_neightbl *, uint64_t)
Set the locktime of a neighbour table to the specified value.
void rtnl_neightbl_set_retrans_time(struct rtnl_neightbl *, uint64_t)
Set the retransmit time of a neighbour table to the specified value.
void rtnl_neightbl_set_app_probes(struct rtnl_neightbl *, int)
Set the number of application probes of a neighbour table to the specified value. ...
struct rtnl_neightbl * rtnl_neightbl_get(struct nl_cache *, const char *, int)
Lookup neighbour table by name and optional interface index.
void rtnl_neightbl_set_anycast_delay(struct rtnl_neightbl *, uint64_t)
Set the anycast delay of a neighbour table to the specified value.
int rtnl_neightbl_change(struct nl_sock *, struct rtnl_neightbl *, struct rtnl_neightbl *)
Change neighbour table attributes.
void rtnl_neightbl_set_queue_len(struct rtnl_neightbl *, int)
Set the queue length for pending requests of a neighbour table to the specified value.
void rtnl_neightbl_set_delay_probe_time(struct rtnl_neightbl *, uint64_t)
Set the first probe delay time of a neighbour table to the specified value.
void rtnl_neightbl_set_gc_stale_time(struct rtnl_neightbl *, uint64_t)
Set the gc stale time of a neighbour table to the specified value.
void rtnl_neightbl_set_proxy_delay(struct rtnl_neightbl *, uint64_t)
Set the proxy delay of a neighbour table to the specified value.
void rtnl_neightbl_set_proxy_queue_len(struct rtnl_neightbl *, int)
Set the queue length for delay proxy arp requests of a neighbour table to the specified value...
void rtnl_neightbl_set_ucast_probes(struct rtnl_neightbl *, int)
Set the number of unicast probes of a neighbour table to the specified value.
void rtnl_neightbl_set_base_reachable_time(struct rtnl_neightbl *, uint64_t)
Set the base reachable time of a neighbour table to the specified value.
void rtnl_neightbl_set_mcast_probes(struct rtnl_neightbl *, int)
Set the number of multicast probes of a neighbour table to the specified value.