commit-hurd
[Top][All Lists]
Advanced

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

[SCM] Hurd branch, master, updated. v0.9-122-g104f312


From: Samuel Thibault
Subject: [SCM] Hurd branch, master, updated. v0.9-122-g104f312
Date: Mon, 8 Jan 2018 19:13:21 -0500 (EST)

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Hurd".

The branch, master has been updated
       via  104f3121f8005b426d4df77b2420cfe5837033d1 (commit)
       via  9d3ba19ddc56ad929f673af23eb87ab07ae30631 (commit)
       via  16eff1b637f13f90ea3f00d7f1dd0d99945611f6 (commit)
       via  5dbe5dfd27633ebf2cc0e37fa7036fb1a689ef81 (commit)
       via  f7c3556e627bd6ede22255defb55084d21e4dca6 (commit)
       via  4152b0ca04f4703a6c6f33e59ba0e7bd95837069 (commit)
       via  67fa50fb8f0a6894e5ed6534936afb8044e66613 (commit)
      from  6868c17b7def25beb69e7b685496e078340d8b12 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 104f3121f8005b426d4df77b2420cfe5837033d1
Author: Samuel Thibault <address@hidden>
Date:   Mon Jan 8 23:00:37 2018 +0100

    Implement /proc/<pid>/exe
    
    by adding proc_set/get_exe to the proc server, making
    exec call proc_set_exe, and libps call proc_get_exe. procfs can then just
    retrieve the information to make the "exe" symlink.
    
    * hurd/process.defs (proc_set_exe, proc_get_exe): New RPCs.
    * hurd/process_request.defs: Likewise.
    * hurd/process_reply.defs: Add skips for proc_set_exe and proc_get_exe RPCs.
    * proc/proc.h (struct proc): Add `exe' field.
    * proc/info.c (S_proc_set_exe, S_proc_get_exe): New functions.
    * proc/mgt.c (process_has_exited): Free p->exe.
    (S_proc_child): Duplicate parent `exe' into child's `exe'.
    * exec/exec.c (do_exec): Call proc_set_exe when a filename is available.
    * libps/ps.h (struct proc_stat): Add `exe_vm_alloced', `exe', and `exe_len'
    field.
    (PSTAT_EXE): New macro.
    (PSTAT_USER_BASE): Change value to make room.
    (proc_stat_exe, proc_stat_exe_len): New macros.
    * libps/procstat.c (proc_stat_set_flags): Handle PSTAT_EXE case by calling
    proc_get_exe.
    * libps/spec.c (ps_get_exe): New function.
    (ps_exe_getter): New structure.
    (ps_fmt_spec): Add "Exe" specification.
    * procfs/process.c (process_file_symlink_make_node, process_file_gc_exe): 
New
    functions.
    (procfs_dir_entry): Add "exe" entry.
    * startup/startup.c (launch_core_servers): Set exe paths for startup, auth,
    proc, and fs servers.
    (frob_kernel_process): Set exe path for kernel task.
    (S_startup_essential_task): Set exe path for exec server.

commit 9d3ba19ddc56ad929f673af23eb87ab07ae30631
Author: Samuel Thibault <address@hidden>
Date:   Mon Jan 8 22:56:23 2018 +0100

    Add support for $ORIGIN rpath expansion
    
    * exec/exec.c (do_exec): When abspath is absolute, record its dirname
    into the LD_ORIGIN_PATH environment variable.

commit 16eff1b637f13f90ea3f00d7f1dd0d99945611f6
Author: Justus Winter <address@hidden>
Date:   Mon Jan 8 22:54:27 2018 +0100

    Fix exec_paths through fakeroot or chroot
    
    If file_name_exec is not given, check_hashbang will try to locate the
    file. If argv[0] contains a '/', the file path is assumed to be
    absolute and it will try to open the file. Otherwise, the file is
    searched in the PATH. In either case, the resulting file identity port
    is compared to the identity port of the original file handle passed to
    check_hashbang.
    
    exec_paths_exec.patch explicitly provides the script files path in
    file_name_exec. According to the comment, if this path is provided, it
    is assumed to be the path to the script file and no attempt at
    locating the script file is done. However, the identity ports are
    still compared. This cannot succeed if fakeroot or chroot is used,
    because the process doing the exec and thus the initial file lookup is
    running in the chrooted environment, while the exec server is not.
    
    Fix this by skipping the identity test if file_name_exec is provided.
    
    * exec/hashexec.c (check_hashbang): Skip the file identity test if the
    file_name_exec is provided.

commit 5dbe5dfd27633ebf2cc0e37fa7036fb1a689ef81
Author: Kalle Olavi Niemitalo <address@hidden>
Date:   Fri Aug 26 17:23:28 2016 +0300

    rpctrace: Pass prefixed_name to _hurd_exec_paths.
    
    This fixes the following test case:
    
      mkdir testy
      echo '#! /bin/bash' > testy/prog
      echo 'printf "%s\n" "$0"' >> testy/prog
      chmod +x testy/prog
      PATH=$(pwd)/testy /bin/rpctrace -E PATH=/usr/bin:/bin -o /dev/null prog
    
    Before this patch, the output is:
    
      /bin/bash: prog: No such file or directory
    
    After this patch, the output is similar to:
    
      /home/kalle/testy/prog
    
    * utils/rpctrace.c (traced_spawn): Get prefixed_name from
    file_name_path_lookup and pass it to _hurd_exec_paths.

commit f7c3556e627bd6ede22255defb55084d21e4dca6
Author: Emilio Pozuelo Monfort <address@hidden>
Date:   Wed May 26 23:32:16 2010 +0200

    Use the new _hurd_exec_file_name function
    
    * configure.in: Check for _hurd_exec_paths.
    * utils/fakeauth.c: Call _hurd_exec_paths instead of
    _hurd_exec if it's available.
    * utils/shd.c: Likewise.
    * utils/rpctrace.c: Get prefixed_name from file_name_path_lookup and pass 
it to
    _hurd_exec_paths instead of calling _hurd_exec.

commit 4152b0ca04f4703a6c6f33e59ba0e7bd95837069
Author: Emilio Pozuelo Monfort <address@hidden>
Date:   Wed May 26 01:27:40 2010 +0200

    Add a file_exec_file_name RPC
    
    * hurd/fs.defs (file_exec): Deprecate in favor of...
    (file_exec_paths): ...this new RPC.
    * TODO: Update.
    * doc/hurd.texi: Update RPC name.
    * hurd/hurd_types.h: Update RPC name.
    * libdiskfs/boot-start.c: Update RPC name.
    * configure.ac: Check for presence of RPC stubs file_exec_paths 
exec_exec_paths.
    * exec/hashexec.c (check_hashbang): When file_exec_paths is available, use 
it
    instead of file_exec.
    * startup/startup.c (run, run_for_real, start_child): Likewise.
    * utils/login.c (main): Likewise.
    * libfshelp/start-translator-long.c (fshelp_start_translator_long): 
Likewise.
    * libdiskfs/file-exec.c (diskfs_S_file_exec): Move code to
    new function diskfs_S_file_exec_paths and call it.
    (diskfs_S_file_exec_paths): New function, use exec_exec_paths when available
    instead of exec_exec
    * libnetfs/file-exec.c (netfs_S_file_exec, netfs_S_file_exec_paths): 
Likewise.
    * trans/fakeroot.c (netfs_S_file_exec, netfs_S_file_exec_paths): Likewise.
    * libtrivfs/file-exec.c (trivfs_S_file_exec_paths): New function.

commit 67fa50fb8f0a6894e5ed6534936afb8044e66613
Author: Emilio Pozuelo Monfort <address@hidden>
Date:   Wed May 26 00:15:37 2010 +0200

    Add a new exec_exec_paths RPC
    
    * hurd/exec.defs (exec_exec): Label as deprecated.
    (exec_exec_paths): New RPC.
    * doc/hurd.texi: Update accordingly.
    * exec/hashexec.c (check_hashbang): Add file_name_exec argument.
    Don't guess the file name if file_name_exec is set.
    * exec/priv.h (check_hashbang): Add path argument.
    * exec/exec.c (S_exec_exec): Label as deprecated.
    (S_exec_exec_paths): New function.
    (do_exec): Add path and abspath arguments, pass path to check_hashbang.

-----------------------------------------------------------------------

Summary of changes:
 TODO                              |   2 +-
 configure.ac                      |   2 +
 doc/hurd.texi                     |  22 +++---
 exec/exec.c                       | 141 +++++++++++++++++++++++++++++++++++---
 exec/hashexec.c                   | 129 +++++++++++++++++++++-------------
 exec/priv.h                       |   4 +-
 hurd/exec.defs                    |  19 ++++-
 hurd/fs.defs                      |  29 ++++++--
 hurd/hurd_types.h                 |   9 +--
 hurd/process.defs                 |  12 +++-
 libdiskfs/boot-start.c            |   2 +-
 libdiskfs/file-exec.c             |  79 +++++++++++++++++----
 libfshelp/start-translator-long.c |  23 +++++--
 libnetfs/file-exec.c              |  71 ++++++++++++++++---
 libps/procstat.c                  |  17 +++++
 libps/ps.h                        |  11 ++-
 libps/spec.c                      |  10 +++
 libtrivfs/file-exec.c             |  28 +++++++-
 proc/info.c                       |  41 +++++++++++
 proc/mgt.c                        |   4 ++
 proc/proc.h                       |   1 +
 procfs/process.c                  |  32 +++++++++
 startup/startup.c                 |  94 ++++++++++++++++++-------
 trans/fakeroot.c                  |  97 +++++++++++++++++++-------
 utils/fakeauth.c                  |   9 ++-
 utils/login.c                     |  25 +++++--
 utils/rpctrace.c                  |   9 ++-
 utils/shd.c                       |   9 ++-
 28 files changed, 760 insertions(+), 171 deletions(-)


hooks/post-receive
-- 
Hurd



reply via email to

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