From nobody Sun Feb 8 23:41:56 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) client-ip=207.211.31.81; envelope-from=libvir-list-bounces@redhat.com; helo=us-smtp-delivery-1.mimecast.com; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass(p=none dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1571752874; cv=none; d=zoho.com; s=zohoarc; b=AW4mRj2ZGrt0XZm8X9bda6FWztn+rd0/f1pVf3gpQR36mlFe+XLl3NL+gUwfbcCku4fU8lzFlXhYTDSaY54bHOB3yROaD9cFaVmQ90bl5LlWu6SbJI7VRN1yQwZmum2aZoG0qNf5KbSQHRrkPU5xA1gpku2NV9Uo+GfvTfsKEgE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1571752874; h=Content-Type:Content-Transfer-Encoding:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:To; bh=+5kBCSxVCMXhV4Vi/cvxasNzv3dSbcL9wojcVo54MV0=; b=Qa7ZVTMVX47ZxWU9F21oKClywz0w3XvZe7vjZy5FpDu99eIVunosiGjHYcnuNbPo7syHTjKPkKqb6LzwFZIicUDWocA6SUvjIqdsiPBFNEO7ib9N3B1ZBJzBGV+pXx/j/aQSFe9M9S8F35RfWMX9ti7aZvI0zqdrQnfN9/FMYzQ= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=pass; spf=pass (zoho.com: domain of redhat.com designates 207.211.31.81 as permitted sender) smtp.mailfrom=libvir-list-bounces@redhat.com; dmarc=pass header.from= (p=none dis=none) header.from= Return-Path: Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [207.211.31.81]) by mx.zohomail.com with SMTPS id 1571752874494765.9222204950145; Tue, 22 Oct 2019 07:01:14 -0700 (PDT) Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-233-6qspmUCIMRCdF2_PqqpnNQ-1; Tue, 22 Oct 2019 10:01:10 -0400 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id E83F5800D4E; Tue, 22 Oct 2019 14:01:04 +0000 (UTC) Received: from colo-mx.corp.redhat.com (colo-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.20]) by smtp.corp.redhat.com (Postfix) with ESMTPS id AF63F5D6B0; Tue, 22 Oct 2019 14:01:04 +0000 (UTC) Received: from lists01.pubmisc.prod.ext.phx2.redhat.com (lists01.pubmisc.prod.ext.phx2.redhat.com [10.5.19.33]) by colo-mx.corp.redhat.com (Postfix) with ESMTP id 24F8C180BA98; Tue, 22 Oct 2019 14:01:04 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by lists01.pubmisc.prod.ext.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id x9ME0jEH002673 for ; Tue, 22 Oct 2019 10:00:45 -0400 Received: by smtp.corp.redhat.com (Postfix) id 2775060BDF; Tue, 22 Oct 2019 14:00:45 +0000 (UTC) Received: from moe.redhat.com (unknown [10.43.2.30]) by smtp.corp.redhat.com (Postfix) with ESMTP id 72B0C60475 for ; Tue, 22 Oct 2019 14:00:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1571752873; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=+5kBCSxVCMXhV4Vi/cvxasNzv3dSbcL9wojcVo54MV0=; b=TwgyWTbsstruasPtyVQi/fjHZd2+P7eg/DCSrr2O81sTEFIJFUrEH1yk3XQEHzzdErU/lR laqa33lQy9iQON5RIx4vWMOEzebFR4vviuzUS7+0wTnq0VmH18lJbj/eo6GMC7ZJc+gWHS tYTqE2TQMMTVK71rb0hcGtkjpmsRJ9E= From: Michal Privoznik To: libvir-list@redhat.com Date: Tue, 22 Oct 2019 15:57:51 +0200 Message-Id: In-Reply-To: References: MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-loop: libvir-list@redhat.com Subject: [libvirt] [PATCH 47/75] lxc: Use g_strdup_printf() instead of virAsprintf() X-BeenThere: libvir-list@redhat.com X-Mailman-Version: 2.1.12 Precedence: junk List-Id: Development discussions about the libvirt library & tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: libvir-list-bounces@redhat.com Errors-To: libvir-list-bounces@redhat.com X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-MC-Unique: 6qspmUCIMRCdF2_PqqpnNQ-1 X-Mimecast-Spam-Score: 0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @redhat.com) Content-Type: text/plain; charset="utf-8" Signed-off-by: Michal Privoznik Reviewed-by: Daniel Henrique Barboza --- src/lxc/lxc_container.c | 41 +++++++++++++++++------------------ src/lxc/lxc_controller.c | 46 ++++++++++++++++++++-------------------- src/lxc/lxc_driver.c | 8 +++---- src/lxc/lxc_fuse.c | 6 +++--- src/lxc/lxc_monitor.c | 2 +- src/lxc/lxc_native.c | 8 +++---- src/lxc/lxc_process.c | 20 ++++++++--------- 7 files changed, 65 insertions(+), 66 deletions(-) diff --git a/src/lxc/lxc_container.c b/src/lxc/lxc_container.c index 090a22571d..0ad872b65b 100644 --- a/src/lxc/lxc_container.c +++ b/src/lxc/lxc_container.c @@ -682,7 +682,7 @@ static int lxcContainerPrepareRoot(virDomainDefPtr def, if (lxcContainerResolveSymlinks(root, false) < 0) return -1; =20 - virAsprintf(&dst, "%s/%s.root", LXC_STATE_DIR, def->name); + dst =3D g_strdup_printf("%s/%s.root", LXC_STATE_DIR, def->name); =20 tmp =3D root->dst; root->dst =3D dst; @@ -717,7 +717,7 @@ static int lxcContainerPivotRoot(virDomainFSDefPtr root) goto err; } =20 - virAsprintf(&oldroot, "%s/.oldroot", root->src->path); + oldroot =3D g_strdup_printf("%s/.oldroot", root->src->path); =20 if (virFileMakePath(oldroot) < 0) { virReportSystemError(errno, @@ -736,7 +736,7 @@ static int lxcContainerPivotRoot(virDomainFSDefPtr root) } =20 /* Create a directory called 'new' in tmpfs */ - virAsprintf(&newroot, "%s/new", oldroot); + newroot =3D g_strdup_printf("%s/new", oldroot); =20 if (virFileMakePath(newroot) < 0) { virReportSystemError(errno, @@ -921,7 +921,7 @@ static int lxcContainerMountBasicFS(bool userns_enabled, char *hostdir; int ret; =20 - virAsprintf(&hostdir, "/.oldroot%s", mnt->dst); + hostdir =3D g_strdup_printf("/.oldroot%s", mnt->dst); =20 ret =3D virFileIsMountPoint(hostdir); VIR_FREE(hostdir); @@ -1012,10 +1012,9 @@ static int lxcContainerMountProcFuse(virDomainDefPtr= def, =20 VIR_DEBUG("Mount /proc/meminfo stateDir=3D%s", stateDir); =20 - virAsprintf(&meminfo_path, - "/.oldroot/%s/%s.fuse/meminfo", - stateDir, - def->name); + meminfo_path =3D g_strdup_printf("/.oldroot/%s/%s.fuse/meminfo", + stateDir, + def->name); =20 if ((ret =3D mount(meminfo_path, "/proc/meminfo", NULL, MS_BIND, NULL)) < 0) { @@ -1044,7 +1043,7 @@ static int lxcContainerMountFSDev(virDomainDefPtr def, =20 VIR_DEBUG("Mount /dev/ stateDir=3D%s", stateDir); =20 - virAsprintf(&path, "/.oldroot/%s/%s.dev", stateDir, def->name); + path =3D g_strdup_printf("/.oldroot/%s/%s.dev", stateDir, def->name); =20 if (virFileMakePath("/dev") < 0) { virReportSystemError(errno, "%s", @@ -1078,7 +1077,7 @@ static int lxcContainerMountFSDevPTS(virDomainDefPtr = def, =20 VIR_DEBUG("Mount /dev/pts stateDir=3D%s", stateDir); =20 - virAsprintf(&path, "/.oldroot/%s/%s.devpts", stateDir, def->name); + path =3D g_strdup_printf("/.oldroot/%s/%s.devpts", stateDir, def->name= ); =20 if (virFileMakePath("/dev/pts") < 0) { virReportSystemError(errno, "%s", @@ -1130,7 +1129,7 @@ static int lxcContainerSetupDevices(char **ttyPaths, = size_t nttyPaths) =20 for (i =3D 0; i < nttyPaths; i++) { char *tty; - virAsprintf(&tty, "/dev/tty%zu", i + 1); + tty =3D g_strdup_printf("/dev/tty%zu", i + 1); =20 if (virFileBindMountDevice(ttyPaths[i], tty) < 0) { VIR_FREE(tty); @@ -1156,7 +1155,7 @@ static int lxcContainerMountFSBind(virDomainFSDefPtr = fs, =20 VIR_DEBUG("src=3D%s dst=3D%s", fs->src->path, fs->dst); =20 - virAsprintf(&src, "%s%s", srcprefix, fs->src->path); + src =3D g_strdup_printf("%s%s", srcprefix, fs->src->path); =20 if (stat(fs->dst, &st) < 0) { if (errno !=3D ENOENT) { @@ -1326,8 +1325,8 @@ static int lxcContainerMountFSBlockAuto(virDomainFSDe= fPtr fs, =20 /* First time around we use /etc/filesystems */ retry: - virAsprintf(&fslist, "%s%s", srcprefix, - tryProc ? "/proc/filesystems" : "/etc/filesystems"); + fslist =3D g_strdup_printf("%s%s", srcprefix, + tryProc ? "/proc/filesystems" : "/etc/filesys= tems"); =20 VIR_DEBUG("Open fslist %s", fslist); if (!(fp =3D fopen(fslist, "r"))) { @@ -1488,7 +1487,7 @@ static int lxcContainerMountFSBlock(virDomainFSDefPtr= fs, =20 VIR_DEBUG("src=3D%s dst=3D%s", fs->src->path, fs->dst); =20 - virAsprintf(&src, "%s%s", srcprefix, fs->src->path); + src =3D g_strdup_printf("%s%s", srcprefix, fs->src->path); =20 ret =3D lxcContainerMountFSBlockHelper(fs, src, srcprefix, sec_mount_o= ptions); =20 @@ -1507,7 +1506,7 @@ static int lxcContainerMountFSTmpfs(virDomainFSDefPtr= fs, =20 VIR_DEBUG("usage=3D%lld sec=3D%s", fs->usage, sec_mount_options); =20 - virAsprintf(&data, "size=3D%lld%s", fs->usage, sec_mount_options); + data =3D g_strdup_printf("size=3D%lld%s", fs->usage, sec_mount_options= ); =20 if (virFileMakePath(fs->dst) < 0) { virReportSystemError(errno, @@ -1655,20 +1654,20 @@ static int lxcContainerUnmountForSharedRoot(const c= har *stateDir, =20 /* These filesystems are created by libvirt temporarily, they * shouldn't appear in container. */ - virAsprintf(&tmp, "%s/%s.dev", stateDir, domain); + tmp =3D g_strdup_printf("%s/%s.dev", stateDir, domain); =20 if (lxcContainerUnmountSubtree(tmp, false) < 0) goto cleanup; =20 VIR_FREE(tmp); - virAsprintf(&tmp, "%s/%s.devpts", stateDir, domain); + tmp =3D g_strdup_printf("%s/%s.devpts", stateDir, domain); =20 if (lxcContainerUnmountSubtree(tmp, false) < 0) goto cleanup; =20 #if WITH_FUSE VIR_FREE(tmp); - virAsprintf(&tmp, "%s/%s.fuse", stateDir, domain); + tmp =3D g_strdup_printf("%s/%s.fuse", stateDir, domain); =20 if (lxcContainerUnmountSubtree(tmp, false) < 0) goto cleanup; @@ -2232,8 +2231,8 @@ static int lxcContainerChild(void *data) const char *tty =3D argv->ttyPaths[0]; if (STRPREFIX(tty, "/dev/pts/")) tty +=3D strlen("/dev/pts/"); - virAsprintf(&ttyPath, "%s/%s.devpts/%s", LXC_STATE_DIR, vmDef->nam= e, - tty); + ttyPath =3D g_strdup_printf("%s/%s.devpts/%s", LXC_STATE_DIR, vmDe= f->name, + tty); } else { virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("At least one tty is required")); diff --git a/src/lxc/lxc_controller.c b/src/lxc/lxc_controller.c index 56e30eeaa9..17c4282be4 100644 --- a/src/lxc/lxc_controller.c +++ b/src/lxc/lxc_controller.c @@ -568,7 +568,7 @@ static int virLXCControllerAppendNBDPids(virLXCControll= erPtr ctrl, if (!STRPREFIX(dev, "/dev/")) goto cleanup; =20 - virAsprintf(&pidpath, "/sys/devices/virtual/block/%s/pid", dev + 5); + pidpath =3D g_strdup_printf("/sys/devices/virtual/block/%s/pid", dev += 5); =20 /* Wait for the pid file to appear */ while (!virFileExists(pidpath)) { @@ -946,7 +946,7 @@ static int virLXCControllerSetupServer(virLXCController= Ptr ctrl) virNetServerServicePtr svc =3D NULL; char *sockpath; =20 - virAsprintf(&sockpath, "%s/%s.sock", LXC_STATE_DIR, ctrl->name); + sockpath =3D g_strdup_printf("%s/%s.sock", LXC_STATE_DIR, ctrl->name); =20 if (!(srv =3D virNetServerNew("LXC", 1, 0, 0, 0, 1, @@ -1434,14 +1434,14 @@ static int virLXCControllerSetupUserns(virLXCContro= llerPtr ctrl) } =20 VIR_DEBUG("Setting up userns maps"); - virAsprintf(&uid_map, "/proc/%d/uid_map", ctrl->initpid); + uid_map =3D g_strdup_printf("/proc/%d/uid_map", ctrl->initpid); =20 if (virLXCControllerSetupUsernsMap(ctrl->def->idmap.uidmap, ctrl->def->idmap.nuidmap, uid_map) < 0) goto cleanup; =20 - virAsprintf(&gid_map, "/proc/%d/gid_map", ctrl->initpid); + gid_map =3D g_strdup_printf("/proc/%d/gid_map", ctrl->initpid); =20 if (virLXCControllerSetupUsernsMap(ctrl->def->idmap.gidmap, ctrl->def->idmap.ngidmap, @@ -1467,14 +1467,14 @@ static int virLXCControllerSetupDev(virLXCControlle= rPtr ctrl) mount_options =3D virSecurityManagerGetMountOptions(ctrl->securityMana= ger, ctrl->def); =20 - virAsprintf(&dev, "/%s/%s.dev", LXC_STATE_DIR, ctrl->def->name); + dev =3D g_strdup_printf("/%s/%s.dev", LXC_STATE_DIR, ctrl->def->name); =20 /* * tmpfs is limited to 64kb, since we only have device nodes in there * and don't want to DOS the entire OS RAM usage */ =20 - virAsprintf(&opts, "mode=3D755,size=3D65536%s", mount_options); + opts =3D g_strdup_printf("mode=3D755,size=3D65536%s", mount_options); =20 if (virFileSetupDev(dev, opts) < 0) goto cleanup; @@ -1514,8 +1514,8 @@ static int virLXCControllerPopulateDevices(virLXCCont= rollerPtr ctrl) =20 /* Populate /dev/ with a few important bits */ for (i =3D 0; i < G_N_ELEMENTS(devs); i++) { - virAsprintf(&path, "/%s/%s.dev/%s", LXC_STATE_DIR, ctrl->def->name, - devs[i].path); + path =3D g_strdup_printf("/%s/%s.dev/%s", LXC_STATE_DIR, ctrl->def= ->name, + devs[i].path); =20 dev_t dev =3D makedev(devs[i].maj, devs[i].min); if (mknod(path, S_IFCHR, dev) < 0 || @@ -1553,13 +1553,13 @@ virLXCControllerSetupHostdevSubsysUSB(virDomainDefP= tr vmDef, mode_t mode; virDomainHostdevSubsysUSBPtr usbsrc =3D &def->source.subsys.u.usb; =20 - virAsprintf(&src, USB_DEVFS "/%03d/%03d", usbsrc->bus, usbsrc->device); + src =3D g_strdup_printf(USB_DEVFS "/%03d/%03d", usbsrc->bus, usbsrc->d= evice); =20 - virAsprintf(&vroot, "/%s/%s.dev/bus/usb/", LXC_STATE_DIR, vmDef->name); + vroot =3D g_strdup_printf("/%s/%s.dev/bus/usb/", LXC_STATE_DIR, vmDef-= >name); =20 - virAsprintf(&dstdir, "%s/%03d/", vroot, usbsrc->bus); + dstdir =3D g_strdup_printf("%s/%03d/", vroot, usbsrc->bus); =20 - virAsprintf(&dstfile, "%s/%03d", dstdir, usbsrc->device); + dstfile =3D g_strdup_printf("%s/%03d", dstdir, usbsrc->device); =20 if (stat(src, &sb) < 0) { virReportSystemError(errno, @@ -1633,7 +1633,7 @@ virLXCControllerSetupHostdevCapsStorage(virDomainDefP= tr vmDef, while (*(path + len) =3D=3D '/') len++; =20 - virAsprintf(&dst, "/%s/%s.dev/%s", LXC_STATE_DIR, vmDef->name, + dst =3D g_strdup_printf("/%s/%s.dev/%s", LXC_STATE_DIR, vmDef->name, strchr(path + len, '/')); =20 if (stat(dev, &sb) < 0) { @@ -1709,8 +1709,8 @@ virLXCControllerSetupHostdevCapsMisc(virDomainDefPtr = vmDef, while (*(path + len) =3D=3D '/') len++; =20 - virAsprintf(&dst, "/%s/%s.dev/%s", LXC_STATE_DIR, vmDef->name, - strchr(path + len, '/')); + dst =3D g_strdup_printf("/%s/%s.dev/%s", LXC_STATE_DIR, vmDef->name, + strchr(path + len, '/')); =20 if (stat(dev, &sb) < 0) { virReportSystemError(errno, @@ -1865,8 +1865,8 @@ static int virLXCControllerSetupDisk(virLXCController= Ptr ctrl, goto cleanup; } =20 - virAsprintf(&dst, "/%s/%s.dev/%s", LXC_STATE_DIR, ctrl->def->name, - def->dst); + dst =3D g_strdup_printf("/%s/%s.dev/%s", LXC_STATE_DIR, ctrl->def->nam= e, + def->dst); =20 if (stat(def->src->path, &sb) < 0) { virReportSystemError(errno, @@ -2055,8 +2055,8 @@ lxcCreateTty(virLXCControllerPtr ctrl, int *ttymaster, * while glibc has to fstat(), fchmod(), and fchown() for older * kernels, we can skip those steps. ptyno shouldn't currently be * anything other than 0, but let's play it safe. */ - virAsprintf(ttyName, "/dev/pts/%d", ptyno); - virAsprintf(ttyHostPath, "/%s/%s.devpts/%d", LXC_STATE_DIR, ctrl->def-= >name, ptyno); + *ttyName =3D g_strdup_printf("/dev/pts/%d", ptyno); + *ttyHostPath =3D g_strdup_printf("/%s/%s.devpts/%d", LXC_STATE_DIR, ct= rl->def->name, ptyno); =20 ret =3D 0; =20 @@ -2112,8 +2112,8 @@ virLXCControllerSetupDevPTS(virLXCControllerPtr ctrl) mount_options =3D virSecurityManagerGetMountOptions(ctrl->securityMana= ger, ctrl->def); =20 - virAsprintf(&devpts, "%s/%s.devpts", LXC_STATE_DIR, ctrl->def->name); - virAsprintf(&ctrl->devptmx, "%s/%s.devpts/ptmx", LXC_STATE_DIR, ctrl->= def->name); + devpts =3D g_strdup_printf("%s/%s.devpts", LXC_STATE_DIR, ctrl->def->n= ame); + ctrl->devptmx =3D g_strdup_printf("%s/%s.devpts/ptmx", LXC_STATE_DIR, = ctrl->def->name); =20 if (virFileMakePath(devpts) < 0) { virReportSystemError(errno, @@ -2129,8 +2129,8 @@ virLXCControllerSetupDevPTS(virLXCControllerPtr ctrl) =20 /* XXX should we support gid=3DX for X!=3D5 for distros which use * a different gid for tty? */ - virAsprintf(&opts, "newinstance,ptmxmode=3D0666,mode=3D0620,gid=3D%u%s= ", ptsgid, - NULLSTR_EMPTY(mount_options)); + opts =3D g_strdup_printf("newinstance,ptmxmode=3D0666,mode=3D0620,gid= =3D%u%s", ptsgid, + NULLSTR_EMPTY(mount_options)); =20 VIR_DEBUG("Mount devpts on %s type=3Dtmpfs flags=3D0x%x, opts=3D%s", devpts, MS_NOSUID, opts); diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c index acaeae9311..2de252ee87 100644 --- a/src/lxc/lxc_driver.c +++ b/src/lxc/lxc_driver.c @@ -3788,7 +3788,7 @@ lxcDomainAttachDeviceDiskLive(virLXCDriverPtr driver, if (VIR_REALLOC_N(vm->def->disks, vm->def->ndisks + 1) < 0) goto cleanup; =20 - virAsprintf(&file, "/dev/%s", def->dst); + file =3D g_strdup_printf("/dev/%s", def->dst); =20 if (lxcDomainAttachDeviceMknod(driver, 0700 | S_IFBLK, @@ -3973,7 +3973,7 @@ lxcDomainAttachDeviceHostdevSubsysUSBLive(virLXCDrive= rPtr driver, } =20 usbsrc =3D &def->source.subsys.u.usb; - virAsprintf(&src, "/dev/bus/usb/%03d/%03d", usbsrc->bus, usbsrc->devic= e); + src =3D g_strdup_printf("/dev/bus/usb/%03d/%03d", usbsrc->bus, usbsrc-= >device); =20 if (!(usb =3D virUSBDeviceNew(usbsrc->bus, usbsrc->device, NULL))) goto cleanup; @@ -4309,7 +4309,7 @@ lxcDomainDetachDeviceDiskLive(virDomainObjPtr vm, def =3D vm->def->disks[idx]; src =3D virDomainDiskGetSource(def); =20 - virAsprintf(&dst, "/dev/%s", def->dst); + dst =3D g_strdup_printf("/dev/%s", def->dst); =20 if (!virCgroupHasController(priv->cgroup, VIR_CGROUP_CONTROLLER_DEVICE= S)) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", @@ -4447,7 +4447,7 @@ lxcDomainDetachDeviceHostdevUSBLive(virLXCDriverPtr d= river, } =20 usbsrc =3D &def->source.subsys.u.usb; - virAsprintf(&dst, "/dev/bus/usb/%03d/%03d", usbsrc->bus, usbsrc->devic= e); + dst =3D g_strdup_printf("/dev/bus/usb/%03d/%03d", usbsrc->bus, usbsrc-= >device); =20 if (!virCgroupHasController(priv->cgroup, VIR_CGROUP_CONTROLLER_DEVICE= S)) { virReportError(VIR_ERR_OPERATION_INVALID, "%s", diff --git a/src/lxc/lxc_fuse.c b/src/lxc/lxc_fuse.c index 35dbad7986..3e2ad197d3 100644 --- a/src/lxc/lxc_fuse.c +++ b/src/lxc/lxc_fuse.c @@ -47,7 +47,7 @@ static int lxcProcGetattr(const char *path, struct stat *= stbuf) virDomainDefPtr def =3D (virDomainDefPtr)context->private_data; =20 memset(stbuf, 0, sizeof(struct stat)); - virAsprintf(&mempath, "/proc/%s", path); + mempath =3D g_strdup_printf("/proc/%s", path); =20 res =3D 0; =20 @@ -250,7 +250,7 @@ static int lxcProcRead(const char *path G_GNUC_UNUSED, struct fuse_context *context =3D NULL; virDomainDefPtr def =3D NULL; =20 - virAsprintf(&hostpath, "/proc/%s", path); + hostpath =3D g_strdup_printf("/proc/%s", path); =20 context =3D fuse_get_context(); def =3D (virDomainDefPtr)context->private_data; @@ -305,7 +305,7 @@ int lxcSetupFuse(virLXCFusePtr *f, virDomainDefPtr def) if (virMutexInit(&fuse->lock) < 0) goto cleanup2; =20 - virAsprintf(&fuse->mountpoint, "%s/%s.fuse/", LXC_STATE_DIR, def->name= ); + fuse->mountpoint =3D g_strdup_printf("%s/%s.fuse/", LXC_STATE_DIR, def= ->name); =20 if (virFileMakePath(fuse->mountpoint) < 0) { virReportSystemError(errno, _("Cannot create %s"), diff --git a/src/lxc/lxc_monitor.c b/src/lxc/lxc_monitor.c index 1983af135e..479125374b 100644 --- a/src/lxc/lxc_monitor.c +++ b/src/lxc/lxc_monitor.c @@ -151,7 +151,7 @@ virLXCMonitorPtr virLXCMonitorNew(virDomainObjPtr vm, if (!(mon =3D virObjectLockableNew(virLXCMonitorClass))) return NULL; =20 - virAsprintf(&sockpath, "%s/%s.sock", socketdir, vm->def->name); + sockpath =3D g_strdup_printf("%s/%s.sock", socketdir, vm->def->name); =20 if (!(mon->client =3D virNetClientNewUNIX(sockpath, false, NULL))) goto error; diff --git a/src/lxc/lxc_native.c b/src/lxc/lxc_native.c index c7cf2c4b0e..b9dffd6de9 100644 --- a/src/lxc/lxc_native.c +++ b/src/lxc/lxc_native.c @@ -265,7 +265,7 @@ lxcAddFstabLine(virDomainDefPtr def, lxcFstabPtr fstab) return -1; =20 if (fstab->dst[0] !=3D '/') { - virAsprintf(&dst, "/%s", fstab->dst); + dst =3D g_strdup_printf("/%s", fstab->dst); } else { dst =3D g_strdup(fstab->dst); } @@ -491,8 +491,8 @@ lxcAddNetworkDefinition(lxcNetworkParseData *data) * on the host */ if (isVlan && data->vlanid) { VIR_FREE(hostdev->source.caps.u.net.ifname); - virAsprintf(&hostdev->source.caps.u.net.ifname, "%s.%s", - data->link, data->vlanid); + hostdev->source.caps.u.net.ifname =3D g_strdup_printf("%s.%s", + data->link= , data->vlanid); } =20 hostdev->source.caps.u.net.ip.ips =3D data->ips; @@ -948,7 +948,7 @@ lxcBlkioDeviceWalkCallback(const char *name, virConfVal= uePtr value, void *data) goto cleanup; } =20 - virAsprintf(&path, "/dev/block/%s", parts[0]); + path =3D g_strdup_printf("/dev/block/%s", parts[0]); =20 /* Do we already have a device definition for this path? * Get that device or create a new one */ diff --git a/src/lxc/lxc_process.c b/src/lxc/lxc_process.c index 2ec5762856..b59e66c29a 100644 --- a/src/lxc/lxc_process.c +++ b/src/lxc/lxc_process.c @@ -138,7 +138,7 @@ lxcProcessRemoveDomainStatus(virLXCDriverConfigPtr cfg, char ebuf[1024]; char *file =3D NULL; =20 - virAsprintf(&file, "%s/%s.xml", cfg->stateDir, vm->def->name); + file =3D g_strdup_printf("%s/%s.xml", cfg->stateDir, vm->def->name); =20 if (unlink(file) < 0 && errno !=3D ENOENT && errno !=3D ENOTDIR) VIR_WARN("Failed to remove domain XML for %s: %s", @@ -418,8 +418,8 @@ static int virLXCProcessSetupNamespaceName(virConnectPt= r conn, int ns_type, cons goto cleanup; } =20 - virAsprintf(&path, "/proc/%lld/ns/%s", (long long int)priv->initpid, - nsInfoLocal[ns_type]); + path =3D g_strdup_printf("/proc/%lld/ns/%s", (long long int)priv->init= pid, + nsInfoLocal[ns_type]); =20 if ((fd =3D open(path, O_RDONLY)) < 0) { virReportSystemError(errno, @@ -440,7 +440,7 @@ static int virLXCProcessSetupNamespacePID(int ns_type, = const char *name) int fd; char *path; =20 - virAsprintf(&path, "/proc/%s/ns/%s", name, nsInfoLocal[ns_type]); + path =3D g_strdup_printf("/proc/%s/ns/%s", name, nsInfoLocal[ns_type]); fd =3D open(path, O_RDONLY); VIR_FREE(path); if (fd < 0) { @@ -464,7 +464,7 @@ static int virLXCProcessSetupNamespaceNet(int ns_type, = const char *name) return -1; } =20 - virAsprintf(&path, "%s/netns/%s", RUNSTATEDIR, name); + path =3D g_strdup_printf("%s/netns/%s", RUNSTATEDIR, name); fd =3D open(path, O_RDONLY); VIR_FREE(path); if (fd < 0) { @@ -625,7 +625,7 @@ static int virLXCProcessSetupInterfaces(virConnectPtr c= onn, =20 /* Make sure all net definitions will have a name in the container= */ if (!net->ifname_guest) { - virAsprintf(&net->ifname_guest, "eth%zu", niface); + net->ifname_guest =3D g_strdup_printf("eth%zu", niface); niface++; } } @@ -749,7 +749,7 @@ virLXCProcessGetNsInode(pid_t pid, struct stat sb; int ret =3D -1; =20 - virAsprintf(&path, "/proc/%lld/ns/%s", (long long)pid, nsname); + path =3D g_strdup_printf("/proc/%lld/ns/%s", (long long)pid, nsname); =20 if (stat(path, &sb) < 0) { virReportSystemError(errno, @@ -974,7 +974,7 @@ virLXCProcessBuildControllerCmd(virLXCDriverPtr driver, for (i =3D 0; i < VIR_LXC_DOMAIN_NAMESPACE_LAST; i++) { if (nsInheritFDs[i] > 0) { char *tmp =3D NULL; - virAsprintf(&tmp, "--share-%s", nsInfoLocal[i]); + tmp =3D g_strdup_printf("--share-%s", nsInfoLocal[i]); virCommandAddArg(cmd, tmp); virCommandAddArgFormat(cmd, "%d", nsInheritFDs[i]); virCommandPassFD(cmd, nsInheritFDs[i], 0); @@ -1257,7 +1257,7 @@ int virLXCProcessStart(virConnectPtr conn, vm->def->resource =3D res; } =20 - virAsprintf(&logfile, "%s/%s.log", cfg->logDir, vm->def->name); + logfile =3D g_strdup_printf("%s/%s.log", cfg->logDir, vm->def->name); =20 if (!(pidfile =3D virPidFileBuildPath(cfg->stateDir, vm->def->name))) goto cleanup; @@ -1344,7 +1344,7 @@ int virLXCProcessStart(virConnectPtr conn, vm->def->consoles[i]->source->data.file.path =3D ttyPath; =20 VIR_FREE(vm->def->consoles[i]->info.alias); - virAsprintf(&vm->def->consoles[i]->info.alias, "console%zu", i); + vm->def->consoles[i]->info.alias =3D g_strdup_printf("console%zu",= i); } =20 VIR_DEBUG("Setting up Interfaces"); --=20 2.21.0 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list