From: Dan Williams Date: Tue, 20 Jan 2009 08:36:50 +0000 (-0700) Subject: mdmon: expand permissible container device names X-Git-Tag: mdadm-3.0-devel3~51 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6f4098a6fd809acd6ef6a80051eec09f4536a27d;p=thirdparty%2Fmdadm.git mdmon: expand permissible container device names Allow any path that dereferences to an md device to be used in addition to the current symbolic md device names. Signed-off-by: Dan Williams --- diff --git a/mdmon.c b/mdmon.c index d39b88cb..5aad7638 100644 --- a/mdmon.c +++ b/mdmon.c @@ -306,9 +306,24 @@ int main(int argc, char *argv[]) usage(); } - devnum = devname2devnum(container_name); - devname = devnum2devname(devnum); - if (strcmp(container_name, devname) != 0) { + if (strncmp(container_name, "md", 2) == 0) { + devnum = devname2devnum(container_name); + devname = devnum2devname(devnum); + if (strcmp(container_name, devname) != 0) + devname = NULL; + } else { + struct stat st; + + devnum = NoMdDev; + if (stat(container_name, &st) == 0) + devnum = stat2devnum(&st); + if (devnum == NoMdDev) + devname = NULL; + else + devname = devnum2devname(devnum); + } + + if (!devname) { fprintf(stderr, "mdmon: %s is not a valid md device name\n", container_name); exit(1);