[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH v4]: set and restore MAC address of a NIC when using PASSTHROUGH mode



On 06/21/2011 03:25 PM, Eric Blake wrote:
On 06/21/2011 12:21 PM, Stefan Berger wrote:
On 06/21/2011 01:16 PM, Eric Blake wrote:
On 06/21/2011 06:01 AM, Gerhard Stenzel wrote:
+    rc = ifaceGetMacaddr(linkdev, oldmac);
+
+    if (rc) {
+        virReportSystemError(rc,
Sorry for not catching this sooner.  This should probably be
virReportSystemError(errno,...), assuming that ifaceGetMacaddr
guarantees a sane errno setting (at any rate, you used errno for
ifaceSetMacaddr later on).

It should be ok the way it is since ifaceGetMacAddr() returns either
EINVAL or the content of errno.
Oh, I see.  But then we have the converse problem:

+    rc = ifaceSetMacaddr(linkdev, macaddress);
+    if (rc) {
+        virReportSystemError(errno,
+                             _("Setting MAC address on  '%s' to "
+                               "'%02x:%02x:%02x:%02x:%02x:%02x' failed."),

But ifaceSetMacaddr returns EINVAL without setting errno on at least one
error path, which means this can print a bogus errno value.
I fixed this now to use 'rc' rather than this errno in the patch moving this code into interface.c.

   Stefan


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]