From: Steven Barth Date: Wed, 18 Jun 2014 11:28:39 +0000 (+0200) Subject: linux: unify functions to delete links X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=65cab45660dd0b234b663a39a133c64271f667b7;p=oweals%2Fnetifd.git linux: unify functions to delete links Signed-off-by: Steven Barth --- diff --git a/system-linux.c b/system-linux.c index af54bfd..8f612c9 100644 --- a/system-linux.c +++ b/system-linux.c @@ -791,7 +791,7 @@ nla_put_failure: return -ENOMEM; } -int system_macvlan_del(struct device *macvlan) +static int system_link_del(struct device *dev) { struct nl_msg *msg; struct ifinfomsg iim = { @@ -805,12 +805,13 @@ int system_macvlan_del(struct device *macvlan) return -1; nlmsg_append(msg, &iim, sizeof(iim), 0); + nla_put_string(msg, IFLA_IFNAME, dev->ifname); + return system_rtnl_call(msg); +} - nla_put_string(msg, IFLA_IFNAME, macvlan->ifname); - - system_rtnl_call(msg); - - return 0; +int system_macvlan_del(struct device *macvlan) +{ + return system_link_del(macvlan); } static int system_vlan(struct device *dev, int id) @@ -896,24 +897,7 @@ nla_put_failure: int system_vlandev_del(struct device *vlandev) { - struct nl_msg *msg; - struct ifinfomsg iim = { - .ifi_family = AF_UNSPEC, - .ifi_index = 0, - }; - - msg = nlmsg_alloc_simple(RTM_DELLINK, NLM_F_REQUEST); - - if (!msg) - return -1; - - nlmsg_append(msg, &iim, sizeof(iim), 0); - - nla_put_string(msg, IFLA_IFNAME, vlandev->ifname); - - system_rtnl_call(msg); - - return 0; + return system_link_del(vlandev); } static void