Commit Graph

20 Commits

Author SHA1 Message Date
Samuel Thibault 45f33aac78 hurd: Fix linknamespace of spawni
* include/unistd.h (__confstr): Add prototype and hidden prototype.
	* posix/confstr.c (confstr): Rename to __confstr.
	(__confstr): Add hidden def.
	(confstr): Add weak alias for __confstr.
	* sysdeps/mach/hurd/spawni.c (__spawni): Call __confstr instead of
	confstr.
2018-12-07 20:21:45 +01:00
Samuel Thibault 7c857b6f0d hurd: Implement support for posix_spawn_file_actions_addfchdir_np 2018-12-07 16:04:05 +01:00
Samuel Thibault 58bb655acb hurd: Document dtable_cloexec size convention.
* sysdeps/mach/hurd/spawni.c (__spawni): Use orig_dtablesize instead
	of dtablesize for allocating dtable_cloexec.
2018-11-11 18:55:24 +01:00
Samuel Thibault 7fa495cdf7 Hurd: Fix ulinks in fd table reallocation
* hurd/hurd/userlink.h (_hurd_userlink_move): New function.
	* hurd/hurd/port.h (_hurd_port_move): New function.
	* sysdeps/mach/hurd/spawni.c (NEW_ULINK_TABLE): New macro.
	(EXPAND_DTABLE): Use NEW_ULINK_TABLE macro for ulink_dtable.
2018-11-10 11:20:12 +00:00
Samuel Thibault 434c34bd8e Hurd: Implement chdir support in posix_spawn
This fixes build-many-glibcs.py on i686-gnu.

Thanks Florian Weimer for the initial version.

* sysdeps/mach/hurd/spawni.c (__spawni): Add ccwdir port. Test and use
it, free it if needed.
(reauthenticate): Test and use ccwdir.
(child_init_port): In non-resetids case, test and use ccwdir.
(child_chdir): New nested function to set ccwdir.
2018-11-10 10:45:13 +00:00
Samuel Thibault 844bf92148 hurd: Fix warning
* sysdeps/mach/hurd/spawni.c (__spawni): Make relpath and abspath
	const char * instead of char *.
2018-01-28 16:21:28 +01:00
Samuel Thibault 311ba8dc44 hurd: Use the new file_exec_paths RPC
From: Emilio Pozuelo Monfort <pochu27@gmail.com>
From: Svante Signell <svante.signell@gmail.com>

Pass the file paths of executable to the exec server, both relative and
absolute, which exec needs to properly execute and avertise #!-scripts.
Previously, the exec server tried to guess the name from argv[0] but argv[0]
only contains the executable name by convention.

	* hurd/hurdexec.c (_hurd_exec): Deprecate function.
	(_hurd_exec_paths): New function.
	* hurd/hurd.h (_hurd_exec): Deprecate function.
	(_hurd_exec_paths): Declare function.
	* hurd/Versions: Export _hurd_exec_paths.
	* sysdeps/mach/hurd/execve.c: Include <stdlib.h> and <stdio.h>
	(__execve): Use __getcwd to build absolute path, and use
	_hurd_exec_paths instead of _hurd_exec.
	* sysdeps/mach/hurd/spawni.c: Likewise.
	* sysdeps/mach/hurd/fexecve.c: Use _hurd_exec_paths instead of
	_hurd_exec.
2018-01-09 01:37:34 +01:00
Joseph Myers 688903eb3e Update copyright dates with scripts/update-copyrights.
* All files with FSF copyright notices: Update copyright dates
	using scripts/update-copyrights.
	* locale/programs/charmap-kw.h: Regenerated.
	* locale/programs/locfile-kw.h: Likewise.
2018-01-01 00:32:25 +00:00
Adhemerval Zanella daeb1fa2e1 [BZ 21340] add support for POSIX_SPAWN_SETSID
This patch adds support for the POSIX_SPAWN_SETSID flag.

It was recently accepted by the Austin Group:
http://austingroupbugs.net/view.php?id=1044

