
Peter Krempa wrote:
On Wed, Apr 22, 2015 at 12:19:51 +0400, Roman Bogorodskiy wrote:
Build fails on non-Linux systems with this error:
CC util/libvirt_util_la-virnetdev.lo util/virnetdev.c:364:1: error: unused function 'virNetDevReplaceMacAddress' [-Werror,-Wunused-function] virNetDevReplaceMacAddress(const char *linkdev, ^ util/virnetdev.c:406:1: error: unused function 'virNetDevRestoreMacAddress' [-Werror,-Wunused-function] virNetDevRestoreMacAddress(const char *linkdev, ^ 2 errors generated.
The virNetDev{Restore,Replace}MacAddress() functions are only used by VF-related routines that are available on Linux only. So move these functions under the same #ifdef. --- src/util/virnetdev.c | 176 ++++++++++++++++++++++++++------------------------- 1 file changed, 89 insertions(+), 87 deletions(-)
diff --git a/src/util/virnetdev.c b/src/util/virnetdev.c index b7ea524..5069064 100644 --- a/src/util/virnetdev.c +++ b/src/util/virnetdev.c @@ -351,93 +351,6 @@ int virNetDevGetMAC(const char *ifname,
A few too many empty lines will remain here.
-/** - * virNetDevReplaceMacAddress: - * @macaddress: new MAC address for interface - * @linkdev: name of interface - * @stateDir: directory to store old MAC address - * - * Returns 0 on success, -1 on failure - * - */
...
+static int +virNetDevRestoreMacAddress(const char *linkdev, + const char *stateDir) +{ + int rc = -1; + char *oldmacname = NULL; + char *macstr = NULL; + char *path = NULL; + virMacAddr oldmac; + + if (virAsprintf(&path, "%s/%s", + stateDir, + linkdev) < 0) + return -1; + + if (virFileReadAll(path, VIR_MAC_STRING_BUFLEN, &macstr) < 0) + goto cleanup; + + if (virMacAddrParse(macstr, &oldmac) != 0) { + virReportError(VIR_ERR_INTERNAL_ERROR, + _("Cannot parse MAC address from '%s'"), + oldmacname); + goto cleanup; + } + + /*reset mac and remove file-ignore results*/ + rc = virNetDevSetMAC(linkdev, &oldmac); + ignore_value(unlink(path)); + + cleanup: + VIR_FREE(macstr); + VIR_FREE(path); + return rc; +} + + +
And a few too many empty lines are added here.
static struct nla_policy ifla_vf_policy[IFLA_VF_MAX+1] = { [IFLA_VF_MAC] = { .type = NLA_UNSPEC, .maxlen = sizeof(struct ifla_vf_mac) },
ACK,
Extra blank lines dropped and pushed. Thanks! Roman Bogorodskiy