libnl 3.9.0
netconf.h
1/* SPDX-License-Identifier: LGPL-2.1-only */
2/*
3 * Copyright (c) 2017 David Ahern <dsa@cumulusnetworks.com>
4 */
5
6#ifndef NETCONF_H_
7#define NETCONF_H_
8
9#ifdef __cplusplus
10extern "C" {
11#endif
12
13struct nl_sock;
14struct nl_cache;
15struct rtnl_netconf;
16
17int rtnl_netconf_alloc_cache(struct nl_sock *sk, struct nl_cache **result);
18
19struct rtnl_netconf *rtnl_netconf_get_by_idx(struct nl_cache *cache, int family,
20 int ifindex);
21struct rtnl_netconf *rtnl_netconf_get_all(struct nl_cache *cache,
22 int family);
23struct rtnl_netconf *rtnl_netconf_get_default(struct nl_cache *cache,
24 int family);
25void rtnl_netconf_put(struct rtnl_netconf *nc);
26
27int rtnl_netconf_get_family(struct rtnl_netconf *nc, int *val);
28int rtnl_netconf_get_ifindex(struct rtnl_netconf *nc, int *val);
29int rtnl_netconf_get_forwarding(struct rtnl_netconf *nc, int *val);
30int rtnl_netconf_get_mc_forwarding(struct rtnl_netconf *nc, int *val);
31int rtnl_netconf_get_rp_filter(struct rtnl_netconf *nc, int *val);
32int rtnl_netconf_get_proxy_neigh(struct rtnl_netconf *nc, int *val);
33int rtnl_netconf_get_ignore_routes_linkdown(struct rtnl_netconf *nc, int *val);
34int rtnl_netconf_get_input(struct rtnl_netconf *nc, int *val);
35
36#ifdef __cplusplus
37}
38#endif
39
40#endif
struct rtnl_netconf * rtnl_netconf_get_by_idx(struct nl_cache *cache, int family, int ifindex)
Search netconf in cache.
Definition netconf.c:372
struct rtnl_netconf * rtnl_netconf_get_default(struct nl_cache *cache, int family)
Search netconf in cache.
Definition netconf.c:429
struct rtnl_netconf * rtnl_netconf_get_all(struct nl_cache *cache, int family)
Search netconf in cache.
Definition netconf.c:410