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))