#include <netlink-local.h>
#include <netlink/netlink.h>
#include <netlink/utils.h>
#include <netlink/route/rtnl.h>
#include <netlink/route/neightbl.h>
#include <netlink/route/link.h>
Macros | |
#define | NT_DIFF(ATTR, EXPR) ATTR_DIFF(attrs, NEIGHTBL_ATTR_##ATTR, a, b, EXPR) |
#define | COPY_ENTRY(name, var) |
Functions | |
Allocation/Freeing | |
struct rtnl_neightbl * | rtnl_neightbl_alloc (void) |
void | rtnl_neightbl_put (struct rtnl_neightbl *neightbl) |
Neighbour Table Cache Management | |
int | rtnl_neightbl_alloc_cache (struct nl_sock *sk, struct nl_cache **result) |
Build a neighbour table cache including all neighbour tables currently configured in the kernel. More... | |
struct rtnl_neightbl * | rtnl_neightbl_get (struct nl_cache *cache, const char *name, int ifindex) |
Lookup neighbour table by name and optional interface index. More... | |
Neighbour Table Modifications | |
int | rtnl_neightbl_build_change_request (struct rtnl_neightbl *old, struct rtnl_neightbl *tmpl, struct nl_msg **result) |
Builds a netlink change request message to change neighbour table attributes. More... | |
int | rtnl_neightbl_change (struct nl_sock *sk, struct rtnl_neightbl *old, struct rtnl_neightbl *tmpl) |
Change neighbour table attributes. More... | |
Attribute Modification | |
void | rtnl_neightbl_set_family (struct rtnl_neightbl *ntbl, int family) |
void | rtnl_neightbl_set_gc_interval (struct rtnl_neightbl *ntbl, uint64_t ms) |
void | rtnl_neightbl_set_gc_tresh1 (struct rtnl_neightbl *ntbl, int thresh) |
void | rtnl_neightbl_set_gc_tresh2 (struct rtnl_neightbl *ntbl, int thresh) |
void | rtnl_neightbl_set_gc_tresh3 (struct rtnl_neightbl *ntbl, int thresh) |
void | rtnl_neightbl_set_name (struct rtnl_neightbl *ntbl, const char *name) |
void | rtnl_neightbl_set_dev (struct rtnl_neightbl *ntbl, int ifindex) |
void | rtnl_neightbl_set_queue_len (struct rtnl_neightbl *ntbl, int len) |
Set the queue length for pending requests of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_proxy_queue_len (struct rtnl_neightbl *ntbl, int len) |
Set the queue length for delay proxy arp requests of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_app_probes (struct rtnl_neightbl *ntbl, int probes) |
Set the number of application probes of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_ucast_probes (struct rtnl_neightbl *ntbl, int probes) |
Set the number of unicast probes of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_mcast_probes (struct rtnl_neightbl *ntbl, int probes) |
Set the number of multicast probes of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_base_reachable_time (struct rtnl_neightbl *ntbl, uint64_t ms) |
Set the base reachable time of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_retrans_time (struct rtnl_neightbl *ntbl, uint64_t ms) |
Set the retransmit time of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_gc_stale_time (struct rtnl_neightbl *ntbl, uint64_t ms) |
Set the gc stale time of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_delay_probe_time (struct rtnl_neightbl *ntbl, uint64_t ms) |
Set the first probe delay time of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_anycast_delay (struct rtnl_neightbl *ntbl, uint64_t ms) |
Set the anycast delay of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_proxy_delay (struct rtnl_neightbl *ntbl, uint64_t ms) |
Set the proxy delay of a neighbour table to the specified value. More... | |
void | rtnl_neightbl_set_locktime (struct rtnl_neightbl *ntbl, uint64_t ms) |
Set the locktime of a neighbour table to the specified value. More... | |
#define COPY_ENTRY | ( | name, | |
var | |||
) |
#define NT_DIFF | ( | ATTR, | |
EXPR | |||
) | ATTR_DIFF(attrs, NEIGHTBL_ATTR_##ATTR, a, b, EXPR) |