Put it into qemuDomainPrepareShmemChardev() so it can be used later.
Also don't fill in the path unless the server option is enabled.
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
{
char *devstr = NULL;
- if (!shmem->server.chr.data.nix.path &&
- virAsprintf(&shmem->server.chr.data.nix.path,
- "/var/lib/libvirt/shmem-%s-sock",
- shmem->name) < 0)
+ if (qemuDomainPrepareShmemChardev(shmem) < 0)
return NULL;
devstr = qemuBuildChrChardevStr(logManager, cmd, cfg, def,
}
+int
+qemuDomainPrepareShmemChardev(virDomainShmemDefPtr shmem)
+{
+ if (!shmem->server.enabled ||
+ shmem->server.chr.data.nix.path)
+ return 0;
+
+ return virAsprintf(&shmem->server.chr.data.nix.path,
+ "/var/lib/libvirt/shmem-%s-sock",
+ shmem->name);
+}
+
+
/**
* qemuDomainVcpuHotplugIsInOrder:
* @def: domain definition
const char *domainChannelTargetDir)
ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2);
+int qemuDomainPrepareShmemChardev(virDomainShmemDefPtr shmem)
+ ATTRIBUTE_NONNULL(1);
+
bool qemuDomainVcpuHotplugIsInOrder(virDomainDefPtr def)
ATTRIBUTE_NONNULL(1);