[libvirt PATCH 37/51] storage: Update format strings in translated messages

Jiri Denemark jdenemar at redhat.com
Fri Mar 10 16:09:53 UTC 2023


Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
---
 src/storage/parthelper.c                   |   6 +-
 src/storage/storage_backend.c              |   4 +-
 src/storage/storage_backend_disk.c         |  20 +--
 src/storage/storage_backend_fs.c           |  15 +-
 src/storage/storage_backend_gluster.c      |  31 ++--
 src/storage/storage_backend_iscsi.c        |   6 +-
 src/storage/storage_backend_iscsi_direct.c |  44 +++---
 src/storage/storage_backend_logical.c      |  19 ++-
 src/storage/storage_backend_mpath.c        |   2 +-
 src/storage/storage_backend_rbd.c          |  87 +++++-----
 src/storage/storage_backend_scsi.c         |  17 +-
 src/storage/storage_backend_vstorage.c     |   2 +-
 src/storage/storage_driver.c               | 126 +++++++--------
 src/storage/storage_util.c                 | 176 ++++++++++-----------
 14 files changed, 270 insertions(+), 285 deletions(-)

diff --git a/src/storage/parthelper.c b/src/storage/parthelper.c
index da67455335..ee07ba41bb 100644
--- a/src/storage/parthelper.c
+++ b/src/storage/parthelper.c
@@ -75,7 +75,7 @@ int main(int argc, char **argv)
     } else if (argc == 3 && STREQ(argv[2], "-p")) {
         devmap_partsep = true;
     } else if (argc != 2) {
-        fprintf(stderr, _("syntax: %s DEVICE [-g]|[-p]\n"), argv[0]);
+        fprintf(stderr, _("syntax: %1$s DEVICE [-g]|[-p]\n"), argv[0]);
         return 1;
     }
 
@@ -101,7 +101,7 @@ int main(int argc, char **argv)
     }
 
     if ((dev = ped_device_get(path)) == NULL) {
-        fprintf(stderr, _("unable to access device %s\n"), path);
+        fprintf(stderr, _("unable to access device %1$s\n"), path);
         return 2;
     }
 
@@ -115,7 +115,7 @@ int main(int argc, char **argv)
     }
 
     if ((disk = ped_disk_new(dev)) == NULL) {
-        fprintf(stderr, _("unable to access disk %s\n"), argv[1]);
+        fprintf(stderr, _("unable to access disk %1$s\n"), argv[1]);
         return 2;
     }
 
diff --git a/src/storage/storage_backend.c b/src/storage/storage_backend.c
index d6e02a47a8..ecc30ae710 100644
--- a/src/storage/storage_backend.c
+++ b/src/storage/storage_backend.c
@@ -149,7 +149,7 @@ virStorageBackendRegister(virStorageBackend *backend)
 
     if (virStorageBackendsCount >= VIR_STORAGE_BACKENDS_MAX) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Too many drivers, cannot register storage backend '%s'"),
+                       _("Too many drivers, cannot register storage backend '%1$s'"),
                        virStoragePoolTypeToString(backend->type));
         return -1;
     }
@@ -169,7 +169,7 @@ virStorageBackendForType(int type)
             return virStorageBackends[i];
 
     virReportError(VIR_ERR_INTERNAL_ERROR,
-                   _("missing backend for pool type %d (%s)"),
+                   _("missing backend for pool type %1$d (%2$s)"),
                    type, NULLSTR(virStoragePoolTypeToString(type)));
     return NULL;
 }
diff --git a/src/storage/storage_backend_disk.c b/src/storage/storage_backend_disk.c
index bf867491d0..7466f0e234 100644
--- a/src/storage/storage_backend_disk.c
+++ b/src/storage/storage_backend_disk.c
@@ -100,7 +100,7 @@ virStorageBackendDiskMakeDataVol(virStoragePoolObj *pool,
      */
     if (STRNEQ(vol->name, partname)) {
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("invalid partition name '%s', expected '%s'"),
+                       _("invalid partition name '%1$s', expected '%2$s'"),
                        vol->name, partname);
 
         /* Let's see if by chance parthelper created a name that won't be
@@ -436,7 +436,7 @@ virStorageBackendDiskRefreshPool(virStoragePoolObj *pool)
 
     if (!virFileExists(def->source.devices[0].path)) {
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("device path '%s' doesn't exist"),
+                       _("device path '%1$s' doesn't exist"),
                        def->source.devices[0].path);
         return -1;
     }
@@ -462,7 +462,7 @@ virStorageBackendDiskStartPool(virStoragePoolObj *pool)
 
     if (!virFileExists(path)) {
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("device path '%s' doesn't exist"), path);
+                       _("device path '%1$s' doesn't exist"), path);
         return -1;
     }
 
@@ -814,7 +814,7 @@ virStorageBackendDiskDeleteVol(virStoragePoolObj *pool,
 
     if (!vol->target.path) {
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("volume target path empty for source path '%s'"),
+                       _("volume target path empty for source path '%1$s'"),
                       src_path);
         return -1;
     }
@@ -829,7 +829,7 @@ virStorageBackendDiskDeleteVol(virStoragePoolObj *pool,
     } else {
         if (virFileResolveLink(vol->target.path, &devpath) < 0) {
             virReportSystemError(errno,
-                                 _("Couldn't read volume target path '%s'"),
+                                 _("Couldn't read volume target path '%1$s'"),
                                  vol->target.path);
             return -1;
         }
@@ -840,8 +840,8 @@ virStorageBackendDiskDeleteVol(virStoragePoolObj *pool,
 
     if (!STRPREFIX(dev_name, srcname)) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Volume path '%s' did not start with parent "
-                         "pool source device name."), dev_name);
+                       _("Volume path '%1$s' did not start with parent pool source device name."),
+                       dev_name);
         return -1;
     }
 
@@ -854,8 +854,8 @@ virStorageBackendDiskDeleteVol(virStoragePoolObj *pool,
 
     if (*part_num == 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("cannot parse partition number from target "
-                         "'%s'"), dev_name);
+                       _("cannot parse partition number from target '%1$s'"),
+                       dev_name);
         return -1;
     }
 
@@ -986,7 +986,7 @@ virStorageBackendDiskVolWipe(virStoragePoolObj *pool,
 
     /* Wiping an extended partition is not support */
     virReportError(VIR_ERR_NO_SUPPORT,
-                   _("cannot wipe extended partition '%s'"),
+                   _("cannot wipe extended partition '%1$s'"),
                    vol->target.path);
     return -1;
 }
diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c
index ea5bf7ef83..a80d228201 100644
--- a/src/storage/storage_backend_fs.c
+++ b/src/storage/storage_backend_fs.c
@@ -62,13 +62,13 @@ virStorageBackendFileSystemNetFindPoolSourcesFunc(char **const groups,
 
     if (!(name = strrchr(path, '/'))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("invalid netfs path (no /): %s"), path);
+                       _("invalid netfs path (no /): %1$s"), path);
         return -1;
     }
     name += 1;
     if (*name == '\0') {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("invalid netfs path (ends in /): %s"), path);
+                       _("invalid netfs path (ends in /): %1$s"), path);
         return -1;
     }
 
@@ -168,7 +168,7 @@ virStorageBackendFileSystemNetFindPoolSources(const char *srcSpec,
     /* If both fail, then we won't return an empty list - return an error */
     if (retNFS < 0 && retGluster == 0) {
         virReportError(VIR_ERR_OPERATION_FAILED,
-                       _("no storage pools were found on host '%s'"),
+                       _("no storage pools were found on host '%1$s'"),
                        state.host);
         goto cleanup;
     }
@@ -247,7 +247,7 @@ virStorageBackendFileSystemIsMounted(virStoragePoolObj *pool)
 
     if ((mtab = fopen(_PATH_MOUNTED, "r")) == NULL) {
         virReportSystemError(errno,
-                             _("cannot read mount list '%s'"),
+                             _("cannot read mount list '%1$s'"),
                              _PATH_MOUNTED);
         goto cleanup;
     }
@@ -409,8 +409,7 @@ virStorageBackendExecuteMKFS(const char *device,
 
     if (!mkfs) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("mkfs is not available on this platform: "
-                         "Failed to make filesystem of type '%s' on device '%s'"),
+                       _("mkfs is not available on this platform: Failed to make filesystem of type '%1$s' on device '%2$s'"),
                        format, device);
         return -1;
     }
@@ -448,7 +447,7 @@ virStorageBackendMakeFileSystem(virStoragePoolObj *pool,
 
     if (def->source.devices == NULL) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("No source device specified when formatting pool '%s'"),
+                       _("No source device specified when formatting pool '%1$s'"),
                        def->name);
         return -1;
     }
@@ -460,7 +459,7 @@ virStorageBackendMakeFileSystem(virStoragePoolObj *pool,
     virObjectUnlock(pool);
     if (!virFileExists(device)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("Source device does not exist when formatting pool '%s'"),
+                       _("Source device does not exist when formatting pool '%1$s'"),
                        def->name);
         goto error;
     }
diff --git a/src/storage/storage_backend_gluster.c b/src/storage/storage_backend_gluster.c
index bdf91e8bd5..c3b41df685 100644
--- a/src/storage/storage_backend_gluster.c
+++ b/src/storage/storage_backend_gluster.c
@@ -82,14 +82,14 @@ virStorageBackendGlusterOpen(virStoragePoolObj *pool)
      * subdirectory within the volume name.  */
     if (strchr(name, '/')) {
         virReportError(VIR_ERR_XML_ERROR,
-                       _("gluster pool name '%s' must not contain /"),
+                       _("gluster pool name '%1$s' must not contain /"),
                        name);
         return NULL;
     }
     if (dir) {
         if (*dir != '/') {
             virReportError(VIR_ERR_XML_ERROR,
-                           _("gluster pool path '%s' must start with /"),
+                           _("gluster pool path '%1$s' must start with /"),
                            dir);
             return NULL;
         }
@@ -113,7 +113,7 @@ virStorageBackendGlusterOpen(virStoragePoolObj *pool)
     /* Actually connect to glfs */
     if (!(ret->vol = glfs_new(ret->volname))) {
         virReportError(VIR_ERR_OPERATION_FAILED,
-                       _("failed to create glfs object for '%s'"), ret->volname);
+                       _("failed to create glfs object for '%1$s'"), ret->volname);
         goto error;
     }
 
@@ -122,13 +122,13 @@ virStorageBackendGlusterOpen(virStoragePoolObj *pool)
         glfs_init(ret->vol) < 0) {
         g_autofree char *uri = NULL;
         uri = virURIFormat(ret->uri);
-        virReportSystemError(errno, _("failed to connect to %s"), NULLSTR(uri));
+        virReportSystemError(errno, _("failed to connect to %1$s"), NULLSTR(uri));
         goto error;
     }
 
     if (glfs_chdir(ret->vol, ret->dir) < 0) {
         virReportSystemError(errno,
-                             _("failed to change to directory '%s' in '%s'"),
+                             _("failed to change to directory '%1$s' in '%2$s'"),
                              ret->dir, ret->volname);
         goto error;
     }
@@ -159,7 +159,7 @@ virStorageBackendGlusterRead(glfs_fd_t *fd,
             continue;
         if (r < 0) {
             VIR_FREE(*buf);
-            virReportSystemError(errno, _("unable to read '%s'"), name);
+            virReportSystemError(errno, _("unable to read '%1$s'"), name);
             return r;
         }
         if (r == 0)
@@ -234,7 +234,7 @@ virStorageBackendGlusterRefreshVol(virStorageBackendGlusterState *state,
             VIR_WARN("ignoring dangling symlink '%s'", name);
             ret = 0;
         } else {
-            virReportSystemError(errno, _("cannot stat '%s'"), name);
+            virReportSystemError(errno, _("cannot stat '%1$s'"), name);
         }
         return ret;
     }
