[libvirt] [PATCH] Fix bridge/tap system error reporting

Mark McLoughlin markmc at redhat.com
Tue Aug 18 13:17:46 UTC 2009


* src/qemu_conf.c, src/uml_conf.c: use virReportSystemError() to report
  system errors
---
 src/qemu_conf.c |   19 ++++++++-----------
 src/uml_conf.c  |   21 ++++++++-------------
 2 files changed, 16 insertions(+), 24 deletions(-)

diff --git a/src/qemu_conf.c b/src/qemu_conf.c
index bcdab11..22f5edd 100644
--- a/src/qemu_conf.c
+++ b/src/qemu_conf.c
@@ -1060,11 +1060,9 @@ qemudNetworkIfaceConnect(virConnectPtr conn,
         return -1;
     }
 
-    char ebuf[1024];
     if (!driver->brctl && (err = brInit(&driver->brctl))) {
-        qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
-                         _("cannot initialize bridge support: %s"),
-                         virStrerror(err, ebuf, sizeof ebuf));
+        virReportSystemError(conn, err, "%s",
+                             _("cannot initialize bridge support"));
         return -1;
     }
 
@@ -1092,14 +1090,13 @@ qemudNetworkIfaceConnect(virConnectPtr conn,
                              _("Failed to add tap interface to bridge. "
                                "%s is not a bridge device"), brname);
         } else if (template_ifname) {
-            qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
-                             _("Failed to add tap interface to bridge '%s' : %s"),
-                             brname, virStrerror(err, ebuf, sizeof ebuf));
+            virReportSystemError(conn, err,
+                                 _("Failed to add tap interface to bridge '%s'"),
+                                 brname);
         } else {
-            qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
-                             _("Failed to add tap interface '%s' "
-                               "to bridge '%s' : %s"),
-                             net->ifname, brname, virStrerror(err, ebuf, sizeof ebuf));
+            virReportSystemError(conn, err,
+                                 _("Failed to add tap interface '%s' to bridge '%s'"),
+                                 net->ifname, brname);
         }
         if (template_ifname)
             VIR_FREE(net->ifname);
diff --git a/src/uml_conf.c b/src/uml_conf.c
index a4c434f..838fedd 100644
--- a/src/uml_conf.c
+++ b/src/uml_conf.c
@@ -110,10 +110,8 @@ umlConnectTapDevice(virConnectPtr conn,
     int err;
 
     if ((err = brInit(&brctl))) {
-        char ebuf[1024];
-        umlReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
-                       _("cannot initialize bridge support: %s"),
-                       virStrerror(err, ebuf, sizeof ebuf));
+        virReportSystemError(conn, err, "%s",
+                             _("cannot initialize bridge support"));
         goto error;
     }
 
@@ -135,16 +133,13 @@ umlConnectTapDevice(virConnectPtr conn,
                            _("Failed to add tap interface to bridge. "
                              "%s is not a bridge device"), bridge);
         } else if (template_ifname) {
-            char ebuf[1024];
-            umlReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
-                           _("Failed to add tap interface to bridge '%s' : %s"),
-                           bridge, virStrerror(err, ebuf, sizeof ebuf));
+            virReportSystemError(conn, err,
+                                 _("Failed to add tap interface to bridge '%s'"),
+                                 bridge);
         } else {
-            char ebuf[1024];
-            umlReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
-                           _("Failed to add tap interface '%s' "
-                             "to bridge '%s' : %s"),
-                           net->ifname, bridge, virStrerror(err, ebuf, sizeof ebuf));
+            virReportSystemError(conn, err,
+                                 _("Failed to add tap interface '%s' to bridge '%s'"),
+                                 net->ifname, bridge);
         }
         if (template_ifname)
             VIR_FREE(net->ifname);
-- 
1.6.2.5




More information about the libvir-list mailing list