From: Demi Marie Obenour Date: Sat, 3 Jun 2023 14:52:43 +0000 (-0400) Subject: dm ioctl: Refuse to create device named "control" X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=a85f1a9de91a59cd9b12d60f631cbda9c56a1c3c;p=linux.git dm ioctl: Refuse to create device named "control" Typical userspace setups create a symlink under /dev/mapper with the name of the device, but /dev/mapper/control is reserved for DM's control device. Therefore, trying to create such a device is almost certain to be a userspace bug. Signed-off-by: Demi Marie Obenour Signed-off-by: Mike Snitzer --- diff --git a/drivers/md/dm-ioctl.c b/drivers/md/dm-ioctl.c index bfaebc02833a0..e172a91e88dc7 100644 --- a/drivers/md/dm-ioctl.c +++ b/drivers/md/dm-ioctl.c @@ -767,7 +767,12 @@ static int get_target_version(struct file *filp, struct dm_ioctl *param, size_t static int check_name(const char *name) { if (strchr(name, '/')) { - DMERR("invalid device name"); + DMERR("device name cannot contain '/'"); + return -EINVAL; + } + + if (strcmp(name, DM_CONTROL_NODE) == 0) { + DMERR("device name cannot be \"%s\"", DM_CONTROL_NODE); return -EINVAL; }