Rather than manually editing 140+ diagnostics in 20 files (tedious
and error-prone), I wrote a script to do the job (fun and reusable).
There was only one change that required manual intervention,
and that was because gcc doesn't yet know about the glibc/printf-
specific %m format specifier.
One disadvantage of doing it this way is that lines can only get longer
since I added no code to wrap them, but that is outweighed by being
able to automate the process. And who knows... maybe someone will be
motivated to teach this little script how to break+reindent long lines.
#!/usr/bin/perl
use strict;
use warnings;
(my $ME = $0) =~ s|.*/||;
# collect name/lineno pairs from output of gcc -W...
my $w = 'warning: format not a string literal and no format arguments';
my $lineno = {};
while (<>)
{
/^(\S+?\.c):(\d+): $w/
or next;
$lineno->{$1} ||= {};
$lineno->{$1}->{$2} = undef
}
foreach my $file (sort keys %$lineno)
{
# Read in all lines of $file.
open FH, '<', $file
or die "$ME: can't open `$file' for reading: $!\n";
my @line = <FH>;
close FH;
my $h = $lineno->{$file};
my @line_nums = sort { $a <=> $b } keys %$h;
# Perform required substitutions.
foreach my $k (@line_nums)
{
# Handle 3 cases:
# 1: ... f(arg, arg2, ..., _("...")
# 2: ... _("...")
# 3: ... f(arg, arg2,\n
# _("...")
# print "$file: $k: $line[$k-1]";
$line[$k-1] =~ /(.*, )(_\(.*)/
and ($line[$k-1] = qq!$1"%s", $2\n!), next;
$line[$k-1] =~ /^( *)(_\(.*)/
and ($line[$k-1] = qq!$1"%s", $2\n!), next;
defined $line[$k] && $line[$k] =~ /^( *)(_\(.*)/
and ($line[$k] = qq!$1"%s", $2\n!), next;
warn "$file:$k: no match\n";
}
# Write them to temp file.
my $tmp = "$file-t";
open FH, '>', $tmp
or die "$ME: can't open `$tmp' for writing: $!\n";
print FH @line;
close FH
or die "$ME: failed to write `$tmp': $!\n";
# Move temp file back onto original.
rename $tmp, $file
or die "$ME: failed to rename: `$tmp' -> `$file': $!\n";
}
# Local variables:
# indent-tabs-mode: nil
# End:
From 18a0f97ae36c4ba31f1f0262558c09683b788c4d Mon Sep 17 00:00:00 2001
From: Jim Meyering <meyering(a)redhat.com>
Date: Mon, 13 Oct 2008 14:12:01 +0200
Subject: [PATCH] avoid many format string warnings
Building with --disable-nls exposed many new warnings like these:
virsh.c:4952: warning: format not a string literal and no format ...
util.c:163: warning: format not a string literal and no format arguments
All but one of the following changes add a "%s" argument before
the offending _(...) argument.
This was the only manual change:
* src/lxc_driver.c (lxcVersion): Use %s and strerror(errno)
rather than %m, to avoid a warning from gcc -Wformat-security.
Add "%s" before each warned about format-string-with-no-%-directive:
* src/domain_conf.c (virDomainHostdevSubsysUsbDefParseXML)
(virDomainDefParseString, virDomainDefParseFile):
* src/hash.c (virGetConnect, __virGetDomain, virReleaseDomain)
(__virGetNetwork, virReleaseNetwork, __virGetStoragePool)
(virReleaseStoragePool, __virGetStorageVol, virReleaseStorageVol):
* src/lxc_container.c (lxcContainerChild):
* src/lxc_driver.c (lxcDomainDefine, lxcDomainUndefine)
(lxcDomainGetInfo, lxcGetOSType, lxcDomainDumpXML)
(lxcSetupInterfaces, lxcDomainStart, lxcDomainCreateAndStart)
(lxcVersion, lxcGetSchedulerParameters):
* src/network_conf.c (virNetworkDefParseString)
(virNetworkDefParseFile):
* src/openvz_conf.c (openvzReadNetworkConf, openvzLoadDomains):
* src/openvz_driver.c (openvzDomainDefineCmd)
(openvzDomainGetInfo, openvzDomainDumpXML, openvzDomainShutdown)
(openvzDomainReboot, ADD_ARG_LIT, openvzDomainDefineXML)
(openvzDomainCreateXML, openvzDomainCreate, openvzDomainUndefine)
(openvzDomainSetAutostart, openvzDomainGetAutostart)
(openvzDomainSetVcpus):
* src/qemu_driver.c (qemudDomainBlockPeek, qemudDomainMemoryPeek):
* src/remote_internal.c (remoteDomainBlockPeek)
(remoteDomainMemoryPeek, remoteAuthPolkit):
* src/sexpr.c (sexpr_new, _string2sexpr):
* src/storage_backend_disk.c (virStorageBackendDiskMakeDataVol)
(virStorageBackendDiskCreateVol):
* src/storage_backend_fs.c
(virStorageBackendFileSystemNetFindPoolSources):
* src/storage_backend_logical.c (virStorageBackendLogicalFindLVs)
(virStorageBackendLogicalFindPoolSources):
* src/test.c (testOpenDefault, testOpenFromFile, testOpen)
(testGetDomainInfo, testDomainRestore)
(testNodeGetCellsFreeMemory):
* src/util.c (virExec):
* src/virsh.c (cmdAttachDevice, cmdDetachDevice)
(cmdAttachInterface, cmdDetachInterface, cmdAttachDisk)
(cmdDetachDisk, cmdEdit):
* src/xend_internal.c (do_connect, wr_sync, xend_op_ext)
(urlencode, xenDaemonDomainCreateXML)
(xenDaemonDomainLookupByName_ids, xenDaemonDomainLookupByID)
(xenDaemonParseSxprOS, xend_parse_sexp_desc_char)
(xenDaemonParseSxprChar, xenDaemonParseSxprDisks)
(xenDaemonParseSxpr, sexpr_to_xend_topology, sexpr_to_domain)
(xenDaemonDomainFetch, xenDaemonDomainGetAutostart)
(xenDaemonDomainSetAutostart, xenDaemonDomainMigratePerform)
(xenDaemonDomainDefineXML, xenDaemonGetSchedulerType)
(xenDaemonGetSchedulerParameters)
(xenDaemonSetSchedulerParameters, xenDaemonDomainBlockPeek)
(xenDaemonFormatSxprChr, virDomainXMLDevID):
* src/xm_internal.c (xenXMConfigCacheRefresh, xenXMDomainPinVcpu)
(xenXMDomainCreate, xenXMDomainDefineXML)
(xenXMDomainAttachDevice, xenXMDomainDetachDevice):
* src/xml.c (virXPathString, virXPathNumber, virXPathLong)
(virXPathULong, virXPathBoolean, virXPathNode, virXPathNodeSet):
* src/xs_internal.c (xenStoreOpen):
---
src/domain_conf.c | 8 +-
src/hash.c | 36 +++++-----
src/lxc_container.c | 2 +-
src/lxc_driver.c | 24 ++++----
src/network_conf.c | 4 +-
src/openvz_conf.c | 12 ++--
src/openvz_driver.c | 50 +++++++-------
src/qemu_driver.c | 8 +-
src/remote_internal.c | 6 +-
src/sexpr.c | 6 +-
src/storage_backend_disk.c | 20 +++---
src/storage_backend_fs.c | 2 +-
src/storage_backend_logical.c | 4 +-
src/test.c | 50 +++++++-------
src/util.c | 8 +-
src/virsh.c | 14 ++--
src/xend_internal.c | 142 ++++++++++++++++++++--------------------
src/xm_internal.c | 38 ++++++------
src/xml.c | 16 ++--
src/xs_internal.c | 2 +-
20 files changed, 226 insertions(+), 226 deletions(-)
diff --git a/src/domain_conf.c b/src/domain_conf.c
index f57fb2d..82140f8 100644
--- a/src/domain_conf.c
+++ b/src/domain_conf.c
@@ -1523,13 +1523,13 @@ virDomainHostdevSubsysUsbDefParseXML(virConnectPtr conn,
if (def->source.subsys.usb.vendor == 0 &&
def->source.subsys.usb.product != 0) {
virDomainReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("missing vendor"));
+ "%s", _("missing vendor"));
goto out;
}
if (def->source.subsys.usb.vendor != 0 &&
def->source.subsys.usb.product == 0) {
virDomainReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("missing product"));
+ "%s", _("missing product"));
goto out;
}
@@ -2243,7 +2243,7 @@ virDomainDefPtr virDomainDefParseString(virConnectPtr conn,
if (!xml) {
if (conn && conn->err.code == VIR_ERR_NONE)
virDomainReportError(conn, VIR_ERR_XML_ERROR,
- _("failed to parse xml document"));
+ "%s", _("failed to parse xml
document"));
goto cleanup;
}
@@ -2284,7 +2284,7 @@ virDomainDefPtr virDomainDefParseFile(virConnectPtr conn,
if (!xml) {
if (conn && conn->err.code == VIR_ERR_NONE)
virDomainReportError(conn, VIR_ERR_XML_ERROR,
- _("failed to parse xml document"));
+ "%s", _("failed to parse xml
document"));
goto cleanup;
}
diff --git a/src/hash.c b/src/hash.c
index 3efda2c..0a5bdcd 100644
--- a/src/hash.c
+++ b/src/hash.c
@@ -667,7 +667,7 @@ virGetConnect(void) {
virConnectPtr ret;
if (VIR_ALLOC(ret) < 0) {
- virHashError(NULL, VIR_ERR_NO_MEMORY, _("allocating connection"));
+ virHashError(NULL, VIR_ERR_NO_MEMORY, "%s", _("allocating
connection"));
goto failed;
}
ret->magic = VIR_CONNECT_MAGIC;
@@ -801,12 +801,12 @@ __virGetDomain(virConnectPtr conn, const char *name, const unsigned
char *uuid)
/* TODO check the UUID */
if (ret == NULL) {
if (VIR_ALLOC(ret) < 0) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating domain"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
domain"));
goto error;
}
ret->name = strdup(name);
if (ret->name == NULL) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating domain"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
domain"));
goto error;
}
ret->magic = VIR_DOMAIN_MAGIC;
@@ -817,7 +817,7 @@ __virGetDomain(virConnectPtr conn, const char *name, const unsigned
char *uuid)
if (virHashAddEntry(conn->domains, name, ret) < 0) {
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to add domain to connection hash table"));
+ "%s", _("failed to add domain to connection hash
table"));
goto error;
}
conn->refs++;
@@ -858,7 +858,7 @@ virReleaseDomain(virDomainPtr domain) {
/* TODO search by UUID first as they are better differenciators */
if (virHashRemoveEntry(conn->domains, domain->name, NULL) < 0)
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("domain missing from connection hash table"));
+ "%s", _("domain missing from connection hash
table"));
if (conn->err.dom == domain)
conn->err.dom = NULL;
@@ -941,12 +941,12 @@ __virGetNetwork(virConnectPtr conn, const char *name, const unsigned
char *uuid)
/* TODO check the UUID */
if (ret == NULL) {
if (VIR_ALLOC(ret) < 0) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating network"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
network"));
goto error;
}
ret->name = strdup(name);
if (ret->name == NULL) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating network"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
network"));
goto error;
}
ret->magic = VIR_NETWORK_MAGIC;
@@ -956,7 +956,7 @@ __virGetNetwork(virConnectPtr conn, const char *name, const unsigned
char *uuid)
if (virHashAddEntry(conn->networks, name, ret) < 0) {
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to add network to connection hash table"));
+ "%s", _("failed to add network to connection hash
table"));
goto error;
}
conn->refs++;
@@ -994,7 +994,7 @@ virReleaseNetwork(virNetworkPtr network) {
/* TODO search by UUID first as they are better differenciators */
if (virHashRemoveEntry(conn->networks, network->name, NULL) < 0)
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("network missing from connection hash table"));
+ "%s", _("network missing from connection hash
table"));
if (
conn->err.net == network)
conn->err.net = NULL;
@@ -1078,12 +1078,12 @@ __virGetStoragePool(virConnectPtr conn, const char *name, const
unsigned char *u
/* TODO check the UUID */
if (ret == NULL) {
if (VIR_ALLOC(ret) < 0) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating storage
pool"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
storage pool"));
goto error;
}
ret->name = strdup(name);
if (ret->name == NULL) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating storage
pool"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
storage pool"));
goto error;
}
ret->magic = VIR_STORAGE_POOL_MAGIC;
@@ -1093,7 +1093,7 @@ __virGetStoragePool(virConnectPtr conn, const char *name, const
unsigned char *u
if (virHashAddEntry(conn->storagePools, name, ret) < 0) {
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to add storage pool to connection hash
table"));
+ "%s", _("failed to add storage pool to connection
hash table"));
goto error;
}
conn->refs++;
@@ -1132,7 +1132,7 @@ virReleaseStoragePool(virStoragePoolPtr pool) {
/* TODO search by UUID first as they are better differenciators */
if (virHashRemoveEntry(conn->storagePools, pool->name, NULL) < 0)
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("pool missing from connection hash table"));
+ "%s", _("pool missing from connection hash
table"));
pool->magic = -1;
VIR_FREE(pool->name);
@@ -1209,17 +1209,17 @@ __virGetStorageVol(virConnectPtr conn, const char *pool, const
char *name, const
ret = (virStorageVolPtr) virHashLookup(conn->storageVols, key);
if (ret == NULL) {
if (VIR_ALLOC(ret) < 0) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating storage
vol"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
storage vol"));
goto error;
}
ret->pool = strdup(pool);
if (ret->pool == NULL) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating storage
vol"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
storage vol"));
goto error;
}
ret->name = strdup(name);
if (ret->name == NULL) {
- virHashError(conn, VIR_ERR_NO_MEMORY, _("allocating storage
vol"));
+ virHashError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocating
storage vol"));
goto error;
}
strncpy(ret->key, key, sizeof(ret->key)-1);
@@ -1229,7 +1229,7 @@ __virGetStorageVol(virConnectPtr conn, const char *pool, const char
*name, const
if (virHashAddEntry(conn->storageVols, key, ret) < 0) {
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to add storage vol to connection hash
table"));
+ "%s", _("failed to add storage vol to connection
hash table"));
goto error;
}
conn->refs++;
@@ -1269,7 +1269,7 @@ virReleaseStorageVol(virStorageVolPtr vol) {
/* TODO search by UUID first as they are better differenciators */
if (virHashRemoveEntry(conn->storageVols, vol->key, NULL) < 0)
virHashError(conn, VIR_ERR_INTERNAL_ERROR,
- _("vol missing from connection hash table"));
+ "%s", _("vol missing from connection hash
table"));
vol->magic = -1;
VIR_FREE(vol->name);
diff --git a/src/lxc_container.c b/src/lxc_container.c
index 379e0af..e94b2d5 100644
--- a/src/lxc_container.c
+++ b/src/lxc_container.c
@@ -547,7 +547,7 @@ static int lxcContainerChild( void *data )
if (NULL == vmDef) {
lxcError(NULL, NULL, VIR_ERR_INTERNAL_ERROR,
- _("lxcChild() passed invalid vm definition"));
+ "%s", _("lxcChild() passed invalid vm
definition"));
return -1;
}
diff --git a/src/lxc_driver.c b/src/lxc_driver.c
index e5e1d6a..c598d1d 100644
--- a/src/lxc_driver.c
+++ b/src/lxc_driver.c
@@ -230,7 +230,7 @@ static virDomainPtr lxcDomainDefine(virConnectPtr conn, const char
*xml)
if ((def->nets != NULL) && !(driver->have_netns)) {
lxcError(conn, NULL, VIR_ERR_NO_SUPPORT,
- _("System lacks NETNS support"));
+ "%s", _("System lacks NETNS support"));
virDomainDefFree(def);
return NULL;
}
@@ -263,13 +263,13 @@ static int lxcDomainUndefine(virDomainPtr dom)
if (!vm) {
lxcError(dom->conn, dom, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return -1;
}
if (virDomainIsActive(vm)) {
lxcError(dom->conn, dom, VIR_ERR_INTERNAL_ERROR,
- _("cannot delete active domain"));
+ "%s", _("cannot delete active domain"));
return -1;
}
@@ -298,7 +298,7 @@ static int lxcDomainGetInfo(virDomainPtr dom,
if (!vm) {
lxcError(dom->conn, dom, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return -1;
}
@@ -324,7 +324,7 @@ static char *lxcGetOSType(virDomainPtr dom)
if (!vm) {
lxcError(dom->conn, dom, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return NULL;
}
@@ -339,7 +339,7 @@ static char *lxcDomainDumpXML(virDomainPtr dom,
if (!vm) {
lxcError(dom->conn, dom, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return NULL;
}
@@ -458,7 +458,7 @@ static int lxcSetupInterfaces(virConnectPtr conn,
DEBUG("bridge: %s", bridge);
if (NULL == bridge) {
lxcError(conn, NULL, VIR_ERR_INTERNAL_ERROR,
- _("failed to get bridge for interface"));
+ "%s", _("failed to get bridge for interface"));
goto error_exit;
}
@@ -482,7 +482,7 @@ static int lxcSetupInterfaces(virConnectPtr conn,
if (NULL == def->nets[i]->ifname) {
lxcError(NULL, NULL, VIR_ERR_INTERNAL_ERROR,
- _("failed to allocate veth names"));
+ "%s", _("failed to allocate veth names"));
goto error_exit;
}
@@ -861,7 +861,7 @@ static int lxcDomainStart(virDomainPtr dom)
if ((vm->def->nets != NULL) && !(driver->have_netns)) {
lxcError(conn, NULL, VIR_ERR_NO_SUPPORT,
- _("System lacks NETNS support"));
+ "%s", _("System lacks NETNS support"));
goto cleanup;
}
@@ -896,7 +896,7 @@ lxcDomainCreateAndStart(virConnectPtr conn,
if ((def->nets != NULL) && !(driver->have_netns)) {
virDomainDefFree(def);
lxcError(conn, NULL, VIR_ERR_NO_SUPPORT,
- _("System lacks NETNS support"));
+ "%s", _("System lacks NETNS support"));
goto return_point;
}
@@ -1113,7 +1113,7 @@ static int lxcVersion(virConnectPtr conn, unsigned long *version)
if (uname(&ver) != 0) {
lxcError(conn, NULL, VIR_ERR_INTERNAL_ERROR,
- _("uname(): %m"));
+ _("uname(): %s"), strerror(errno));
return -1;
}
@@ -1193,7 +1193,7 @@ static int lxcGetSchedulerParameters(virDomainPtr _domain,
if ((*nparams) != 1) {
lxcError(NULL, _domain, VIR_ERR_INVALID_ARG,
- _("Invalid parameter count"));
+ "%s", _("Invalid parameter count"));
return -1;
}
diff --git a/src/network_conf.c b/src/network_conf.c
index 8107b39..4c32fa1 100644
--- a/src/network_conf.c
+++ b/src/network_conf.c
@@ -452,7 +452,7 @@ virNetworkDefPtr virNetworkDefParseString(virConnectPtr conn,
if (!xml) {
if (conn && conn->err.code == VIR_ERR_NONE)
virNetworkReportError(conn, VIR_ERR_XML_ERROR,
- _("failed to parse xml document"));
+ "%s", _("failed to parse xml
document"));
goto cleanup;
}
@@ -492,7 +492,7 @@ virNetworkDefPtr virNetworkDefParseFile(virConnectPtr conn,
if (!xml) {
if (conn && conn->err.code == VIR_ERR_NONE)
virNetworkReportError(conn, VIR_ERR_XML_ERROR,
- _("failed to parse xml document"));
+ "%s", _("failed to parse xml
document"));
goto cleanup;
}
diff --git a/src/openvz_conf.c b/src/openvz_conf.c
index a2553d0..afd18a6 100644
--- a/src/openvz_conf.c
+++ b/src/openvz_conf.c
@@ -222,7 +222,7 @@ openvzReadNetworkConf(virConnectPtr conn,
len = next - p;
if (len > 16) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Too long network device name"));
+ "%s", _("Too long network device
name"));
goto error;
}
@@ -239,14 +239,14 @@ openvzReadNetworkConf(virConnectPtr conn,
len = next - p;
if (len != 17) { //should be 17
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Wrong length MAC address"));
+ "%s", _("Wrong length MAC address"));
goto error;
}
strncpy(cpy_temp, p, len);
cpy_temp[len] = '\0';
if (openvzParseMac(cpy_temp, net->mac)<0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Wrong MAC address"));
+ "%s", _("Wrong MAC address"));
goto error;
}
} else if (STRPREFIX(p, "host_mac=")) {
@@ -299,7 +299,7 @@ int openvzLoadDomains(struct openvz_driver *driver) {
return -1;
if ((fp = popen(VZLIST " -a -ovpsid,status -H 2>/dev/null",
"r")) == NULL) {
- openvzError(NULL, VIR_ERR_INTERNAL_ERROR, _("popen failed"));
+ openvzError(NULL, VIR_ERR_INTERNAL_ERROR, "%s", _("popen
failed"));
return -1;
}
@@ -309,7 +309,7 @@ int openvzLoadDomains(struct openvz_driver *driver) {
break;
openvzError(NULL, VIR_ERR_INTERNAL_ERROR,
- _("Failed to parse vzlist output"));
+ "%s", _("Failed to parse vzlist output"));
goto cleanup;
}
@@ -335,7 +335,7 @@ int openvzLoadDomains(struct openvz_driver *driver) {
if (ret == -1) {
openvzError(NULL, VIR_ERR_INTERNAL_ERROR,
- _("UUID in config file malformed"));
+ "%s", _("UUID in config file malformed"));
goto cleanup;
}
diff --git a/src/openvz_driver.c b/src/openvz_driver.c
index e3e3cc7..b82d0df 100644
--- a/src/openvz_driver.c
+++ b/src/openvz_driver.c
@@ -92,7 +92,7 @@ static int openvzDomainDefineCmd(virConnectPtr conn,
if (vmdef == NULL){
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Container is not defined"));
+ "%s", _("Container is not defined"));
return -1;
}
@@ -235,7 +235,7 @@ static int openvzDomainGetInfo(virDomainPtr dom,
if (!vm) {
openvzError(dom->conn, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return -1;
}
@@ -264,7 +264,7 @@ static char *openvzDomainDumpXML(virDomainPtr dom, int flags) {
if (!vm) {
openvzError(dom->conn, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return NULL;
}
@@ -280,13 +280,13 @@ static int openvzDomainShutdown(virDomainPtr dom) {
if (!vm) {
openvzError(dom->conn, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return -1;
}
if (vm->state != VIR_DOMAIN_RUNNING) {
openvzError(dom->conn, VIR_ERR_INTERNAL_ERROR,
- _("domain is not in running state"));
+ "%s", _("domain is not in running state"));
return -1;
}
@@ -307,13 +307,13 @@ static int openvzDomainReboot(virDomainPtr dom,
if (!vm) {
openvzError(dom->conn, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return -1;
}
if (vm->state != VIR_DOMAIN_RUNNING) {
openvzError(dom->conn, VIR_ERR_INTERNAL_ERROR,
- _("domain is not in running state"));
+ "%s", _("domain is not in running state"));
return -1;
}
@@ -344,7 +344,7 @@ openvzDomainSetNetwork(virConnectPtr conn, const char *vpsid,
return 0;
if (vpsid == NULL) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Container ID is not specified"));
+ "%s", _("Container ID is not specified"));
return -1;
}
@@ -444,7 +444,7 @@ openvzDomainDefineXML(virConnectPtr conn, const char *xml)
if (openvzDomainDefineCmd(conn, prog, OPENVZ_MAX_ARG, vmdef) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Error creating command for container"));
+ "%s", _("Error creating command for container"));
goto exit;
}
@@ -458,7 +458,7 @@ openvzDomainDefineXML(virConnectPtr conn, const char *xml)
if (openvzSetDefinedUUID(strtoI(vmdef->name), vmdef->uuid) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Could not set UUID"));
+ "%s", _("Could not set UUID"));
goto exit;
}
@@ -469,7 +469,7 @@ openvzDomainDefineXML(virConnectPtr conn, const char *xml)
for (i = 0 ; i < vmdef->nnets ; i++) {
if (openvzDomainSetNetwork(conn, vmdef->name, vmdef->nets[i]) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Could not configure network"));
+ "%s", _("Could not configure network"));
goto exit;
}
}
@@ -477,7 +477,7 @@ openvzDomainDefineXML(virConnectPtr conn, const char *xml)
if (vmdef->vcpus > 0) {
if (openvzDomainSetVcpus(dom, vmdef->vcpus) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Could not set number of virtual cpu"));
+ "%s", _("Could not set number of virtual
cpu"));
goto exit;
}
}
@@ -524,7 +524,7 @@ openvzDomainCreateXML(virConnectPtr conn, const char *xml,
if (openvzDomainDefineCmd(conn, progcreate, OPENVZ_MAX_ARG, vmdef) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Error creating command for container"));
+ "%s", _("Error creating command for container"));
goto exit;
}
@@ -536,14 +536,14 @@ openvzDomainCreateXML(virConnectPtr conn, const char *xml,
if (openvzSetDefinedUUID(strtoI(vmdef->name), vmdef->uuid) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Could not set UUID"));
+ "%s", _("Could not set UUID"));
goto exit;
}
for (i = 0 ; i < vmdef->nnets ; i++) {
if (openvzDomainSetNetwork(conn, vmdef->name, vmdef->nets[i]) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Could not configure network"));
+ "%s", _("Could not configure network"));
goto exit;
}
}
@@ -567,7 +567,7 @@ openvzDomainCreateXML(virConnectPtr conn, const char *xml,
if (vmdef->vcpus > 0) {
if (openvzDomainSetVcpus(dom, vmdef->vcpus) < 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Could not set number of virtual cpu"));
+ "%s", _("Could not set number of virtual
cpu"));
goto exit;
}
}
@@ -586,13 +586,13 @@ openvzDomainCreate(virDomainPtr dom)
if (!vm) {
openvzError(dom->conn, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching id"));
+ "%s", _("no domain with matching id"));
return -1;
}
if (vm->state != VIR_DOMAIN_SHUTOFF) {
openvzError(dom->conn, VIR_ERR_OPERATION_DENIED,
- _("domain is not in shutoff state"));
+ "%s", _("domain is not in shutoff state"));
return -1;
}
@@ -618,12 +618,12 @@ openvzDomainUndefine(virDomainPtr dom)
const char *prog[] = { VZCTL, "--quiet", "destroy", vm ?
vm->def->name : NULL, NULL };
if (!vm) {
- openvzError(conn, VIR_ERR_INVALID_DOMAIN, _("no domain with matching
uuid"));
+ openvzError(conn, VIR_ERR_INVALID_DOMAIN, "%s", _("no domain with
matching uuid"));
return -1;
}
if (virDomainIsActive(vm)) {
- openvzError(conn, VIR_ERR_INTERNAL_ERROR, _("cannot delete active
domain"));
+ openvzError(conn, VIR_ERR_INTERNAL_ERROR, "%s", _("cannot delete
active domain"));
return -1;
}
@@ -649,7 +649,7 @@ openvzDomainSetAutostart(virDomainPtr dom, int autostart)
"--save", NULL };
if (!vm) {
- openvzError(conn, VIR_ERR_INVALID_DOMAIN, _("no domain with matching
uuid"));
+ openvzError(conn, VIR_ERR_INVALID_DOMAIN, "%s", _("no domain with
matching uuid"));
return -1;
}
@@ -670,12 +670,12 @@ openvzDomainGetAutostart(virDomainPtr dom, int *autostart)
char value[1024];
if (!vm) {
- openvzError(conn, VIR_ERR_INVALID_DOMAIN, _("no domain with matching
uuid"));
+ openvzError(conn, VIR_ERR_INVALID_DOMAIN, "%s", _("no domain with
matching uuid"));
return -1;
}
if (openvzReadConfigParam(strtoI(vm->def->name), "ONBOOT", value,
sizeof(value)) < 0) {
- openvzError(conn, VIR_ERR_INTERNAL_ERROR, _("Could not read container
config"));
+ openvzError(conn, VIR_ERR_INTERNAL_ERROR, "%s", _("Could not read
container config"));
return -1;
}
@@ -711,13 +711,13 @@ static int openvzDomainSetVcpus(virDomainPtr dom, unsigned int
nvcpus) {
if (!vm) {
openvzError(conn, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return -1;
}
if (nvcpus <= 0) {
openvzError(conn, VIR_ERR_INTERNAL_ERROR,
- _("VCPUs should be >= 1"));
+ "%s", _("VCPUs should be >= 1"));
return -1;
}
diff --git a/src/qemu_driver.c b/src/qemu_driver.c
index 689c992..624c8d8 100644
--- a/src/qemu_driver.c
+++ b/src/qemu_driver.c
@@ -2941,13 +2941,13 @@ qemudDomainBlockPeek (virDomainPtr dom,
if (!vm) {
qemudReportError (dom->conn, dom, NULL, VIR_ERR_INVALID_DOMAIN,
- _("no domain with matching uuid"));
+ "%s", _("no domain with matching uuid"));
return -1;
}
if (!path || path[0] == '\0') {
qemudReportError(dom->conn, dom, NULL, VIR_ERR_INVALID_ARG,
- _("NULL or empty path"));
+ "%s", _("NULL or empty path"));
return -1;
}
@@ -2958,7 +2958,7 @@ qemudDomainBlockPeek (virDomainPtr dom,
goto found;
}
qemudReportError (dom->conn, dom, NULL, VIR_ERR_INVALID_ARG,
- _("invalid path"));
+ "%s", _("invalid path"));
return -1;
found:
@@ -3001,7 +3001,7 @@ qemudDomainMemoryPeek (virDomainPtr dom,
if (flags != VIR_MEMORY_VIRTUAL) {
qemudReportError (dom->conn, dom, NULL, VIR_ERR_INVALID_ARG,
- _("QEMU driver only supports virtual memory
addrs"));
+ "%s", _("QEMU driver only supports virtual
memory addrs"));
return -1;
}
diff --git a/src/remote_internal.c b/src/remote_internal.c
index 2f3a261..35b7b4b 100644
--- a/src/remote_internal.c
+++ b/src/remote_internal.c
@@ -2364,7 +2364,7 @@ remoteDomainBlockPeek (virDomainPtr domain,
if (ret.buffer.buffer_len != size) {
errorf (domain->conn, VIR_ERR_RPC,
- _("returned buffer is not same size as requested"));
+ "%s", _("returned buffer is not same size as
requested"));
free (ret.buffer.buffer_val);
return -1;
}
@@ -2408,7 +2408,7 @@ remoteDomainMemoryPeek (virDomainPtr domain,
if (ret.buffer.buffer_len != size) {
errorf (domain->conn, VIR_ERR_RPC,
- _("returned buffer is not same size as requested"));
+ "%s", _("returned buffer is not same size as
requested"));
free (ret.buffer.buffer_val);
return -1;
}
@@ -4267,7 +4267,7 @@ remoteAuthPolkit (virConnectPtr conn, struct private_data *priv, int
in_open,
if ((*(auth->cb))(&cred, 1, auth->cbdata) < 0) {
__virRaiseError (in_open ? NULL : conn, NULL, NULL, VIR_FROM_REMOTE,
VIR_ERR_AUTH_FAILED, VIR_ERR_ERROR, NULL, NULL, NULL, 0,
0,
- _("Failed to collect auth credentials"));
+ "%s", _("Failed to collect auth
credentials"));
return -1;
}
} else {
diff --git a/src/sexpr.c b/src/sexpr.c
index c168754..355c5a6 100644
--- a/src/sexpr.c
+++ b/src/sexpr.c
@@ -40,7 +40,7 @@ sexpr_new(void)
struct sexpr *ret;
if (VIR_ALLOC(ret) < 0) {
- virSexprError(VIR_ERR_NO_MEMORY, _("failed to allocate a node"));
+ virSexprError(VIR_ERR_NO_MEMORY, "%s", _("failed to allocate a
node"));
return (NULL);
}
ret->kind = SEXPR_NIL;
@@ -344,7 +344,7 @@ _string2sexpr(const char *buffer, size_t * end)
ret->u.value = strndup(start, ptr - start);
if (ret->u.value == NULL) {
virSexprError(VIR_ERR_NO_MEMORY,
- _("failed to copy a string"));
+ "%s", _("failed to copy a string"));
goto error;
}
@@ -361,7 +361,7 @@ _string2sexpr(const char *buffer, size_t * end)
ret->u.value = strndup(start, ptr - start);
if (ret->u.value == NULL) {
virSexprError(VIR_ERR_NO_MEMORY,
- _("failed to copy a string"));
+ "%s", _("failed to copy a string"));
goto error;
}
}
diff --git a/src/storage_backend_disk.c b/src/storage_backend_disk.c
index bb134c7..729cbef 100644
--- a/src/storage_backend_disk.c
+++ b/src/storage_backend_disk.c
@@ -178,13 +178,13 @@ virStorageBackendDiskMakeDataVol(virConnectPtr conn,
if (vol == NULL) {
if (VIR_ALLOC(vol) < 0) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("volume"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("volume"));
return -1;
}
if (VIR_REALLOC_N(pool->volumes.objs,
pool->volumes.count+1) < 0) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("volume"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("volume"));
virStorageVolDefFree(vol);
return -1;
}
@@ -195,14 +195,14 @@ virStorageBackendDiskMakeDataVol(virConnectPtr conn,
*/
tmp = strrchr(groups[0], '/');
if ((vol->name = strdup(tmp ? tmp + 1 : groups[0])) == NULL) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("volume"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("volume"));
return -1;
}
}
if (vol->target.path == NULL) {
if ((devpath = strdup(groups[0])) == NULL) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("volume"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("volume"));
return -1;
}
@@ -224,7 +224,7 @@ virStorageBackendDiskMakeDataVol(virConnectPtr conn,
if (vol->key == NULL) {
/* XXX base off a unique key of the underlying disk */
if ((vol->key = strdup(vol->target.path)) == NULL) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("volume"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("volume"));
return -1;
}
}
@@ -232,7 +232,7 @@ virStorageBackendDiskMakeDataVol(virConnectPtr conn,
if (vol->source.extents == NULL) {
if (VIR_ALLOC(vol->source.extents) < 0) {
virStorageReportError(conn, VIR_ERR_NO_MEMORY,
- _("volume extents"));
+ "%s", _("volume extents"));
return -1;
}
vol->source.nextent = 1;
@@ -240,20 +240,20 @@ virStorageBackendDiskMakeDataVol(virConnectPtr conn,
if (virStrToLong_ull(groups[3], NULL, 10,
&vol->source.extents[0].start) < 0) {
virStorageReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("cannot parse device start location"));
+ "%s", _("cannot parse device start
location"));
return -1;
}
if (virStrToLong_ull(groups[4], NULL, 10,
&vol->source.extents[0].end) < 0) {
virStorageReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("cannot parse device end location"));
+ "%s", _("cannot parse device end
location"));
return -1;
}
if ((vol->source.extents[0].path =
strdup(pool->def->source.devices[0].path)) == NULL) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("extents"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("extents"));
return -1;
}
}
@@ -460,7 +460,7 @@ virStorageBackendDiskCreateVol(virConnectPtr conn,
}
if (smallestExtent == -1) {
virStorageReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("no large enough free extent"));
+ "%s", _("no large enough free
extent"));
return -1;
}
startOffset = dev->freeExtents[smallestExtent].start;
diff --git a/src/storage_backend_fs.c b/src/storage_backend_fs.c
index d3f4196..329505f 100644
--- a/src/storage_backend_fs.c
+++ b/src/storage_backend_fs.c
@@ -556,7 +556,7 @@ virStorageBackendFileSystemNetFindPoolSources(virConnectPtr conn,
retval = virStringListJoin(state.list, SOURCES_START_TAG, SOURCES_END_TAG,
"\n");
if (retval == NULL) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("retval"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("retval"));
goto cleanup;
}
diff --git a/src/storage_backend_logical.c b/src/storage_backend_logical.c
index c549f26..e7ec6b4 100644
--- a/src/storage_backend_logical.c
+++ b/src/storage_backend_logical.c
@@ -233,7 +233,7 @@ virStorageBackendLogicalFindLVs(virConnectPtr conn,
vol,
&exitstatus) < 0) {
virStorageReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("lvs command failed"));
+ "%s", _("lvs command failed"));
return -1;
}
@@ -321,7 +321,7 @@ virStorageBackendLogicalFindPoolSources(virConnectPtr conn,
retval = virStringListJoin(descs, SOURCES_START_TAG, SOURCES_END_TAG,
"\n");
if (retval == NULL) {
- virStorageReportError(conn, VIR_ERR_NO_MEMORY, _("retval"));
+ virStorageReportError(conn, VIR_ERR_NO_MEMORY, "%s",
_("retval"));
goto cleanup;
}
diff --git a/src/test.c b/src/test.c
index 58d3559..aab74e4 100644
--- a/src/test.c
+++ b/src/test.c
@@ -213,7 +213,7 @@ static int testOpenDefault(virConnectPtr conn) {
conn->privateData = privconn;
if (gettimeofday(&tv, NULL) < 0) {
- testError(NULL, VIR_ERR_INTERNAL_ERROR, _("getting time of day"));
+ testError(NULL, VIR_ERR_INTERNAL_ERROR, "%s", _("getting time of
day"));
goto error;
}
@@ -311,14 +311,14 @@ static int testOpenFromFile(virConnectPtr conn,
goto error;
if ((fd = open(file, O_RDONLY)) < 0) {
- testError(NULL, VIR_ERR_INTERNAL_ERROR, _("loading host definition
file"));
+ testError(NULL, VIR_ERR_INTERNAL_ERROR, "%s", _("loading host
definition file"));
goto error;
}
if (!(xml = xmlReadFd(fd, file, NULL,
XML_PARSE_NOENT | XML_PARSE_NONET |
XML_PARSE_NOERROR | XML_PARSE_NOWARNING))) {
- testError(NULL, VIR_ERR_INTERNAL_ERROR, _("host"));
+ testError(NULL, VIR_ERR_INTERNAL_ERROR, "%s", _("host"));
goto error;
}
close(fd);
@@ -326,13 +326,13 @@ static int testOpenFromFile(virConnectPtr conn,
root = xmlDocGetRootElement(xml);
if ((root == NULL) || (!xmlStrEqual(root->name, BAD_CAST "node"))) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node"));
goto error;
}
ctxt = xmlXPathNewContext(xml);
if (ctxt == NULL) {
- testError(NULL, VIR_ERR_INTERNAL_ERROR, _("creating xpath context"));
+ testError(NULL, VIR_ERR_INTERNAL_ERROR, "%s", _("creating xpath
context"));
goto error;
}
@@ -347,7 +347,7 @@ static int testOpenFromFile(virConnectPtr conn,
if (ret == 0) {
nodeInfo->nodes = l;
} else if (ret == -2) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node cpu numa nodes"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node cpu numa
nodes"));
goto error;
}
@@ -355,7 +355,7 @@ static int testOpenFromFile(virConnectPtr conn,
if (ret == 0) {
nodeInfo->sockets = l;
} else if (ret == -2) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node cpu sockets"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node cpu
sockets"));
goto error;
}
@@ -363,7 +363,7 @@ static int testOpenFromFile(virConnectPtr conn,
if (ret == 0) {
nodeInfo->cores = l;
} else if (ret == -2) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node cpu cores"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node cpu
cores"));
goto error;
}
@@ -371,7 +371,7 @@ static int testOpenFromFile(virConnectPtr conn,
if (ret == 0) {
nodeInfo->threads = l;
} else if (ret == -2) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node cpu threads"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node cpu
threads"));
goto error;
}
@@ -382,14 +382,14 @@ static int testOpenFromFile(virConnectPtr conn,
nodeInfo->cpus = l;
}
} else if (ret == -2) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node active cpu"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node active
cpu"));
goto error;
}
ret = virXPathLong(conn, "string(/node/cpu/mhz[1])", ctxt, &l);
if (ret == 0) {
nodeInfo->mhz = l;
} else if (ret == -2) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node cpu mhz"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node cpu mhz"));
goto error;
}
@@ -404,13 +404,13 @@ static int testOpenFromFile(virConnectPtr conn,
if (ret == 0) {
nodeInfo->memory = l;
} else if (ret == -2) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node memory"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node memory"));
goto error;
}
ret = virXPathNodeSet(conn, "/node/domain", ctxt, &domains);
if (ret < 0) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node domain list"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node domain
list"));
goto error;
}
@@ -421,7 +421,7 @@ static int testOpenFromFile(virConnectPtr conn,
char *absFile = testBuildFilename(file, relFile);
VIR_FREE(relFile);
if (!absFile) {
- testError(NULL, VIR_ERR_INTERNAL_ERROR, _("resolving domain
filename"));
+ testError(NULL, VIR_ERR_INTERNAL_ERROR, "%s", _("resolving
domain filename"));
goto error;
}
def = virDomainDefParseFile(conn, privconn->caps, absFile);
@@ -447,7 +447,7 @@ static int testOpenFromFile(virConnectPtr conn,
ret = virXPathNodeSet(conn, "/node/network", ctxt, &networks);
if (ret < 0) {
- testError(NULL, VIR_ERR_XML_ERROR, _("node network list"));
+ testError(NULL, VIR_ERR_XML_ERROR, "%s", _("node network
list"));
goto error;
}
for (i = 0 ; i < ret ; i++) {
@@ -457,7 +457,7 @@ static int testOpenFromFile(virConnectPtr conn,
char *absFile = testBuildFilename(file, relFile);
VIR_FREE(relFile);
if (!absFile) {
- testError(NULL, VIR_ERR_INTERNAL_ERROR, _("resolving network
filename"));
+ testError(NULL, VIR_ERR_INTERNAL_ERROR, "%s", _("resolving
network filename"));
goto error;
}
@@ -525,7 +525,7 @@ static int testOpen(virConnectPtr conn,
|| uri->path[0] == '\0'
|| (uri->path[0] == '/' && uri->path[1] == '\0'))
{
testError (NULL, VIR_ERR_INVALID_ARG,
- _("testOpen: supply a path or use test:///default"));
+ "%s", _("testOpen: supply a path or use
test:///default"));
return VIR_DRV_OPEN_ERROR;
}
@@ -837,7 +837,7 @@ static int testGetDomainInfo (virDomainPtr domain,
if (gettimeofday(&tv, NULL) < 0) {
testError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("getting time of day"));
+ "%s", _("getting time of day"));
return (-1);
}
@@ -925,30 +925,30 @@ static int testDomainRestore(virConnectPtr conn,
if ((fd = open(path, O_RDONLY)) < 0) {
testError(conn, VIR_ERR_INTERNAL_ERROR,
- _("cannot read domain image"));
+ "%s", _("cannot read domain image"));
return (-1);
}
if (read(fd, magic, sizeof(magic)) != sizeof(magic)) {
testError(conn, VIR_ERR_INTERNAL_ERROR,
- _("incomplete save header"));
+ "%s", _("incomplete save header"));
close(fd);
return (-1);
}
if (memcmp(magic, TEST_SAVE_MAGIC, sizeof(magic))) {
testError(conn, VIR_ERR_INTERNAL_ERROR,
- _("mismatched header magic"));
+ "%s", _("mismatched header magic"));
close(fd);
return (-1);
}
if (read(fd, (char*)&len, sizeof(len)) != sizeof(len)) {
testError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to read metadata length"));
+ "%s", _("failed to read metadata length"));
close(fd);
return (-1);
}
if (len < 1 || len > 8192) {
testError(conn, VIR_ERR_INTERNAL_ERROR,
- _("length of metadata out of range"));
+ "%s", _("length of metadata out of range"));
close(fd);
return (-1);
}
@@ -959,7 +959,7 @@ static int testDomainRestore(virConnectPtr conn,
}
if (read(fd, xml, len) != len) {
testError(conn, VIR_ERR_INTERNAL_ERROR,
- _("incomplete metdata"));
+ "%s", _("incomplete metdata"));
close(fd);
return (-1);
}
@@ -1147,7 +1147,7 @@ static int testNodeGetCellsFreeMemory(virConnectPtr conn,
if (startCell > privconn->numCells) {
testError(conn, VIR_ERR_INVALID_ARG,
- _("Range exceeds available cells"));
+ "%s", _("Range exceeds available cells"));
return -1;
}
diff --git a/src/util.c b/src/util.c
index 915e738..aa21653 100644
--- a/src/util.c
+++ b/src/util.c
@@ -155,13 +155,13 @@ virExec(virConnectPtr conn,
if ((flags & VIR_EXEC_NONBLOCK) &&
virSetNonBlock(pipeout[0]) == -1) {
ReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Failed to set non-blocking file descriptor
flag"));
+ "%s", _("Failed to set non-blocking file
descriptor flag"));
goto cleanup;
}
if (virSetCloseExec(pipeout[0]) == -1) {
ReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Failed to set close-on-exec file descriptor
flag"));
+ "%s", _("Failed to set close-on-exec file
descriptor flag"));
goto cleanup;
}
@@ -186,13 +186,13 @@ virExec(virConnectPtr conn,
if ((flags & VIR_EXEC_NONBLOCK) &&
virSetNonBlock(pipeerr[0]) == -1) {
ReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Failed to set non-blocking file descriptor
flag"));
+ "%s", _("Failed to set non-blocking file
descriptor flag"));
goto cleanup;
}
if (virSetCloseExec(pipeerr[0]) == -1) {
ReportError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Failed to set close-on-exec file descriptor
flag"));
+ "%s", _("Failed to set close-on-exec file
descriptor flag"));
goto cleanup;
}
diff --git a/src/virsh.c b/src/virsh.c
index 2dd7dd2..89aa4fa 100644
--- a/src/virsh.c
+++ b/src/virsh.c
@@ -4660,7 +4660,7 @@ cmdAttachDevice(vshControl *ctl, const vshCmd *cmd)
virDomainFree(dom);
return FALSE;
} else {
- vshPrint(ctl, _("Device attached successfully\n"));
+ vshPrint(ctl, "%s", _("Device attached successfully\n"));
}
virDomainFree(dom);
@@ -4719,7 +4719,7 @@ cmdDetachDevice(vshControl *ctl, const vshCmd *cmd)
virDomainFree(dom);
return FALSE;
} else {
- vshPrint(ctl, _("Device detached successfully\n"));
+ vshPrint(ctl, "%s", _("Device detached successfully\n"));
}
virDomainFree(dom);
@@ -4831,7 +4831,7 @@ cmdAttachInterface(vshControl *ctl, const vshCmd *cmd)
if (virDomainAttachDevice(dom, buf)) {
goto cleanup;
} else {
- vshPrint(ctl, _("Interface attached successfully\n"));
+ vshPrint(ctl, "%s", _("Interface attached successfully\n"));
}
ret = TRUE;
@@ -4949,7 +4949,7 @@ cmdDetachInterface(vshControl *ctl, const vshCmd *cmd)
if (ret != 0)
ret = FALSE;
else {
- vshPrint(ctl, _("Interface detached successfully\n"));
+ vshPrint(ctl, "%s", _("Interface detached successfully\n"));
ret = TRUE;
}
@@ -5118,7 +5118,7 @@ cmdAttachDisk(vshControl *ctl, const vshCmd *cmd)
if (virDomainAttachDevice(dom, buf))
goto cleanup;
else
- vshPrint(ctl, _("Disk attached successfully\n"));
+ vshPrint(ctl, "%s", _("Disk attached successfully\n"));
ret = TRUE;
@@ -5227,7 +5227,7 @@ cmdDetachDisk(vshControl *ctl, const vshCmd *cmd)
if (ret != 0)
ret = FALSE;
else {
- vshPrint(ctl, _("Disk detached successfully\n"));
+ vshPrint(ctl, "%s", _("Disk detached successfully\n"));
ret = TRUE;
}
@@ -5433,7 +5433,7 @@ cmdEdit (vshControl *ctl, const vshCmd *cmd)
if (STRNEQ (doc, doc_reread)) {
vshError (ctl, FALSE,
- _("ERROR: the XML configuration was changed by another
user"));
+ "%s", _("ERROR: the XML configuration was changed by
another user"));
goto cleanup;
}
diff --git a/src/xend_internal.c b/src/xend_internal.c
index 65564d8..eb67235 100644
--- a/src/xend_internal.c
+++ b/src/xend_internal.c
@@ -130,7 +130,7 @@ do_connect(virConnectPtr xend)
s = socket(priv->type, SOCK_STREAM, 0);
if (s == -1) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("failed to create a socket"));
+ "%s", _("failed to create a socket"));
return -1;
}
@@ -152,7 +152,7 @@ do_connect(virConnectPtr xend)
*/
if (getuid() == 0) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("failed to connect to xend"));
+ "%s", _("failed to connect to xend"));
}
}
@@ -199,10 +199,10 @@ wr_sync(virConnectPtr xend, int fd, void *buffer, size_t size, int
do_read)
if (len == -1) {
if (do_read)
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("failed to read from Xen Daemon"));
+ "%s", _("failed to read from Xen
Daemon"));
else
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("failed to read from Xen Daemon"));
+ "%s", _("failed to read from Xen
Daemon"));
return (-1);
}
@@ -529,7 +529,7 @@ xend_op_ext(virConnectPtr xend, const char *path, char *error,
}
if (virBufferError(&buf)) {
- virXendError(NULL, VIR_ERR_NO_MEMORY, _("allocate buffer"));
+ virXendError(NULL, VIR_ERR_NO_MEMORY, "%s", _("allocate
buffer"));
return -1;
}
@@ -709,7 +709,7 @@ urlencode(const char *string)
size_t i;
if (VIR_ALLOC_N(buffer, len * 3 + 1) < 0) {
- virXendError(NULL, VIR_ERR_NO_MEMORY, _("allocate new buffer"));
+ virXendError(NULL, VIR_ERR_NO_MEMORY, "%s", _("allocate new
buffer"));
return (NULL);
}
ptr = buffer;
@@ -963,7 +963,7 @@ xenDaemonDomainCreateXML(virConnectPtr xend, const char *sexpr)
if (ptr == NULL) {
/* this should be caught at the interface but ... */
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("failed to urlencode the create S-Expr"));
+ "%s", _("failed to urlencode the create
S-Expr"));
return (-1);
}
@@ -1004,18 +1004,18 @@ xenDaemonDomainLookupByName_ids(virConnectPtr xend, const char
*domname,
value = sexpr_node(root, "domain/domid");
if (value == NULL) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing domid"));
+ "%s", _("domain information incomplete, missing
domid"));
goto error;
}
ret = strtol(value, NULL, 0);
if ((ret == 0) && (value[0] != '0')) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("domain information incorrect domid not numeric"));
+ "%s", _("domain information incorrect domid not
numeric"));
ret = -1;
} else if (uuid != NULL) {
if (sexpr_uuid(uuid, root, "domain/uuid") < 0) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing uuid"));
+ "%s", _("domain information incomplete, missing
uuid"));
}
}
@@ -1054,7 +1054,7 @@ xenDaemonDomainLookupByID(virConnectPtr xend,
name = sexpr_node(root, "domain/name");
if (name == NULL) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing name"));
+ "%s", _("domain information incomplete, missing
name"));
goto error;
}
if (domname)
@@ -1062,7 +1062,7 @@ xenDaemonDomainLookupByID(virConnectPtr xend,
if (sexpr_uuid(uuid, root, "domain/uuid") < 0) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing uuid"));
+ "%s", _("domain information incomplete, missing
uuid"));
goto error;
}
@@ -1143,7 +1143,7 @@ xenDaemonParseSxprOS(virConnectPtr xend,
if (def->os.loader == NULL) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing HVM
loader"));
+ "%s", _("domain information incomplete,
missing HVM loader"));
return(-1);
}
} else {
@@ -1197,7 +1197,7 @@ xenDaemonParseSxprOS(virConnectPtr xend,
!def->os.kernel &&
!def->os.bootloader) {
virXendError(xend, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing kernel &
bootloader"));
+ "%s", _("domain information incomplete, missing
kernel & bootloader"));
return -1;
}
@@ -1261,7 +1261,7 @@ xend_parse_sexp_desc_char(virConnectPtr conn,
value += sizeof("unix:")-1;
} else {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Unknown char device type"));
+ "%s", _("Unknown char device type"));
return -1;
}
@@ -1295,7 +1295,7 @@ xend_parse_sexp_desc_char(virConnectPtr conn,
if (offset == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("malformed char device string"));
+ "%s", _("malformed char device string"));
goto error;
}
@@ -1335,7 +1335,7 @@ xend_parse_sexp_desc_char(virConnectPtr conn,
if (offset == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("malformed char device string"));
+ "%s", _("malformed char device string"));
goto error;
}
@@ -1351,7 +1351,7 @@ xend_parse_sexp_desc_char(virConnectPtr conn,
offset3 = strchr(offset2, ':');
if (offset3 == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("malformed char device string"));
+ "%s", _("malformed char device
string"));
goto error;
}
@@ -1418,7 +1418,7 @@ xend_parse_sexp_desc_char(virConnectPtr conn,
if (ret == -1) {
no_memory:
virXendError(conn, VIR_ERR_NO_MEMORY,
- _("no memory for char device config"));
+ "%s", _("no memory for char device config"));
}
error:
@@ -1490,7 +1490,7 @@ xenDaemonParseSxprChar(virConnectPtr conn,
if (offset == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("malformed char device string"));
+ "%s", _("malformed char device string"));
goto error;
}
@@ -1518,7 +1518,7 @@ xenDaemonParseSxprChar(virConnectPtr conn,
if (offset == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("malformed char device string"));
+ "%s", _("malformed char device string"));
goto error;
}
@@ -1534,7 +1534,7 @@ xenDaemonParseSxprChar(virConnectPtr conn,
offset3 = strchr(offset2, ':');
if (offset3 == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("malformed char device string"));
+ "%s", _("malformed char device
string"));
goto error;
}
@@ -1625,7 +1625,7 @@ xenDaemonParseSxprDisks(virConnectPtr conn,
if (dst == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, vbd has no
dev"));
+ "%s", _("domain information incomplete, vbd
has no dev"));
goto error;
}
@@ -1636,7 +1636,7 @@ xenDaemonParseSxprDisks(virConnectPtr conn,
!hvm ||
STRNEQ(offset, ":cdrom")) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, vbd has no
src"));
+ "%s", _("domain information incomplete,
vbd has no src"));
goto error;
}
}
@@ -1645,7 +1645,7 @@ xenDaemonParseSxprDisks(virConnectPtr conn,
offset = strchr(src, ':');
if (!offset) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("cannot parse vbd filename, missing driver
name"));
+ "%s", _("cannot parse vbd filename,
missing driver name"));
goto error;
}
@@ -1660,7 +1660,7 @@ xenDaemonParseSxprDisks(virConnectPtr conn,
offset = strchr(src, ':');
if (!offset) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("cannot parse vbd filename, missing driver
type"));
+ "%s", _("cannot parse vbd filename,
missing driver type"));
goto error;
}
@@ -2143,7 +2143,7 @@ xenDaemonParseSxpr(virConnectPtr conn,
tmp = sexpr_node(root, "domain/domid");
if (tmp == NULL && xendConfigVersion < 3) { /* Old XenD, domid was
mandatory */
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing id"));
+ "%s", _("domain information incomplete, missing
id"));
goto error;
}
def->virtType = VIR_DOMAIN_VIRT_XEN;
@@ -2156,14 +2156,14 @@ xenDaemonParseSxpr(virConnectPtr conn,
goto no_memory;
if (def->name == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing name"));
+ "%s", _("domain information incomplete, missing
name"));
goto error;
}
tmp = sexpr_node(root, "domain/uuid");
if (tmp == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing name"));
+ "%s", _("domain information incomplete, missing
name"));
goto error;
}
virUUIDParse(tmp, def->uuid);
@@ -2553,7 +2553,7 @@ sexpr_to_xend_topology(virConnectPtr conn,
nodeToCpu = sexpr_node(root, "node/node_to_cpu");
if (nodeToCpu == NULL) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to parse topology information"));
+ "%s", _("failed to parse topology
information"));
return -1;
}
@@ -2607,7 +2607,7 @@ sexpr_to_xend_topology(virConnectPtr conn,
return (0);
parse_error:
- virXendError(conn, VIR_ERR_XEN_CALL, _("topology syntax error"));
+ virXendError(conn, VIR_ERR_XEN_CALL, "%s", _("topology syntax
error"));
error:
VIR_FREE(cpuNums);
VIR_FREE(cpuset);
@@ -2617,7 +2617,7 @@ sexpr_to_xend_topology(virConnectPtr conn,
memory_error:
VIR_FREE(cpuNums);
VIR_FREE(cpuset);
- virXendError(conn, VIR_ERR_NO_MEMORY, _("allocate buffer"));
+ virXendError(conn, VIR_ERR_NO_MEMORY, "%s", _("allocate
buffer"));
return (-1);
}
@@ -2671,7 +2671,7 @@ sexpr_to_domain(virConnectPtr conn, const struct sexpr *root)
error:
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to parse Xend domain information"));
+ "%s", _("failed to parse Xend domain
information"));
if (ret != NULL)
virUnrefDomain(ret);
return(NULL);
@@ -3153,7 +3153,7 @@ xenDaemonDomainFetch(virConnectPtr conn,
root = sexpr_get(conn, "/xend/domain/%d?detail=1", domid);
if (root == NULL) {
virXendError (conn, VIR_ERR_XEN_CALL,
- _("xenDaemonDomainFetch failed to"
+ "%s", _("xenDaemonDomainFetch failed to"
" find this domain"));
return (NULL);
}
@@ -3980,7 +3980,7 @@ xenDaemonDomainGetAutostart(virDomainPtr domain,
root = sexpr_get(domain->conn, "/xend/domain/%s?detail=1",
domain->name);
if (root == NULL) {
virXendError (domain->conn, VIR_ERR_XEN_CALL,
- _("xenDaemonGetAutostart failed to find this domain"));
+ "%s", _("xenDaemonGetAutostart failed to find this
domain"));
return (-1);
}
@@ -4021,7 +4021,7 @@ xenDaemonDomainSetAutostart(virDomainPtr domain,
root = sexpr_get(domain->conn, "/xend/domain/%s?detail=1",
domain->name);
if (root == NULL) {
virXendError (domain->conn, VIR_ERR_XEN_CALL,
- _("xenDaemonSetAutostart failed to find this domain"));
+ "%s", _("xenDaemonSetAutostart failed to find this
domain"));
return (-1);
}
@@ -4029,7 +4029,7 @@ xenDaemonDomainSetAutostart(virDomainPtr domain,
if (autostr) {
if (!STREQ(autostr, "ignore") && !STREQ(autostr,
"start")) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("unexpected value from on_xend_start"));
+ "%s", _("unexpected value from
on_xend_start"));
goto error;
}
@@ -4040,23 +4040,23 @@ xenDaemonDomainSetAutostart(virDomainPtr domain,
: strdup("ignore"));
if (!(autonode->u.s.car->u.value)) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("no memory"));
+ "%s", _("no memory"));
goto error;
}
if (sexpr2string(root, buf, sizeof(buf)) == 0) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("sexpr2string failed"));
+ "%s", _("sexpr2string failed"));
goto error;
}
if (xend_op(domain->conn, "", "op", "new",
"config", buf, NULL) != 0) {
virXendError(domain->conn, VIR_ERR_XEN_CALL,
- _("Failed to redefine sexpr"));
+ "%s", _("Failed to redefine sexpr"));
goto error;
}
} else {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("on_xend_start not present in sexpr"));
+ "%s", _("on_xend_start not present in sexpr"));
goto error;
}
@@ -4124,7 +4124,7 @@ xenDaemonDomainMigratePerform (virDomainPtr domain,
/* Xen doesn't support renaming domains during migration. */
if (dname) {
virXendError (conn, VIR_ERR_NO_SUPPORT,
- _("xenDaemonDomainMigrate: Xen does not support"
+ "%s", _("xenDaemonDomainMigrate: Xen does not
support"
" renaming domains during migration"));
return -1;
}
@@ -4134,7 +4134,7 @@ xenDaemonDomainMigratePerform (virDomainPtr domain,
*/
if (bandwidth) {
virXendError (conn, VIR_ERR_NO_SUPPORT,
- _("xenDaemonDomainMigrate: Xen does not support"
+ "%s", _("xenDaemonDomainMigrate: Xen does not
support"
" bandwidth limits during migration"));
return -1;
}
@@ -4146,7 +4146,7 @@ xenDaemonDomainMigratePerform (virDomainPtr domain,
}
if (flags != 0) {
virXendError (conn, VIR_ERR_NO_SUPPORT,
- _("xenDaemonDomainMigrate: unsupported flag"));
+ "%s", _("xenDaemonDomainMigrate: unsupported
flag"));
return -1;
}
@@ -4159,26 +4159,26 @@ xenDaemonDomainMigratePerform (virDomainPtr domain,
xmlURIPtr uriptr = xmlParseURI (uri);
if (!uriptr) {
virXendError (conn, VIR_ERR_INVALID_ARG,
- _("xenDaemonDomainMigrate: invalid URI"));
+ "%s", _("xenDaemonDomainMigrate: invalid
URI"));
return -1;
}
if (uriptr->scheme && STRCASENEQ (uriptr->scheme,
"xenmigr")) {
virXendError (conn, VIR_ERR_INVALID_ARG,
- _("xenDaemonDomainMigrate: only xenmigr://"
+ "%s", _("xenDaemonDomainMigrate: only
xenmigr://"
" migrations are supported by Xen"));
xmlFreeURI (uriptr);
return -1;
}
if (!uriptr->server) {
virXendError (conn, VIR_ERR_INVALID_ARG,
- _("xenDaemonDomainMigrate: a hostname must be"
+ "%s", _("xenDaemonDomainMigrate: a hostname must
be"
" specified in the URI"));
xmlFreeURI (uriptr);
return -1;
}
hostname = strdup (uriptr->server);
if (!hostname) {
- virXendError (conn, VIR_ERR_NO_MEMORY, _("strdup failed"));
+ virXendError (conn, VIR_ERR_NO_MEMORY, "%s", _("strdup
failed"));
xmlFreeURI (uriptr);
return -1;
}
@@ -4191,7 +4191,7 @@ xenDaemonDomainMigratePerform (virDomainPtr domain,
if (sscanf (p+1, "%d", &port_nr) != 1) {
virXendError (conn, VIR_ERR_INVALID_ARG,
- _("xenDaemonDomainMigrate: invalid port number"));
+ "%s", _("xenDaemonDomainMigrate: invalid port
number"));
return -1;
}
snprintf (port, sizeof port, "%d", port_nr);
@@ -4200,7 +4200,7 @@ xenDaemonDomainMigratePerform (virDomainPtr domain,
n = p - uri; /* n = Length of hostname in bytes. */
hostname = strdup (uri);
if (!hostname) {
- virXendError (conn, VIR_ERR_NO_MEMORY, _("strdup failed"));
+ virXendError (conn, VIR_ERR_NO_MEMORY, "%s", _("strdup
failed"));
return -1;
}
hostname[n] = '\0';
@@ -4208,7 +4208,7 @@ xenDaemonDomainMigratePerform (virDomainPtr domain,
else { /* "hostname" (or IP address) */
hostname = strdup (uri);
if (!hostname) {
- virXendError (conn, VIR_ERR_NO_MEMORY, _("strdup failed"));
+ virXendError (conn, VIR_ERR_NO_MEMORY, "%s", _("strdup
failed"));
return -1;
}
}
@@ -4244,13 +4244,13 @@ virDomainPtr xenDaemonDomainDefineXML(virConnectPtr conn, const
char *xmlDesc) {
if (!(def = virDomainDefParseString(conn, priv->caps, xmlDesc))) {
virXendError(conn, VIR_ERR_XML_ERROR,
- _("failed to parse domain description"));
+ "%s", _("failed to parse domain description"));
return (NULL);
}
if (!(sexpr = xenDaemonFormatSxpr(conn, def, priv->xendConfigVersion))) {
virXendError(conn, VIR_ERR_XML_ERROR,
- _("failed to build sexpr"));
+ "%s", _("failed to build sexpr"));
goto error;
}
@@ -4416,7 +4416,7 @@ xenDaemonGetSchedulerType(virDomainPtr domain, int *nparams)
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
if (priv->xendConfigVersion < 4) {
virXendError (domain->conn, VIR_ERR_NO_SUPPORT,
- _("unsupported in xendConfigVersion < 4"));
+ "%s", _("unsupported in xendConfigVersion <
4"));
return NULL;
}
@@ -4428,25 +4428,25 @@ xenDaemonGetSchedulerType(virDomainPtr domain, int *nparams)
ret = sexpr_node(root, "node/xen_scheduler");
if (ret == NULL){
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("node information incomplete, missing scheduler
name"));
+ "%s", _("node information incomplete, missing
scheduler name"));
goto error;
}
if (STREQ (ret, "credit")) {
schedulertype = strdup("credit");
if (schedulertype == NULL){
- virXendError(domain->conn, VIR_ERR_SYSTEM_ERROR, _("strdup
failed"));
+ virXendError(domain->conn, VIR_ERR_SYSTEM_ERROR, "%s",
_("strdup failed"));
goto error;
}
*nparams = XEN_SCHED_CRED_NPARAM;
} else if (STREQ (ret, "sedf")) {
schedulertype = strdup("sedf");
if (schedulertype == NULL){
- virXendError(domain->conn, VIR_ERR_SYSTEM_ERROR, _("strdup
failed"));
+ virXendError(domain->conn, VIR_ERR_SYSTEM_ERROR, "%s",
_("strdup failed"));
goto error;
}
*nparams = XEN_SCHED_SEDF_NPARAM;
} else {
- virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR, _("Unknown
scheduler"));
+ virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR, "%s",
_("Unknown scheduler"));
goto error;
}
@@ -4492,7 +4492,7 @@ xenDaemonGetSchedulerParameters(virDomainPtr domain,
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
if (priv->xendConfigVersion < 4) {
virXendError (domain->conn, VIR_ERR_NO_SUPPORT,
- _("unsupported in xendConfigVersion < 4"));
+ "%s", _("unsupported in xendConfigVersion <
4"));
return (-1);
}
@@ -4505,7 +4505,7 @@ xenDaemonGetSchedulerParameters(virDomainPtr domain,
sched_type = xenDaemonGetSchedulerType(domain, &sched_nparam);
if (sched_type == NULL) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("Failed to get a scheduler name"));
+ "%s", _("Failed to get a scheduler name"));
goto error;
}
@@ -4518,12 +4518,12 @@ xenDaemonGetSchedulerParameters(virDomainPtr domain,
/* get cpu_weight/cpu_cap from xend/domain */
if (sexpr_node(root, "domain/cpu_weight") == NULL) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing
cpu_weight"));
+ "%s", _("domain information incomplete, missing
cpu_weight"));
goto error;
}
if (sexpr_node(root, "domain/cpu_cap") == NULL) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing cpu_cap"));
+ "%s", _("domain information incomplete, missing
cpu_cap"));
goto error;
}
@@ -4540,7 +4540,7 @@ xenDaemonGetSchedulerParameters(virDomainPtr domain,
ret = 0;
break;
default:
- virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR, _("Unknown
scheduler"));
+ virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR, "%s",
_("Unknown scheduler"));
goto error;
}
@@ -4582,7 +4582,7 @@ xenDaemonSetSchedulerParameters(virDomainPtr domain,
priv = (xenUnifiedPrivatePtr) domain->conn->privateData;
if (priv->xendConfigVersion < 4) {
virXendError (domain->conn, VIR_ERR_NO_SUPPORT,
- _("unsupported in xendConfigVersion < 4"));
+ "%s", _("unsupported in xendConfigVersion <
4"));
return (-1);
}
@@ -4595,7 +4595,7 @@ xenDaemonSetSchedulerParameters(virDomainPtr domain,
sched_type = xenDaemonGetSchedulerType(domain, &sched_nparam);
if (sched_type == NULL) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("Failed to get a scheduler name"));
+ "%s", _("Failed to get a scheduler name"));
goto error;
}
@@ -4631,7 +4631,7 @@ xenDaemonSetSchedulerParameters(virDomainPtr domain,
weight = sexpr_node(root, "domain/cpu_weight");
if (weight == NULL) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing
cpu_weight"));
+ "%s", _("domain information incomplete,
missing cpu_weight"));
goto error;
}
snprintf(buf_weight, sizeof(buf_weight), "%s", weight);
@@ -4640,7 +4640,7 @@ xenDaemonSetSchedulerParameters(virDomainPtr domain,
cap = sexpr_node(root, "domain/cpu_cap");
if (cap == NULL) {
virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("domain information incomplete, missing
cpu_cap"));
+ "%s", _("domain information incomplete,
missing cpu_cap"));
goto error;
}
snprintf(buf_cap, sizeof(buf_cap), "%s", cap);
@@ -4652,7 +4652,7 @@ xenDaemonSetSchedulerParameters(virDomainPtr domain,
break;
}
default:
- virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR, _("Unknown
scheduler"));
+ virXendError(domain->conn, VIR_ERR_INTERNAL_ERROR, "%s",
_("Unknown scheduler"));
goto error;
}
@@ -4698,7 +4698,7 @@ xenDaemonDomainBlockPeek (virDomainPtr domain, const char *path,
else {
/* This call always fails for dom0. */
virXendError (domain->conn, VIR_ERR_NO_SUPPORT,
- _("domainBlockPeek is not supported for dom0"));
+ "%s", _("domainBlockPeek is not supported for
dom0"));
return -1;
}
@@ -4911,7 +4911,7 @@ xenDaemonFormatSxprChr(virConnectPtr conn,
if (!type) {
virXendError(conn, VIR_ERR_INTERNAL_ERROR,
- _("unexpected chr device type"));
+ "%s", _("unexpected chr device type"));
return -1;
}
@@ -5488,7 +5488,7 @@ virDomainXMLDevID(virDomainPtr domain,
ref[ref_len - 1] = '\0';
} else {
virXendError(NULL, VIR_ERR_NO_SUPPORT,
- _("hotplug of device type not supported"));
+ "%s", _("hotplug of device type not
supported"));
return -1;
}
diff --git a/src/xm_internal.c b/src/xm_internal.c
index e117a36..6c84b91 100644
--- a/src/xm_internal.c
+++ b/src/xm_internal.c
@@ -487,7 +487,7 @@ static int xenXMConfigCacheRefresh (virConnectPtr conn) {
virDomainDefFree(entry->def);
VIR_FREE(entry);
xenXMError (conn, VIR_ERR_INTERNAL_ERROR,
- _("xenXMConfigCacheRefresh: virHashAddEntry"));
+ "%s", _("xenXMConfigCacheRefresh:
virHashAddEntry"));
goto cleanup;
}
}
@@ -1419,22 +1419,22 @@ int xenXMDomainPinVcpu(virDomainPtr domain,
}
if (domain->conn->flags & VIR_CONNECT_RO) {
xenXMError (domain->conn, VIR_ERR_INVALID_ARG,
- _("read only connection"));
+ "%s", _("read only connection"));
return -1;
}
if (domain->id != -1) {
xenXMError (domain->conn, VIR_ERR_INVALID_ARG,
- _("not inactive domain"));
+ "%s", _("not inactive domain"));
return -1;
}
if (!(filename = virHashLookup(nameConfigMap, domain->name))) {
- xenXMError (domain->conn, VIR_ERR_INTERNAL_ERROR,
_("virHashLookup"));
+ xenXMError (domain->conn, VIR_ERR_INTERNAL_ERROR, "%s",
_("virHashLookup"));
return -1;
}
if (!(entry = virHashLookup(configCache, filename))) {
xenXMError (domain->conn, VIR_ERR_INTERNAL_ERROR,
- _("can't retrieve config file for domain"));
+ "%s", _("can't retrieve config file for
domain"));
return -1;
}
@@ -1452,14 +1452,14 @@ int xenXMDomainPinVcpu(virDomainPtr domain,
}
if (virBufferError(&mapbuf)) {
- xenXMError(domain->conn, VIR_ERR_NO_MEMORY, _("allocate buffer"));
+ xenXMError(domain->conn, VIR_ERR_NO_MEMORY, "%s", _("allocate
buffer"));
return -1;
}
mapstr = virBufferContentAndReset(&mapbuf);
if (VIR_ALLOC_N(cpuset, maxcpu) < 0) {
- xenXMError(domain->conn, VIR_ERR_NO_MEMORY, _("allocate buffer"));
+ xenXMError(domain->conn, VIR_ERR_NO_MEMORY, "%s", _("allocate
buffer"));
goto cleanup;
}
if (virDomainCpuSetParse(domain->conn,
@@ -1594,7 +1594,7 @@ int xenXMDomainCreate(virDomainPtr domain) {
if (!(sexpr = xenDaemonFormatSxpr(domain->conn, entry->def,
priv->xendConfigVersion))) {
xenXMError(domain->conn, VIR_ERR_XML_ERROR,
- _("failed to build sexpr"));
+ "%s", _("failed to build sexpr"));
return (-1);
}
@@ -2216,13 +2216,13 @@ virDomainPtr xenXMDomainDefineXML(virConnectPtr conn, const char
*xml) {
if (!(oldfilename = (char *)virHashLookup(nameConfigMap, def->name))) {
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("can't retrieve config filename for domain to
overwrite"));
+ "%s", _("can't retrieve config filename for
domain to overwrite"));
goto error;
}
if (!(entry = virHashLookup(configCache, oldfilename))) {
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("can't retrieve config entry for domain to
overwrite"));
+ "%s", _("can't retrieve config entry for domain
to overwrite"));
goto error;
}
@@ -2233,14 +2233,14 @@ virDomainPtr xenXMDomainDefineXML(virConnectPtr conn, const char
*xml) {
/* Remove the name -> filename mapping */
if (virHashRemoveEntry(nameConfigMap, def->name, NULL) < 0) {
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to remove old domain from config map"));
+ "%s", _("failed to remove old domain from config
map"));
goto error;
}
/* Remove the config record itself */
if (virHashRemoveEntry(configCache, oldfilename, xenXMConfigFree) < 0) {
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("failed to remove old domain from config map"));
+ "%s", _("failed to remove old domain from config
map"));
goto error;
}
@@ -2249,7 +2249,7 @@ virDomainPtr xenXMDomainDefineXML(virConnectPtr conn, const char
*xml) {
if ((strlen(configDir) + 1 + strlen(def->name) + 1) > PATH_MAX) {
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("config file name is too long"));
+ "%s", _("config file name is too long"));
goto error;
}
@@ -2261,13 +2261,13 @@ virDomainPtr xenXMDomainDefineXML(virConnectPtr conn, const char
*xml) {
goto error;
if (VIR_ALLOC(entry) < 0) {
- xenXMError(conn, VIR_ERR_NO_MEMORY, _("config"));
+ xenXMError(conn, VIR_ERR_NO_MEMORY, "%s", _("config"));
goto error;
}
if ((entry->refreshedAt = time(NULL)) == ((time_t)-1)) {
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("unable to get current time"));
+ "%s", _("unable to get current time"));
goto error;
}
@@ -2276,14 +2276,14 @@ virDomainPtr xenXMDomainDefineXML(virConnectPtr conn, const char
*xml) {
if (virHashAddEntry(configCache, filename, entry) < 0) {
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("unable to store config file handle"));
+ "%s", _("unable to store config file handle"));
goto error;
}
if (virHashAddEntry(nameConfigMap, def->name, entry->filename) < 0) {
virHashRemoveEntry(configCache, filename, NULL);
xenXMError(conn, VIR_ERR_INTERNAL_ERROR,
- _("unable to store config file handle"));
+ "%s", _("unable to store config file handle"));
goto error;
}
@@ -2471,7 +2471,7 @@ xenXMDomainAttachDevice(virDomainPtr domain, const char *xml) {
default:
xenXMError(domain->conn, VIR_ERR_XML_ERROR,
- _("unknown device"));
+ "%s", _("unknown device"));
goto cleanup;
}
@@ -2586,7 +2586,7 @@ xenXMDomainDetachDevice(virDomainPtr domain, const char *xml) {
}
default:
xenXMError(domain->conn, VIR_ERR_XML_ERROR,
- _("unknown device"));
+ "%s", _("unknown device"));
goto cleanup;
}
diff --git a/src/xml.c b/src/xml.c
index 3536216..6f2fa8b 100644
--- a/src/xml.c
+++ b/src/xml.c
@@ -54,7 +54,7 @@ virXPathString(virConnectPtr conn,
if ((ctxt == NULL) || (xpath == NULL)) {
virXMLError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Invalid parameter to virXPathString()"));
+ "%s", _("Invalid parameter to
virXPathString()"));
return (NULL);
}
relnode = ctxt->node;
@@ -67,7 +67,7 @@ virXPathString(virConnectPtr conn,
ret = strdup((char *) obj->stringval);
xmlXPathFreeObject(obj);
if (ret == NULL) {
- virXMLError(conn, VIR_ERR_NO_MEMORY, _("strdup failed"));
+ virXMLError(conn, VIR_ERR_NO_MEMORY, "%s", _("strdup
failed"));
}
ctxt->node = relnode;
return (ret);
@@ -95,7 +95,7 @@ virXPathNumber(virConnectPtr conn,
if ((ctxt == NULL) || (xpath == NULL) || (value == NULL)) {
virXMLError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Invalid parameter to virXPathNumber()"));
+ "%s", _("Invalid parameter to
virXPathNumber()"));
return (-1);
}
relnode = ctxt->node;
@@ -137,7 +137,7 @@ virXPathLong(virConnectPtr conn,
if ((ctxt == NULL) || (xpath == NULL) || (value == NULL)) {
virXMLError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Invalid parameter to virXPathNumber()"));
+ "%s", _("Invalid parameter to
virXPathNumber()"));
return (-1);
}
relnode = ctxt->node;
@@ -192,7 +192,7 @@ virXPathULong(virConnectPtr conn,
if ((ctxt == NULL) || (xpath == NULL) || (value == NULL)) {
virXMLError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Invalid parameter to virXPathNumber()"));
+ "%s", _("Invalid parameter to
virXPathNumber()"));
return (-1);
}
relnode = ctxt->node;
@@ -250,7 +250,7 @@ virXPathBoolean(virConnectPtr conn,
if ((ctxt == NULL) || (xpath == NULL)) {
virXMLError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Invalid parameter to virXPathBoolean()"));
+ "%s", _("Invalid parameter to
virXPathBoolean()"));
return (-1);
}
relnode = ctxt->node;
@@ -288,7 +288,7 @@ virXPathNode(virConnectPtr conn,
if ((ctxt == NULL) || (xpath == NULL)) {
virXMLError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Invalid parameter to virXPathNode()"));
+ "%s", _("Invalid parameter to virXPathNode()"));
return (NULL);
}
relnode = ctxt->node;
@@ -330,7 +330,7 @@ virXPathNodeSet(virConnectPtr conn,
if ((ctxt == NULL) || (xpath == NULL)) {
virXMLError(conn, VIR_ERR_INTERNAL_ERROR,
- _("Invalid parameter to virXPathNodeSet()"));
+ "%s", _("Invalid parameter to
virXPathNodeSet()"));
return (-1);
}
diff --git a/src/xs_internal.c b/src/xs_internal.c
index ca6277d..d9e8123 100644
--- a/src/xs_internal.c
+++ b/src/xs_internal.c
@@ -298,7 +298,7 @@ xenStoreOpen(virConnectPtr conn,
*/
if (getuid() == 0) {
virXenStoreError(NULL, VIR_ERR_NO_XEN,
- _("failed to connect to Xen Store"));
+ "%s", _("failed to connect to Xen
Store"));
}
return (-1);
}
--
1.6.0.2.307.gc4275