bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 3/3] Use the new _hurd_exec_file_name function


From: Emilio Pozuelo Monfort
Subject: [PATCH 3/3] Use the new _hurd_exec_file_name function
Date: Fri, 16 Jul 2010 12:17:38 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.10) Gecko/20100619 Icedove/3.0.5

Hi,

Note that this patch should only be applied after the glibc patch is applied,
and maybe some time later (perhaps after a stable release shipping it?).

Cheers,
Emilio


>From 968f68ba6747ed11b8eb44b09e81323d40e6324b Mon Sep 17 00:00:00 2001
From: Emilio Pozuelo Monfort <address@hidden>
Date: Wed, 26 May 2010 23:32:16 +0200
Subject: [PATCH 3/3] Use the new _hurd_exec_file_name function

        * utils/fakeauth.c: Call _hurd_exec_file_name instead of
        _hurd_exec.
        * utils/rpctrace.c: Likewise.
        * utils/shd.c: Likewise.
---
 utils/fakeauth.c |    7 ++++---
 utils/rpctrace.c |    4 ++--
 utils/shd.c      |    6 +++---
 3 files changed, 9 insertions(+), 8 deletions(-)

diff --git a/utils/fakeauth.c b/utils/fakeauth.c
index 49fa7f1..887aa03 100644
--- a/utils/fakeauth.c
+++ b/utils/fakeauth.c
@@ -1,5 +1,5 @@
 /* fakeauth -- proxy auth server to lie to users about what their IDs are
-   Copyright (C) 2002 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2010 Free Software Foundation, Inc.

    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License as
@@ -388,7 +388,7 @@ believe it has restricted them to different identities or no
identity at all.\
   /* We cannot use fork because it doesn't do the right thing with our send
      rights that point to our own receive rights, i.e. the new auth port.
      Since posix_spawn might be implemented with fork (prior to glibc 2.3),
-     we cannot use that simple interface either.  We use _hurd_exec
+     we cannot use that simple interface either.  We use _hurd_exec_file_name
      directly to effect what posix_spawn does in the simple case.  */
   {
     task_t newtask;
@@ -413,7 +413,8 @@ believe it has restricted them to different identities or no
identity at all.\
     if (err)
       error (3, err, "proc_child");

-    err = _hurd_exec (newtask, execfile, &argv[argi], environ);
+    err = _hurd_exec_file_name (newtask, execfile, argv[argi],
+                               &argv[argi], environ);
     mach_port_deallocate (mach_task_self (), newtask);
     mach_port_deallocate (mach_task_self (), execfile);
     if (err)
diff --git a/utils/rpctrace.c b/utils/rpctrace.c
index 5182449..c041c8f 100644
--- a/utils/rpctrace.c
+++ b/utils/rpctrace.c
@@ -1,6 +1,6 @@
 /* Trace RPCs sent to selected ports

-   Copyright (C) 1998, 1999, 2001, 2002, 2003, 2005, 2006, 2009
+   Copyright (C) 1998, 1999, 2001, 2002, 2003, 2005, 2006, 2009, 2010
    Free Software Foundation, Inc.

    This file is part of the GNU Hurd.
@@ -1062,7 +1062,7 @@ traced_spawn (char **argv, char **envp)
   /* Now actually run the command they told us to trace.  We do the exec on
      the actual task, so the RPCs to map in the program itself do not get
      traced.  Could have an option to use TASK_WRAPPER here instead.  */
-  err = _hurd_exec (traced_task, file, argv, envp);
+  err = _hurd_exec_file_name (traced_task, file, *argv, argv, envp);
   if (err)
     error (2, err, "cannot exec `%s'", argv[0]);

diff --git a/utils/shd.c b/utils/shd.c
index 0587fa4..5b14bef 100644
--- a/utils/shd.c
+++ b/utils/shd.c
@@ -1,5 +1,5 @@
 /*
-   Copyright (C) 1994,95,99,2002 Free Software Foundation
+   Copyright (C) 1994, 1995, 1999, 2002, 2010 Free Software Foundation

    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License as
@@ -159,7 +159,7 @@ run (char **argv, int fd0, int fd1)
              movefd (fd1, 1, &save1))
            return -1;

-         err = _hurd_exec (task, file, argv, environ);
+         err = _hurd_exec_file_name (task, file, program, argv, environ);

          if (restorefd (fd0, 0, &save0) ||
              restorefd (fd1, 1, &save1))
@@ -167,7 +167,7 @@ run (char **argv, int fd0, int fd1)

          if (err)
            {
-             error (0, err, "_hurd_exec");
+             error (0, err, "_hurd_exec_file_name");
              err = task_terminate (task);
              if (err)
                error (0, err, "task_terminate");
-- 
1.7.1



reply via email to

[Prev in Thread] Current Thread [Next in Thread]