]> Dogcows Code - chaz/tar/commit
tar: fix 1.23 Solaris regression related to PRIV_SYS_LINKDIR
authorPaul Eggert <eggert@cs.ucla.edu>
Tue, 24 Aug 2010 07:07:32 +0000 (00:07 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Tue, 24 Aug 2010 07:07:50 +0000 (00:07 -0700)
commit3b219f943e6b0b14c8f30176951b9339ae3ebaf4
treebe7761a7d9ac05f33d989284522469b89ddf2c54
parent37ddfb0b7eb41cc3f58bce686d389b1e965e9ccf
tar: fix 1.23 Solaris regression related to PRIV_SYS_LINKDIR

The idea was suggested by Petr Sumbera in the thread starting here:
http://lists.gnu.org/archive/html/bug-tar/2010-08/msg00000.html
* src/extract.c (set_mode): Save the errno of the chmod that
failed, for the benefit of chmod_error_details.  Do not bother
retrying chmod unless the mode suggests setuid is the issue.
(extract_archive): Remove redundant call to priv_set_remove_linkdir.
* src/system.c: Include priv-set.h.
(sys_spawn_shell, sys_child_open_for_compress):
(sys_child_open_for_uncompress, sys_exec_command):
(sys_exec_info_script, sys_exec_checkpoint_script):
Invoke priv_set_restore_linkdir before execv or execlp, so that
the subprocess has the same privileges that tar originally did.
src/extract.c
src/system.c
This page took 0.022016 seconds and 4 git commands to generate.