diff options
author | Justus Winter <4winter@informatik.uni-hamburg.de> | 2016-02-08 12:45:22 +0100 |
---|---|---|
committer | Justus Winter <4winter@informatik.uni-hamburg.de> | 2016-02-08 12:45:22 +0100 |
commit | 3ffbaab0c4e9a2094a90bc2bd0bc26665388c80e (patch) | |
tree | 66b8b081ba09f145ead0a83a02f2696728e4c5ad /debian/patches/exec_filename0001-Add-a-new-exec_exec_file_name-RPC.patch | |
parent | 31bc1905e71d04103736fbb6951453659bc0b634 (diff) |
drop old patch series
Diffstat (limited to 'debian/patches/exec_filename0001-Add-a-new-exec_exec_file_name-RPC.patch')
-rw-r--r-- | debian/patches/exec_filename0001-Add-a-new-exec_exec_file_name-RPC.patch | 340 |
1 files changed, 0 insertions, 340 deletions
diff --git a/debian/patches/exec_filename0001-Add-a-new-exec_exec_file_name-RPC.patch b/debian/patches/exec_filename0001-Add-a-new-exec_exec_file_name-RPC.patch deleted file mode 100644 index ddbb1788..00000000 --- a/debian/patches/exec_filename0001-Add-a-new-exec_exec_file_name-RPC.patch +++ /dev/null @@ -1,340 +0,0 @@ -From 8ec005706bcb8afdf5c956b6bc8608aeb05d0d60 Mon Sep 17 00:00:00 2001 -From: Emilio Pozuelo Monfort <pochu27@gmail.com> -Date: Wed, 26 May 2010 00:15:37 +0200 -Subject: [PATCH hurd 1/4] Add a new exec_exec_file_name RPC - -* hurd/exec.defs (exec_exec_file_name): New RPC. -(exec_exec): Label as deprecated. -* doc/hurd.texi: Updated. -* exec/exec.c (S_exec_exec_file_name): New function. -(S_exec_exec): Label as deprecated. -(do_exec): Add argument. -* exec/hashexec.c (check_hashbang): Add argument. -Don't guess the file name if file_name_exec is set. -* exec/priv.h (check_hashbang): Add argument. ---- - doc/hurd.texi | 8 ++++---- - exec/Makefile | 3 ++- - exec/exec.c | 48 +++++++++++++++++++++++++++++++++++++++++---- - exec/hashexec.c | 18 +++++++++++------ - exec/main.c | 2 ++ - exec/priv.h | 5 ++++- - hurd/exec.defs | 4 +++- - hurd/exec_experimental.defs | 46 +++++++++++++++++++++++++++++++++++++++++++ - 8 files changed, 117 insertions(+), 17 deletions(-) - create mode 100644 hurd/exec_experimental.defs - -diff --git a/doc/hurd.texi b/doc/hurd.texi -index 2f36bdc..f36caf8 100644 ---- a/doc/hurd.texi -+++ b/doc/hurd.texi -@@ -102,7 +102,7 @@ This file documents the GNU Hurd kernel component. This edition of the - documentation was last updated for version @value{VERSION} of the Hurd. - - Copyright @copyright{} 1994, 1996, 1998, 1999, 2000, 2001, 2002, 2003, --2004, 2005, 2007, 2008, 2009 Free Software Foundation, Inc. -+2004, 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. - - @quotation - Permission is granted to make and distribute verbatim copies of -@@ -2766,14 +2766,14 @@ If the setuid/setgid transformation adds a new uid or gid to the user's - authentication handle that was not previously present (as opposed to - merely reordering them), then the @code{EXEC_SECURE} and - @code{EXEC_NEWTASK} flags should both be added in the call to --@code{exec_exec}. -+@code{exec_exec_file_name}. - - The server then needs to open a new port onto the executed file which - will not share any file pointers with the port the user passed in, - opened with @code{O_READ}. Finally, all the information (mutated - appropriately for setuid/setgid) should be sent to the execserver with --@code{exec_exec}. Whatever error code @code{exec_exec} returns should --returned to the caller of @code{file_exec}. -+@code{exec_exec_file_name}. Whatever error code @code{exec_exec_file_name} -+returns should be returned to the caller of @code{file_exec}. - - @node File Locking - @subsection File Locking -diff --git a/exec/Makefile b/exec/Makefile -index d332f36..c32d65e 100644 ---- a/exec/Makefile -+++ b/exec/Makefile -@@ -22,7 +22,7 @@ makemode := server - - SRCS = exec.c main.c hashexec.c hostarch.c - OBJS = main.o hostarch.o exec.o hashexec.o \ -- execServer.o exec_startupServer.o -+ execServer.o exec_startupServer.o exec_experimentalServer.o - - target = exec - #targets = exec exec.static -@@ -31,6 +31,7 @@ OTHERLIBS = -lpthread - - exec-MIGSFLAGS = -imacros $(srcdir)/execmutations.h - exec_startup-MIGSFLAGS = -imacros $(srcdir)/execmutations.h -+exec_experimental-MIGSFLAGS = -imacros $(srcdir)/execmutations.h - - include ../Makeconf - -diff --git a/exec/exec.c b/exec/exec.c -index 3b63b7f..b825cc5 100644 ---- a/exec/exec.c -+++ b/exec/exec.c -@@ -1,6 +1,6 @@ - /* GNU Hurd standard exec server. -- Copyright (C) 1992,93,94,95,96,98,99,2000,01,02,04 -- Free Software Foundation, Inc. -+ Copyright (C) 1992 ,1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -+ 2002, 2004, 2010 Free Software Foundation, Inc. - Written by Roland McGrath. - - Can exec ELF format directly. -@@ -764,6 +764,7 @@ static error_t - do_exec (file_t file, - task_t oldtask, - int flags, -+ char *filename, - char *argv, mach_msg_type_number_t argvlen, boolean_t argv_copy, - char *envp, mach_msg_type_number_t envplen, boolean_t envp_copy, - mach_port_t *dtable, mach_msg_type_number_t dtablesize, -@@ -822,7 +823,7 @@ do_exec (file_t file, - { - /* Check for a #! executable file. */ - check_hashbang (&e, -- file, oldtask, flags, -+ file, oldtask, flags, filename, - argv, argvlen, argv_copy, - envp, envplen, envp_copy, - dtable, dtablesize, dtable_copy, -@@ -1405,6 +1406,7 @@ do_exec (file_t file, - return e.error; - } - -+/* Deprecated. */ - kern_return_t - S_exec_exec (struct trivfs_protid *protid, - file_t file, -@@ -1421,13 +1423,51 @@ S_exec_exec (struct trivfs_protid *protid, - mach_port_t *deallocnames, mach_msg_type_number_t ndeallocnames, - mach_port_t *destroynames, mach_msg_type_number_t ndestroynames) - { -+ return S_exec_exec_file_name (protid, -+ file, -+ oldtask, -+ flags, -+ "", -+ argv, argvlen, argv_copy, -+ envp, envplen, envp_copy, -+ dtable, dtablesize, -+ dtable_copy, -+ portarray, nports, -+ portarray_copy, -+ intarray, nints, -+ intarray_copy, -+ deallocnames, ndeallocnames, -+ destroynames, ndestroynames); -+} -+ -+kern_return_t -+S_exec_exec_file_name (struct trivfs_protid *protid, -+ file_t file, -+ task_t oldtask, -+ int flags, -+ char *filename, -+ char *argv, mach_msg_type_number_t argvlen, -+ boolean_t argv_copy, -+ char *envp, mach_msg_type_number_t envplen, -+ boolean_t envp_copy, -+ mach_port_t *dtable, mach_msg_type_number_t dtablesize, -+ boolean_t dtable_copy, -+ mach_port_t *portarray, mach_msg_type_number_t nports, -+ boolean_t portarray_copy, -+ int *intarray, mach_msg_type_number_t nints, -+ boolean_t intarray_copy, -+ mach_port_t *deallocnames, -+ mach_msg_type_number_t ndeallocnames, -+ mach_port_t *destroynames, -+ mach_msg_type_number_t ndestroynames) -+{ - if (! protid) - return EOPNOTSUPP; - - /* There were no user-specified exec servers, - or none of them could be found. */ - -- return do_exec (file, oldtask, flags, -+ return do_exec (file, oldtask, flags, filename, - argv, argvlen, argv_copy, - envp, envplen, envp_copy, - dtable, dtablesize, dtable_copy, -diff --git a/exec/hashexec.c b/exec/hashexec.c -index e53d2ee..118360f 100644 ---- a/exec/hashexec.c -+++ b/exec/hashexec.c -@@ -1,5 +1,6 @@ - /* GNU Hurd standard exec server, #! script execution support. -- Copyright (C) 1995,96,97,98,99,2000,02 Free Software Foundation, Inc. -+ Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2010 -+ Free Software Foundation, Inc. - Written by Roland McGrath. - - This file is part of the GNU Hurd. -@@ -35,6 +36,7 @@ check_hashbang (struct execdata *e, - file_t file, - task_t oldtask, - int flags, -+ char *file_name_exec, - char *argv, u_int argvlen, boolean_t argv_copy, - char *envp, u_int envplen, boolean_t envp_copy, - mach_port_t *dtable, u_int dtablesize, boolean_t dtable_copy, -@@ -225,10 +227,12 @@ check_hashbang (struct execdata *e, - file_name = NULL; - else if (! (flags & EXEC_SECURE)) - { -- /* Try to figure out the file's name. We guess that if ARGV[0] -- contains a slash, it might be the name of the file; and that -- if it contains no slash, looking for files named by ARGV[0] in -- the `PATH' environment variable might find it. */ -+ /* Try to figure out the file's name. If FILE_NAME_EXEC -+ is not NULL, then it's the file's name. Otherwise we -+ guess that if ARGV[0] contains a slash, it might be -+ the name of the file; and that if it contains no slash, -+ looking for files named by ARGV[0] in the `PATH' -+ environment variable might find it. */ - - error_t error; - char *name; -@@ -278,7 +282,9 @@ check_hashbang (struct execdata *e, - else - name = argv; - -- if (strchr (name, '/') != NULL) -+ if (file_name_exec && file_name_exec[0] != '\0') -+ error = lookup (name = file_name_exec, 0, &name_file); -+ else if (strchr (name, '/') != NULL) - error = lookup (name, 0, &name_file); - else if ((error = hurd_catch_signal - (sigmask (SIGBUS) | sigmask (SIGSEGV), -diff --git a/exec/main.c b/exec/main.c -index c86c000..4b33916 100644 ---- a/exec/main.c -+++ b/exec/main.c -@@ -49,6 +49,7 @@ mach_port_t opt_device_master; - - - #include "exec_S.h" -+#include "exec_experimental_S.h" - #include "exec_startup_S.h" - - static int -@@ -56,6 +57,7 @@ exec_demuxer (mach_msg_header_t *inp, mach_msg_header_t *outp) - { - mig_routine_t routine; - if ((routine = exec_server_routine (inp)) || -+ (routine = exec_experimental_server_routine (inp)) || - (routine = NULL, trivfs_demuxer (inp, outp)) || - (routine = exec_startup_server_routine (inp))) - { -diff --git a/exec/priv.h b/exec/priv.h -index 733f35c..daa7075 100644 ---- a/exec/priv.h -+++ b/exec/priv.h -@@ -1,5 +1,6 @@ - /* GNU Hurd standard exec server, private declarations. -- Copyright (C) 1992,93,94,95,96,99,2000,02, 04 Free Software Foundation, Inc. -+ Copyright (C) 1992, 1993, 1994, 1995, 1996, 1999, 2000, 2002, 2004, -+ 2010 Free Software Foundation, Inc. - Written by Roland McGrath. - - This file is part of the GNU Hurd. -@@ -32,6 +33,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - #include <link.h> /* This gives us the ElfW macro. */ - #include <fcntl.h> - #include "exec_S.h" -+#include "exec_experimental_S.h" - - - #ifndef exec_priv_h -@@ -135,6 +137,7 @@ void check_hashbang (struct execdata *e, - file_t file, - task_t oldtask, - int flags, -+ char *filename, - char *argv, u_int argvlen, boolean_t argv_copy, - char *envp, u_int envplen, boolean_t envp_copy, - mach_port_t *dtable, u_int dtablesize, -diff --git a/hurd/exec.defs b/hurd/exec.defs -index 2888fb1..7433cc2 100644 ---- a/hurd/exec.defs -+++ b/hurd/exec.defs -@@ -1,5 +1,6 @@ - /* Interface definitions for the exec servers. -- Copyright (C) 1991,92,93,94,95,2001 Free Software Foundation, Inc. -+ Copyright (C) 1991, 1992, 1993, 1994, 1995, 2001, 2010 -+ Free Software Foundation, Inc. - - This file is part of the GNU Hurd. - -@@ -29,6 +30,7 @@ EXEC_IMPORTS - - INTR_INTERFACE - -+/* Deprecated: use exec_exec_file_name instead. */ - routine exec_exec ( - execserver: file_t; - file: mach_port_send_t; -diff --git a/hurd/exec_experimental.defs b/hurd/exec_experimental.defs -new file mode 100644 -index 0000000..ff2e02f ---- /dev/null -+++ b/hurd/exec_experimental.defs -@@ -0,0 +1,46 @@ -+/* Interface definitions for the exec servers. -+ Copyright (C) 1991, 1992, 1993, 1994, 1995, 2001, 2010, 2012 -+ Free Software Foundation, Inc. -+ -+This file is part of the GNU Hurd. -+ -+The GNU Hurd is free software; you can redistribute it and/or modify -+it under the terms of the GNU General Public License as published by -+the Free Software Foundation; either version 2, or (at your option) -+any later version. -+ -+The GNU Hurd is distributed in the hope that it will be useful, -+but WITHOUT ANY WARRANTY; without even the implied warranty of -+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+GNU General Public License for more details. -+ -+You should have received a copy of the GNU General Public License -+along with the GNU Hurd; see the file COPYING. If not, write to -+the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ -+ -+/* Written by Michael I. Bushnell and Roland McGrath. */ -+ -+subsystem exec_experimental 434242; -+ -+#include <hurd/hurd_types.defs> -+ -+#ifdef EXEC_IMPORTS -+EXEC_IMPORTS -+#endif -+ -+INTR_INTERFACE -+ -+routine exec_exec_file_name ( -+ execserver: file_t; -+ file: mach_port_send_t; -+ oldtask: task_t; -+ flags: int; -+ filename: string_t; -+ argv: data_t SCP; -+ envp: data_t SCP; -+ dtable: portarray_t SCP; -+ portarray: portarray_t SCP; -+ intarray: intarray_t SCP; -+ deallocnames: mach_port_name_array_t; -+ destroynames: mach_port_name_array_t); -+ --- -2.1.4 - |