@@ -259,7 +259,7 @@ virStorageBackendGlusterRefreshVol(virStorageBackendGlusterState *state,
      * of fifos, so there's nothing it would protect us from. */
     if (!(fd = glfs_open(state->vol, name, O_RDONLY | O_NOCTTY))) {
         /* A dangling symlink now implies a TOCTTOU race; report it.  */
-        virReportSystemError(errno, _("cannot open volume '%s'"), name);
+        virReportSystemError(errno, _("cannot open volume '%1$s'"), name);
         goto cleanup;
     }
 
@@ -334,7 +334,7 @@ virStorageBackendGlusterRefreshPool(virStoragePoolObj *pool)
      */
 
     if (!(dir = glfs_opendir(state->vol, state->dir))) {
-        virReportSystemError(errno, _("cannot open path '%s' in '%s'"),
+        virReportSystemError(errno, _("cannot open path '%1$s' in '%2$s'"),
                              state->dir, state->volname);
         goto cleanup;
     }
@@ -350,13 +350,13 @@ virStorageBackendGlusterRefreshPool(virStoragePoolObj *pool)
             goto cleanup;
     }
     if (errno) {
-        virReportSystemError(errno, _("failed to read directory '%s' in '%s'"),
+        virReportSystemError(errno, _("failed to read directory '%1$s' in '%2$s'"),
                              state->dir, state->volname);
         goto cleanup;
     }
 
     if (glfs_statvfs(state->vol, state->dir, &sb) < 0) {
-        virReportSystemError(errno, _("cannot statvfs path '%s' in '%s'"),
+        virReportSystemError(errno, _("cannot statvfs path '%1$s' in '%2$s'"),
                              state->dir, state->volname);
         goto cleanup;
     }
@@ -393,8 +393,7 @@ virStorageBackendGlusterVolDelete(virStoragePoolObj *pool,
     case VIR_STORAGE_VOL_PLOOP:
     case VIR_STORAGE_VOL_LAST:
         virReportError(VIR_ERR_NO_SUPPORT,
-                       _("removing of '%s' volumes is not supported "
-                         "by the gluster backend: %s"),
+                       _("removing of '%1$s' volumes is not supported by the gluster backend: %2$s"),
                        virStorageVolTypeToString(vol->type),
                        vol->target.path);
         goto cleanup;
@@ -407,7 +406,7 @@ virStorageBackendGlusterVolDelete(virStoragePoolObj *pool,
         if (glfs_unlink(state->vol, vol->name) < 0) {
             if (errno != ENOENT) {
                 virReportSystemError(errno,
-                                     _("cannot remove gluster volume file '%s'"),
+                                     _("cannot remove gluster volume file '%1$s'"),
                                      vol->target.path);
                 goto cleanup;
             }
@@ -421,7 +420,7 @@ virStorageBackendGlusterVolDelete(virStoragePoolObj *pool,
         if (glfs_rmdir(state->vol, vol->target.path) < 0) {
             if (errno != ENOENT) {
                 virReportSystemError(errno,
-                                     _("cannot remove gluster volume dir '%s'"),
+                                     _("cannot remove gluster volume dir '%1$s'"),
                                      vol->target.path);
                 goto cleanup;
             }
@@ -475,7 +474,7 @@ virStorageBackendGlusterFindPoolSources(const char *srcSpec,
 
     if (rc == 0) {
         virReportError(VIR_ERR_OPERATION_FAILED,
-                       _("no storage pools were found on host '%s'"),
+                       _("no storage pools were found on host '%1$s'"),
                        source->hosts[0].name);
         goto cleanup;
     }
diff --git a/src/storage/storage_backend_iscsi.c b/src/storage/storage_backend_iscsi.c
index 01900f6809..3f49bc8979 100644
--- a/src/storage/storage_backend_iscsi.c
+++ b/src/storage/storage_backend_iscsi.c
@@ -105,7 +105,7 @@ virStorageBackendISCSIGetHostNumber(const char *sysfs_path,
                 return 0;
             } else {
                 virReportError(VIR_ERR_INTERNAL_ERROR,
-                               _("Failed to parse target '%s'"), dirent->d_name);
+                               _("Failed to parse target '%1$s'"), dirent->d_name);
                 return -1;
             }
         }
@@ -113,8 +113,8 @@ virStorageBackendISCSIGetHostNumber(const char *sysfs_path,
 
     if (direrr == 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to get host number for iSCSI session "
-                         "with path '%s'"), sysfs_path);
+                       _("Failed to get host number for iSCSI session with path '%1$s'"),
+                       sysfs_path);
         return -1;
     }
 
diff --git a/src/storage/storage_backend_iscsi_direct.c b/src/storage/storage_backend_iscsi_direct.c
index ca906357c3..658a684e83 100644
--- a/src/storage/storage_backend_iscsi_direct.c
+++ b/src/storage/storage_backend_iscsi_direct.c
@@ -52,7 +52,7 @@ virISCSIDirectCreateContext(const char* initiator_iqn)
     iscsi = iscsi_create_context(initiator_iqn);
     if (!iscsi)
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to create iscsi context for %s"),
+                       _("Failed to create iscsi context for %1$s"),
                        initiator_iqn);
     return iscsi;
 }
@@ -124,7 +124,7 @@ virStorageBackendISCSIDirectSetAuth(struct iscsi_context *iscsi,
                                          authdef->username, secret_str) < 0) {
         virSecureErase(secret_str, secret_size);
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to set credential: %s"),
+                       _("Failed to set credential: %1$s"),
                        iscsi_get_error(iscsi));
         return -1;
     }
@@ -140,21 +140,21 @@ virISCSIDirectSetContext(struct iscsi_context *iscsi,
 {
     if (iscsi_init_transport(iscsi, TCP_TRANSPORT) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to init transport: %s"),
+                       _("Failed to init transport: %1$s"),
                        iscsi_get_error(iscsi));
         return -1;
     }
     if (session == ISCSI_SESSION_NORMAL) {
         if (iscsi_set_targetname(iscsi, target_name) < 0) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("Failed to set target name: %s"),
+                           _("Failed to set target name: %1$s"),
                            iscsi_get_error(iscsi));
             return -1;
         }
     }
     if (iscsi_set_session_type(iscsi, session) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to set session type: %s"),
+                       _("Failed to set session type: %1$s"),
                        iscsi_get_error(iscsi));
         return -1;
     }
@@ -167,13 +167,13 @@ virISCSIDirectConnect(struct iscsi_context *iscsi,
 {
     if (iscsi_connect_sync(iscsi, portal) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to connect: %s"),
+                       _("Failed to connect: %1$s"),
                        iscsi_get_error(iscsi));
         return -1;
     }
     if (iscsi_login_sync(iscsi) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to login: %s"),
+                       _("Failed to login: %1$s"),
                        iscsi_get_error(iscsi));
         return -1;
     }
@@ -195,7 +195,7 @@ virISCSIDirectTestUnitReady(struct iscsi_context *iscsi,
     do {
         if (!(task = iscsi_testunitready_sync(iscsi, lun))) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("Failed testunitready: %s"),
+                           _("Failed testunitready: %1$s"),
                            iscsi_get_error(iscsi));
             goto cleanup;
         }
@@ -210,7 +210,7 @@ virISCSIDirectTestUnitReady(struct iscsi_context *iscsi,
 
     if (task->status != SCSI_STATUS_GOOD) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed testunitready: %s"),
+                       _("Failed testunitready: %1$s"),
                        iscsi_get_error(iscsi));
         goto cleanup;
     }
@@ -250,14 +250,14 @@ virISCSIDirectGetVolumeCapacity(struct iscsi_context *iscsi,
     if (!(task = iscsi_inquiry_sync(iscsi, lun, 0, 0, 64)) ||
         task->status != SCSI_STATUS_GOOD) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to send inquiry command: %s"),
+                       _("Failed to send inquiry command: %1$s"),
                        iscsi_get_error(iscsi));
         goto cleanup;
     }
 
     if (!(inq = scsi_datain_unmarshall(task))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to unmarshall reply: %s"),
+                       _("Failed to unmarshall reply: %1$s"),
                        iscsi_get_error(iscsi));
         goto cleanup;
     }
@@ -270,14 +270,14 @@ virISCSIDirectGetVolumeCapacity(struct iscsi_context *iscsi,
         if (!(task = iscsi_readcapacity16_sync(iscsi, lun)) ||
             task->status != SCSI_STATUS_GOOD) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("Failed to get capacity of lun: %s"),
+                           _("Failed to get capacity of lun: %1$s"),
                            iscsi_get_error(iscsi));
             goto cleanup;
         }
 
         if (!(rc16 = scsi_datain_unmarshall(task))) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("Failed to unmarshall reply: %s"),
+                           _("Failed to unmarshall reply: %1$s"),
                            iscsi_get_error(iscsi));
             goto cleanup;
         }
@@ -343,7 +343,7 @@ virISCSIDirectReportLuns(virStoragePoolObj *pool,
 
     if (!(task = iscsi_reportluns_sync(iscsi, 0, 16))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to reportluns: %s"),
+                       _("Failed to reportluns: %1$s"),
                        iscsi_get_error(iscsi));
         goto cleanup;
     }
@@ -354,7 +354,7 @@ virISCSIDirectReportLuns(virStoragePoolObj *pool,
         scsi_free_scsi_task(task);
         if (!(task = iscsi_reportluns_sync(iscsi, 0, full_size))) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("Failed to reportluns: %s"),
+                           _("Failed to reportluns: %1$s"),
                            iscsi_get_error(iscsi));
             goto cleanup;
         }
@@ -362,7 +362,7 @@ virISCSIDirectReportLuns(virStoragePoolObj *pool,
 
     if (!(list = scsi_datain_unmarshall(task))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to unmarshall reportluns: %s"),
+                       _("Failed to unmarshall reportluns: %1$s"),
                        iscsi_get_error(iscsi));
         goto cleanup;
     }
@@ -390,13 +390,13 @@ virISCSIDirectDisconnect(struct iscsi_context *iscsi)
 
     if (iscsi_logout_sync(iscsi) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to logout: %s"),
+                       _("Failed to logout: %1$s"),
                        iscsi_get_error(iscsi));
         goto cleanup;
     }
     if (iscsi_disconnect(iscsi) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to disconnect: %s"),
+                       _("Failed to disconnect: %1$s"),
                        iscsi_get_error(iscsi));
         goto cleanup;
     }
@@ -420,7 +420,7 @@ virISCSIDirectUpdateTargets(struct iscsi_context *iscsi,
 
     if (!(addr = iscsi_discovery_sync(iscsi))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to discover session: %s"),
+                       _("Failed to discover session: %1$s"),
                        iscsi_get_error(iscsi));
         return -1;
     }
@@ -588,7 +588,7 @@ virStorageBackendISCSIDirectGetLun(virStorageVolDef *vol,
     if (!(name = STRSKIP(vol->name, VOL_NAME_PREFIX)) ||
         virStrToLong_i(name, NULL, 10, lun) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Invalid volume name %s"), vol->name);
+                       _("Invalid volume name %1$s"), vol->name);
         return -1;
     }
 
