[libvirt] [PATCH 1/7] datatypes: avoid redundant __FUNCTION__

Eric Blake eblake at redhat.com
Fri Jan 14 20:48:01 UTC 2011


virLibConnError already includes __FUNCTION__ in its output, so we
were redundant.  Furthermore, clang warns that __FUNCTION__ is not
a string literal (at least __FUNCTION__ will never contain %, so
it was not a security risk).

* src/datatypes.c: Replace __FUNCTION__ with a descriptive string.
---

Wow, I've been sitting on this one for a while (commit date of May 2010).

 src/datatypes.c |  129 +++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 98 insertions(+), 31 deletions(-)

diff --git a/src/datatypes.c b/src/datatypes.c
index 9817538..855bd95 100644
--- a/src/datatypes.c
+++ b/src/datatypes.c
@@ -1,7 +1,7 @@
 /*
  * datatypes.h: management of structs for public data types
  *
- * Copyright (C) 2006-2010 Red Hat, Inc.
+ * Copyright (C) 2006-2011 Red Hat, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -310,7 +310,7 @@ virUnrefConnect(virConnectPtr conn) {
     int refs;

     if ((!VIR_IS_CONNECT(conn))) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
         return(-1);
     }
     virMutexLock(&conn->lock);
@@ -344,8 +344,16 @@ virGetDomain(virConnectPtr conn, const char *name, const unsigned char *uuid) {
     virDomainPtr ret = NULL;
     char uuidstr[VIR_UUID_STRING_BUFLEN];

-    if ((!VIR_IS_CONNECT(conn)) || (name == NULL) || (uuid == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
+        return(NULL);
+    }
+    if (uuid == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing uuid"));
         return(NULL);
     }
     virMutexLock(&conn->lock);
@@ -455,7 +463,7 @@ virUnrefDomain(virDomainPtr domain) {
     int refs;

     if (!VIR_IS_CONNECTED_DOMAIN(domain)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG, _("bad domain or no connection"));
         return(-1);
     }
     virMutexLock(&domain->conn->lock);
@@ -490,8 +498,16 @@ virGetNetwork(virConnectPtr conn, const char *name, const unsigned char *uuid) {
     virNetworkPtr ret = NULL;
     char uuidstr[VIR_UUID_STRING_BUFLEN];

-    if ((!VIR_IS_CONNECT(conn)) || (name == NULL) || (uuid == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
+        return(NULL);
+    }
+    if (uuid == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing uuid"));
         return(NULL);
     }
     virMutexLock(&conn->lock);
@@ -593,7 +609,8 @@ virUnrefNetwork(virNetworkPtr network) {
     int refs;

     if (!VIR_IS_CONNECTED_NETWORK(network)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG,
+                        _("bad network or no connection"));
         return(-1);
     }
     virMutexLock(&network->conn->lock);
@@ -629,8 +646,12 @@ virInterfacePtr
 virGetInterface(virConnectPtr conn, const char *name, const char *mac) {
     virInterfacePtr ret = NULL;

-    if ((!VIR_IS_CONNECT(conn)) || (name == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
         return(NULL);
     }

@@ -775,7 +796,8 @@ virUnrefInterface(virInterfacePtr iface) {
     int refs;

     if (!VIR_IS_CONNECTED_INTERFACE(iface)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG,
+                        _("bad interface or no connection"));
         return(-1);
     }
     virMutexLock(&iface->conn->lock);
@@ -807,12 +829,21 @@ virUnrefInterface(virInterfacePtr iface) {
  * Returns a pointer to the network, or NULL in case of failure
  */
 virStoragePoolPtr
