| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
https://github.com/thom311/libnl/pull/409
|
|
|
|
| |
Add support for the IFLA_BR_MULTI_BOOLOPT bridge link attribute.
|
|
|
|
|
|
|
|
| |
Add support for the following attributes for bridge links:
IFLA_BR_STP_STATE
IFLA_BR_MCAST_ROUTER
IFLA_BR_MCAST_SNOOPING
|
|
|
|
|
|
| |
There are bridge info setter functions for nf_call_iptables,
nf_call_ip6tables and nf_call_arptables, but no corresponding getter
functions, so add them.
|
|
|
|
|
|
|
|
|
|
| |
The amount of flags that could be stored in the ndm_flags field of ndmsg
was limited to 8, so the kernel introduced a new attribute so more flags
could be represented in netlink messages.
Add support for the extended neighbour flags.
https://github.com/thom311/libnl/pull/405
|
|
|
|
| |
https://github.com/thom311/libnl/pull/404
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for the following bridge flags:
IFLA_BRPORT_PROXYARP
IFLA_BRPORT_PROXYARP_WIFI
IFLA_BRPORT_MCAST_FLOOD
IFLA_BRPORT_MCAST_TO_UCAST
IFLA_BRPORT_VLAN_TUNNEL
IFLA_BRPORT_BCAST_FLOOD
IFLA_BRPORT_NEIGH_SUPPRESS
IFLA_BRPORT_ISOLATED
IFLA_BRPORT_LOCKED
IFLA_BRPORT_MAB
IFLA_BRPORT_NEIGH_VLAN_SUPPRESS
https://github.com/thom311/libnl/pull/403
|
|
|
|
|
|
|
| |
In preparation of parsing bond link attributes, add getters for all
supported attributes.
Signed-off-by: Jonas Gorski <jonas.gorski@bisdn.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Routes may reference a nexthop (group) via the new nexthop API by its
ID, so add accessors for setting and getting it.
Referencing a nexthop is mutually exclusive to specifiying nexthops in
the route, so make sure we do not do that when creating netlink
messages (which may exist both, since netlink messages from the kernel
contain both unless 'nexthop_compat_mode' is disabled).
$ ip -6 r
2001:db8:3::/64 nhid 20 metric 1024 pref medium
nexthop via 2001:db8:1::2 dev v0 weight 1
nexthop via 2001:db8:2::2 dev v1 weight 1
Before:
$ nl-route-list
inet6 2001:db8:3::/64 table main type unicast via 2001:db8:1::2 dev v0 via 2001:db8:2::2 dev v1
After:
$ nl-route-list
inet6 2001:db8:3::/64 table main type unicast nhid 20 via 2001:db8:1::2 dev v0 via 2001:db8:2::2 dev v1
Signed-off-by: Jonas Gorski <jonas.gorski@bisdn.de>
https://github.com/thom311/libnl/pull/386
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Not all attributes of a nexthop are id attributes, e.g. the flags will
contain state (LINKDOWN, DEAD) of the attached link about which the
kernel will not send route updates.
Likewise, the weight may not exist when processing an ECMP IPv6 route
update which only contains a single nexthop.
Since rtnl_nexthop isn't a first class cache object, we cannot use
nl_object_identical(), so add a separate identical helper function which
compares only fixed attributes.
Signed-off-by: Jonas Gorski <jonas.gorski@bisdn.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
deprecated headers
Header files are part of a stable API. Warning about using deprecated
API is cumbersome, albeit often useful to force the user to migrate
away from the API.
But it also requires that the unit test disables "-Wcpp". That is
problematic on its own, because we don't want to disable any warnings.
As we only have 4 such header files, instead guard the warnings with
a
#ifndef _NL_NO_WARN_DEPRECATED_HEADER
|
|
|
|
| |
https://github.com/thom311/libnl/pull/373
|
| |
|
| |
|
|
|
|
|
|
|
| |
Adds the rtnl_link_can_get_device_stats function to get xstats of a
CAN-bus link as a can_device_stats struct.
https://github.com/thom311/libnl/pull/368
|
|
|
|
|
|
|
| |
[thaller@redhat.com: fixed wrong variable name in code and reworded
commit message.]
https://github.com/thom311/libnl/pull/363
|
|
|
|
|
|
| |
https://github.com/thom311/libnl/issues/356
Fixes: 780d06ae8bee ('route: add nh type')
|
| |
|
|
|
|
| |
to be self-contained
|
|
|
|
| |
Fixes: 780d06ae8bee ('route: add nh type')
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
following API has been added to bonding
bond_alloc
bond_free
rtnl_link_bond_set_activeslave
rtnl_link_bond_set_mode
bond_put_attrs
Signed-off-by: Mallikarjun Nemagoudar <MallikarjunRamappa.Nemagoudar@infineon.com>
https://github.com/thom311/libnl/pull/349
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's not clear how this API is useful. I don't think that kernel accepts
netlink requests to change the settings. So constructing a libnl3 object
in the user application seems not useful.
Also, because of the difficulty that DEVCONF_MAX is depending on the
current kernel, and changing. We need to improve how to handle the
option, and a rtnl_link_inet6_set_conf() only makes that more confusing.
The same is the case for rtnl_link_inet6_set_flags(), but that API
already exists, while rtnl_link_inet6_set_conf() is still new and
unreleased.
|
| |
|
|
|
|
| |
Signed-off-by: Abdurrahman Hussain <abdurrahman@hussain.rocks>
|
| |
|
| |
|
|
|
|
|
|
| |
Signed-off-by: Robert Dabrowski <rdabrowski@maxlinear.com>
Co-Authored-By: Kacper Ludwinski <kludwinski@maxlinear.com>
|
| |
|
|
|
|
|
|
|
| |
Signed-off-by: Magnus Öberg <magnus.oberg@westermo.se>
Signed-off-by: Volodymyr Bendiuga <volodymyr.bendiuga@gmail.com>
https://github.com/thom311/libnl/pull/317
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following API has been added:
rtnl_flower_set_ipv4_src
rtnl_flower_get_ipv4_src
rtnl_flower_set_ipv4_dst
rtnl_flower_get_ipv4_dst
Signed-off-by: Volodymyr Bendiuga <volodymyr.bendiuga@westermo.com>
https://github.com/thom311/libnl/pull/309
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a subset of functions.
Implemented api:
rtnl_flower_set_proto;
rtnl_flower_get_proto;
rtnl_flower_set_vlan_id;
rtnl_flower_get_vlan_id;
rtnl_flower_set_vlan_prio;
rtnl_flower_get_vlan_prio;
rtnl_flower_set_vlan_ethtype;
rtnl_flower_set_dst_mac;
rtnl_flower_get_dst_mac;
rtnl_flower_set_src_mac;
rtnl_flower_get_src_mac;
rtnl_flower_set_ip_dscp;
rtnl_flower_get_ip_dscp;
rtnl_flower_set_flags;
rtnl_flower_append_action;
rtnl_flower_del_action;
rtnl_flower_get_action;
[thaller@redhat.com: squashed commit "route:cls:flower: use parentheses in
macro definitions"]
[thaller@redhat.com: squashed commit "cls:flower: add TCA_FLOWER_FLAGS
to flower_policy"]
[thaller@redhat.com: squashed commit "cls:flower: vlan priority is
uint8_t, not uint16_t"]
[thaller@redhat.com: squashed commit "route:cls:flower: substitute nl_data*
with uint8_t mac[ETH_ALEN]"]
[thaller@redhat.com: drop non-existing TCA_FLOWER_POLICE. That was
never merged to upstream kernel. While at it, use decimal numbers
for the bitshift.]
[thaller@redhat.com: fix build by including <linux/if_ether.h> in
"types.h".]
Signed-off-by: Volodymyr Bendiuga <volodymyr.bendiuga@westermo.se>
|
|
|
|
|
|
| |
The argument of the setters does not get modified. Make it const.
This change does not break API/ABI.
|
|
|
|
|
| |
In can_put_attrs(), we also put ci_data_bittiming_const. It is thus
necessary to be able to set it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
These accessor functions just get/set a field of ci_data_bittiming,
which can already be get/set as a whole. It seems redundant, so drop it.
It's really important that things are principle at all (like, setting
ci_data_bittiming). It's not clear that we need such convenience
functions, if you can achieve the same result otherwise.
Yes, we have similar accessors already. I think that is not a good
approach though.
If they turn out very useful, we can still revert this patch.
|
|
|
|
|
|
| |
rtnl_link_can_get_data_bittiming_const()
It seems more consistent with the other names.
|
| |
|
|
|
|
|
|
|
| |
Add CAN FD support analog to the normal CAN support.
[thaller@redhat.com: second part of original commit. The first
part was merged as commit 5d925168a459]
|
|
|
|
|
|
|
|
|
|
|
| |
"struct rtnl_mdb_entry" is a relatively simple object that keeps a few
data fields. But there are no public setters in the API, so it's not
useful to be able to allocate such an entry.
Hide from public API.
Also, it was already not listed in libnl-route-3.sym, and thus the
symbol was hidden anyway.
|
|
|
|
|
|
|
|
|
|
| |
- drop leading tabs. Yes, it's inside an extern C block, but so is all
our code in public headers. That should not by default increase the
indentation level.
- drop unused rtnl_mdb_add().
- forward declare "struct rtnl_mdb".
|
|
|
|
|
|
|
|
|
|
|
| |
The Linux kernel has a notification system via Netlink that reports the
changes in the multicast database over the RTNLGRP_MDB multicast socket.
As such notifications such as RTM_NEWMDB, RTM_GETMDB can be processed in
userspace.
libnl must support the capability of processing these messages, e.g.
RTM_GETMDB.
This commit adds a new rtnl_mdb object as well as a route/mdb cache,
in order to expose the contents of the multicast database.
|
|
|
|
|
|
|
| |
rtnl_cls_find_by{handle,prio}()
The functions return the first matching object (of potentially several).
Rename them to "find", so that this is a bit clearer.
|
|
|
|
|
|
|
|
| |
API:
rtnl_cls_get()
rtnl_cls_get_by_prio()
These functions search for classifiers in classifier cache.
|
| |
|
|
|
|
|
|
| |
This is a new option that was added in Linux v4.12.
Signed-off-by: Thomas Winter <Thomas.Winter@alliedtelesis.co.nz>
|