@@ -625,7 +625,7 @@ virStorageBackendISCSIDirectVolWipeZero(virStorageVolDef *vol,
         if (!task ||
             task->status != SCSI_STATUS_GOOD) {
             virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("failed to write to LUN %d: %s"),
+                           _("failed to write to LUN %1$d: %2$s"),
                            lun, iscsi_get_error(iscsi));
             scsi_free_scsi_task(task);
             return -1;
@@ -671,7 +671,7 @@ virStorageBackenISCSIDirectWipeVol(virStoragePoolObj *pool,
     case VIR_STORAGE_VOL_WIPE_ALG_PFITZNER33:
     case VIR_STORAGE_VOL_WIPE_ALG_RANDOM:
     case VIR_STORAGE_VOL_WIPE_ALG_LAST:
-        virReportError(VIR_ERR_INVALID_ARG, _("unsupported algorithm %d"),
+        virReportError(VIR_ERR_INVALID_ARG, _("unsupported algorithm %1$d"),
                        algorithm);
         goto cleanup;
     }
diff --git a/src/storage/storage_backend_logical.c b/src/storage/storage_backend_logical.c
index 3f27e63aeb..60dc68cf4b 100644
--- a/src/storage/storage_backend_logical.c
+++ b/src/storage/storage_backend_logical.c
@@ -171,7 +171,7 @@ virStorageBackendLogicalParseVolExtents(virStorageVolDef *vol,
     re = g_regex_new(regex, 0, 0, &err);
     if (!re) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to compile regex %s"), err->message);
+                       _("Failed to compile regex %1$s"), err->message);
         return -1;
     }
 
@@ -570,7 +570,7 @@ virStorageBackendLogicalMatchPoolSource(virStoragePoolObj *pool)
 
     if (i == sourceList.nsources) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                       _("cannot find logical volume group name '%s'"),
+                       _("cannot find logical volume group name '%1$s'"),
                        def->source.name);
         goto cleanup;
     }
@@ -600,8 +600,8 @@ virStorageBackendLogicalMatchPoolSource(virStoragePoolObj *pool)
      */
     if (matchcount == 0) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                       _("cannot find any matching source devices for logical "
-                         "volume group '%s'"), def->source.name);
+                       _("cannot find any matching source devices for logical volume group '%1$s'"),
+                       def->source.name);
         goto cleanup;
     }
 
@@ -894,7 +894,7 @@ virStorageBackendLogicalCreateVol(virStoragePoolObj *pool,
     if (geteuid() == 0) {
         if (fchown(fd, vol->target.perms->uid, vol->target.perms->gid) < 0) {
             virReportSystemError(errno,
-                                 _("cannot set file owner '%s'"),
+                                 _("cannot set file owner '%1$s'"),
                                  vol->target.path);
             goto error;
         }
@@ -903,14 +903,14 @@ virStorageBackendLogicalCreateVol(virStoragePoolObj *pool,
                     VIR_STORAGE_DEFAULT_VOL_PERM_MODE :
                     vol->target.perms->mode)) < 0) {
         virReportSystemError(errno,
-                             _("cannot set file mode '%s'"),
+                             _("cannot set file mode '%1$s'"),
                              vol->target.path);
         goto error;
     }
 
     if (VIR_CLOSE(fd) < 0) {
         virReportSystemError(errno,
-                             _("cannot close file '%s'"),
+                             _("cannot close file '%1$s'"),
                              vol->target.path);
         goto error;
     }
