[libvirt] [PATCH] Fix error report from nl_recvmsg

Daniel P. Berrange berrange at redhat.com
Thu Feb 28 13:37:44 UTC 2013


From: "Daniel P. Berrange" <berrange at redhat.com>

The nl_recvmsg does not always set errno. Instead it returns
its own custom set of error codes. Thus we were reporting the
wrong data.
---
 src/util/virnetlink.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/src/util/virnetlink.c b/src/util/virnetlink.c
index 0b36fdc..8b47ede 100644
--- a/src/util/virnetlink.c
+++ b/src/util/virnetlink.c
@@ -335,8 +335,9 @@ virNetlinkEventCallback(int watch,
     if (length == 0)
         return;
     if (length < 0) {
-        virReportSystemError(errno,
-                             "%s", _("nl_recv returned with error"));
+        virReportError(VIR_ERR_INTERNAL_ERROR,
+                       _("nl_recv returned with error: %s"),
+                       nl_geterror(length));
         return;
     }
 
-- 
1.7.11.7




More information about the libvir-list mailing list