diff options
author | Justus Winter <4winter@informatik.uni-hamburg.de> | 2015-11-29 14:52:42 +0100 |
---|---|---|
committer | Justus Winter <4winter@informatik.uni-hamburg.de> | 2015-11-29 14:53:00 +0100 |
commit | 889e87e63ea60ab67470e60b3b7d7b5dbde9f9df (patch) | |
tree | f413e1f6289a91fe309d090ebdae919482dbc798 /debian/patches/bootshell0001-daemons-console-run-add-console-argument-to-select-t.patch | |
parent | b811b13d2f1a69d03ca64c6585be6cc2f0b9e68f (diff) |
drop patch series
Diffstat (limited to 'debian/patches/bootshell0001-daemons-console-run-add-console-argument-to-select-t.patch')
-rw-r--r-- | debian/patches/bootshell0001-daemons-console-run-add-console-argument-to-select-t.patch | 120 |
1 files changed, 0 insertions, 120 deletions
diff --git a/debian/patches/bootshell0001-daemons-console-run-add-console-argument-to-select-t.patch b/debian/patches/bootshell0001-daemons-console-run-add-console-argument-to-select-t.patch deleted file mode 100644 index 11dc7de6..00000000 --- a/debian/patches/bootshell0001-daemons-console-run-add-console-argument-to-select-t.patch +++ /dev/null @@ -1,120 +0,0 @@ -From 0aa6f9897b9b56600c0d80a11415dadc1c980ea5 Mon Sep 17 00:00:00 2001 -From: Justus Winter <4winter@informatik.uni-hamburg.de> -Date: Fri, 30 Jan 2015 10:01:31 +0100 -Subject: [PATCH hurd 01/11] daemons/console-run: add `--console' argument to - select the device - -Parse the command line arguments, and honor `--console' to select the -console device. - -* daemons/console-run.c (console_device, cmd_argv, doc, args_doc, argp): -New variables. -(parse_opt): New function. -(main): Use `argp_parse', adapt accordingly. -(open_console): Use `console_device' instead of hardcoded value. ---- - daemons/console-run.c | 58 ++++++++++++++++++++++++++++++++++++++++++++------- - 1 file changed, 51 insertions(+), 7 deletions(-) - -diff --git a/daemons/console-run.c b/daemons/console-run.c -index e1bfe64..a76ec8a 100644 ---- a/daemons/console-run.c -+++ b/daemons/console-run.c -@@ -17,6 +17,7 @@ - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. */ - -+#include <argp.h> - #include <stdio.h> - #include <stdlib.h> - #include <unistd.h> -@@ -26,7 +27,51 @@ - #include <hurd.h> - #include <hurd/fshelp.h> - #include <device/device.h> -+ -+char *console_device = _PATH_CONSOLE; -+char **cmd_argv; -+ -+static const struct argp_option options[] = -+{ -+ {"console", 'c', "DEVICE", 0, "use this device ["_PATH_CONSOLE"]"}, -+ {0} -+}; -+ -+static error_t -+parse_opt (int opt, char *arg, struct argp_state *state) -+{ -+ switch (opt) -+ { -+ case 'c': -+ console_device = arg; -+ break; -+ -+ case ARGP_KEY_NO_ARGS: -+ argp_usage (state); -+ return EINVAL; -+ -+ case ARGP_KEY_ARG: -+ cmd_argv = &state->argv[state->next - 1]; -+ state->next = state->argc; -+ break; -+ -+ default: -+ return ARGP_ERR_UNKNOWN; -+ case ARGP_KEY_INIT: -+ case ARGP_KEY_SUCCESS: -+ case ARGP_KEY_ERROR: -+ break; -+ } -+ return 0; -+} - -+static const char doc[] = -+ "Open a terminal and run the given program"; -+static const char args_doc[] = "COMMAND [ARG...]"; -+ -+static const struct argp argp = -+{ options, parse_opt, args_doc, doc }; -+ - static mach_port_t - get_console () - { -@@ -60,20 +105,19 @@ main (int argc, char **argv) - if (!stderr) - _exit (127); - -- if (argc < 2) -- error (1, 0, "Usage: %s PROGRAM [ARG...]", program_invocation_short_name); -+ argp_parse (&argp, argc, argv, ARGP_IN_ORDER, 0, 0); - - /* Check whether runsystem exists before opening a console for it. */ -- runsystem = file_name_lookup (argv[1], O_RDONLY, 0); -+ runsystem = file_name_lookup (cmd_argv[0], O_RDONLY, 0); - if (runsystem == MACH_PORT_NULL) -- error (127, errno, "cannot open file `%s' for execution", argv[1]); -+ error (127, errno, "cannot open file `%s' for execution", cmd_argv[0]); - mach_port_deallocate (mach_task_self (), runsystem); - - if (open_console (&consname)) - setenv ("FALLBACK_CONSOLE", consname, 1); - -- execv (argv[1], &argv[1]); -- error (5, errno, "cannot execute %s", argv[1]); -+ execv (cmd_argv[0], &cmd_argv[0]); -+ error (5, errno, "cannot execute %s", cmd_argv[0]); - /* NOTREACHED */ - return 127; - } -@@ -97,7 +141,7 @@ open_console (char **namep) - int fd; - int fallback; - -- termname = _PATH_CONSOLE; -+ termname = console_device; - term = file_name_lookup (termname, O_RDWR, 0); - if (term != MACH_PORT_NULL) - err = io_stat (term, &st); --- -2.1.4 - |