aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2002-04-13 14:26:44 +0000
committerEric Andersen <andersen@codepoet.org>2002-04-13 14:26:44 +0000
commit19732c6226e9f2f89b9294e3c23af2bfbb084cec (patch)
tree8cb27a6dc89fb8bd13f918e86a443e08adfa894d
parent4e116823f406a51daf1aeeaad538d613d2b51cc1 (diff)
downloadbusybox-w32-19732c6226e9f2f89b9294e3c23af2bfbb084cec.tar.gz
busybox-w32-19732c6226e9f2f89b9294e3c23af2bfbb084cec.tar.bz2
busybox-w32-19732c6226e9f2f89b9294e3c23af2bfbb084cec.zip
Teach makedevs to not segfault quite so much
-rw-r--r--miscutils/makedevs.c23
1 files changed, 11 insertions, 12 deletions
diff --git a/miscutils/makedevs.c b/miscutils/makedevs.c
index b8c6dd1d8..4e50a6d71 100644
--- a/miscutils/makedevs.c
+++ b/miscutils/makedevs.c
@@ -17,23 +17,22 @@
17 17
18int makedevs_main(int argc, char **argv) 18int makedevs_main(int argc, char **argv)
19{ 19{
20
21 const char *basedev = argv[1];
22 const char *type = argv[2];
23 int major = atoi(argv[3]);
24 int Sminor = atoi(argv[4]);
25 int S = atoi(argv[5]);
26 int E = atoi(argv[6]);
27 int sbase = argc == 8 ? 1 : 0;
28
29 mode_t mode = 0;
30 dev_t dev = 0; 20 dev_t dev = 0;
31 char devname[255]; 21 mode_t mode = 0;
32 char buf[255]; 22 char *basedev, *type, devname[255], buf[255];
23 int major, Sminor, S, E, sbase;
33 24
34 if (argc < 7 || *argv[1]=='-') 25 if (argc < 7 || *argv[1]=='-')
35 show_usage(); 26 show_usage();
36 27
28 basedev = argv[1];
29 type = argv[2];
30 major = atoi(argv[3]);
31 Sminor = atoi(argv[4]);
32 S = atoi(argv[5]);
33 E = atoi(argv[6]);
34 sbase = argc == 8 ? 1 : 0;
35
37 switch (type[0]) { 36 switch (type[0]) {
38 case 'c': 37 case 'c':
39 mode = S_IFCHR; 38 mode = S_IFCHR;