[dm-devel] dm ioctl: prevent rename to empty name or uuid
Alasdair G Kergon
agk at redhat.com
Thu Aug 29 15:37:45 UTC 2013
Try something like this?
From: Alasdair G Kergon <agk at redhat.com>
A device-mapper device must always have a name consisting of a non-empty
string. If the device also has a uuid, this similarly must not be an
empty string.
The DM_DEV_CREATE_CMD ioctl enforces these rules when the device is
created, but this patch is needed to enforce them when DM_DEV_RENAME_CMD
is used to change the name or uuid.
Signed-off-by: Alasdair G Kergon <agk at redhat.com>
Cc: Mike Snitzer <snitzer at redhat.com>
Cc: Mikulas Patocka <mpatocka at redhat.com>
Reported-by: Zdenek Kabelac <zkabelac at redhat.com>
---
drivers/md/dm-ioctl.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: linux/drivers/md/dm-ioctl.c
===================================================================
--- linux.orig/drivers/md/dm-ioctl.c
+++ linux/drivers/md/dm-ioctl.c
@@ -877,7 +877,7 @@ static int dev_rename(struct dm_ioctl *p
unsigned change_uuid = (param->flags & DM_UUID_FLAG) ? 1 : 0;
if (new_data < param->data ||
- invalid_str(new_data, (void *) param + param_size) ||
+ invalid_str(new_data, (void *) param + param_size) || !*new_data ||
strlen(new_data) > (change_uuid ? DM_UUID_LEN - 1 : DM_NAME_LEN - 1)) {
DMWARN("Invalid new mapped device name or uuid string supplied.");
return -EINVAL;
More information about the dm-devel
mailing list