diff options
author | Erik Andersen <andersen@codepoet.org> | 2000-04-28 22:10:34 +0000 |
---|---|---|
committer | Erik Andersen <andersen@codepoet.org> | 2000-04-28 22:10:34 +0000 |
commit | 6ed02a0ee010a28b7649a9ef734679f7818c57e3 (patch) | |
tree | 7cb786c18876841a546f222f20e4b35e0bcf576a | |
parent | abc199eb0cc485e42107595ca2d877c7724aced0 (diff) | |
download | busybox-w32-6ed02a0ee010a28b7649a9ef734679f7818c57e3.tar.gz busybox-w32-6ed02a0ee010a28b7649a9ef734679f7818c57e3.tar.bz2 busybox-w32-6ed02a0ee010a28b7649a9ef734679f7818c57e3.zip |
Fix stupid bugs. update was segfaulting. mknod minor # was always 0
due to a parsing bug. Oops.
-Erik
-rw-r--r-- | Changelog | 2 | ||||
-rw-r--r-- | coreutils/mknod.c | 3 | ||||
-rw-r--r-- | miscutils/update.c | 2 | ||||
-rw-r--r-- | mknod.c | 3 | ||||
-rw-r--r-- | update.c | 2 |
5 files changed, 8 insertions, 4 deletions
@@ -4,6 +4,8 @@ | |||
4 | * Added mktemp, contributed by Daniel Jacobowitz <dan@debian.org> | 4 | * Added mktemp, contributed by Daniel Jacobowitz <dan@debian.org> |
5 | * Fix for ping warnings from Sascha Ziemann <szi@aibon.ping.de> | 5 | * Fix for ping warnings from Sascha Ziemann <szi@aibon.ping.de> |
6 | * More doc updates | 6 | * More doc updates |
7 | * Fixed update segfault | ||
8 | * Fixed mknod -- minor number was always 0 | ||
7 | 9 | ||
8 | 10 | ||
9 | 0.43 | 11 | 0.43 |
diff --git a/coreutils/mknod.c b/coreutils/mknod.c index 0c93df64d..caa234f1f 100644 --- a/coreutils/mknod.c +++ b/coreutils/mknod.c | |||
@@ -58,6 +58,7 @@ int mknod_main(int argc, char **argv) | |||
58 | argc--; | 58 | argc--; |
59 | argv++; | 59 | argv++; |
60 | parse_mode(*argv, &perm); | 60 | parse_mode(*argv, &perm); |
61 | umask(0); | ||
61 | break; | 62 | break; |
62 | default: | 63 | default: |
63 | usage(mknod_usage); | 64 | usage(mknod_usage); |
@@ -87,7 +88,7 @@ int mknod_main(int argc, char **argv) | |||
87 | } | 88 | } |
88 | 89 | ||
89 | if (mode == S_IFCHR || mode == S_IFBLK) { | 90 | if (mode == S_IFCHR || mode == S_IFBLK) { |
90 | dev = (atoi(argv[2]) << 8) | atoi(argv[1]); | 91 | dev = (atoi(argv[2]) << 8) | atoi(argv[3]); |
91 | } | 92 | } |
92 | 93 | ||
93 | mode |= perm; | 94 | mode |= perm; |
diff --git a/miscutils/update.c b/miscutils/update.c index 1e3e032fd..18b13e8c9 100644 --- a/miscutils/update.c +++ b/miscutils/update.c | |||
@@ -52,7 +52,7 @@ extern int update_main(int argc, char **argv) | |||
52 | 52 | ||
53 | argc--; | 53 | argc--; |
54 | argv++; | 54 | argv++; |
55 | while (**argv == '-') { | 55 | while (argc>0 && **argv == '-') { |
56 | while (*++(*argv)) { | 56 | while (*++(*argv)) { |
57 | switch (**argv) { | 57 | switch (**argv) { |
58 | case 'S': | 58 | case 'S': |
@@ -58,6 +58,7 @@ int mknod_main(int argc, char **argv) | |||
58 | argc--; | 58 | argc--; |
59 | argv++; | 59 | argv++; |
60 | parse_mode(*argv, &perm); | 60 | parse_mode(*argv, &perm); |
61 | umask(0); | ||
61 | break; | 62 | break; |
62 | default: | 63 | default: |
63 | usage(mknod_usage); | 64 | usage(mknod_usage); |
@@ -87,7 +88,7 @@ int mknod_main(int argc, char **argv) | |||
87 | } | 88 | } |
88 | 89 | ||
89 | if (mode == S_IFCHR || mode == S_IFBLK) { | 90 | if (mode == S_IFCHR || mode == S_IFBLK) { |
90 | dev = (atoi(argv[2]) << 8) | atoi(argv[1]); | 91 | dev = (atoi(argv[2]) << 8) | atoi(argv[3]); |
91 | } | 92 | } |
92 | 93 | ||
93 | mode |= perm; | 94 | mode |= perm; |
@@ -52,7 +52,7 @@ extern int update_main(int argc, char **argv) | |||
52 | 52 | ||
53 | argc--; | 53 | argc--; |
54 | argv++; | 54 | argv++; |
55 | while (**argv == '-') { | 55 | while (argc>0 && **argv == '-') { |
56 | while (*++(*argv)) { | 56 | while (*++(*argv)) { |
57 | switch (**argv) { | 57 | switch (**argv) { |
58 | case 'S': | 58 | case 'S': |