]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
avoid confusion with parameter 'devname' with same name, ensure buffer is large enoug...
authorBas van Schaik <bas@traiectum.net>
Thu, 3 Dec 2015 13:28:32 +0000 (13:28 +0000)
committerBas van Schaik <bas@traiectum.net>
Thu, 3 Dec 2015 13:48:46 +0000 (13:48 +0000)
Incremental.c

index 32090d9b816d4aeb795c8a09f49b783410943356..a91129e2224d9190f7e0e215b8fd62c3234223fd 100644 (file)
@@ -1030,12 +1030,12 @@ static int array_try_spare(char *devname, int *dfdp, struct dev_policy *pol,
                int mdfd = open_dev(chosen->sys_name);
                if (mdfd >= 0) {
                        struct mddev_dev devlist;
-                       char devname[20];
+                       char chosen_devname[24]; // 2*11 for int (including signs) + colon + null
                        devlist.next = NULL;
                        devlist.used = 0;
                        devlist.writemostly = 0;
-                       devlist.devname = devname;
-                       sprintf(devname, "%d:%d", major(stb.st_rdev),
+                       devlist.devname = chosen_devname;
+                       sprintf(chosen_devname, "%d:%d", major(stb.st_rdev),
                                minor(stb.st_rdev));
                        devlist.disposition = 'a';
                        close(dfd);