mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 06:05:27 +00:00
Disks are always block devices, never character devices
The LXC disk hotplug code was allowing block or character devices
to be given as disk. A disk is always a block device.
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
(cherry picked from commit d24e6b8b1e
)
This commit is contained in:
parent
1d45e872ba
commit
7c098f2357
@ -3061,9 +3061,9 @@ lxcDomainAttachDeviceDiskLive(virLXCDriverPtr driver,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
if (!S_ISCHR(sb.st_mode) && !S_ISBLK(sb.st_mode)) {
|
||||
if (!S_ISBLK(sb.st_mode)) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
|
||||
_("Disk source %s must be a character/block device"),
|
||||
_("Disk source %s must be a block device"),
|
||||
def->src);
|
||||
goto cleanup;
|
||||
}
|
||||
@ -3075,11 +3075,7 @@ lxcDomainAttachDeviceDiskLive(virLXCDriverPtr driver,
|
||||
if (VIR_REALLOC_N(vm->def->disks, vm->def->ndisks+1) < 0)
|
||||
goto cleanup;
|
||||
|
||||
mode = 0700;
|
||||
if (S_ISCHR(sb.st_mode))
|
||||
mode |= S_IFCHR;
|
||||
else
|
||||
mode |= S_IFBLK;
|
||||
mode = 0700 | S_IFBLK;
|
||||
|
||||
/* Yes, the device name we're creating may not
|
||||
* actually correspond to the major:minor number
|
||||
|
Loading…
Reference in New Issue
Block a user