From 25004a55456471c93363673c2baece2abdf82103 Mon Sep 17 00:00:00 2001 From: Robert Swiecki Date: Thu, 25 Oct 2018 14:49:46 +0200 Subject: [PATCH] Support --iface_vs_ma with libnl3 --- net.cc | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/net.cc b/net.cc index f64d304..fb78e9b 100644 --- a/net.cc +++ b/net.cc @@ -74,6 +74,17 @@ static bool cloneIface( rtnl_link_set_link(rmv, master_index); rtnl_link_set_ns_pid(rmv, pid); + if (nsjconf->iface_vs_ma != "") { + struct nl_addr* nladdr = nullptr; + if ((err = nl_addr_parse(nsjconf->iface_vs_ma.c_str(), AF_LLC, &nladdr)) < 0) { + LOG_E("nl_addr_parse('%s', AF_LLC) failed: %s", + nsjconf->iface_vs_ma.c_str(), nl_geterror(err)); + return false; + } + rtnl_link_set_addr(rmv, nladdr); + nl_addr_put(nladdr); + } + if ((err = rtnl_link_add(sk, rmv, NLM_F_CREATE)) < 0) { LOG_E("rtnl_link_add(name:'%s' link:'%s'): %s", IFACE_NAME, nsjconf->iface_vs.c_str(), nl_geterror(err));