From 4baa8d7637794392749970bd8e2568ff07ce8dba Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Fri, 13 Sep 2013 15:32:43 +0200 Subject: [PATCH] cleanup: Kill usage of access(PATH, F_OK) in favor of virFileExists() Semantics of the libvirt helper are more clear. This change also allows to clean up some pieces of code. --- src/openvz/openvz_conf.c | 2 +- src/parallels/parallels_storage.c | 2 +- src/qemu/qemu_capabilities.c | 4 ++-- src/qemu/qemu_cgroup.c | 6 +++--- src/qemu/qemu_process.c | 2 +- src/storage/storage_backend_fs.c | 5 ++--- src/storage/storage_backend_logical.c | 2 +- src/storage/storage_backend_mpath.c | 8 +------- src/storage/storage_backend_scsi.c | 3 +-- src/util/vircgroup.c | 2 +- src/util/virfile.c | 2 +- src/util/virpci.c | 2 +- src/util/virscsi.c | 2 +- src/util/virutil.c | 6 +++--- 14 files changed, 20 insertions(+), 28 deletions(-) diff --git a/src/openvz/openvz_conf.c b/src/openvz/openvz_conf.c index 93f2377413..0dbaa4a877 100644 --- a/src/openvz/openvz_conf.c +++ b/src/openvz/openvz_conf.c @@ -940,7 +940,7 @@ openvzLocateConfDir(void) char *ret = NULL; while (conf_dir_list[i]) { - if (!access(conf_dir_list[i], F_OK)) { + if (virFileExists(conf_dir_list[i])) { ignore_value(VIR_STRDUP(ret, conf_dir_list[i])); goto cleanup; } diff --git a/src/parallels/parallels_storage.c b/src/parallels/parallels_storage.c index 44246a7b43..bb5066f529 100644 --- a/src/parallels/parallels_storage.c +++ b/src/parallels/parallels_storage.c @@ -362,7 +362,7 @@ static int parallelsFindVmVolumes(virStoragePoolObjPtr pool, "DiskDescriptor", ".xml"))) goto cleanup; - if (access(diskDescPath, F_OK)) + if (!virFileExists(diskDescPath)) continue; /* here we know, that ent->d_name is a disk image directory */ diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index d94188a461..d830e2ab2f 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -731,13 +731,13 @@ virQEMUCapsInitGuest(virCapsPtr caps, if (!binary) return 0; - if (access("/dev/kvm", F_OK) == 0 && + if (virFileExists("/dev/kvm") && (virQEMUCapsGet(qemubinCaps, QEMU_CAPS_KVM) || virQEMUCapsGet(qemubinCaps, QEMU_CAPS_ENABLE_KVM) || kvmbin)) haskvm = true; - if (access("/dev/kqemu", F_OK) == 0 && + if (virFileExists("/dev/kqemu") && virQEMUCapsGet(qemubinCaps, QEMU_CAPS_KQEMU)) haskqemu = true; diff --git a/src/qemu/qemu_cgroup.c b/src/qemu/qemu_cgroup.c index cf41c33247..f95c7f2e67 100644 --- a/src/qemu/qemu_cgroup.c +++ b/src/qemu/qemu_cgroup.c @@ -33,6 +33,7 @@ #include "domain_audit.h" #include "virscsi.h" #include "virstring.h" +#include "virfile.h" #define VIR_FROM_THIS VIR_FROM_QEMU @@ -501,9 +502,8 @@ qemuSetupDevicesCgroup(virQEMUDriverPtr driver, } for (i = 0; deviceACL[i] != NULL; i++) { - if (access(deviceACL[i], F_OK) < 0) { - VIR_DEBUG("Ignoring non-existant device %s", - deviceACL[i]); + if (!virFileExists(deviceACL[i])) { + VIR_DEBUG("Ignoring non-existant device %s", deviceACL[i]); continue; } diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index c7cec5aab1..dd16f6ccbe 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -3632,7 +3632,7 @@ int qemuProcessStart(virConnectPtr conn, if (vm->def->virtType == VIR_DOMAIN_VIRT_KVM) { VIR_DEBUG("Checking for KVM availability"); - if (access("/dev/kvm", F_OK) != 0) { + if (!virFileExists("/dev/kvm")) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", _("Domain requires KVM, but it is not available. " "Check that virtualization is enabled in the host BIOS, " diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c index d305b063ff..f9b0326561 100644 --- a/src/storage/storage_backend_fs.c +++ b/src/storage/storage_backend_fs.c @@ -501,13 +501,12 @@ virStorageBackendFileSystemCheck(virConnectPtr conn ATTRIBUTE_UNUSED, virStoragePoolObjPtr pool, bool *isActive) { - *isActive = false; if (pool->def->type == VIR_STORAGE_POOL_DIR) { - if (access(pool->def->target.path, F_OK) == 0) - *isActive = true; + *isActive = virFileExists(pool->def->target.path); #if WITH_STORAGE_FS } else { int ret; + *isActive = false; if ((ret = virStorageBackendFileSystemIsMounted(pool)) != 0) { if (ret < 0) return -1; diff --git a/src/storage/storage_backend_logical.c b/src/storage/storage_backend_logical.c index 0b146793e8..a1a37a1428 100644 --- a/src/storage/storage_backend_logical.c +++ b/src/storage/storage_backend_logical.c @@ -453,7 +453,7 @@ virStorageBackendLogicalCheckPool(virConnectPtr conn ATTRIBUTE_UNUSED, virStoragePoolObjPtr pool, bool *isActive) { - *isActive = (access(pool->def->target.path, F_OK) == 0); + *isActive = virFileExists(pool->def->target.path); return 0; } diff --git a/src/storage/storage_backend_mpath.c b/src/storage/storage_backend_mpath.c index 8333f18087..9a19484292 100644 --- a/src/storage/storage_backend_mpath.c +++ b/src/storage/storage_backend_mpath.c @@ -287,13 +287,7 @@ virStorageBackendMpathCheckPool(virConnectPtr conn ATTRIBUTE_UNUSED, virStoragePoolObjPtr pool ATTRIBUTE_UNUSED, bool *isActive) { - const char *path = "/dev/mpath"; - - *isActive = false; - - if (access(path, F_OK) == 0) - *isActive = true; - + *isActive = virFileExists("/dev/mpath"); return 0; } diff --git a/src/storage/storage_backend_scsi.c b/src/storage/storage_backend_scsi.c index 8cb762a9f9..5769799724 100644 --- a/src/storage/storage_backend_scsi.c +++ b/src/storage/storage_backend_scsi.c @@ -700,8 +700,7 @@ virStorageBackendSCSICheckPool(virConnectPtr conn ATTRIBUTE_UNUSED, if (virAsprintf(&path, "/sys/class/scsi_host/host%d", host) < 0) goto cleanup; - if (access(path, F_OK) == 0) - *isActive = true; + *isActive = virFileExists(path); ret = 0; cleanup: diff --git a/src/util/vircgroup.c b/src/util/vircgroup.c index 626bbc6b87..a615f28fe8 100644 --- a/src/util/vircgroup.c +++ b/src/util/vircgroup.c @@ -905,7 +905,7 @@ virCgroupMakeGroup(virCgroupPtr parent, sa_assert(group->controllers[i].mountPoint); VIR_DEBUG("Make controller %s", path); - if (access(path, F_OK) != 0) { + if (!virFileExists(path)) { if (!create || mkdir(path, 0755) < 0) { /* With a kernel that doesn't support multi-level directory diff --git a/src/util/virfile.c b/src/util/virfile.c index a7635f45b6..20ca89fd56 100644 --- a/src/util/virfile.c +++ b/src/util/virfile.c @@ -735,7 +735,7 @@ virFileNBDDeviceIsBusy(const char *devname) devname) < 0) return -1; - if (access(path, F_OK) < 0) { + if (!virFileExists(path)) { if (errno == ENOENT) ret = 0; else diff --git a/src/util/virpci.c b/src/util/virpci.c index 92927aa58f..65d716879a 100644 --- a/src/util/virpci.c +++ b/src/util/virpci.c @@ -1501,7 +1501,7 @@ virPCIDeviceNew(unsigned int domain, dev->name) < 0) goto error; - if (access(dev->path, F_OK) != 0) { + if (!virFileExists(dev->path)) { virReportSystemError(errno, _("Device %s not found: could not access %s"), dev->name, dev->path); diff --git a/src/util/virscsi.c b/src/util/virscsi.c index 32e438bd5b..43658c0ed9 100644 --- a/src/util/virscsi.c +++ b/src/util/virscsi.c @@ -216,7 +216,7 @@ virSCSIDeviceNew(const char *adapter, virAsprintf(&dev->sg_path, "/dev/%s", sg) < 0) goto cleanup; - if (access(dev->sg_path, F_OK) != 0) { + if (!virFileExists(dev->sg_path)) { virReportSystemError(errno, _("SCSI device '%s': could not access %s"), dev->name, dev->sg_path); diff --git a/src/util/virutil.c b/src/util/virutil.c index 39d47171b6..d9e0bc4a42 100644 --- a/src/util/virutil.c +++ b/src/util/virutil.c @@ -1711,7 +1711,7 @@ virIsCapableFCHost(const char *sysfs_prefix, host) < 0) return false; - if (access(sysfs_path, F_OK) == 0) + if (virFileExists(sysfs_path)) ret = true; VIR_FREE(sysfs_path); @@ -1740,8 +1740,8 @@ virIsCapableVport(const char *sysfs_prefix, "vport_create") < 0) goto cleanup; - if ((access(fc_host_path, F_OK) == 0) || - (access(scsi_host_path, F_OK) == 0)) + if (virFileExists(fc_host_path) || + virFileExists(scsi_host_path)) ret = true; cleanup: -- GitLab