#include "virstring.h"
#include "network/bridge_driver.h"
+#define QEMU_DRIVE_HOST_PREFIX "drive-"
+
#define VIR_FROM_THIS VIR_FROM_QEMU
VIR_LOG_INIT("qemu.qemu_alias");
}
+/* qemuAliasDiskDriveSkipPrefix:
+ * @dev_name: Pointer to a const char string
+ *
+ * If the QEMU_DRIVE_HOST_PREFIX exists in the input string, then
+ * increment the pointer and return it
+ */
+const char *
+qemuAliasDiskDriveSkipPrefix(const char *dev_name)
+{
+ if (STRPREFIX(dev_name, QEMU_DRIVE_HOST_PREFIX))
+ dev_name += strlen(QEMU_DRIVE_HOST_PREFIX);
+ return dev_name;
+}
+
+
/* qemuDomainGetMasterKeyAlias:
*
* Generate and return the masterKey alias
# include "qemu_domain.h"
# include "qemu_domain_address.h"
-# define QEMU_DRIVE_HOST_PREFIX "drive-"
-
int qemuAssignDeviceChrAlias(virDomainDefPtr def,
virDomainChrDefPtr chr,
ssize_t idx);
char *qemuAliasFromDisk(const virDomainDiskDef *disk);
+const char *qemuAliasDiskDriveSkipPrefix(const char *dev_name);
+
char *qemuDomainGetMasterKeyAlias(void);
char *qemuDomainGetSecretAESAlias(const char *srcalias,
{
char *alias;
- if (STRPREFIX(device, QEMU_DRIVE_HOST_PREFIX))
- device += strlen(QEMU_DRIVE_HOST_PREFIX);
+ device = qemuAliasDiskDriveSkipPrefix(device);
if (!depth)
ignore_value(VIR_STRDUP(alias, device));
goto cleanup;
}
- if (STRPREFIX(thisdev, QEMU_DRIVE_HOST_PREFIX))
- thisdev += strlen(QEMU_DRIVE_HOST_PREFIX);
+ thisdev = qemuAliasDiskDriveSkipPrefix(thisdev);
if (VIR_ALLOC(info) < 0)
goto cleanup;
_("entry was missing 'device'"));
return -1;
}
- if (STRPREFIX(device, QEMU_DRIVE_HOST_PREFIX))
- device += strlen(QEMU_DRIVE_HOST_PREFIX);
+ device = qemuAliasDiskDriveSkipPrefix(device);
if (VIR_ALLOC(info) < 0 ||
virHashAddEntry(blockJobs, device, info) < 0) {
p = reply;
while (*p) {
- if (STRPREFIX(p, QEMU_DRIVE_HOST_PREFIX))
- p += strlen(QEMU_DRIVE_HOST_PREFIX);
+ p = (char *)qemuAliasDiskDriveSkipPrefix(p);
eol = strchr(p, '\n');
if (!eol)
{
qemuBlockStatsPtr stats = NULL;
char *info = NULL;
- char *dev_name;
+ const char *dev_name;
char **lines = NULL;
char **values = NULL;
char *line;
*line = '\0';
line += 2;
- if (STRPREFIX(dev_name, QEMU_DRIVE_HOST_PREFIX))
- dev_name += strlen(QEMU_DRIVE_HOST_PREFIX);
+ dev_name = qemuAliasDiskDriveSkipPrefix(dev_name);
if (!(values = virStringSplit(line, " ", 0)))
goto cleanup;
{
size_t i;
- if (STRPREFIX(alias, QEMU_DRIVE_HOST_PREFIX))
- alias += strlen(QEMU_DRIVE_HOST_PREFIX);
+ alias = qemuAliasDiskDriveSkipPrefix(alias);
for (i = 0; i < vm->def->ndisks; i++) {
virDomainDiskDefPtr disk;