@@ -918,7 +918,7 @@ virStorageBackendLogicalCreateVol(virStoragePoolObj *pool,
     /* Fill in data about this new vol */
     if (virStorageBackendLogicalFindLVs(pool, vol) < 0) {
         virReportSystemError(errno,
-                             _("cannot find newly created volume '%s'"),
+                             _("cannot find newly created volume '%1$s'"),
                              vol->target.path);
         goto error;
     }
@@ -969,8 +969,7 @@ virStorageBackendLogicalVolWipe(virStoragePoolObj *pool,
      * unsupported.
      */
     virReportError(VIR_ERR_NO_SUPPORT,
-                   _("logical volume '%s' is sparse, volume wipe "
-                     "not supported"),
+                   _("logical volume '%1$s' is sparse, volume wipe not supported"),
                    vol->target.path);
     return -1;
 }
diff --git a/src/storage/storage_backend_mpath.c b/src/storage/storage_backend_mpath.c
index b33fe3846d..9fc3983c52 100644
--- a/src/storage/storage_backend_mpath.c
+++ b/src/storage/storage_backend_mpath.c
@@ -165,7 +165,7 @@ virStorageBackendCreateVols(virStoragePoolObj *pool,
 
             if (virStorageBackendGetMinorNumber(names->name, &minor) < 0) {
                 virReportError(VIR_ERR_INTERNAL_ERROR,
-                               _("Failed to get %s minor number"),
+                               _("Failed to get %1$s minor number"),
                                names->name);
                 return -1;
             }
diff --git a/src/storage/storage_backend_rbd.c b/src/storage/storage_backend_rbd.c
index 05b2c43f79..832f48df16 100644
--- a/src/storage/storage_backend_rbd.c
+++ b/src/storage/storage_backend_rbd.c
@@ -113,13 +113,13 @@ virStoragePoolDefRBDNamespaceParse(xmlXPathContextPtr ctxt,
         if (!(cmdopts->values[cmdopts->noptions] =
               virXMLPropString(nodes[i], "value"))) {
             virReportError(VIR_ERR_XML_ERROR,
-                           _("no rbd option value specified for name '%s'"),
+                           _("no rbd option value specified for name '%1$s'"),
                            cmdopts->names[cmdopts->noptions]);
             goto cleanup;
         }
         if (*cmdopts->values[cmdopts->noptions] == '\0') {
             virReportError(VIR_ERR_XML_ERROR,
-                           _("empty rbd option value specified for name '%s'"),
+                           _("empty rbd option value specified for name '%1$s'"),
                            cmdopts->names[cmdopts->noptions]);
             goto cleanup;
         }
@@ -167,7 +167,7 @@ virStorageBackendRBDRADOSConfSetQuiet(rados_t cluster,
 {
     if (rados_conf_set(cluster, option, value) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("failed to set RADOS option: %s"),
+                       _("failed to set RADOS option: %1$s"),
                        option);
         return -1;
     }
@@ -337,7 +337,7 @@ virStorageBackendRBDOpenRADOSConn(virStorageBackendRBDState *ptr,
 
     ptr->starttime = time(0);
     if (rados_connect(ptr->cluster) < 0) {
-        virReportSystemError(errno, _("failed to connect to the RADOS monitor on: %s"),
+        virReportSystemError(errno, _("failed to connect to the RADOS monitor on: %1$s"),
                              mon_buff);
         goto cleanup;
     }
@@ -356,7 +356,7 @@ virStorageBackendRBDOpenIoCTX(virStorageBackendRBDState *ptr,
     virStoragePoolDef *def = virStoragePoolObjGetDef(pool);
     int rc = rados_ioctx_create(ptr->cluster, def->source.name, &ptr->ioctx);
     if (rc < 0) {
-        virReportSystemError(errno, _("failed to create the RBD IoCTX. Does the pool '%s' exist?"),
+        virReportSystemError(errno, _("failed to create the RBD IoCTX. Does the pool '%1$s' exist?"),
                              def->source.name);
     }
     return rc;
@@ -422,8 +422,9 @@ volStorageBackendRBDGetFeatures(rbd_image_t image,
     int rc;
 
     if ((rc = rbd_get_features(image, features)) < 0) {
-        virReportSystemError(errno, _("failed to get the features of RBD image "
-                                 "%s"), volname);
+        virReportSystemError(errno,
+                             _("failed to get the features of RBD image %1$s"),
+                             volname);
         return rc;
     }
 
@@ -440,7 +441,7 @@ volStorageBackendRBDGetFlags(rbd_image_t image,
 
     if ((rc = rbd_get_flags(image, flags)) < 0) {
         virReportSystemError(errno,
-                             _("failed to get the flags of RBD image %s"),
+                             _("failed to get the flags of RBD image %1$s"),
                              volname);
         return rc;
     }
@@ -479,7 +480,7 @@ virStorageBackendRBDSetAllocation(virStorageVolDef *vol,
     if ((rc = rbd_diff_iterate2(image, NULL, 0, info->size, 0, 1,
                                &virStorageBackendRBDRefreshVolInfoCb,
                                &allocation)) < 0) {
-        virReportSystemError(errno, _("failed to iterate RBD image '%s'"),
+        virReportSystemError(errno, _("failed to iterate RBD image '%1$s'"),
                              vol->name);
         return rc;
     }
@@ -531,13 +532,13 @@ volStorageBackendRBDRefreshVolInfo(virStorageVolDef *vol,
     uint64_t flags;
 
     if ((ret = rbd_open_read_only(ptr->ioctx, vol->name, &image, NULL)) < 0) {
-        virReportSystemError(errno, _("failed to open the RBD image '%s'"),
+        virReportSystemError(errno, _("failed to open the RBD image '%1$s'"),
                              vol->name);
         goto cleanup;
     }
 
     if ((ret = rbd_stat(image, &info, sizeof(info))) < 0) {
-        virReportSystemError(errno, _("failed to stat the RBD image '%s'"),
+        virReportSystemError(errno, _("failed to stat the RBD image '%1$s'"),
                              vol->name);
         goto cleanup;
     }
@@ -680,7 +681,7 @@ virStorageBackendRBDRefreshPool(virStoragePoolObj *pool)
     }
 
     if (rados_ioctx_pool_stat(ptr->ioctx, &poolstat) < 0) {
-        virReportSystemError(errno, _("failed to stat the RADOS pool '%s'"),
+        virReportSystemError(errno, _("failed to stat the RADOS pool '%1$s'"),
                              def->source.name);
         goto cleanup;
     }
@@ -750,7 +751,7 @@ virStorageBackendRBDCleanupSnapshots(rados_ioctx_t ioctx,
     g_autofree rbd_snap_info_t *snaps = NULL;
 
     if (rbd_open(ioctx, vol->name, &image, NULL) < 0) {
-       virReportSystemError(errno, _("failed to open the RBD image '%s'"),
+       virReportSystemError(errno, _("failed to open the RBD image '%1$s'"),
                             vol->name);
        goto cleanup;
     }
@@ -769,7 +770,7 @@ virStorageBackendRBDCleanupSnapshots(rados_ioctx_t ioctx,
 
     for (i = 0; i < snap_count; i++) {
         if (rbd_snap_is_protected(image, snaps[i].name, &protected) < 0) {
-            virReportSystemError(errno, _("failed to verify if snapshot '%s/%s@%s' is protected"),
+            virReportSystemError(errno, _("failed to verify if snapshot '%1$s/%2$s@%3$s' is protected"),
                                  source->name, vol->name,
                                  snaps[i].name);
             goto cleanup;
@@ -781,7 +782,7 @@ virStorageBackendRBDCleanupSnapshots(rados_ioctx_t ioctx,
                       snaps[i].name);
 
             if (rbd_snap_unprotect(image, snaps[i].name) < 0) {
-                virReportSystemError(errno, _("failed to unprotect snapshot '%s/%s@%s'"),
+                virReportSystemError(errno, _("failed to unprotect snapshot '%1$s/%2$s@%3$s'"),
                                      source->name, vol->name,
                                      snaps[i].name);
                 goto cleanup;
@@ -792,7 +793,7 @@ virStorageBackendRBDCleanupSnapshots(rados_ioctx_t ioctx,
                   vol->name, snaps[i].name);
 
         if (rbd_snap_remove(image, snaps[i].name) < 0) {
-            virReportSystemError(errno, _("failed to remove snapshot '%s/%s@%s'"),
+            virReportSystemError(errno, _("failed to remove snapshot '%1$s/%2$s@%3$s'"),
                                  source->name, vol->name,
                                  snaps[i].name);
             goto cleanup;
@@ -841,7 +842,7 @@ virStorageBackendRBDDeleteVol(virStoragePoolObj *pool,
 
     rc = rbd_remove(ptr->ioctx, vol->name);
     if (rc < 0 && (-rc) != ENOENT) {
-        virReportSystemError(errno, _("failed to remove volume '%s/%s'"),
+        virReportSystemError(errno, _("failed to remove volume '%1$s/%2$s'"),
                              def->source.name, vol->name);
         goto cleanup;
     }
@@ -921,7 +922,7 @@ virStorageBackendRBDBuildVol(virStoragePoolObj *pool,
 
     if (virStorageBackendRBDCreateImage(ptr->ioctx, vol->name,
                                        vol->target.capacity) < 0) {
-        virReportSystemError(errno, _("failed to create volume '%s/%s'"),
+        virReportSystemError(errno, _("failed to create volume '%1$s/%2$s'"),
                              def->source.name, vol->name);
         goto cleanup;
     }
@@ -943,15 +944,14 @@ virStorageBackendRBDImageInfo(rbd_image_t image,
     uint8_t oldformat;
 
     if (rbd_get_old_format(image, &oldformat) < 0) {
-        virReportSystemError(errno, _("failed to get the format of RBD image %s"),
+        virReportSystemError(errno, _("failed to get the format of RBD image %1$s"),
                              volname);
         return -1;
     }
 
     if (oldformat != 0) {
         virReportError(VIR_ERR_OPERATION_UNSUPPORTED,
-                       _("RBD image %s is old format. Does not support "
-                         "extended features and striping"),
+                       _("RBD image %1$s is old format. Does not support extended features and striping"),
                        volname);
         return -1;
     }
@@ -960,13 +960,13 @@ virStorageBackendRBDImageInfo(rbd_image_t image,
         return -1;
 
     if (rbd_get_stripe_unit(image, stripe_unit) < 0) {
-        virReportSystemError(errno, _("failed to get the stripe unit of RBD image %s"),
+        virReportSystemError(errno, _("failed to get the stripe unit of RBD image %1$s"),
                              volname);
         return -1;
     }
 
     if (rbd_get_stripe_count(image, stripe_count) < 0) {
-        virReportSystemError(errno, _("failed to get the stripe count of RBD image %s"),
+        virReportSystemError(errno, _("failed to get the stripe count of RBD image %1$s"),
                              volname);
         return -1;
     }
@@ -1007,7 +1007,7 @@ virStorageBackendRBDSnapshotFindNoDiff(rbd_image_t image,
     g_autofree rbd_snap_info_t *snaps = NULL;
 
     if (rbd_stat(image, &info, sizeof(info)) < 0) {
-        virReportSystemError(errno, _("failed to stat the RBD image %s"),
+        virReportSystemError(errno, _("failed to stat the RBD image %1$s"),
                              imgname);
         goto cleanup;
     }
@@ -1050,7 +1050,7 @@ virStorageBackendRBDSnapshotFindNoDiff(rbd_image_t image,
         if (rbd_diff_iterate(image, snaps[i].name, 0, info.size,
                             virStorageBackendRBDIterateCb, (void *)&diff) < 0) {
 #endif
-            virReportSystemError(errno, _("failed to iterate RBD snapshot %s@%s"),
+            virReportSystemError(errno, _("failed to iterate RBD snapshot %1$s@%2$s"),
                                  imgname, snaps[i].name);
             goto cleanup;
         }
@@ -1085,7 +1085,7 @@ virStorageBackendRBDSnapshotCreate(rbd_image_t image,
     VIR_DEBUG("Creating RBD snapshot %s@%s", imgname, snapname);
 
     if (rbd_snap_create(image, snapname) < 0) {
-        virReportSystemError(errno, _("failed to create RBD snapshot %s@%s"),
+        virReportSystemError(errno, _("failed to create RBD snapshot %1$s@%2$s"),
                                    imgname, snapname);
         return -1;
     }
@@ -1103,8 +1103,9 @@ virStorageBackendRBDSnapshotProtect(rbd_image_t image,
     VIR_DEBUG("Querying if RBD snapshot %s@%s is protected", imgname, snapname);
 
     if (rbd_snap_is_protected(image, snapname, &protected) < 0) {
-        virReportSystemError(errno, _("failed to verify if RBD snapshot %s@%s "
-                                   "is protected"), imgname, snapname);
+        virReportSystemError(errno,
+                             _("failed to verify if RBD snapshot %1$s@%2$s is protected"),
+                             imgname, snapname);
         return -1;
     }
 
@@ -1113,7 +1114,7 @@ virStorageBackendRBDSnapshotProtect(rbd_image_t image,
                   imgname, snapname);
 
         if (rbd_snap_protect(image, snapname) < 0) {
-            virReportSystemError(errno, _("failed to protect RBD snapshot %s@%s"),
+            virReportSystemError(errno, _("failed to protect RBD snapshot %1$s@%2$s"),
                                        imgname, snapname);
             return -1;
         }
@@ -1139,7 +1140,7 @@ virStorageBackendRBDCloneImage(rados_ioctx_t io,
     g_autofree char *snapname_buff = NULL;
 
     if (rbd_open(io, origvol, &image, NULL) < 0) {
-        virReportSystemError(errno, _("failed to open the RBD image %s"),
+        virReportSystemError(errno, _("failed to open the RBD image %1$s"),
                              origvol);
         goto cleanup;
     }
@@ -1193,7 +1194,7 @@ virStorageBackendRBDCloneImage(rados_ioctx_t io,
 
     if (rbd_clone2(io, origvol, snapname_buff, io, newvol, features,
                    &order, stripe_unit, stripe_count) < 0) {
-        virReportSystemError(errno, _("failed to clone RBD volume %s to %s"),
+        virReportSystemError(errno, _("failed to clone RBD volume %1$s to %2$s"),
                              origvol, newvol);
         goto cleanup;
     }
@@ -1274,13 +1275,13 @@ virStorageBackendRBDResizeVol(virStoragePoolObj *pool,
         goto cleanup;
 
     if (rbd_open(ptr->ioctx, vol->name, &image, NULL) < 0) {
-       virReportSystemError(errno, _("failed to open the RBD image '%s'"),
+       virReportSystemError(errno, _("failed to open the RBD image '%1$s'"),
                             vol->name);
        goto cleanup;
     }
 
     if (rbd_resize(image, capacity) < 0) {
-        virReportSystemError(errno, _("failed to resize the RBD image '%s'"),
+        virReportSystemError(errno, _("failed to resize the RBD image '%1$s'"),
                              vol->name);
         goto cleanup;
     }
@@ -1310,9 +1311,8 @@ virStorageBackendRBDVolWipeZero(rbd_image_t image,
         length = MIN((info->size - offset), (info->obj_size * stripe_count));
 
         if (rbd_write(image, offset, length, writebuf) < 0) {
-            virReportSystemError(errno, _("writing %llu bytes failed on "
-                                       "RBD image %s at offset %llu"),
-                                       length, imgname, offset);
+            virReportSystemError(errno, _("writing %1$llu bytes failed on RBD image %2$s at offset %3$llu"),
+                                 length, imgname, offset);
             return -1;
         }
 
@@ -1340,9 +1340,8 @@ virStorageBackendRBDVolWipeDiscard(rbd_image_t image,
         length = MIN((info->size - offset), (info->obj_size * stripe_count));
 
         if (rbd_discard(image, offset, length) < 0) {
-            virReportSystemError(errno, _("discarding %llu bytes failed on "
-                                       "RBD image %s at offset %llu"),
-                                     length, imgname, offset);
+            virReportSystemError(errno, _("discarding %1$llu bytes failed on RBD image %2$s at offset %3$llu"),
+                                 length, imgname, offset);
             return -1;
         }
 
@@ -1381,19 +1380,19 @@ virStorageBackendRBDVolWipe(virStoragePoolObj *pool,
         goto cleanup;
 
     if (rbd_open(ptr->ioctx, vol->name, &image, NULL) < 0) {
-        virReportSystemError(errno, _("failed to open the RBD image %s"),
+        virReportSystemError(errno, _("failed to open the RBD image %1$s"),
                              vol->name);
         goto cleanup;
     }
 
     if (rbd_stat(image, &info, sizeof(info)) < 0) {
-        virReportSystemError(errno, _("failed to stat the RBD image %s"),
+        virReportSystemError(errno, _("failed to stat the RBD image %1$s"),
                              vol->name);
         goto cleanup;
     }
 
     if (rbd_get_stripe_count(image, &stripe_count) < 0) {
-        virReportSystemError(errno, _("failed to get stripe count of RBD image %s"),
+        virReportSystemError(errno, _("failed to get stripe count of RBD image %1$s"),
                              vol->name);
         goto cleanup;
     }
@@ -1419,13 +1418,13 @@ virStorageBackendRBDVolWipe(virStoragePoolObj *pool,
     case VIR_STORAGE_VOL_WIPE_ALG_PFITZNER33:
     case VIR_STORAGE_VOL_WIPE_ALG_RANDOM:
     case VIR_STORAGE_VOL_WIPE_ALG_LAST:
-        virReportError(VIR_ERR_INVALID_ARG, _("unsupported algorithm %d"),
+        virReportError(VIR_ERR_INVALID_ARG, _("unsupported algorithm %1$d"),
                        algorithm);
         goto cleanup;
     }
 
     if (rc < 0) {
-        virReportSystemError(errno, _("failed to wipe RBD image %s"),
+        virReportSystemError(errno, _("failed to wipe RBD image %1$s"),
                              vol->name);
         goto cleanup;
     }
diff --git a/src/storage/storage_backend_scsi.c b/src/storage/storage_backend_scsi.c
index afc98960a8..3b53476bcd 100644
--- a/src/storage/storage_backend_scsi.c
+++ b/src/storage/storage_backend_scsi.c
@@ -63,7 +63,7 @@ virStorageBackendSCSITriggerRescan(uint32_t host)
 
     if (fd < 0) {
         virReportSystemError(errno,
-                             _("Could not open '%s' to trigger host scan"),
+                             _("Could not open '%1$s' to trigger host scan"),
                              path);
         return -1;
     }
@@ -72,7 +72,7 @@ virStorageBackendSCSITriggerRescan(uint32_t host)
                   LINUX_SYSFS_SCSI_HOST_SCAN_STRING,
                   sizeof(LINUX_SYSFS_SCSI_HOST_SCAN_STRING)) < 0) {
         virReportSystemError(errno,
-                             _("Write to '%s' to trigger host scan failed"),
+                             _("Write to '%1$s' to trigger host scan failed"),
                              path);
         return -1;
     }
@@ -184,8 +184,8 @@ getAdapterName(virStorageAdapter *adapter)
 
         if (!(name = virVHBAGetHostByWWN(NULL, fchost->wwnn, fchost->wwpn))) {
             virReportError(VIR_ERR_XML_ERROR,
-                           _("Failed to find SCSI host with wwnn='%s', "
-                             "wwpn='%s'"), fchost->wwnn, fchost->wwpn);
+                           _("Failed to find SCSI host with wwnn='%1$s', wwpn='%2$s'"),
+                           fchost->wwnn, fchost->wwpn);
         }
     }
 
@@ -215,7 +215,7 @@ checkName(const char *name)
         return true;
 
     virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                   _("the wwnn/wwpn for '%s' are assigned to an HBA"), name);
+                   _("the wwnn/wwpn for '%1$s' are assigned to an HBA"), name);
     return false;
 }
 
@@ -242,14 +242,14 @@ checkParent(const char *name,
 
     if (virSCSIHostGetNumber(parent_name, &host_num) < 0) {
         virReportError(VIR_ERR_XML_ERROR,
-                       _("parent '%s' is not properly formatted"),
+                       _("parent '%1$s' is not properly formatted"),
                        parent_name);
         goto cleanup;
     }
 
     if (!virVHBAPathExists(NULL, host_num)) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                       _("parent '%s' is not an fc_host for the wwnn/wwpn"),
+                       _("parent '%1$s' is not an fc_host for the wwnn/wwpn"),
                        parent_name);
         goto cleanup;
     }
@@ -261,8 +261,7 @@ checkParent(const char *name,
 
     if (STRNEQ(parent_name, vhba_parent)) {
         virReportError(VIR_ERR_XML_ERROR,
-                       _("Parent attribute '%s' does not match parent '%s' "
-                         "determined for the '%s' wwnn/wwpn lookup."),
+                       _("Parent attribute '%1$s' does not match parent '%2$s' determined for the '%3$s' wwnn/wwpn lookup."),
                        parent_name, vhba_parent, name);
         goto cleanup;
     }
diff --git a/src/storage/storage_backend_vstorage.c b/src/storage/storage_backend_vstorage.c
index 21e538f2a2..ced4823382 100644
--- a/src/storage/storage_backend_vstorage.c
+++ b/src/storage/storage_backend_vstorage.c
@@ -94,7 +94,7 @@ virStorageBackendVzIsMounted(virStoragePoolObj *pool)
 
     if ((mtab = fopen(_PATH_MOUNTED, "r")) == NULL) {
         virReportSystemError(errno,
-                             _("cannot read mount list '%s'"),
+                             _("cannot read mount list '%1$s'"),
                              _PATH_MOUNTED);
         goto cleanup;
     }
diff --git a/src/storage/storage_driver.c b/src/storage/storage_driver.c
index 308704f1c8..c19abdd2f3 100644
--- a/src/storage/storage_driver.c
+++ b/src/storage/storage_driver.c
@@ -126,7 +126,7 @@ storagePoolUpdateStateCallback(virStoragePoolObj *obj,
 
     if ((backend = virStorageBackendForType(def->type)) == NULL) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Missing backend %d"), def->type);
+                       _("Missing backend %1$d"), def->type);
         return;
     }
 
@@ -138,7 +138,7 @@ storagePoolUpdateStateCallback(virStoragePoolObj *obj,
     if (backend->checkPool &&
         backend->checkPool(obj, &active) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to initialize storage pool '%s': %s"),
+                       _("Failed to initialize storage pool '%1$s': %2$s"),
                        def->name, virGetLastErrorMessage());
         unlink(stateFile);
         active = false;
@@ -153,7 +153,7 @@ storagePoolUpdateStateCallback(virStoragePoolObj *obj,
     if (active &&
         storagePoolRefreshImpl(backend, obj, stateFile) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to restart storage pool '%s': %s"),
+                       _("Failed to restart storage pool '%1$s': %2$s"),
                        def->name, virGetLastErrorMessage());
         active = false;
     }
@@ -200,7 +200,7 @@ storageDriverAutostartCallback(virStoragePoolObj *obj,
     if (backend->startPool &&
         backend->startPool(obj) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to autostart storage pool '%s': %s"),
+                       _("Failed to autostart storage pool '%1$s': %2$s"),
                        def->name, virGetLastErrorMessage());
         goto cleanup;
     }
@@ -211,7 +211,7 @@ storageDriverAutostartCallback(virStoragePoolObj *obj,
         virStoragePoolSaveState(stateFile, def) < 0 ||
         storagePoolRefreshImpl(backend, obj, stateFile) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to autostart storage pool '%s': %s"),
+                       _("Failed to autostart storage pool '%1$s': %2$s"),
                        def->name, virGetLastErrorMessage());
     } else {
         virStoragePoolObjSetActive(obj, true);
@@ -283,7 +283,7 @@ storageStateInitialize(bool privileged,
 
     if (g_mkdir_with_parents(driver->stateDir, 0777) < 0) {
         virReportError(errno,
-                       _("cannot create directory %s"),
+                       _("cannot create directory %1$s"),
                        driver->stateDir);
         goto error;
     }
@@ -440,11 +440,11 @@ storagePoolObjFindByUUID(const unsigned char *uuid,
         virUUIDFormat(uuid, uuidstr);
         if (name)
             virReportError(VIR_ERR_NO_STORAGE_POOL,
-                           _("no storage pool with matching uuid '%s' (%s)"),
+                           _("no storage pool with matching uuid '%1$s' (%2$s)"),
                            uuidstr, name);
         else
             virReportError(VIR_ERR_NO_STORAGE_POOL,
-                           _("no storage pool with matching uuid '%s'"),
+                           _("no storage pool with matching uuid '%1$s'"),
                            uuidstr);
     }
 
@@ -466,7 +466,7 @@ storagePoolObjFindByName(const char *name)
 
     if (!(obj = virStoragePoolObjFindByName(driver->pools, name)))
         virReportError(VIR_ERR_NO_STORAGE_POOL,
-                       _("no storage pool with matching name '%s'"), name);
+                       _("no storage pool with matching name '%1$s'"), name);
     return obj;
 }
 
@@ -614,7 +614,7 @@ storageConnectFindStoragePoolSources(virConnectPtr conn,
     backend_type = virStoragePoolTypeFromString(type);
     if (backend_type < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unknown storage pool type %s"), type);
+                       _("unknown storage pool type %1$s"), type);
         return NULL;
     }
 
@@ -624,8 +624,8 @@ storageConnectFindStoragePoolSources(virConnectPtr conn,
 
     if (!backend->findPoolSources) {
         virReportError(VIR_ERR_NO_SUPPORT,
-                       _("pool type '%s' does not support source "
-                         "discovery"), type);
+                       _("pool type '%1$s' does not support source discovery"),
+                       type);
         return NULL;
     }
 
@@ -855,21 +855,21 @@ storagePoolUndefine(virStoragePoolPtr pool)
 
     if (virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is still active"),
+                       _("storage pool '%1$s' is still active"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjIsStarting(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is starting up"),
+                       _("storage pool '%1$s' is starting up"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjGetAsyncjobs(obj) > 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("pool '%s' has asynchronous jobs running."),
+                       _("pool '%1$s' has asynchronous jobs running."),
                        def->name);
         goto cleanup;
     }
@@ -880,7 +880,7 @@ storagePoolUndefine(virStoragePoolPtr pool)
 
     if (autostartLink && unlink(autostartLink) < 0 &&
         errno != ENOENT && errno != ENOTDIR) {
-        VIR_ERROR(_("Failed to delete autostart link '%s': %s"),
+        VIR_ERROR(_("Failed to delete autostart link '%1$s': %2$s"),
                   autostartLink, g_strerror(errno));
     }
 
@@ -931,14 +931,14 @@ storagePoolCreate(virStoragePoolPtr pool,
 
     if (virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is already active"),
+                       _("storage pool '%1$s' is already active"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjIsStarting(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is starting up"),
+                       _("storage pool '%1$s' is starting up"),
                        def->name);
         goto cleanup;
     }
@@ -1015,14 +1015,14 @@ storagePoolBuild(virStoragePoolPtr pool,
 
     if (virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is already active"),
+                       _("storage pool '%1$s' is already active"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjIsStarting(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is starting up"),
+                       _("storage pool '%1$s' is starting up"),
                        def->name);
         goto cleanup;
     }
@@ -1077,20 +1077,20 @@ storagePoolDestroy(virStoragePoolPtr pool)
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjIsStarting(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is starting up"),
+                       _("storage pool '%1$s' is starting up"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjGetAsyncjobs(obj) > 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("pool '%s' has asynchronous jobs running."),
+                       _("pool '%1$s' has asynchronous jobs running."),
                        def->name);
         goto cleanup;
     }
@@ -1148,21 +1148,21 @@ storagePoolDelete(virStoragePoolPtr pool,
 
     if (virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is still active"),
+                       _("storage pool '%1$s' is still active"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjIsStarting(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is starting up"),
+                       _("storage pool '%1$s' is starting up"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjGetAsyncjobs(obj) > 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("pool '%s' has asynchronous jobs running."),
+                       _("pool '%1$s' has asynchronous jobs running."),
                        def->name);
         goto cleanup;
     }
@@ -1219,20 +1219,20 @@ storagePoolRefresh(virStoragePoolPtr pool,
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjIsStarting(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is starting up"),
+                       _("storage pool '%1$s' is starting up"),
                        def->name);
         goto cleanup;
     }
 
     if (virStoragePoolObjGetAsyncjobs(obj) > 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("pool '%s' has asynchronous jobs running."),
+                       _("pool '%1$s' has asynchronous jobs running."),
                        def->name);
         goto cleanup;
     }
@@ -1381,14 +1381,14 @@ storagePoolSetAutostart(virStoragePoolPtr pool,
         if (new_autostart) {
             if (g_mkdir_with_parents(driver->autostartDir, 0777) < 0) {
                 virReportSystemError(errno,
-                                     _("cannot create autostart directory %s"),
+                                     _("cannot create autostart directory %1$s"),
                                      driver->autostartDir);
                 goto cleanup;
             }
 
             if (symlink(configFile, autostartLink) < 0) {
                 virReportSystemError(errno,
-                                     _("Failed to create symlink '%s' to '%s'"),
+                                     _("Failed to create symlink '%1$s' to '%2$s'"),
                                      autostartLink, configFile);
                 goto cleanup;
             }
@@ -1396,7 +1396,7 @@ storagePoolSetAutostart(virStoragePoolPtr pool,
             if (autostartLink && unlink(autostartLink) < 0 &&
                 errno != ENOENT && errno != ENOTDIR) {
                 virReportSystemError(errno,
-                                     _("Failed to delete symlink '%s'"),
+                                     _("Failed to delete symlink '%1$s'"),
                                      autostartLink);
                 goto cleanup;
             }
@@ -1428,7 +1428,7 @@ storagePoolNumOfVolumes(virStoragePoolPtr pool)
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
@@ -1459,7 +1459,7 @@ storagePoolListVolumes(virStoragePoolPtr pool,
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
@@ -1492,7 +1492,7 @@ storagePoolListAllVolumes(virStoragePoolPtr pool,
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
@@ -1521,7 +1521,7 @@ storageVolLookupByName(virStoragePoolPtr pool,
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
@@ -1529,7 +1529,7 @@ storageVolLookupByName(virStoragePoolPtr pool,
 
     if (!voldef) {
         virReportError(VIR_ERR_NO_STORAGE_VOL,
-                       _("no storage vol with matching name '%s'"),
+                       _("no storage vol with matching name '%1$s'"),
                        name);
         goto cleanup;
     }
@@ -1590,7 +1590,7 @@ storageVolLookupByKey(virConnectPtr conn,
 
     if (!vol)
         virReportError(VIR_ERR_NO_STORAGE_VOL,
-                       _("no storage vol with matching key %s"), key);
+                       _("no storage vol with matching key %1$s"), key);
 
     return vol;
 }
@@ -1675,10 +1675,10 @@ storageVolLookupByPath(virConnectPtr conn,
     if (!vol) {
         if (STREQ(path, data.cleanpath)) {
             virReportError(VIR_ERR_NO_STORAGE_VOL,
-                           _("no storage vol with matching path '%s'"), path);
+                           _("no storage vol with matching path '%1$s'"), path);
         } else {
             virReportError(VIR_ERR_NO_STORAGE_VOL,
-                           _("no storage vol with matching path '%s' (%s)"),
+                           _("no storage vol with matching path '%1$s' (%2$s)"),
                            path, data.cleanpath);
         }
     }
@@ -1732,11 +1732,11 @@ storagePoolLookupByTargetPath(virConnectPtr conn,
     if (!pool) {
         if (STREQ(path, cleanpath)) {
             virReportError(VIR_ERR_NO_STORAGE_POOL,
-                           _("no storage pool with matching target path '%s'"),
+                           _("no storage pool with matching target path '%1$s'"),
                            path);
         } else {
             virReportError(VIR_ERR_NO_STORAGE_POOL,
-                           _("no storage pool with matching target path '%s' (%s)"),
+                           _("no storage pool with matching target path '%1$s' (%2$s)"),
                            path, cleanpath);
         }
     }
@@ -1799,14 +1799,14 @@ virStorageVolDefFromVol(virStorageVolPtr vol,
 
     if (!virStoragePoolObjIsActive(*obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"),
+                       _("storage pool '%1$s' is not active"),
                        def->name);
         goto error;
     }
 
     if (!(voldef = virStorageVolDefFindByName(*obj, vol->name))) {
         virReportError(VIR_ERR_NO_STORAGE_VOL,
-                       _("no storage vol with matching name '%s'"),
+                       _("no storage vol with matching name '%1$s'"),
                        vol->name);
         goto error;
     }
@@ -1843,14 +1843,14 @@ storageVolDelete(virStorageVolPtr vol,
 
     if (voldef->in_use) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still in use."),
+                       _("volume '%1$s' is still in use."),
                        voldef->name);
         goto cleanup;
     }
 
     if (voldef->building) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still being allocated."),
+                       _("volume '%1$s' is still being allocated."),
                        voldef->name);
         goto cleanup;
     }
@@ -1890,7 +1890,7 @@ storageVolCreateXML(virStoragePoolPtr pool,
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
@@ -1913,7 +1913,7 @@ storageVolCreateXML(virStoragePoolPtr pool,
 
     if (virStorageVolDefFindByName(obj, voldef->name)) {
         virReportError(VIR_ERR_STORAGE_VOL_EXIST,
-                       _("'%s'"), voldef->name);
+                       _("'%1$s'"), voldef->name);
         goto cleanup;
     }
 
@@ -2036,7 +2036,7 @@ storageVolCreateXMLFrom(virStoragePoolPtr pool,
         char uuidstr[VIR_UUID_STRING_BUFLEN];
         virUUIDFormat(pool->uuid, uuidstr);
         virReportError(VIR_ERR_NO_STORAGE_POOL,
-                       _("no storage pool with matching uuid '%s' (%s)"),
+                       _("no storage pool with matching uuid '%1$s' (%2$s)"),
                        uuidstr, pool->name);
         goto cleanup;
     }
@@ -2044,21 +2044,21 @@ storageVolCreateXMLFrom(virStoragePoolPtr pool,
 
     if (STRNEQ(pool->name, volsrc->pool) && !objsrc) {
         virReportError(VIR_ERR_NO_STORAGE_POOL,
-                       _("no storage pool with matching name '%s'"),
+                       _("no storage pool with matching name '%1$s'"),
                        volsrc->pool);
         goto cleanup;
     }
 
     if (!virStoragePoolObjIsActive(obj)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"), def->name);
+                       _("storage pool '%1$s' is not active"), def->name);
         goto cleanup;
     }
 
     if (objsrc && !virStoragePoolObjIsActive(objsrc)) {
         virStoragePoolDef *objsrcdef = virStoragePoolObjGetDef(objsrc);
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("storage pool '%s' is not active"),
+                       _("storage pool '%1$s' is not active"),
                        objsrcdef->name);
         goto cleanup;
     }
@@ -2070,7 +2070,7 @@ storageVolCreateXMLFrom(virStoragePoolPtr pool,
                                            objsrc : obj, volsrc->name);
     if (!voldefsrc) {
         virReportError(VIR_ERR_NO_STORAGE_VOL,
-                       _("no storage vol with matching name '%s'"),
+                       _("no storage vol with matching name '%1$s'"),
                        volsrc->name);
         goto cleanup;
     }
@@ -2084,7 +2084,7 @@ storageVolCreateXMLFrom(virStoragePoolPtr pool,
 
     if (virStorageVolDefFindByName(obj, voldef->name)) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("storage volume name '%s' already in use."),
+                       _("storage volume name '%1$s' already in use."),
                        voldef->name);
         goto cleanup;
     }
@@ -2110,7 +2110,7 @@ storageVolCreateXMLFrom(virStoragePoolPtr pool,
 
     if (voldefsrc->building) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still being allocated."),
+                       _("volume '%1$s' is still being allocated."),
                        voldefsrc->name);
         goto cleanup;
     }
@@ -2221,7 +2221,7 @@ storageVolDownload(virStorageVolPtr vol,
 
     if (voldef->building) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still being allocated."),
+                       _("volume '%1$s' is still being allocated."),
                        voldef->name);
         goto cleanup;
     }
@@ -2390,14 +2390,14 @@ storageVolUpload(virStorageVolPtr vol,
 
     if (voldef->in_use) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still in use."),
+                       _("volume '%1$s' is still in use."),
                        voldef->name);
         goto cleanup;
     }
 
     if (voldef->building) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still being allocated."),
+                       _("volume '%1$s' is still being allocated."),
                        voldef->name);
         goto cleanup;
     }
@@ -2473,14 +2473,14 @@ storageVolResize(virStorageVolPtr vol,
 
     if (voldef->in_use) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still in use."),
+                       _("volume '%1$s' is still in use."),
                        voldef->name);
         goto cleanup;
     }
 
     if (voldef->building) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still being allocated."),
+                       _("volume '%1$s' is still being allocated."),
                        voldef->name);
         goto cleanup;
     }
@@ -2564,7 +2564,7 @@ storageVolWipePattern(virStorageVolPtr vol,
 
     if (algorithm >= VIR_STORAGE_VOL_WIPE_ALG_LAST) {
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("wiping algorithm %d not supported"),
+                       _("wiping algorithm %1$d not supported"),
                        algorithm);
         return -1;
     }
@@ -2579,14 +2579,14 @@ storageVolWipePattern(virStorageVolPtr vol,
 
     if (voldef->in_use) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still in use."),
+                       _("volume '%1$s' is still in use."),
                        voldef->name);
         goto cleanup;
     }
 
     if (voldef->building) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume '%s' is still being allocated."),
+                       _("volume '%1$s' is still being allocated."),
                        voldef->name);
         goto cleanup;
     }
diff --git a/src/storage/storage_util.c b/src/storage/storage_util.c
index b57128eb2e..d39aa92eae 100644
--- a/src/storage/storage_util.c
+++ b/src/storage/storage_util.c
@@ -132,7 +132,7 @@ virStorageBackendCopyToFD(virStorageVolDef *vol,
 
     if ((inputfd = open(inputvol->target.path, O_RDONLY)) < 0) {
         virReportSystemError(errno,
-                             _("could not open input path '%s'"),
+                             _("could not open input path '%1$s'"),
                              inputvol->target.path);
         return -1;
     }
@@ -153,7 +153,7 @@ virStorageBackendCopyToFD(virStorageVolDef *vol,
     if (reflink_copy) {
         if (reflinkCloneFile(fd, inputfd) < 0) {
             virReportSystemError(errno,
-                                 _("failed to clone files from '%s'"),
+                                 _("failed to clone files from '%1$s'"),
                                  inputvol->target.path);
             return -1;
         } else {
@@ -170,7 +170,7 @@ virStorageBackendCopyToFD(virStorageVolDef *vol,
 
         if ((amtread = saferead(inputfd, buf, rbytes)) < 0) {
             virReportSystemError(errno,
-                                 _("failed reading from file '%s'"),
+                                 _("failed reading from file '%1$s'"),
                                  inputvol->target.path);
             return -1;
         }
@@ -186,13 +186,13 @@ virStorageBackendCopyToFD(virStorageVolDef *vol,
             if (want_sparse && memcmp(buf+offset, zerobuf, interval) == 0) {
                 if (lseek(fd, interval, SEEK_CUR) < 0) {
                     virReportSystemError(errno,
-                                         _("cannot extend file '%s'"),
+                                         _("cannot extend file '%1$s'"),
                                          vol->target.path);
                     return -1;
                 }
             } else if (safewrite(fd, buf+offset, interval) < 0) {
                 virReportSystemError(errno,
-                                     _("failed writing to file '%s'"),
+                                     _("failed writing to file '%1$s'"),
                                      vol->target.path);
                 return -1;
 
@@ -201,14 +201,14 @@ virStorageBackendCopyToFD(virStorageVolDef *vol,
     }
 
     if (virFileDataSync(fd) < 0) {
-        virReportSystemError(errno, _("cannot sync data to file '%s'"),
+        virReportSystemError(errno, _("cannot sync data to file '%1$s'"),
                              vol->target.path);
         return -1;
     }
 
     if (VIR_CLOSE(inputfd) < 0) {
         virReportSystemError(errno,
-                             _("cannot close file '%s'"),
+                             _("cannot close file '%1$s'"),
                              inputvol->target.path);
         return -1;
     }
@@ -246,7 +246,7 @@ storageBackendCreateBlockFrom(virStoragePoolObj *pool G_GNUC_UNUSED,
 
     if ((fd = open(vol->target.path, O_RDWR)) < 0) {
         virReportSystemError(errno,
-                             _("cannot create path '%s'"),
+                             _("cannot create path '%1$s'"),
                              vol->target.path);
         return -1;
     }
@@ -260,7 +260,7 @@ storageBackendCreateBlockFrom(virStoragePoolObj *pool G_GNUC_UNUSED,
     }
 
     if (fstat(fd, &st) == -1) {
-        virReportSystemError(errno, _("stat of '%s' failed"),
+        virReportSystemError(errno, _("stat of '%1$s' failed"),
                              vol->target.path);
         return -1;
     }
@@ -271,7 +271,7 @@ storageBackendCreateBlockFrom(virStoragePoolObj *pool G_GNUC_UNUSED,
     if (((uid != (uid_t)-1) || (gid != (gid_t)-1))
         && (fchown(fd, uid, gid) < 0)) {
         virReportSystemError(errno,
-                             _("cannot chown '%s' to (%u, %u)"),
+                             _("cannot chown '%1$s' to (%2$u, %3$u)"),
                              vol->target.path, (unsigned int)uid,
                              (unsigned int)gid);
         return -1;
@@ -281,13 +281,13 @@ storageBackendCreateBlockFrom(virStoragePoolObj *pool G_GNUC_UNUSED,
             VIR_STORAGE_DEFAULT_VOL_PERM_MODE : vol->target.perms->mode);
     if (fchmod(fd, mode) < 0) {
         virReportSystemError(errno,
-                             _("cannot set mode of '%s' to %04o"),
+                             _("cannot set mode of '%1$s' to %2$04o"),
                              vol->target.path, mode);
         return -1;
     }
     if (VIR_CLOSE(fd) < 0) {
         virReportSystemError(errno,
-                             _("cannot close file '%s'"),
+                             _("cannot close file '%1$s'"),
                              vol->target.path);
         return -1;
     }
@@ -313,7 +313,7 @@ createRawFile(int fd, virStorageVolDef *vol,
      * for progress reporting */
     if (ftruncate(fd, vol->target.capacity) < 0) {
         virReportSystemError(errno,
-                             _("cannot extend file '%s'"),
+                             _("cannot extend file '%1$s'"),
                              vol->target.path);
         return -1;
     }
@@ -332,7 +332,7 @@ createRawFile(int fd, virStorageVolDef *vol,
             need_alloc = false;
         } else if (errno != ENOSYS && errno != EOPNOTSUPP) {
             virReportSystemError(errno,
-                                 _("cannot allocate %llu bytes in file '%s'"),
+                                 _("cannot allocate %1$llu bytes in file '%2$s'"),
                                  vol->target.allocation, vol->target.path);
             return -1;
         }
@@ -356,14 +356,14 @@ createRawFile(int fd, virStorageVolDef *vol,
 
     if (need_alloc && (vol->target.allocation - pos > 0)) {
         if (safezero(fd, pos, vol->target.allocation - pos) < 0) {
-            virReportSystemError(errno, _("cannot fill file '%s'"),
+            virReportSystemError(errno, _("cannot fill file '%1$s'"),
                                  vol->target.path);
             return -1;
         }
     }
 
     if (g_fsync(fd) < 0) {
-        virReportSystemError(errno, _("cannot sync data to file '%s'"),
+        virReportSystemError(errno, _("cannot sync data to file '%1$s'"),
                              vol->target.path);
         return -1;
     }
@@ -424,7 +424,7 @@ storageBackendCreateRaw(virStoragePoolObj *pool,
                             vol->target.perms->gid,
                             operation_flags)) < 0) {
         virReportSystemError(-fd,
-                             _("Failed to create file '%s'"),
+                             _("Failed to create file '%1$s'"),
                              vol->target.path);
         return -1;
     }
@@ -512,7 +512,7 @@ virStorageBackendCreateExecCommand(virStoragePoolObj *pool,
             goto cleanup;
         if (stat(vol->target.path, &st) < 0) {
             virReportSystemError(errno,
-                                 _("failed to create %s"), vol->target.path);
+                                 _("failed to create %1$s"), vol->target.path);
             goto cleanup;
         }
         filecreated = true;
@@ -525,7 +525,7 @@ virStorageBackendCreateExecCommand(virStoragePoolObj *pool,
     if (((uid != (uid_t)-1) || (gid != (gid_t)-1))
         && (chown(vol->target.path, uid, gid) < 0)) {
         virReportSystemError(errno,
-                             _("cannot chown %s to (%u, %u)"),
+                             _("cannot chown %1$s to (%2$u, %3$u)"),
                              vol->target.path, (unsigned int)uid,
                              (unsigned int)gid);
         goto cleanup;
@@ -534,7 +534,7 @@ virStorageBackendCreateExecCommand(virStoragePoolObj *pool,
     if (mode != (st.st_mode & S_IRWXUGO) &&
         chmod(vol->target.path, mode) < 0) {
         virReportSystemError(errno,
-                             _("cannot set mode of '%s' to %04o"),
+                             _("cannot set mode of '%1$s' to %2$04o"),
                              vol->target.path, mode);
         goto cleanup;
     }
@@ -564,7 +564,7 @@ storageBackendCreatePloop(virStoragePoolObj *pool G_GNUC_UNUSED,
 
     if (inputvol && inputvol->target.format != VIR_STORAGE_FILE_PLOOP) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unsupported input storage vol type %d"),
+                       _("unsupported input storage vol type %1$d"),
                        inputvol->target.format);
         return -1;
     }
@@ -778,8 +778,7 @@ storageBackendCreateQemuImgOpts(virStorageEncryptionInfoDef *encinfo,
                               VIR_STORAGE_FILE_FEATURE_LAZY_REFCOUNTS)) {
             if (STREQ_NULLABLE(info->compat, "0.10")) {
                 virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                               _("lazy_refcounts not supported with compat"
-                                 " level %s"),
+                               _("lazy_refcounts not supported with compat level %1$s"),
                                info->compat);
                 return -1;
             }
@@ -790,7 +789,7 @@ storageBackendCreateQemuImgOpts(virStorageEncryptionInfoDef *encinfo,
                               VIR_STORAGE_FILE_FEATURE_EXTENDED_L2)) {
             if (STREQ_NULLABLE(info->compat, "0.10")) {
                 virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                               _("'extended_l2' not supported with compat level %s"),
+                               _("'extended_l2' not supported with compat level %1$s"),
                                info->compat);
                 return -1;
             }
@@ -825,7 +824,7 @@ storageBackendCreateQemuImgCheckEncryption(int format,
         format == VIR_STORAGE_FILE_QCOW2) {
         if (enc->format != VIR_STORAGE_ENCRYPTION_FORMAT_LUKS) {
             virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                           _("unsupported volume encryption format %d"),
+                           _("unsupported volume encryption format %1$d"),
                            vol->target.encryption->format);
             return -1;
         }
@@ -841,7 +840,7 @@ storageBackendCreateQemuImgCheckEncryption(int format,
         }
     } else {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
-                       _("volume encryption unsupported with format %s"), type);
+                       _("volume encryption unsupported with format %1$s"), type);
         return -1;
     }
 
@@ -870,7 +869,7 @@ storageBackendCreateQemuImgSetInput(virStorageVolDef *inputvol,
     if (!(info->inputFormatStr =
           virStorageFileFormatTypeToString(info->inputFormat))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unknown storage vol type %d"),
+                       _("unknown storage vol type %1$d"),
                        info->inputFormat);
         return -1;
     }
@@ -919,7 +918,7 @@ storageBackendCreateQemuImgSetBacking(virStoragePoolObj *pool,
 
     if (!virStorageFileFormatTypeToString(info->backingFormat)) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unknown storage vol backing store type %d"),
+                       _("unknown storage vol backing store type %1$d"),
                        info->backingFormat);
         return -1;
     }
@@ -933,7 +932,7 @@ storageBackendCreateQemuImgSetBacking(virStoragePoolObj *pool,
                            info->backingPath, R_OK);
     if (accessRetCode != 0) {
         virReportSystemError(errno,
-                             _("inaccessible backing store volume %s"),
+                             _("inaccessible backing store volume %1$s"),
                              info->backingPath);
         return -1;
     }
@@ -1036,7 +1035,7 @@ virStorageBackendCreateQemuImgSetInfo(virStoragePoolObj *pool,
 
     if (!(info->type = virStorageFileFormatTypeToString(info->format))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unknown storage vol type %d"),
+                       _("unknown storage vol type %1$d"),
                        info->format);
         return -1;
     }
@@ -1045,7 +1044,7 @@ virStorageBackendCreateQemuImgSetInfo(virStoragePoolObj *pool,
         !(info->inputType =
           virStorageFileFormatTypeToString(inputvol->target.format))) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unknown inputvol storage vol type %d"),
+                       _("unknown inputvol storage vol type %1$d"),
                        inputvol->target.format);
         return -1;
     }
@@ -1542,7 +1541,7 @@ virStorageBackendDetectBlockVolFormatFD(virStorageSource *target,
     start = lseek(fd, 0, SEEK_SET);
     if (start < 0) {
         virReportSystemError(errno,
-                             _("cannot seek to beginning of file '%s'"),
+                             _("cannot seek to beginning of file '%1$s'"),
                              target->path);
         return -1;
     }
@@ -1554,7 +1553,7 @@ virStorageBackendDetectBlockVolFormatFD(virStorageSource *target,
             return -2;
         } else {
             virReportSystemError(errno,
-                                 _("cannot read beginning of file '%s'"),
+                                 _("cannot read beginning of file '%1$s'"),
                                  target->path);
             return -1;
         }
@@ -1600,12 +1599,12 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
                 return -2;
             }
             virReportError(VIR_ERR_NO_STORAGE_VOL,
-                           _("no storage vol with matching path '%s'"),
+                           _("no storage vol with matching path '%1$s'"),
                            path);
             return -1;
         }
         virReportSystemError(errno,
-                             _("cannot stat file '%s'"),
+                             _("cannot stat file '%1$s'"),
                              path);
         return -1;
     }
@@ -1616,7 +1615,7 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
             return -2;
         }
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Volume path '%s' is a FIFO"), path);
+                       _("Volume path '%1$s' is a FIFO"), path);
         return -1;
     } else if (S_ISSOCK(sb->st_mode)) {
         if (noerror) {
@@ -1624,7 +1623,7 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
             return -2;
         }
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Volume path '%s' is a socket"), path);
+                       _("Volume path '%1$s' is a socket"), path);
         return -1;
     }
 
@@ -1662,12 +1661,12 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
             return -2;
         }
 
-        virReportSystemError(errno, _("cannot open volume '%s'"), path);
+        virReportSystemError(errno, _("cannot open volume '%1$s'"), path);
         return -1;
     }
 
     if (fstat(fd, sb) < 0) {
-        virReportSystemError(errno, _("cannot stat file '%s'"), path);
+        virReportSystemError(errno, _("cannot stat file '%1$s'"), path);
         VIR_FORCE_CLOSE(fd);
         return -1;
     }
@@ -1689,7 +1688,7 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
                 return -2;
             }
             virReportError(VIR_ERR_INTERNAL_ERROR,
-                           _("Cannot use volume path '%s'"), path);
+                           _("Cannot use volume path '%1$s'"), path);
             return -1;
         }
     } else {
@@ -1699,13 +1698,13 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
             return -2;
         }
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unexpected type for file '%s'"), path);
+                       _("unexpected type for file '%1$s'"), path);
         return -1;
     }
 
     if (virSetBlocking(fd, true) < 0) {
         VIR_FORCE_CLOSE(fd);
-        virReportSystemError(errno, _("unable to set blocking mode for '%s'"),
+        virReportSystemError(errno, _("unable to set blocking mode for '%1$s'"),
                              path);
         return -1;
     }
@@ -1718,7 +1717,7 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
         }
 
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("unexpected storage mode for '%s'"), path);
+                       _("unexpected storage mode for '%1$s'"), path);
         return -1;
     }
 
@@ -1810,7 +1809,7 @@ storageBackendUpdateVolTargetInfo(virStorageVolType voltype,
         }
 
         if (lseek(fd, 0, SEEK_SET) == (off_t)-1) {
-            virReportSystemError(errno, _("cannot seek to start of '%s'"), target->path);
+            virReportSystemError(errno, _("cannot seek to start of '%1$s'"), target->path);
             return -1;
         }
 
@@ -1821,7 +1820,7 @@ storageBackendUpdateVolTargetInfo(virStorageVolType voltype,
                 return -2;
             } else {
                 virReportSystemError(errno,
-                                     _("cannot read header '%s'"),
+                                     _("cannot read header '%1$s'"),
                                      target->path);
                 return -1;
             }
@@ -1929,7 +1928,7 @@ virStorageBackendUpdateVolTargetInfoFD(virStorageSource *target,
         if (fgetfilecon_raw(fd, &filecon) == -1) {
             if (errno != ENODATA && errno != ENOTSUP) {
                 virReportSystemError(errno,
-                                     _("cannot get file context of '%s'"),
+                                     _("cannot get file context of '%1$s'"),
                                      target->path);
                 return -1;
             }
@@ -2001,7 +2000,7 @@ virStorageBackendStablePath(virStoragePoolObj *pool,
             goto reopen;
         }
         virReportSystemError(errno,
-                             _("cannot read dir '%s'"),
+                             _("cannot read dir '%1$s'"),
                              def->target.path);
         return NULL;
     }
@@ -2108,7 +2107,7 @@ virStorageBackendVolCreateLocal(virStoragePoolObj *pool,
      * allow escape to ../ or a subdir */
     if (strchr(vol->name, '/')) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume name '%s' cannot contain '/'"), vol->name);
+                       _("volume name '%1$s' cannot contain '/'"), vol->name);
         return -1;
     }
 
@@ -2117,7 +2116,7 @@ virStorageBackendVolCreateLocal(virStoragePoolObj *pool,
 
     if (virFileExists(vol->target.path)) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("volume target path '%s' already exists"),
+                       _("volume target path '%1$s' already exists"),
                        vol->target.path);
         return -1;
     }
@@ -2203,11 +2202,11 @@ virStorageBackendVolDeleteLocal(virStoragePoolObj *pool G_GNUC_UNUSED,
             if (errno != ENOENT) {
                 if (vol->type == VIR_STORAGE_VOL_FILE)
                     virReportSystemError(errno,
-                                         _("cannot unlink file '%s'"),
+                                         _("cannot unlink file '%1$s'"),
                                          vol->target.path);
                 else
                     virReportSystemError(errno,
-                                         _("cannot remove directory '%s'"),
+                                         _("cannot remove directory '%1$s'"),
                                          vol->target.path);
                 return -1;
             }
@@ -2222,7 +2221,7 @@ virStorageBackendVolDeleteLocal(virStoragePoolObj *pool G_GNUC_UNUSED,
     case VIR_STORAGE_VOL_NETDIR:
     case VIR_STORAGE_VOL_LAST:
         virReportError(VIR_ERR_NO_SUPPORT,
-                       _("removing block or network volumes is not supported: %s"),
+                       _("removing block or network volumes is not supported: %1$s"),
                        vol->target.path);
         return -1;
     }
@@ -2547,16 +2546,14 @@ storageBackendVolZeroSparseFileLocal(const char *path,
 {
     if (ftruncate(fd, 0) < 0) {
         virReportSystemError(errno,
-                             _("Failed to truncate volume with "
-                               "path '%s' to 0 bytes"),
+                             _("Failed to truncate volume with path '%1$s' to 0 bytes"),
                              path);
         return -1;
     }
 
     if (ftruncate(fd, size) < 0) {
         virReportSystemError(errno,
-                             _("Failed to truncate volume with "
-                               "path '%s' to %ju bytes"),
+                             _("Failed to truncate volume with path '%1$s' to %2$ju bytes"),
                              path, (uintmax_t)size);
         return -1;
     }
@@ -2581,16 +2578,14 @@ storageBackendWipeLocal(const char *path,
     if (!zero_end) {
         if ((size = lseek(fd, 0, SEEK_SET)) < 0) {
             virReportSystemError(errno,
-                                 _("Failed to seek to the start in volume "
-                                   "with path '%s'"),
+                                 _("Failed to seek to the start in volume with path '%1$s'"),
                                  path);
             return -1;
         }
     } else {
         if ((size = lseek(fd, -wipe_len, SEEK_END)) < 0) {
             virReportSystemError(errno,
-                                 _("Failed to seek to %llu bytes to the end "
-                                   "in volume with path '%s'"),
+                                 _("Failed to seek to %1$llu bytes to the end in volume with path '%2$s'"),
                                  wipe_len, path);
             return -1;
         }
@@ -2605,8 +2600,7 @@ storageBackendWipeLocal(const char *path,
 
         if (written < 0) {
             virReportSystemError(errno,
-                                 _("Failed to write %zu bytes to "
-                                   "storage volume with path '%s'"),
+                                 _("Failed to write %1$zu bytes to storage volume with path '%2$s'"),
                                  write_size, path);
 
             return -1;
@@ -2617,7 +2611,7 @@ storageBackendWipeLocal(const char *path,
 
     if (virFileDataSync(fd) < 0) {
         virReportSystemError(errno,
-                             _("cannot sync data to volume with path '%s'"),
+                             _("cannot sync data to volume with path '%1$s'"),
                              path);
         return -1;
     }
@@ -2642,14 +2636,14 @@ storageBackendVolWipeLocalFile(const char *path,
     fd = open(path, O_RDWR);
     if (fd == -1) {
         virReportSystemError(errno,
-                             _("Failed to open storage volume with path '%s'"),
+                             _("Failed to open storage volume with path '%1$s'"),
                              path);
         return -1;
     }
 
     if (fstat(fd, &st) == -1) {
         virReportSystemError(errno,
-                             _("Failed to stat storage volume with path '%s'"),
+                             _("Failed to stat storage volume with path '%1$s'"),
                              path);
         return -1;
     }
@@ -2688,7 +2682,7 @@ storageBackendVolWipeLocalFile(const char *path,
         return -1;
     case VIR_STORAGE_VOL_WIPE_ALG_LAST:
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("unsupported algorithm %d"),
+                       _("unsupported algorithm %1$d"),
                        algorithm);
         return -1;
     }
@@ -2735,12 +2729,12 @@ storageBackendVolWipePloop(virStorageVolDef *vol,
         return -1;
 
     if (virFileRemove(disk_desc, 0, 0) < 0) {
-        virReportError(errno, _("Failed to delete DiskDescriptor.xml of volume '%s'"),
+        virReportError(errno, _("Failed to delete DiskDescriptor.xml of volume '%1$s'"),
                        vol->target.path);
         return -1;
     }
     if (virFileRemove(target_path, 0, 0) < 0) {
-        virReportError(errno, _("failed to delete root.hds of volume '%s'"),
+        virReportError(errno, _("failed to delete root.hds of volume '%1$s'"),
                        vol->target.path);
         return -1;
     }
@@ -2801,7 +2795,7 @@ virStorageBackendBuildLocal(virStoragePoolObj *pool)
     parent = g_strdup(def->target.path);
     if (!(p = strrchr(parent, '/'))) {
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("path '%s' is not absolute"),
+                       _("path '%1$s' is not absolute"),
                        def->target.path);
         return -1;
     }
@@ -2811,7 +2805,7 @@ virStorageBackendBuildLocal(virStoragePoolObj *pool)
          * exist, with default uid/gid/mode. */
         *p = '\0';
         if (g_mkdir_with_parents(parent, 0777) < 0) {
-            virReportSystemError(errno, _("cannot create path '%s'"),
+            virReportSystemError(errno, _("cannot create path '%1$s'"),
                                  parent);
             return -1;
         }
@@ -2866,7 +2860,7 @@ virStorageBackendDeleteLocal(virStoragePoolObj *pool,
 
     if (rmdir(def->target.path) < 0) {
         virReportSystemError(errno,
-                             _("failed to remove pool '%s'"),
+                             _("failed to remove pool '%1$s'"),
                              def->target.path);
         return -1;
     }
@@ -3109,7 +3103,7 @@ virStorageBackendBLKIDFindEmpty(const char *device,
 
     if (!(probe = blkid_new_probe_from_filename(device))) {
         virReportError(VIR_ERR_STORAGE_PROBE_FAILED,
-                       _("Failed to create filesystem probe for device %s"),
+                       _("Failed to create filesystem probe for device %1$s"),
                        device);
         return -1;
     }
@@ -3131,13 +3125,13 @@ virStorageBackendBLKIDFindEmpty(const char *device,
             ret = 0;
         else
             virReportError(VIR_ERR_STORAGE_PROBE_FAILED,
-                           _("Device '%s' is unrecognized, requires build"),
+                           _("Device '%1$s' is unrecognized, requires build"),
                            device);
         break;
 
     case VIR_STORAGE_BLKID_PROBE_ERROR:
         virReportError(VIR_ERR_STORAGE_PROBE_FAILED,
-                       _("Failed to probe for format type '%s'"), format);
+                       _("Failed to probe for format type '%1$s'"), format);
         break;
 
     case VIR_STORAGE_BLKID_PROBE_UNKNOWN:
@@ -3147,7 +3141,7 @@ virStorageBackendBLKIDFindEmpty(const char *device,
     case VIR_STORAGE_BLKID_PROBE_MATCH:
         if (writelabel)
             virReportError(VIR_ERR_STORAGE_POOL_BUILT,
-                           _("Device '%s' already formatted using '%s'"),
+                           _("Device '%1$s' already formatted using '%2$s'"),
                            device, format);
         else
             ret = 0;
@@ -3156,14 +3150,11 @@ virStorageBackendBLKIDFindEmpty(const char *device,
     case VIR_STORAGE_BLKID_PROBE_DIFFERENT:
         if (writelabel)
             virReportError(VIR_ERR_STORAGE_POOL_BUILT,
-                           _("Format of device '%s' does not match the "
-                             "expected format '%s', forced overwrite is "
-                             "necessary"),
+                           _("Format of device '%1$s' does not match the expected format '%2$s', forced overwrite is necessary"),
                            device, format);
         else
             virReportError(VIR_ERR_OPERATION_INVALID,
-                           _("Format of device '%s' does not match the "
-                             "expected format '%s'"),
+                           _("Format of device '%1$s' does not match the expected format '%2$s'"),
                            device, format);
         break;
     }
@@ -3303,7 +3294,7 @@ virStorageBackendPARTEDValidLabel(const char *device,
     case VIR_STORAGE_PARTED_MATCH:
         if (writelabel)
             virReportError(VIR_ERR_OPERATION_INVALID,
-                           _("Disk label already formatted using '%s'"),
+                           _("Disk label already formatted using '%1$s'"),
                            format);
         else
             ret = 0;
@@ -3381,8 +3372,7 @@ virStorageBackendDeviceIsEmpty(const char *devpath,
 
     if (ret == -2) {
         virReportError(VIR_ERR_OPERATION_INVALID,
-                       _("Unable to probe '%s' for existing data, "
-                         "forced overwrite is necessary"),
+                       _("Unable to probe '%1$s' for existing data, forced overwrite is necessary"),
                        devpath);
     }
 
@@ -3450,7 +3440,7 @@ storageBackendProbeTarget(virStorageSource *target,
                  * even maintenance. */
                 target->backingStore->format = VIR_STORAGE_FILE_RAW;
                 virReportError(VIR_ERR_INTERNAL_ERROR,
-                               _("cannot probe backing volume format: %s"),
+                               _("cannot probe backing volume format: %1$s"),
                                target->backingStore->path);
             } else {
                 target->backingStore->format = rc;
@@ -3603,14 +3593,14 @@ virStorageBackendRefreshLocal(virStoragePoolObj *pool)
 
     if ((fd = open(def->target.path, O_RDONLY)) < 0) {
         virReportSystemError(errno,
-                             _("cannot open path '%s'"),
+                             _("cannot open path '%1$s'"),
                              def->target.path);
         return -1;
     }
 
     if (fstat(fd, &statbuf) < 0) {
         virReportSystemError(errno,
-                             _("cannot stat path '%s'"),
+                             _("cannot stat path '%1$s'"),
                              def->target.path);
         return -1;
     }
@@ -3621,7 +3611,7 @@ virStorageBackendRefreshLocal(virStoragePoolObj *pool)
     /* VolTargetInfoFD doesn't update capacity correctly for the pool case */
     if (statvfs(def->target.path, &sb) < 0) {
         virReportSystemError(errno,
-                             _("cannot statvfs path '%s'"),
+                             _("cannot statvfs path '%1$s'"),
                              def->target.path);
         return -1;
     }
@@ -3698,7 +3688,7 @@ virStorageBackendSCSINewLun(virStoragePoolObj *pool,
         !(STREQ(def->target.path, "/dev") ||
           STREQ(def->target.path, "/dev/"))) {
         virReportError(VIR_ERR_INVALID_ARG,
-                       _("unable to use target path '%s' for dev '%s'"),
+                       _("unable to use target path '%1$s' for dev '%2$s'"),
                        NULLSTR(def->target.path), dev);
         return -1;
     }
@@ -3804,7 +3794,7 @@ getOldStyleBlockDevice(const char *lun_path G_GNUC_UNUSED,
     if (!(blockp = strrchr(block_name, ':'))) {
         /* Hm, wasn't what we were expecting; have to give up */
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to parse block name %s"),
+                       _("Failed to parse block name %1$s"),
                        block_name);
         return -1;
     } else {
@@ -3895,7 +3885,7 @@ getDeviceType(uint32_t host,
     typefile = fopen(type_path, "r");
     if (typefile == NULL) {
         virReportSystemError(errno,
-                             _("Could not find typefile '%s'"),
+                             _("Could not find typefile '%1$s'"),
                              type_path);
         /* there was no type file; that doesn't seem right */
         return -1;
@@ -3906,7 +3896,7 @@ getDeviceType(uint32_t host,
 
     if (gottype == NULL) {
         virReportSystemError(errno,
-                             _("Could not read typefile '%s'"),
+                             _("Could not read typefile '%1$s'"),
                              type_path);
         /* we couldn't read the type file; have to give up */
         return -1;
@@ -3917,7 +3907,7 @@ getDeviceType(uint32_t host,
      */
     if (virStrToLong_i(typestr, &p, 10, type) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Device type '%s' is not an integer"),
+                       _("Device type '%1$s' is not an integer"),
                        typestr);
         /* Hm, type wasn't an integer; seems strange */
         return -1;
@@ -3954,7 +3944,7 @@ processLU(virStoragePoolObj *pool,
 
     if (getDeviceType(host, bus, target, lun, &device_type) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
-                       _("Failed to determine if %u:%u:%u:%u is a Direct-Access LUN"),
+                       _("Failed to determine if %1$u:%2$u:%3$u:%4$u is a Direct-Access LUN"),
                        host, bus, target, lun);
         return -1;
     }
-- 
2.39.2



More information about the libvir-list mailing list