diff options
author | Bernhard Reutner-Fischer | 2008-05-19 08:18:50 +0000 |
---|---|---|
committer | Bernhard Reutner-Fischer | 2008-05-19 08:18:50 +0000 |
commit | ae4342ca3e30f7b11732ecda3ad15821e81bc314 (patch) | |
tree | 1878104940eac4649bc8add4d0b2893ab1cb0a94 /console-tools/setconsole.c | |
parent | ee56e013cfb6304f66129afee7978b0864699419 (diff) | |
download | busybox-ae4342ca3e30f7b11732ecda3ad15821e81bc314.zip busybox-ae4342ca3e30f7b11732ecda3ad15821e81bc314.tar.gz |
- Rename getpty() to xgetpty() and adjust callers.
- Rewrite kbd_mode and setconsole
- Introduce and use console_make_active() and xopen_xwrite_close()
- honour buffer-reservation method as set by the user (dumpkmap, loadkmap)
- shrink rtcwake and some console-tools
Saves about 270 Bytes
Diffstat (limited to 'console-tools/setconsole.c')
-rw-r--r-- | console-tools/setconsole.c | 32 |
1 files changed, 13 insertions, 19 deletions
diff --git a/console-tools/setconsole.c b/console-tools/setconsole.c index 8765a7c..82fe83f 100644 --- a/console-tools/setconsole.c +++ b/console-tools/setconsole.c @@ -3,40 +3,34 @@ * setconsole.c - redirect system console output * * Copyright (C) 2004,2005 Enrik Berkhan <Enrik.Berkhan@inka.de> + * Copyright (C) 2008 Bernhard Fischer * * Licensed under GPLv2 or later, see file LICENSE in this tarball for details. */ #include "libbb.h" -#if ENABLE_FEATURE_SETCONSOLE_LONG_OPTIONS -static const char setconsole_longopts[] ALIGN1 = - "reset\0" No_argument "r" - ; -#endif - -#define OPT_SETCONS_RESET 1 - int setconsole_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE; -int setconsole_main(int argc, char **argv) +int setconsole_main(int ATTRIBUTE_UNUSED argc, char **argv) { - unsigned long flags; const char *device = CURRENT_TTY; + bool reset; #if ENABLE_FEATURE_SETCONSOLE_LONG_OPTIONS + static const char setconsole_longopts[] ALIGN1 = + "reset\0" No_argument "r" + ; applet_long_options = setconsole_longopts; #endif - flags = getopt32(argv, "r"); - - if (argc - optind > 1) - bb_show_usage(); + /* at most one non-option argument */ + opt_complementary = "?1"; + reset = getopt32(argv, "r"); - if (argc - optind == 1) { - if (flags & OPT_SETCONS_RESET) - bb_show_usage(); - device = argv[optind]; + argv += 1 + reset; + if (*argv) { + device = *argv; } else { - if (flags & OPT_SETCONS_RESET) + if (reset) device = DEV_CONSOLE; } |