-virGetStoragePool(virConnectPtr conn, const char *name, const unsigned char *uuid) {
+virGetStoragePool(virConnectPtr conn, const char *name,
+                  const unsigned char *uuid) {
     virStoragePoolPtr ret = NULL;
     char uuidstr[VIR_UUID_STRING_BUFLEN];

-    if ((!VIR_IS_CONNECT(conn)) || (name == NULL) || (uuid == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
+        return(NULL);
+    }
+    if (uuid == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing uuid"));
         return(NULL);
     }
     virMutexLock(&conn->lock);
@@ -915,7 +946,8 @@ virUnrefStoragePool(virStoragePoolPtr pool) {
     int refs;

     if (!VIR_IS_CONNECTED_STORAGE_POOL(pool)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG,
+                        _("bad storage pool or no connection"));
         return(-1);
     }
     virMutexLock(&pool->conn->lock);
@@ -948,11 +980,20 @@ virUnrefStoragePool(virStoragePoolPtr pool) {
  * Returns a pointer to the storage vol, or NULL in case of failure
  */
 virStorageVolPtr
-virGetStorageVol(virConnectPtr conn, const char *pool, const char *name, const char *key) {
+virGetStorageVol(virConnectPtr conn, const char *pool, const char *name,
+                 const char *key) {
     virStorageVolPtr ret = NULL;

-    if ((!VIR_IS_CONNECT(conn)) || (name == NULL) || (key == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
+        return(NULL);
+    }
+    if (key == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing key"));
         return(NULL);
     }
     virMutexLock(&conn->lock);
@@ -1063,7 +1104,8 @@ virUnrefStorageVol(virStorageVolPtr vol) {
     int refs;

     if (!VIR_IS_CONNECTED_STORAGE_VOL(vol)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG,
+                        _("bad storage volume or no connection"));
         return(-1);
     }
     virMutexLock(&vol->conn->lock);
@@ -1098,8 +1140,12 @@ virGetNodeDevice(virConnectPtr conn, const char *name)
 {
     virNodeDevicePtr ret = NULL;

-    if ((!VIR_IS_CONNECT(conn)) || (name == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
         return(NULL);
     }
     virMutexLock(&conn->lock);
@@ -1230,9 +1276,17 @@ virGetSecret(virConnectPtr conn, const unsigned char *uuid,
     virSecretPtr ret = NULL;
     char uuidstr[VIR_UUID_STRING_BUFLEN];

-    if (!VIR_IS_CONNECT(conn) || uuid == NULL || usageID == NULL) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
-        return NULL;
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (uuid == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing uuid"));
+        return(NULL);
+    }
+    if (usageID == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing usageID"));
+        return(NULL);
     }
     virMutexLock(&conn->lock);

@@ -1330,7 +1384,7 @@ virUnrefSecret(virSecretPtr secret) {
     int refs;

     if (!VIR_IS_CONNECTED_SECRET(secret)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG, _("bad secret or no connection"));
         return -1;
     }
     virMutexLock(&secret->conn->lock);
@@ -1424,8 +1478,16 @@ virGetNWFilter(virConnectPtr conn, const char *name, const unsigned char *uuid)
     virNWFilterPtr ret = NULL;
     char uuidstr[VIR_UUID_STRING_BUFLEN];

-    if ((!VIR_IS_CONNECT(conn)) || (name == NULL) || (uuid == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_CONNECT(conn)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("no connection"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
+        return(NULL);
+    }
+    if (uuid == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing uuid"));
         return(NULL);
     }
     virMutexLock(&conn->lock);
@@ -1528,7 +1590,8 @@ virUnrefNWFilter(virNWFilterPtr pool) {
     int refs;

     if (!VIR_IS_CONNECTED_NWFILTER(pool)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG,
+                        _("bad nwfilter or no connection"));
         return -1;
     }
     virMutexLock(&pool->conn->lock);
@@ -1551,8 +1614,12 @@ virGetDomainSnapshot(virDomainPtr domain, const char *name)
 {
     virDomainSnapshotPtr ret = NULL;

-    if ((!VIR_IS_DOMAIN(domain)) || (name == NULL)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+    if (!VIR_IS_DOMAIN(domain)) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("bad domain"));
+        return(NULL);
+    }
+    if (name == NULL) {
+        virLibConnError(VIR_ERR_INVALID_ARG, _("missing name"));
         return(NULL);
     }
     virMutexLock(&domain->conn->lock);
@@ -1632,7 +1699,7 @@ virUnrefDomainSnapshot(virDomainSnapshotPtr snapshot)
     int refs;

     if (!VIR_IS_DOMAIN_SNAPSHOT(snapshot)) {
-        virLibConnError(VIR_ERR_INVALID_ARG, __FUNCTION__);
+        virLibConnError(VIR_ERR_INVALID_ARG, _("not a snapshot"));
         return(-1);
     }

-- 
1.7.3.4




More information about the libvir-list mailing list