chiark / gitweb /
sd-rtnl: do not require ifindex to be set for SETLINK messages
authorTom Gundersen <teg@jklm.no>
Sun, 16 Feb 2014 20:39:50 +0000 (21:39 +0100)
committerTom Gundersen <teg@jklm.no>
Sun, 16 Feb 2014 22:17:19 +0000 (23:17 +0100)
The kernel will then look up the ifindex itself based on the name.
This should be used very carefully as it is racey.

[This was a left-over hunk from my previous nspawn patch.]

src/libsystemd/sd-rtnl/rtnl-message.c

index 15e3247aca90dff62178320b78a8c3d7f5647664..a13bd48725212d057effac0eca6a3675110aab4e 100644 (file)
@@ -147,7 +147,8 @@ int sd_rtnl_message_new_link(uint16_t nlmsg_type, int index, sd_rtnl_message **r
         int r;
 
         assert_return(rtnl_message_type_is_link(nlmsg_type), -EINVAL);
-        assert_return(nlmsg_type == RTM_NEWLINK || index > 0, -EINVAL);
+        assert_return(nlmsg_type == RTM_NEWLINK ||
+                      nlmsg_type == RTM_SETLINK || index > 0, -EINVAL);
         assert_return(ret, -EINVAL);
 
         r = message_new(ret, NLMSG_SPACE(sizeof(struct ifinfomsg)));