Checked on x86_64

	Daurnimator  <quae@daurnimator.com>
	Adhemerval Zanella  <adhemerval.zanella@linaro.org>

	[BZ #21340]
	* posix/Makefile (tests): Add tst-posix_spawn-setsid to list of tests.
	* posix/spawn.h: define POSIX_SPAWN_SETSID flag.
	* posix/spawnattr_setflags.c (ALL_FLAGS): Add POSIX_SPAWN_SETSID to
	valid flags.
	* posix/tst-posix_spawn-setsid.c: Add test for POSIX_SPAWN_SETSID.
	* sysdeps/mach/hurd/spawni.c (__spawni): Implementation of
	POSIX_SPAWN_SETSID.
	* sysdeps/posix/spawni.c (__spawni): Likewise.
	* sysdeps/unix/sysv/linux/spawni.c (__spawni_child): Likewise.
	* NEWS: Add note about POSIX_SPAWN_SETSID support.
2017-04-25 08:51:12 -03:00
Joseph Myers bfff8b1bec Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
Joseph Myers f7a9f785e5 Update copyright dates with scripts/update-copyrights. 2016-01-04 16:05:18 +00:00
Joseph Myers b168057aaa Update copyright dates with scripts/update-copyrights. 2015-01-02 16:29:47 +00:00
Allan McRae d4697bc93d Update copyright notices with scripts/update-copyrights 2014-01-01 22:00:23 +10:00
Joseph Myers 568035b787 Update copyright notices with scripts/update-copyrights. 2013-01-02 19:05:09 +00:00
Paul Eggert 59ba27a63a Replace FSF snail mail address with URLs. 2012-02-09 23:18:22 +00:00
Ulrich Drepper d96de9634a Try shell in posix_spawn* only in compat mode 2011-09-05 20:24:50 -04:00
Ulrich Drepper fbf86ddab2 Update.
2004-05-10  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/posix/sysconf.c (__sysconf) <cases _SC_REALTIME_SIGNALS,
	_SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
	_SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC, _SC_MAPPED_FILES,
	_SC_MEMLOCK, _SC_MEMLOCK_RANGE, _SC_MEMORY_PROTECTION,
	_SC_MESSAGE_PASSING, _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS,
	_SC_THREADS, _SC_THREAD_SAFE_FUNCTIONS, _SC_THREAD_ATTR_STACKADDR,
	_SC_THREAD_ATTR_STACKSIZE, _SC_THREAD_PRIORITY_SCHEDULING,
	_SC_THREAD_PRIO_INHERIT, _SC_THREAD_PRIO_PROTECT,
	_SC_THREAD_PROCESS_SHARED>: Return _POSIX_* value instead of 1.
	* sysdeps/unix/sysv/linux/sysconf.c (__sysconf)
	<case _SC_MONOTONIC_CLOCK>: Return _POSIX_VERSION instead of 1.

2004-05-07  Jeroen Dekkers  <jeroen@dekkers.cx>

	* sysdeps/mach/hurd/i386/Makefile (CFLAGS-init-first.c): Add
	-momit-leaf-frame-pointer.

	* inet/test-ifaddrs.c (addr_string): Surround AF_PACKET case with
	#ifdef AF_PACKET.

	* sysdeps/mach/hurd/getcwd.c
	(_hurd_canonicalize_directory_name_intern): Only realloc when
	size is <= 0.

	* sysdeps/mach/hurd/mmap.c (__mmap): Fail when addr or offset
	isn't page aligned.

	* sysdeps/mach/hurd/spawni.c (EXPAND_DTABLE): Set dtablesize to
	new size.

	* sysdeps/mach/hurd/Versions (GLIBC_PRIVATE): Add __libc_read,
	__libc_write and __libc_lseek64.
2004-06-01 18:53:04 +00:00
Roland McGrath cc7375ce02 2002-08-26 Brian Youmans <3diff@gnu.org>
* crypt/crypt.c: Changed copying permission notice to Lesser GPL
        from Library GPL.
        * crypt/crypt_util.c: Likewise.
        * crypt/ufc.c: Likewise.
        * elf/dl-conflict.c: Likewise.
        * elf/dl-iteratephdr.c: Likewise.
        * iconv/iconvconfig.h: Likewise.
        * linuxthreads/Examples/ex10.c: Likewise.
        * linuxthreads/Examples/ex11.c: Likewise.
        * linuxthreads/Examples/ex13.c: Likewise.
        * linuxthreads/Examples/ex8.c: Likewise.
        * linuxthreads/Examples/ex9.c: Likewise.
        * linuxthreads/barrier.c: Likewise.
        * linuxthreads/events.c: Likewise.
        * linuxthreads/lockfile.c: Likewise.
        * linuxthreads/no-tsd.c: Likewise.
        * linuxthreads/pt-machine.c: Likewise.
        * linuxthreads/ptclock_gettime.c: Likewise.
        * linuxthreads/ptclock_settime.c: Likewise.
        * linuxthreads/rwlock.c: Likewise.
        * linuxthreads/sysdeps/alpha/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/alpha/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/arm/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/arm/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/cris/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/cris/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/hppa/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/hppa/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/i686/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/i386/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/i386/useldt.h: Likewise.
        * linuxthreads/sysdeps/ia64/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/ia64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/m68k/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/m68k/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/mips/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/mips/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/powerpc/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/powerpc/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/initspin.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/libc-lock.h: Likewise.
        * linuxthreads/sysdeps/pthread/bits/libc-tsd.h: Likewise.
        * linuxthreads/sysdeps/pthread/getcpuclockid.c: Likewise.
        * linuxthreads/sysdeps/pthread/posix-timer.h: Likewise.
        * linuxthreads/sysdeps/pthread/timer_create.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_delete.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_getoverr.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_gettime.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_routines.c: Likewise.
        * linuxthreads/sysdeps/pthread/timer_settime.c: Likewise.
        * linuxthreads/sysdeps/pthread/tst-timer.c: Likewise.
        * linuxthreads/sysdeps/s390/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/s390/s390-32/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/s390/s390-64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sh/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sh/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/sparc/sparc32/sparcv9/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc64/pspinlock.c: Likewise.
        * linuxthreads/sysdeps/sparc/sparc64/pt-machine.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/local_lim.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/posix_opt.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/bits/sigthread.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/hppa/bits/initspin.h: Likewise.
        * linuxthreads/sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
        * linuxthreads/tststack.c: Likewise.
        * linuxthreads/unload.c: Likewise.
        * linuxthreads/weaks.c: Likewise.
        * linuxthreads/wrapsyscall.c: Likewise.
        * malloc/arena.c: Likewise.
        * malloc/hooks.c: Likewise.
        * malloc/malloc.c: Likewise.
        * posix/glob/Makefile.ami: Likewise.
        * posix/glob/Makefile.in: Likewise.
        * stdlib/gmp-impl.h: Likewise.
        * stdlib/gmp.h: Likewise.
        * sysdeps/generic/dl-iteratephdr-static.c: Likewise.
        * sysdeps/generic/strnlen.c: Likewise.
        * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
        * sysdeps/mach/hurd/recvmsg.c: Likewise.
        * sysdeps/mach/hurd/sendmsg.c: Likewise.
        * sysdeps/mach/hurd/spawni.c: Likewise.
        * sysdeps/mach/powerpc/machine-sp.h: Likewise.
        * sysdeps/mach/powerpc/sysdep.h: Likewise.
        * sysdeps/mach/powerpc/thread_state.h: Likewise.
        * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
        * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: Likewise.
        * sysdeps/x86_64/gmp-mparam.h: Likewise.
2002-08-26 22:40:48 +00:00
Roland McGrath 7595ddb8f9 * hurd/hurdinit.c (_hurd_ports_use): Return error _hurd_ports is null.
* hurd/hurdsig.c (_hurdsig_init): Conditionalize exception port setup
	for old CMU and new OSF Mach interface flavors.
	* hurd/hurdfault.c (_hurdsig_fault_init): Likewise.
	* sysdeps/mach/hurd/fork.c (__fork): Likewise.

	* hurd/hurdsig.c (_hurd_internal_post_signal): Leave msgh_seqno unset.

	* sysdeps/mach/hurd/spawni.c (__spawni) [KERN_INVALID_LEDGER]:
	Pass extra arguments to task_create for OSF variant.
	* sysdeps/mach/hurd/fork.c (__fork): Likewise.
2002-01-02 10:23:33 +00:00
Roland McGrath 03aae00504 2001-12-16 Roland McGrath <roland@frob.com>
* sysdeps/mach/hurd/spawni.c: New file, by me with a
	couple fixes by Neal H Walfield <neal@cs.uml.edu>.
2001-12-16 22:10:46 +00:00