diff --git a/src/lxc/network.c b/src/lxc/network.c index b442ed5752..ef45e98ab5 100644 --- a/src/lxc/network.c +++ b/src/lxc/network.c @@ -582,24 +582,21 @@ static int lxc_ipvlan_create(const char *master, const char *name, int mode, int if (nla_put_string(nlmsg, IFLA_INFO_KIND, "ipvlan")) return ret_errno(EPROTO); - if (mode) { - nest2 = nla_begin_nested(nlmsg, IFLA_INFO_DATA); - if (!nest2) - return ret_errno(EPROTO); - - if (nla_put_u32(nlmsg, IFLA_IPVLAN_MODE, mode)) - return ret_errno(EPROTO); + nest2 = nla_begin_nested(nlmsg, IFLA_INFO_DATA); + if (!nest2) + return ret_errno(EPROTO); - /* if_link.h does not define the isolation flag value for bridge mode so we define it as 0 - * and only send mode if mode >0 as default mode is bridge anyway according to ipvlan docs. - */ - if (isolation > 0 && - nla_put_u16(nlmsg, IFLA_IPVLAN_ISOLATION, isolation)) - return ret_errno(EPROTO); + if (nla_put_u32(nlmsg, IFLA_IPVLAN_MODE, mode)) + return ret_errno(EPROTO); - nla_end_nested(nlmsg, nest2); - } + /* if_link.h does not define the isolation flag value for bridge mode so we define it as 0 + * and only send mode if mode >0 as default mode is bridge anyway according to ipvlan docs. + */ + if (isolation > 0 && + nla_put_u16(nlmsg, IFLA_IPVLAN_ISOLATION, isolation)) + return ret_errno(EPROTO); + nla_end_nested(nlmsg, nest2); nla_end_nested(nlmsg, nest); if (nla_put_u32(nlmsg, IFLA_LINK, index))