summaryrefslogtreecommitdiffstats
path: root/lib/route/link.c
diff options
context:
space:
mode:
authormatben2 <matt.bennett@alliedtelesis.co.nz>2015-07-09 05:40:18 (GMT)
committerThomas Haller <thaller@redhat.com>2015-07-09 20:33:32 (GMT)
commit34ccb7210f1238f89229c117dc3d28cea7ae00bb (patch)
treeb94efa7ef764965bf875973c0c6f6373ffd669e3 /lib/route/link.c
parent371226b834b662e6ad99400ffc20450e574ca5c2 (diff)
downloadlibnl-34ccb7210f1238f89229c117dc3d28cea7ae00bb.zip
libnl-34ccb7210f1238f89229c117dc3d28cea7ae00bb.tar.gz
libnl-34ccb7210f1238f89229c117dc3d28cea7ae00bb.tar.bz2
link: set ifi_change in link message
The ifi_change field can be set with the mask of the flags that need to be changed as part of the link message to the kernel. This means only the specific flags that have been changed will be modified in the kernel, rather than the entire flags entry. [thaller@redhat.com: add capability to indicate the change in behavior] https://github.com/thom311/libnl/pull/86
Diffstat (limited to 'lib/route/link.c')
-rw-r--r--lib/route/link.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/route/link.c b/lib/route/link.c
index d66a798..35946bd 100644
--- a/lib/route/link.c
+++ b/lib/route/link.c
@@ -1465,6 +1465,7 @@ int rtnl_link_build_change_request(struct rtnl_link *orig,
if (changes->ce_mask & LINK_ATTR_FLAGS) {
ifi.ifi_flags = orig->l_flags & ~changes->l_flag_mask;
ifi.ifi_flags |= changes->l_flags;
+ ifi.ifi_change = changes->l_flag_mask;
}
if (changes->l_family && changes->l_family != orig->l_family) {