diff --git a/cfg.mk b/cfg.mk index 882b2bec15..68f3a91617 100644 --- a/cfg.mk +++ b/cfg.mk @@ -581,6 +581,19 @@ sc_prohibit_newline_at_end_of_diagnostic: && { echo '$(ME): newline at end of message(s)' 1>&2; \ exit 1; } || : +# Look for diagnostics that lack a % in the format string, except that we +# allow VIR_ERROR to do this, and ignore functions that take a single +# string rather than a format argument. +sc_prohibit_diagnostic_without_format: + @{ grep -nE '\<$(func_re) *\(.*;$$' $$($(VC_LIST_EXCEPT)); \ + grep -A2 -nE '\<$(func_re) *\(.*,$$' $$($(VC_LIST_EXCEPT)); } \ + | sed -rn -e ':l; /[,"]$$/ {N;b l;}' \ + -e '/(xenapiSessionErrorHandler|vah_(error|warning))/d' \ + -e '/\<$(func_re) *\([^"]*"([^%"]|"\n[^"]*")*"[,)]/p' \ + | grep -vE 'VIR_ERROR' && \ + { echo '$(ME): found diagnostic without %' 1>&2; \ + exit 1; } || : + # The strings "" and "%s" should never be marked for translation. sc_prohibit_useless_translation: @prohibit='_\("(%s)?"\)' \ diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index c53722a2aa..143d92e07b 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -3236,7 +3236,7 @@ virSecurityDeviceLabelDefParseXML(virSecurityDeviceLabelDefPtr *def, (*def)->label = p; if ((*def)->label && (*def)->norelabel) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("Cannot specify a label if relabelling is turned off")); VIR_FREE((*def)->label); VIR_FREE(*def); @@ -3423,7 +3423,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, } if (!(source = virXMLPropString(cur, "name")) && def->protocol != VIR_DOMAIN_DISK_PROTOCOL_NBD) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing name for disk source")); goto error; } @@ -3509,7 +3509,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, } else if (xmlStrEqual(cur->name, BAD_CAST "auth")) { authUsername = virXMLPropString(cur, "username"); if (authUsername == NULL) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("missing username for auth")); goto error; } @@ -3521,7 +3521,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, xmlStrEqual(child->name, BAD_CAST "secret")) { usageType = virXMLPropString(child, "type"); if (usageType == NULL) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("missing type for secret")); goto error; } @@ -3537,7 +3537,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, authUsage = virXMLPropString(child, "usage"); if (authUUID != NULL && authUsage != NULL) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("only one of uuid and usage can be specified")); goto error; } @@ -3599,7 +3599,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, def->blkdeviotune.read_bytes_sec) || (def->blkdeviotune.total_bytes_sec && def->blkdeviotune.write_bytes_sec)) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("total and read/write bytes_sec " "cannot be set at the same time")); goto error; @@ -3609,7 +3609,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, def->blkdeviotune.read_iops_sec) || (def->blkdeviotune.total_iops_sec && def->blkdeviotune.write_iops_sec)) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("total and read/write iops_sec " "cannot be set at the same time")); goto error; @@ -3825,7 +3825,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, if (ioeventfd) { if (def->bus != VIR_DOMAIN_DISK_BUS_VIRTIO) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("disk ioeventfd mode supported " "only for virtio bus")); goto error; @@ -3843,7 +3843,7 @@ virDomainDiskDefParseXML(virCapsPtr caps, if (event_idx) { if (def->bus != VIR_DOMAIN_DISK_BUS_VIRTIO) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("disk event_idx mode supported " "only for virtio bus")); goto error; @@ -6411,7 +6411,7 @@ virDomainGraphicsDefParseXML(xmlNodePtr node, if ((compressionVal = virDomainGraphicsSpicePlaybackCompressionTypeFromString(compression)) <= 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("unknown spice playback compression")); VIR_FREE(compression); goto error; @@ -6431,7 +6431,7 @@ virDomainGraphicsDefParseXML(xmlNodePtr node, } if ((modeVal = virDomainGraphicsSpiceStreamingModeTypeFromString(mode)) <= 0) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("unknown spice streaming mode")); VIR_FREE(mode); goto error; diff --git a/src/conf/network_conf.c b/src/conf/network_conf.c index 5827f7c794..eb92d930af 100644 --- a/src/conf/network_conf.c +++ b/src/conf/network_conf.c @@ -519,7 +519,7 @@ virNetworkDNSHostsDefParseXML(virNetworkDNSDefPtr def, if (!(ip = virXMLPropString(node, "ip")) || (virSocketAddrParse(&inaddr, ip, AF_UNSPEC) < 0)) { - virReportError(VIR_ERR_XML_DETAIL, + virReportError(VIR_ERR_XML_DETAIL, "%s", _("Missing IP address in DNS host definition")); VIR_FREE(ip); goto error; @@ -1086,7 +1086,7 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt) nForwardPfs = virXPathNodeSet("./pf", ctxt, &forwardPfNodes); if (nForwardIfs < 0 || nForwardPfs < 0) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("No interface pool or SRIOV physical device given")); goto error; } @@ -1098,7 +1098,7 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt) } if (forwardDev) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("A forward Dev should not be used when using a SRIOV PF")); goto error; } @@ -1116,7 +1116,7 @@ virNetworkDefParseXML(xmlXPathContextPtr ctxt) forwardDev = NULL; def->nForwardPfs++; } else if (nForwardPfs > 1) { - virReportError(VIR_ERR_XML_ERROR, + virReportError(VIR_ERR_XML_ERROR, "%s", _("Use of more than one physical interface is not allowed")); goto error; } diff --git a/src/conf/nwfilter_conf.c b/src/conf/nwfilter_conf.c index a5e38b2d45..665ea0cca2 100644 --- a/src/conf/nwfilter_conf.c +++ b/src/conf/nwfilter_conf.c @@ -2,7 +2,7 @@ * nwfilter_conf.c: network filter XML processing * (derived from storage_conf.c) * - * Copyright (C) 2006-2011 Red Hat, Inc. + * Copyright (C) 2006-2012 Red Hat, Inc. * Copyright (C) 2006-2008 Daniel P. Berrange * * Copyright (C) 2010-2011 IBM Corporation @@ -2423,7 +2423,7 @@ virNWFilterIsValidChainName(const char *chainname) } if (chainname[strspn(chainname, VALID_CHAINNAME)] != 0) { - virReportError(VIR_ERR_INVALID_ARG, + virReportError(VIR_ERR_INVALID_ARG, "%s", _("Chain name contains invalid characters")); return false; } diff --git a/src/conf/nwfilter_params.c b/src/conf/nwfilter_params.c index 839d7048f8..6f7d5fc204 100644 --- a/src/conf/nwfilter_params.c +++ b/src/conf/nwfilter_params.c @@ -113,7 +113,7 @@ virNWFilterVarValueCreateSimple(char *value) virNWFilterVarValuePtr val; if (!isValidVarValue(value)) { - virReportError(VIR_ERR_INVALID_ARG, + virReportError(VIR_ERR_INVALID_ARG, "%s", _("Variable value contains invalid character")); return NULL; } @@ -998,10 +998,10 @@ virNWFilterVarAccessParse(const char *varAccess) } if (parseError) { if (dest->accessType == VIR_NWFILTER_VAR_ACCESS_ELEMENT) - virReportError(VIR_ERR_INVALID_ARG, + virReportError(VIR_ERR_INVALID_ARG, "%s", _("Malformatted array index")); else - virReportError(VIR_ERR_INVALID_ARG, + virReportError(VIR_ERR_INVALID_ARG, "%s", _("Malformatted iterator id")); goto err_exit; } @@ -1026,7 +1026,7 @@ virNWFilterVarAccessParse(const char *varAccess) return dest; } else { - virReportError(VIR_ERR_INVALID_ARG, + virReportError(VIR_ERR_INVALID_ARG, "%s", _("Malformatted variable")); } diff --git a/src/datatypes.c b/src/datatypes.c index 699c4a880e..77dca6f5b1 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-2011 Red Hat, Inc. + * Copyright (C) 2006-2012 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 @@ -138,7 +138,7 @@ virUnrefConnect(virConnectPtr conn) { int refs; if ((!VIR_IS_CONNECT(conn))) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return -1; } virMutexLock(&conn->lock); @@ -173,7 +173,7 @@ virGetDomain(virConnectPtr conn, const char *name, const unsigned char *uuid) { char uuidstr[VIR_UUID_STRING_BUFLEN]; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -264,7 +264,8 @@ virUnrefDomain(virDomainPtr domain) { int refs; if (!VIR_IS_CONNECTED_DOMAIN(domain)) { - virLibConnError(VIR_ERR_INVALID_DOMAIN, _("bad domain or no connection")); + virLibConnError(VIR_ERR_INVALID_DOMAIN, "%s", + _("bad domain or no connection")); return -1; } virMutexLock(&domain->conn->lock); @@ -300,7 +301,7 @@ virGetNetwork(virConnectPtr conn, const char *name, const unsigned char *uuid) { char uuidstr[VIR_UUID_STRING_BUFLEN]; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -389,7 +390,7 @@ virUnrefNetwork(virNetworkPtr network) { int refs; if (!VIR_IS_CONNECTED_NETWORK(network)) { - virLibConnError(VIR_ERR_INVALID_NETWORK, + virLibConnError(VIR_ERR_INVALID_NETWORK, "%s", _("bad network or no connection")); return -1; } @@ -427,7 +428,7 @@ virGetInterface(virConnectPtr conn, const char *name, const char *mac) { virInterfacePtr ret = NULL; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -522,7 +523,7 @@ virUnrefInterface(virInterfacePtr iface) { int refs; if (!VIR_IS_CONNECTED_INTERFACE(iface)) { - virLibConnError(VIR_ERR_INVALID_INTERFACE, + virLibConnError(VIR_ERR_INVALID_INTERFACE, "%s", _("bad interface or no connection")); return -1; } @@ -561,7 +562,7 @@ virGetStoragePool(virConnectPtr conn, const char *name, char uuidstr[VIR_UUID_STRING_BUFLEN]; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -651,7 +652,7 @@ virUnrefStoragePool(virStoragePoolPtr pool) { int refs; if (!VIR_IS_CONNECTED_STORAGE_POOL(pool)) { - virLibConnError(VIR_ERR_INVALID_STORAGE_POOL, + virLibConnError(VIR_ERR_INVALID_STORAGE_POOL, "%s", _("bad storage pool or no connection")); return -1; } @@ -690,7 +691,7 @@ virGetStorageVol(virConnectPtr conn, const char *pool, const char *name, virStorageVolPtr ret = NULL; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -790,7 +791,7 @@ virUnrefStorageVol(virStorageVolPtr vol) { int refs; if (!VIR_IS_CONNECTED_STORAGE_VOL(vol)) { - virLibConnError(VIR_ERR_INVALID_STORAGE_VOL, + virLibConnError(VIR_ERR_INVALID_STORAGE_VOL, "%s", _("bad storage volume or no connection")); return -1; } @@ -827,7 +828,7 @@ virGetNodeDevice(virConnectPtr conn, const char *name) virNodeDevicePtr ret = NULL; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -945,7 +946,7 @@ virGetSecret(virConnectPtr conn, const unsigned char *uuid, char uuidstr[VIR_UUID_STRING_BUFLEN]; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(uuid, NULL); @@ -1031,7 +1032,8 @@ virUnrefSecret(virSecretPtr secret) { int refs; if (!VIR_IS_CONNECTED_SECRET(secret)) { - virLibConnError(VIR_ERR_INVALID_SECRET, _("bad secret or no connection")); + virLibConnError(VIR_ERR_INVALID_SECRET, "%s", + _("bad secret or no connection")); return -1; } virMutexLock(&secret->conn->lock); @@ -1126,7 +1128,7 @@ virGetNWFilter(virConnectPtr conn, const char *name, const unsigned char *uuid) char uuidstr[VIR_UUID_STRING_BUFLEN]; if (!VIR_IS_CONNECT(conn)) { - virLibConnError(VIR_ERR_INVALID_CONN, _("no connection")); + virLibConnError(VIR_ERR_INVALID_CONN, "%s", _("no connection")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -1218,7 +1220,7 @@ virUnrefNWFilter(virNWFilterPtr nwfilter) int refs; if (!VIR_IS_CONNECTED_NWFILTER(nwfilter)) { - virLibConnError(VIR_ERR_INVALID_NWFILTER, + virLibConnError(VIR_ERR_INVALID_NWFILTER, "%s", _("bad nwfilter or no connection")); return -1; } @@ -1244,7 +1246,7 @@ virGetDomainSnapshot(virDomainPtr domain, const char *name) virDomainSnapshotPtr ret = NULL; if (!VIR_IS_DOMAIN(domain)) { - virLibConnError(VIR_ERR_INVALID_DOMAIN, _("bad domain")); + virLibConnError(VIR_ERR_INVALID_DOMAIN, "%s", _("bad domain")); return NULL; } virCheckNonNullArgReturn(name, NULL); @@ -1307,7 +1309,8 @@ virUnrefDomainSnapshot(virDomainSnapshotPtr snapshot) int refs; if (!VIR_IS_DOMAIN_SNAPSHOT(snapshot)) { - virLibConnError(VIR_ERR_INVALID_DOMAIN_SNAPSHOT, _("not a snapshot")); + virLibConnError(VIR_ERR_INVALID_DOMAIN_SNAPSHOT, "%s", + _("not a snapshot")); return -1; } diff --git a/src/libvirt.c b/src/libvirt.c index 8315b4fca9..1ed9e328f2 100644 --- a/src/libvirt.c +++ b/src/libvirt.c @@ -2555,7 +2555,7 @@ virDomainSave(virDomainPtr domain, const char *to) /* We must absolutize the file path as the save is done out of process */ if (virFileAbsPath(to, &absolute_to) < 0) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not build absolute output file path")); goto error; } @@ -2650,7 +2650,7 @@ virDomainSaveFlags(virDomainPtr domain, const char *to, /* We must absolutize the file path as the save is done out of process */ if (virFileAbsPath(to, &absolute_to) < 0) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not build absolute output file path")); goto error; } @@ -2706,7 +2706,7 @@ virDomainRestore(virConnectPtr conn, const char *from) /* We must absolutize the file path as the restore is done out of process */ if (virFileAbsPath(from, &absolute_from) < 0) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not build absolute input file path")); goto error; } @@ -2788,7 +2788,7 @@ virDomainRestoreFlags(virConnectPtr conn, const char *from, const char *dxml, /* We must absolutize the file path as the restore is done out of process */ if (virFileAbsPath(from, &absolute_from) < 0) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not build absolute input file path")); goto error; } @@ -2845,7 +2845,7 @@ virDomainSaveImageGetXMLDesc(virConnectPtr conn, const char *file, virCheckNonNullArgGoto(file, error); if ((conn->flags & VIR_CONNECT_RO) && (flags & VIR_DOMAIN_XML_SECURE)) { - virLibConnError(VIR_ERR_OPERATION_DENIED, + virLibConnError(VIR_ERR_OPERATION_DENIED, "%s", _("virDomainSaveImageGetXMLDesc with secure flag")); goto error; } @@ -2856,7 +2856,7 @@ virDomainSaveImageGetXMLDesc(virConnectPtr conn, const char *file, /* We must absolutize the file path as the read is done out of process */ if (virFileAbsPath(file, &absolute_file) < 0) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not build absolute input file path")); goto error; } @@ -2937,7 +2937,7 @@ virDomainSaveImageDefineXML(virConnectPtr conn, const char *file, /* We must absolutize the file path as the read is done out of process */ if (virFileAbsPath(file, &absolute_file) < 0) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not build absolute input file path")); goto error; } @@ -3029,7 +3029,7 @@ virDomainCoreDump(virDomainPtr domain, const char *to, unsigned int flags) /* We must absolutize the file path as the save is done out of process */ if (virFileAbsPath(to, &absolute_to) < 0) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not build absolute core file path")); goto error; } @@ -4341,7 +4341,7 @@ virDomainGetXMLDesc(virDomainPtr domain, unsigned int flags) conn = domain->conn; if ((conn->flags & VIR_CONNECT_RO) && (flags & VIR_DOMAIN_XML_SECURE)) { - virLibConnError(VIR_ERR_OPERATION_DENIED, + virLibConnError(VIR_ERR_OPERATION_DENIED, "%s", _("virDomainGetXMLDesc with secure flag")); goto error; } @@ -4523,7 +4523,7 @@ virDomainMigrateVersion1 (virDomainPtr domain, goto done; if (uri == NULL && uri_out == NULL) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("domainMigratePrepare did not set uri")); goto done; } @@ -4635,7 +4635,7 @@ virDomainMigrateVersion2 (virDomainPtr domain, goto done; if (uri == NULL && uri_out == NULL) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("domainMigratePrepare2 did not set uri")); virDispatchError(domain->conn); cancelled = 1; @@ -4781,7 +4781,7 @@ virDomainMigrateVersion3(virDomainPtr domain, } if (uri == NULL && uri_out == NULL) { - virLibConnError(VIR_ERR_INTERNAL_ERROR, + virLibConnError(VIR_ERR_INTERNAL_ERROR, "%s", _("domainMigratePrepare3 did not set uri")); virDispatchError(domain->conn); goto finish; @@ -5198,7 +5198,7 @@ virDomainMigrate (virDomainPtr domain, } flags &= ~VIR_MIGRATE_CHANGE_PROTECTION; if (flags & VIR_MIGRATE_TUNNELLED) { - virLibConnError(VIR_ERR_OPERATION_INVALID, + virLibConnError(VIR_ERR_OPERATION_INVALID, "%s", _("cannot perform tunnelled migration without using peer2peer flag")); goto error; } @@ -5400,7 +5400,7 @@ virDomainMigrate2(virDomainPtr domain, } flags &= ~VIR_MIGRATE_CHANGE_PROTECTION; if (flags & VIR_MIGRATE_TUNNELLED) { - virLibConnError(VIR_ERR_OPERATION_INVALID, + virLibConnError(VIR_ERR_OPERATION_INVALID, "%s", _("cannot perform tunnelled migration without using peer2peer flag")); goto error; } @@ -14951,7 +14951,7 @@ int virStreamSendAll(virStreamPtr stream, virCheckNonNullArgGoto(handler, cleanup); if (stream->flags & VIR_STREAM_NONBLOCK) { - virLibConnError(VIR_ERR_OPERATION_INVALID, + virLibConnError(VIR_ERR_OPERATION_INVALID, "%s", _("data sources cannot be used for non-blocking streams")); goto cleanup; } @@ -15050,7 +15050,7 @@ int virStreamRecvAll(virStreamPtr stream, virCheckNonNullArgGoto(handler, cleanup); if (stream->flags & VIR_STREAM_NONBLOCK) { - virLibConnError(VIR_ERR_OPERATION_INVALID, + virLibConnError(VIR_ERR_OPERATION_INVALID, "%s", _("data sinks cannot be used for non-blocking streams")); goto cleanup; } @@ -17040,7 +17040,7 @@ virDomainSnapshotGetXMLDesc(virDomainSnapshotPtr snapshot, conn = snapshot->domain->conn; if ((conn->flags & VIR_CONNECT_RO) && (flags & VIR_DOMAIN_XML_SECURE)) { - virLibConnError(VIR_ERR_OPERATION_DENIED, + virLibConnError(VIR_ERR_OPERATION_DENIED, "%s", _("virDomainSnapshotGetXMLDesc with secure flag")); goto error; } diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c index ba07a80ea3..38a5662372 100644 --- a/src/lxc/lxc_driver.c +++ b/src/lxc/lxc_driver.c @@ -2023,7 +2023,8 @@ lxcDomainSetBlkioParameters(virDomainPtr dom, if (flags & VIR_DOMAIN_AFFECT_LIVE) { if (!lxcCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_BLKIO)) { - lxcError(VIR_ERR_OPERATION_INVALID, _("blkio cgroup isn't mounted")); + lxcError(VIR_ERR_OPERATION_INVALID, "%s", + _("blkio cgroup isn't mounted")); goto cleanup; } @@ -2127,7 +2128,8 @@ lxcDomainGetBlkioParameters(virDomainPtr dom, if (flags & VIR_DOMAIN_AFFECT_LIVE) { if (!lxcCgroupControllerActive(driver, VIR_CGROUP_CONTROLLER_BLKIO)) { - lxcError(VIR_ERR_OPERATION_INVALID, _("blkio cgroup isn't mounted")); + lxcError(VIR_ERR_OPERATION_INVALID, "%s", + _("blkio cgroup isn't mounted")); goto cleanup; } diff --git a/src/nwfilter/nwfilter_dhcpsnoop.c b/src/nwfilter/nwfilter_dhcpsnoop.c index aee57ede19..1395bfe921 100644 --- a/src/nwfilter/nwfilter_dhcpsnoop.c +++ b/src/nwfilter/nwfilter_dhcpsnoop.c @@ -2,6 +2,7 @@ * nwfilter_dhcpsnoop.c: support for DHCP snooping used by a VM * on an interface * + * Copyright (C) 2012 Red Hat, Inc. * Copyright (C) 2011,2012 IBM Corp. * * Authors: @@ -886,7 +887,7 @@ virNWFilterSnoopReqLeaseDel(virNWFilterSnoopReqPtr req, if (req->techdriver && req->techdriver->applyDHCPOnlyRules(req->ifname, &req->macaddr, dhcpsrvrs, false) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("virNWFilterSnoopListDel failed")); ret = -1; } @@ -1633,7 +1634,7 @@ virNWFilterDHCPSnoopReq(virNWFilterTechDriverPtr techdriver, if (techdriver->applyDHCPOnlyRules(req->ifname, &req->macaddr, dhcpsrvrs, false) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("applyDHCPOnlyRules " "failed - spoofing not protected!")); goto exit_snoopreqput; diff --git a/src/openvz/openvz_driver.c b/src/openvz/openvz_driver.c index 428b9445f1..4cc7f46e3f 100644 --- a/src/openvz/openvz_driver.c +++ b/src/openvz/openvz_driver.c @@ -2017,7 +2017,7 @@ openvzUpdateDevice(virDomainDefPtr vmdef, || cur->accessmode != fs->accessmode || cur->wrpolicy != fs->wrpolicy || cur->readonly != fs->readonly) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Can only modify disk quota")); return -1; } diff --git a/src/openvz/openvz_util.c b/src/openvz/openvz_util.c index 89066ab6a6..b817e1626e 100644 --- a/src/openvz/openvz_util.c +++ b/src/openvz/openvz_util.c @@ -45,7 +45,7 @@ openvzKBPerPages(void) if (kb_per_pages > 0) { kb_per_pages /= 1024; } else { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Can't determine page size")); kb_per_pages = 0; return -1; diff --git a/src/qemu/qemu_cgroup.c b/src/qemu/qemu_cgroup.c index 32184e724b..dee9de6b54 100644 --- a/src/qemu/qemu_cgroup.c +++ b/src/qemu/qemu_cgroup.c @@ -333,7 +333,7 @@ int qemuSetupCgroup(struct qemud_driver *driver, } } } else { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Block I/O tuning is not available on this host")); goto cleanup; } @@ -372,7 +372,7 @@ int qemuSetupCgroup(struct qemud_driver *driver, } } } else { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Memory cgroup is not available on this host")); } } diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index edd1840ce9..403364480a 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -3424,7 +3424,7 @@ qemuBuildHubDevStr(virDomainHubDefPtr dev, } if (!qemuCapsGet(qemuCaps, QEMU_CAPS_USB_HUB)) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("usb-hub not supported by QEMU binary")); goto error; } @@ -3553,7 +3553,7 @@ qemuBuildChrChardevStr(virDomainChrSourceDefPtr dev, const char *alias, case VIR_DOMAIN_CHR_TYPE_SPICEVMC: if (!qemuCapsGet(qemuCaps, QEMU_CAPS_CHARDEV_SPICEVMC)) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("spicevmc not supported in this QEMU binary")); goto error; } @@ -4808,7 +4808,7 @@ qemuBuildCommandLine(virConnectPtr conn, cont->model == -1 && !qemuCapsGet(qemuCaps, QEMU_CAPS_PIIX3_USB_UHCI)) { if (usblegacy) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Multiple legacy USB controllers are " "not supported")); goto error; @@ -5816,7 +5816,7 @@ qemuBuildCommandLine(virConnectPtr conn, switch (mode) { case VIR_DOMAIN_GRAPHICS_SPICE_CHANNEL_MODE_SECURE: if (!driver->spiceTLS) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("spice secure channels set in XML configuration, but TLS is disabled in qemu.conf")); goto error; } diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index f3ff5b27e3..0da5c5aacf 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -12885,7 +12885,7 @@ qemuDomainGetPercpuStats(virDomainPtr domain, if (!map[i]) { cpu_time = 0; } else if (virStrToLong_ull(pos, &pos, 10, &cpu_time) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("cpuacct parse error")); goto cleanup; } else { diff --git a/src/qemu/qemu_hotplug.c b/src/qemu/qemu_hotplug.c index 7880606940..ba841e9269 100644 --- a/src/qemu/qemu_hotplug.c +++ b/src/qemu/qemu_hotplug.c @@ -832,7 +832,7 @@ int qemuDomainAttachNetDevice(virConnectPtr conn, goto try_remove; } } else { - virReportError(VIR_ERR_OPERATION_FAILED, + virReportError(VIR_ERR_OPERATION_FAILED, "%s", _("setting of link state not supported: Link is up")); } diff --git a/src/rpc/virnetsaslcontext.c b/src/rpc/virnetsaslcontext.c index 9c737d0ccf..af6e237064 100644 --- a/src/rpc/virnetsaslcontext.c +++ b/src/rpc/virnetsaslcontext.c @@ -1,7 +1,7 @@ /* * virnetsaslcontext.c: SASL encryption/auth handling * - * Copyright (C) 2010-2011 Red Hat, Inc. + * Copyright (C) 2010-2012 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 @@ -313,7 +313,7 @@ const char *virNetSASLSessionGetIdentity(virNetSASLSessionPtr sasl) goto cleanup; } if (val == NULL) { - virReportError(VIR_ERR_AUTH_FAILED, + virReportError(VIR_ERR_AUTH_FAILED, "%s", _("no client username was found")); goto cleanup; } diff --git a/src/rpc/virnetsocket.c b/src/rpc/virnetsocket.c index 31c4e2868b..88e5525060 100644 --- a/src/rpc/virnetsocket.c +++ b/src/rpc/virnetsocket.c @@ -482,7 +482,7 @@ int virNetSocketNewConnectUNIX(const char *path, remoteAddr.len = sizeof(remoteAddr.data.un); if (spawnDaemon && !binary) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Auto-spawn of daemon requested, but no binary specified")); return -1; } @@ -1178,7 +1178,7 @@ int virNetSocketSendFD(virNetSocketPtr sock, int fd) { int ret = -1; if (!virNetSocketHasPassFD(sock)) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Sending file descriptors is not supported on this socket")); return -1; } @@ -1212,7 +1212,7 @@ int virNetSocketRecvFD(virNetSocketPtr sock, int *fd) *fd = -1; if (!virNetSocketHasPassFD(sock)) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("Receiving file descriptors is not supported on this socket")); return -1; } diff --git a/src/storage/storage_backend_disk.c b/src/storage/storage_backend_disk.c index 0fc29958e4..f7f12f5e3a 100644 --- a/src/storage/storage_backend_disk.c +++ b/src/storage/storage_backend_disk.c @@ -1,7 +1,7 @@ /* * storage_backend_disk.c: storage backend for disk handling * - * Copyright (C) 2007-2008, 2010-2011 Red Hat, Inc. + * Copyright (C) 2007-2008, 2010-2012 Red Hat, Inc. * Copyright (C) 2007-2008 Daniel P. Berrange * * This library is free software; you can redistribute it and/or @@ -399,7 +399,7 @@ virStorageBackendDiskBuildPool(virConnectPtr conn ATTRIBUTE_UNUSED, if (flags == (VIR_STORAGE_POOL_BUILD_OVERWRITE | VIR_STORAGE_POOL_BUILD_NO_OVERWRITE)) { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("Overwrite and no overwrite flags" " are mutually exclusive")); goto error; @@ -415,10 +415,10 @@ virStorageBackendDiskBuildPool(virConnectPtr conn ATTRIBUTE_UNUSED, if (check > 0) { ok_to_mklabel = true; } else if (check < 0) { - virReportError(VIR_ERR_OPERATION_FAILED, + virReportError(VIR_ERR_OPERATION_FAILED, "%s", _("Error checking for disk label")); } else { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("Disk label already present")); } } diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c index 29d63419b5..01b517ae2d 100644 --- a/src/storage/storage_backend_fs.c +++ b/src/storage/storage_backend_fs.c @@ -1,7 +1,7 @@ /* * storage_backend_fs.c: storage backend for FS and directory handling * - * Copyright (C) 2007-2011 Red Hat, Inc. + * Copyright (C) 2007-2012 Red Hat, Inc. * Copyright (C) 2007-2008 Daniel P. Berrange * * This library is free software; you can redistribute it and/or @@ -598,7 +598,7 @@ virStorageBackendFileSystemProbe(const char *device, } if (blkid_do_probe(probe) != 1) { - virReportError(VIR_ERR_STORAGE_PROBE_FAILED, + virReportError(VIR_ERR_STORAGE_PROBE_FAILED, "%s", _("Found additional probes to run, " "filesystem probing may be incorrect")); ret = FILESYSTEM_PROBE_ERROR; @@ -620,7 +620,7 @@ static virStoragePoolProbeResult virStorageBackendFileSystemProbe(const char *device ATTRIBUTE_UNUSED, const char *format ATTRIBUTE_UNUSED) { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("probing for filesystems is unsupported " "by this build")); @@ -743,7 +743,7 @@ virStorageBackendFileSystemBuild(virConnectPtr conn ATTRIBUTE_UNUSED, if (flags == (VIR_STORAGE_POOL_BUILD_OVERWRITE | VIR_STORAGE_POOL_BUILD_NO_OVERWRITE)) { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("Overwrite and no overwrite flags" " are mutually exclusive")); goto error; diff --git a/src/storage/storage_backend_rbd.c b/src/storage/storage_backend_rbd.c index 0342e9fedc..cd37ce7c9e 100644 --- a/src/storage/storage_backend_rbd.c +++ b/src/storage/storage_backend_rbd.c @@ -65,7 +65,7 @@ static int virStorageBackendRBDOpenRADOSConn(virStorageBackendRBDStatePtr *ptr, VIR_DEBUG("Using cephx authorization"); if (rados_create(&ptr->cluster, pool->def->source.auth.cephx.username) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to initialize RADOS")); goto cleanup; } @@ -84,7 +84,7 @@ static int virStorageBackendRBDOpenRADOSConn(virStorageBackendRBDStatePtr *ptr, } if (secret == NULL) { - virReportError(VIR_ERR_NO_SECRET, + virReportError(VIR_ERR_NO_SECRET, "%s", _("failed to find the secret")); goto cleanup; } @@ -95,7 +95,7 @@ static int virStorageBackendRBDOpenRADOSConn(virStorageBackendRBDStatePtr *ptr, memset(secret_value, 0, secret_value_size); if (rados_key == NULL) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to decode the RADOS key")); goto cleanup; } @@ -119,7 +119,7 @@ static int virStorageBackendRBDOpenRADOSConn(virStorageBackendRBDStatePtr *ptr, } else { VIR_DEBUG("Not using cephx authorization"); if (rados_create(&ptr->cluster, NULL) < 0) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("failed to create the RADOS cluster")); goto cleanup; } diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c index 4ad9155b4e..6d7dd2b95d 100644 --- a/src/storage/storage_driver.c +++ b/src/storage/storage_driver.c @@ -1715,13 +1715,13 @@ storageVolumeResize(virStorageVolPtr obj, storageDriverUnlock(driver); if (!pool) { - virReportError(VIR_ERR_NO_STORAGE_POOL, + virReportError(VIR_ERR_NO_STORAGE_POOL, "%s", _("no storage pool with matching uuid")); goto out; } if (!virStoragePoolObjIsActive(pool)) { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("storage pool is not active")); goto out; } @@ -1753,20 +1753,20 @@ storageVolumeResize(virStorageVolPtr obj, } if (abs_capacity < vol->allocation) { - virReportError(VIR_ERR_INVALID_ARG, + virReportError(VIR_ERR_INVALID_ARG, "%s", _("can't shrink capacity below " "existing allocation")); goto out; } if (abs_capacity > vol->capacity + pool->def->available) { - virReportError(VIR_ERR_OPERATION_FAILED, + virReportError(VIR_ERR_OPERATION_FAILED, "%s", _("Not enough space left on storage pool")); goto out; } if (!backend->resizeVol) { - virReportError(VIR_ERR_NO_SUPPORT, + virReportError(VIR_ERR_NO_SUPPORT, "%s", _("storage pool does not support changing of " "volume capacity")); goto out; diff --git a/src/test/test_driver.c b/src/test/test_driver.c index 3c2056effe..01e515aa8b 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -3534,7 +3534,7 @@ static int testInterfaceChangeBegin(virConnectPtr conn, testDriverLock(privconn); if (privconn->transaction_running) { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("there is another transaction running.")); goto cleanup; } @@ -3562,7 +3562,7 @@ static int testInterfaceChangeCommit(virConnectPtr conn, testDriverLock(privconn); if (!privconn->transaction_running) { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("no transaction running, " "nothing to be committed.")); goto cleanup; @@ -3590,7 +3590,7 @@ static int testInterfaceChangeRollback(virConnectPtr conn, testDriverLock(privconn); if (!privconn->transaction_running) { - virReportError(VIR_ERR_OPERATION_INVALID, + virReportError(VIR_ERR_OPERATION_INVALID, "%s", _("no transaction running, " "nothing to rollback.")); goto cleanup; diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c index 17e7e9a6ad..b672b24ac6 100644 --- a/src/vbox/vbox_tmpl.c +++ b/src/vbox/vbox_tmpl.c @@ -9311,7 +9311,7 @@ vboxListAllDomains(virConnectPtr conn, if (MATCH(VIR_CONNECT_LIST_FILTERS_SNAPSHOT)) { rc = machine->vtbl->GetSnapshotCount(machine, &snapshotCount); if (NS_FAILED(rc)) { - virReportError(VIR_ERR_INTERNAL_ERROR, + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("could not get snapshot count for listed domains")); goto cleanup; } diff --git a/src/xenxs/xen_sxpr.c b/src/xenxs/xen_sxpr.c index c84ce35e90..8bb3849580 100644 --- a/src/xenxs/xen_sxpr.c +++ b/src/xenxs/xen_sxpr.c @@ -1870,7 +1870,7 @@ xenFormatSxprDisk(virDomainDiskDefPtr def, else virBufferAddLit(buf, "(mode 'w')"); if (def->transient) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("transient disks not supported yet")); return -1; } @@ -2515,7 +2515,7 @@ xenFormatSxpr(virConnectPtr conn, break; case VIR_DOMAIN_CLOCK_OFFSET_UTC: if (def->clock.data.utc_reset) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("unsupported clock adjustment='reset'")); goto error; } @@ -2524,7 +2524,7 @@ xenFormatSxpr(virConnectPtr conn, break; case VIR_DOMAIN_CLOCK_OFFSET_LOCALTIME: if (def->clock.data.utc_reset) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("unsupported clock adjustment='reset'")); goto error; } diff --git a/src/xenxs/xen_xm.c b/src/xenxs/xen_xm.c index 20347d31ea..5122866b0e 100644 --- a/src/xenxs/xen_xm.c +++ b/src/xenxs/xen_xm.c @@ -208,7 +208,7 @@ static int xenXMConfigGetUUID(virConfPtr conf, const char *name, unsigned char * virConfValuePtr val; if (!uuid || !name || !conf) { - virReportError(VIR_ERR_INVALID_ARG, + virReportError(VIR_ERR_INVALID_ARG, "%s", _("Arguments must be non null")); return -1; } @@ -1242,7 +1242,7 @@ static int xenFormatXMDisk(virConfValuePtr list, else virBufferAddLit(&buf, ",w"); if (disk->transient) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("transient disks not supported yet")); return -1; } @@ -1686,7 +1686,7 @@ virConfPtr xenFormatXM(virConnectPtr conn, break; case VIR_DOMAIN_CLOCK_OFFSET_UTC: if (def->clock.data.utc_reset) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("unsupported clock adjustment='reset'")); goto cleanup; } @@ -1695,7 +1695,7 @@ virConfPtr xenFormatXM(virConnectPtr conn, break; case VIR_DOMAIN_CLOCK_OFFSET_LOCALTIME: if (def->clock.data.utc_reset) { - virReportError(VIR_ERR_CONFIG_UNSUPPORTED, + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("unsupported clock adjustment='reset'")); goto cleanup; }