diff options
author | Erik Andersen <andersen@codepoet.org> | 2000-01-07 18:30:40 +0000 |
---|---|---|
committer | Erik Andersen <andersen@codepoet.org> | 2000-01-07 18:30:40 +0000 |
commit | 812d46667d8f558f58f1e668169d359b1203c5ef (patch) | |
tree | 2c6d50a4c7a33431a288fb523622d2e311663438 | |
parent | 96e2abd0849c1980dad10013ef0d17027554ef9f (diff) | |
download | busybox-w32-812d46667d8f558f58f1e668169d359b1203c5ef.tar.gz busybox-w32-812d46667d8f558f58f1e668169d359b1203c5ef.tar.bz2 busybox-w32-812d46667d8f558f58f1e668169d359b1203c5ef.zip |
More minor fixes.
-Erik
-rw-r--r-- | Changelog | 29 | ||||
-rw-r--r-- | TODO | 5 | ||||
-rw-r--r-- | coreutils/mknod.c | 7 | ||||
-rw-r--r-- | init.c | 12 | ||||
-rw-r--r-- | init/init.c | 12 | ||||
-rw-r--r-- | mknod.c | 7 |
6 files changed, 39 insertions, 33 deletions
@@ -1,39 +1,44 @@ | |||
1 | 0.40 | 1 | 0.40 |
2 | * Added the -s option to du -beppu | 2 | * Added the -s option to du -beppu |
3 | * Fixed an embarrasing segfault in head -beppu | 3 | * Fixed an embarrasing segfault in head -beppu |
4 | * Fixed an bug in syslogd causing it to stop after 20 minutes. -erik | 4 | * New Apps: sort, uniq. -beppu |
5 | * New Apps: lsmod, rmmod -erik | 5 | * New Apps: lsmod, rmmod -erik |
6 | * New Apps: fbset contributed by Randolph Chung <tausq@debian.org>. | 6 | * New Apps: fbset contributed by Randolph Chung <tausq@debian.org>. |
7 | * New App:: loadacm contributed by Peter Novodvorsky <petya@logic.ru> | ||
8 | for loading application character maps for Unicode fonts. | ||
9 | * Major init re-work. init now supports inittab (slightly different | ||
10 | but similar to sysvinit), allowing me to get all the policy out | ||
11 | of init and into the conf file. It works just fine without inittab | ||
12 | being present, but if you dont like the defautl behavior you can | ||
13 | now do something about it. Init is much cleaner as a result. | ||
14 | * Fixed an bug in syslogd causing it to stop after 20 minutes. -erik | ||
7 | * Fixed the embarrasing failure of 'logger -p'. -erik | 15 | * Fixed the embarrasing failure of 'logger -p'. -erik |
8 | * Re-worked the source tree a bit so it will compile under glibc 2.0.7 | 16 | * Re-worked the source tree a bit so it will compile under glibc 2.0.7 |
9 | with the 2.0.x Linux kernel. | 17 | with the 2.0.x Linux kernel. |
10 | * Added 'grep -q' thanks to a patch from "Konstantin Boldyshev" | 18 | * Added 'grep -q' thanks to a patch from "Konstantin Boldyshev" |
11 | <konst@voshod.com>. | 19 | <konst@voshod.com>. |
12 | * Implemented sort. -beppu | 20 | * Grep -i previously failed on UPPER CASE patterns due to a silly |
21 | regexp implementation bug that is now fixed. | ||
13 | * Fixed a bug where tar would set, and then clear SGID and SUID bits. | 22 | * Fixed a bug where tar would set, and then clear SGID and SUID bits. |
14 | * Fixed a bug where tar would not set the user and group on device | 23 | * Fixed a bug where tar would not set the user and group on device |
15 | special files. | 24 | special files. |
25 | * Fixed a bug where tar would not restore the time to files. | ||
26 | * Fixed a major security problem with tar -- it changed ownership | ||
27 | of any file pointed to by a symlink to 777 (like say libc....) | ||
28 | Ouch!!! | ||
16 | * cp and mv were very broken when moving directories. I have rewritten | 29 | * cp and mv were very broken when moving directories. I have rewritten |
17 | them so they should now work as expected. | 30 | them so they should now work as expected. |
18 | * New app: loadacm contributed by Peter Novodvorsky <petya@logic.ru> | ||
19 | for loading application character maps for Unicode fonts. | ||
20 | * sed now supports addresses (numeric or regexp, with negation) and | 31 | * sed now supports addresses (numeric or regexp, with negation) and |
21 | has an append command, thanks to Marco Pantaleoni <panta@prosa.it> | 32 | has an append command, thanks to Marco Pantaleoni <panta@prosa.it> |
22 | * Fixed dmesg. It wasn't parsing its options (-n or -s) properly. | 33 | * Fixed dmesg. It wasn't parsing its options (-n or -s) properly. |
23 | * Some cosmetic fixes to ls output formatting to make it behave more | 34 | * Some cosmetic fixes to ls output formatting to make it behave more |
24 | like GNU ls. | 35 | like GNU ls. |
25 | * Fixed a bug where tar would not restore the time to files. | ||
26 | * Fixed a major security problem with tar -- it changed ownership | ||
27 | of any file pointed to by a symlink to 777 (like say libc....) | ||
28 | Ouch!!! | ||
29 | * Fixed a stupid segfault in kill. | 36 | * Fixed a stupid segfault in kill. |
30 | * Several fixes from Friedrich Vedder <fwv@myrtle.lahn.de>: | 37 | * Several fixes from Friedrich Vedder <fwv@myrtle.lahn.de>: |
31 | - Added gunzip -t, removed gunzip.c dead code, | 38 | - Added gunzip -t, removed gunzip.c dead code, |
32 | - fixed several typos | 39 | - fixed several typos |
33 | - Glibc 2.0.7 and libc5 compile fixes | 40 | - Glibc 2.0.7 and libc5 compile fixes |
34 | * Grep -i previously failed on UPPER CASE patterns due to a silly | 41 | * Fixed a bug where 'mknod --help' would segfault. |
35 | regexp implementation bug that is now fixed. | ||
36 | # Implemented uniq. -beppu | ||
37 | 42 | ||
38 | 43 | ||
39 | -Erik Andersen | 44 | -Erik Andersen |
@@ -10,13 +10,8 @@ around to it some time. If you have any good ideas, please let me know. | |||
10 | 10 | ||
11 | ----------- | 11 | ----------- |
12 | 12 | ||
13 | * mknod --help segfaults | ||
14 | |||
15 | * Allow tar to create archives with sockets, devices, and other special files | 13 | * Allow tar to create archives with sockets, devices, and other special files |
16 | * Make insmod actually work | 14 | * Make insmod actually work |
17 | * init clearly needs to support some type of minimalist /etc/inittab. I | ||
18 | currently have _way_ too much policy hardcoded in the source. Adding | ||
19 | support for getty has made me realize how much that sucks. | ||
20 | * dnsdomainname | 15 | * dnsdomainname |
21 | * traceroute/nslookup/netstat | 16 | * traceroute/nslookup/netstat |
22 | * rdate | 17 | * rdate |
diff --git a/coreutils/mknod.c b/coreutils/mknod.c index c3389cc71..5822cd3ad 100644 --- a/coreutils/mknod.c +++ b/coreutils/mknod.c | |||
@@ -27,9 +27,9 @@ | |||
27 | #include <fcntl.h> | 27 | #include <fcntl.h> |
28 | #include <unistd.h> | 28 | #include <unistd.h> |
29 | 29 | ||
30 | static const char mknod_usage[] = "mknod [OPTION]... NAME TYPE MAJOR MINOR\n\n" | 30 | static const char mknod_usage[] = "mknod NAME TYPE MAJOR MINOR\n\n" |
31 | "Make block or character special files.\n\n" | 31 | "Make block or character special files.\n\n" |
32 | "Options:\n" | 32 | "TYPEs include:\n" |
33 | "\tb:\tMake a block (buffered) device.\n" | 33 | "\tb:\tMake a block (buffered) device.\n" |
34 | "\tc or u:\tMake a character (un-buffered) device.\n" | 34 | "\tc or u:\tMake a character (un-buffered) device.\n" |
35 | "\tp:\tMake a named pipe. Major and minor are ignored for named pipes.\n"; | 35 | "\tp:\tMake a named pipe. Major and minor are ignored for named pipes.\n"; |
@@ -40,6 +40,9 @@ mknod_main(int argc, char** argv) | |||
40 | mode_t mode = 0; | 40 | mode_t mode = 0; |
41 | dev_t dev = 0; | 41 | dev_t dev = 0; |
42 | 42 | ||
43 | if ( argc != 5 || **(argv+1) == '-' ) { | ||
44 | usage (mknod_usage); | ||
45 | } | ||
43 | switch(argv[2][0]) { | 46 | switch(argv[2][0]) { |
44 | case 'c': | 47 | case 'c': |
45 | case 'u': | 48 | case 'u': |
@@ -312,7 +312,7 @@ static void console_init() | |||
312 | /* check for serial console and disable logging to tty3 & running a | 312 | /* check for serial console and disable logging to tty3 & running a |
313 | * shell to tty2 */ | 313 | * shell to tty2 */ |
314 | if (ioctl(0,TIOCGSERIAL,&sr) == 0) { | 314 | if (ioctl(0,TIOCGSERIAL,&sr) == 0) { |
315 | message(LOG|CONSOLE, "serial console detected. Disabling 2nd virtual terminal.\r\n", console ); | 315 | message(LOG|CONSOLE, "serial console detected. Disabling virtual terminals.\r\n", console ); |
316 | log = NULL; | 316 | log = NULL; |
317 | second_console = NULL; | 317 | second_console = NULL; |
318 | } | 318 | } |
@@ -523,8 +523,8 @@ void new_initAction (initActionEnum action, | |||
523 | } else | 523 | } else |
524 | strncpy(newAction->console, console, 255); | 524 | strncpy(newAction->console, console, 255); |
525 | newAction->pid = 0; | 525 | newAction->pid = 0; |
526 | message(LOG|CONSOLE, "process='%s' action='%d' console='%s'\n", | 526 | // message(LOG|CONSOLE, "process='%s' action='%d' console='%s'\n", |
527 | newAction->process, newAction->action, newAction->console); | 527 | // newAction->process, newAction->action, newAction->console); |
528 | } | 528 | } |
529 | 529 | ||
530 | void delete_initAction (initAction *action) | 530 | void delete_initAction (initAction *action) |
@@ -542,9 +542,9 @@ void delete_initAction (initAction *action) | |||
542 | /* NOTE that if BB_FEATURE_USE_INITTAB is NOT defined, | 542 | /* NOTE that if BB_FEATURE_USE_INITTAB is NOT defined, |
543 | * then parse_inittab() simply adds in some default | 543 | * then parse_inittab() simply adds in some default |
544 | * actions(i.e runs INIT_SCRIPT and then starts a pair | 544 | * actions(i.e runs INIT_SCRIPT and then starts a pair |
545 | * of "askfirst" shells. If BB_FEATURE_USE_INITTAB | 545 | * of "askfirst" shells). If BB_FEATURE_USE_INITTAB |
546 | * _is_ defined, but /etc/inittab is missing == same | 546 | * _is_ defined, but /etc/inittab is missing, this |
547 | * default behavior. | 547 | * results in the same set of default behaviors. |
548 | * */ | 548 | * */ |
549 | void parse_inittab(void) | 549 | void parse_inittab(void) |
550 | { | 550 | { |
diff --git a/init/init.c b/init/init.c index 88b8ed1c1..9c7710de8 100644 --- a/init/init.c +++ b/init/init.c | |||
@@ -312,7 +312,7 @@ static void console_init() | |||
312 | /* check for serial console and disable logging to tty3 & running a | 312 | /* check for serial console and disable logging to tty3 & running a |
313 | * shell to tty2 */ | 313 | * shell to tty2 */ |
314 | if (ioctl(0,TIOCGSERIAL,&sr) == 0) { | 314 | if (ioctl(0,TIOCGSERIAL,&sr) == 0) { |
315 | message(LOG|CONSOLE, "serial console detected. Disabling 2nd virtual terminal.\r\n", console ); | 315 | message(LOG|CONSOLE, "serial console detected. Disabling virtual terminals.\r\n", console ); |
316 | log = NULL; | 316 | log = NULL; |
317 | second_console = NULL; | 317 | second_console = NULL; |
318 | } | 318 | } |
@@ -523,8 +523,8 @@ void new_initAction (initActionEnum action, | |||
523 | } else | 523 | } else |
524 | strncpy(newAction->console, console, 255); | 524 | strncpy(newAction->console, console, 255); |
525 | newAction->pid = 0; | 525 | newAction->pid = 0; |
526 | message(LOG|CONSOLE, "process='%s' action='%d' console='%s'\n", | 526 | // message(LOG|CONSOLE, "process='%s' action='%d' console='%s'\n", |
527 | newAction->process, newAction->action, newAction->console); | 527 | // newAction->process, newAction->action, newAction->console); |
528 | } | 528 | } |
529 | 529 | ||
530 | void delete_initAction (initAction *action) | 530 | void delete_initAction (initAction *action) |
@@ -542,9 +542,9 @@ void delete_initAction (initAction *action) | |||
542 | /* NOTE that if BB_FEATURE_USE_INITTAB is NOT defined, | 542 | /* NOTE that if BB_FEATURE_USE_INITTAB is NOT defined, |
543 | * then parse_inittab() simply adds in some default | 543 | * then parse_inittab() simply adds in some default |
544 | * actions(i.e runs INIT_SCRIPT and then starts a pair | 544 | * actions(i.e runs INIT_SCRIPT and then starts a pair |
545 | * of "askfirst" shells. If BB_FEATURE_USE_INITTAB | 545 | * of "askfirst" shells). If BB_FEATURE_USE_INITTAB |
546 | * _is_ defined, but /etc/inittab is missing == same | 546 | * _is_ defined, but /etc/inittab is missing, this |
547 | * default behavior. | 547 | * results in the same set of default behaviors. |
548 | * */ | 548 | * */ |
549 | void parse_inittab(void) | 549 | void parse_inittab(void) |
550 | { | 550 | { |
@@ -27,9 +27,9 @@ | |||
27 | #include <fcntl.h> | 27 | #include <fcntl.h> |
28 | #include <unistd.h> | 28 | #include <unistd.h> |
29 | 29 | ||
30 | static const char mknod_usage[] = "mknod [OPTION]... NAME TYPE MAJOR MINOR\n\n" | 30 | static const char mknod_usage[] = "mknod NAME TYPE MAJOR MINOR\n\n" |
31 | "Make block or character special files.\n\n" | 31 | "Make block or character special files.\n\n" |
32 | "Options:\n" | 32 | "TYPEs include:\n" |
33 | "\tb:\tMake a block (buffered) device.\n" | 33 | "\tb:\tMake a block (buffered) device.\n" |
34 | "\tc or u:\tMake a character (un-buffered) device.\n" | 34 | "\tc or u:\tMake a character (un-buffered) device.\n" |
35 | "\tp:\tMake a named pipe. Major and minor are ignored for named pipes.\n"; | 35 | "\tp:\tMake a named pipe. Major and minor are ignored for named pipes.\n"; |
@@ -40,6 +40,9 @@ mknod_main(int argc, char** argv) | |||
40 | mode_t mode = 0; | 40 | mode_t mode = 0; |
41 | dev_t dev = 0; | 41 | dev_t dev = 0; |
42 | 42 | ||
43 | if ( argc != 5 || **(argv+1) == '-' ) { | ||
44 | usage (mknod_usage); | ||
45 | } | ||
43 | switch(argv[2][0]) { | 46 | switch(argv[2][0]) { |
44 | case 'c': | 47 | case 'c': |
45 | case 'u': | 48 | case 'u': |