Commit Graph

372 Commits

Author SHA1 Message Date
Roland McGrath
86c75cc3de 2000-02-02 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/readlink.c (__readlink): Don't clobber original
	LEN value with io_read result; save it and compare them just in case
	the server bogusly returns more than we asked for.
	* sysdeps/mach/hurd/recv.c (recv): Likewise for socket_recv.
	* sysdeps/mach/hurd/recvfrom.c (recvfrom): Likewise.
	* hurd/fd-read.c (_hurd_fd_read): Likewise for io_read.
	Initialize NREAD before the RPC.  I think this must only have failed
	to bomb before because all the servers always return ool data(?).
2000-02-03 01:21:52 +00:00
Roland McGrath
e0d788ef18 2000-02-02 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/getsockopt.c (getsockopt): Fix inverted sense of
	test: *OPTLEN gets BUFLEN iff BUFLEN is lesser.  Move that test out of
	BUF != OPTVAL condition, since it is a separate issue.  Short-circuit
	the memcpy and dealloc for BUFLEN==0.
2000-02-03 01:21:32 +00:00
Roland McGrath
75249dce2a 2000-01-08 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/setitimer.c (quantize_timeval): New function.
	(setitimer_locked): Use it to quantize the timer values.  Use
	quantized timer values to check if the timeout changed.
2000-01-09 02:39:33 +00:00
Roland McGrath
823e48fd54 2000-01-05 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/generic/lseek64.c (__libc_lseek64): Renamed from __lseek64.
	(__lseek64, lseek64): Make these weak aliases for __libc_lseek64.
	* sysdeps/mach/hurd/lseek.c (__libc_lseek): Renamed from __lseek.
	(__lseek, lseek): Make these weak aliases for __libc_lseek.
	* sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Renamed from __fcntl.
	(__fcntl, fcntl): Make these weak aliases for __libc_fcntl.
	* sysdeps/mach/hurd/open.c (__libc_open): Renamed from __open.
	(__open, open): Make these weak aliases for __libc_open.
2000-01-06 04:19:23 +00:00
Roland McGrath
a08c867f6c 2000-01-05 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/errnos.awk: Rediddle to collect lines and print
	them all at the end, eliding the final comma.
	* sysdeps/mach/hurd/bits/errno.h: Regenerated.
2000-01-05 21:23:48 +00:00
Roland McGrath
267ff95b79 1999-11-18 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdsig.c (_hurdsig_init): If __hurd_threadvar_stack_mask is
	nonzero, use cthread_fork to create the signal thread.
	* hurd/msgportdemux.c (_hurd_msgport_receive): Initialize
	_hurd_msgport_thread here (to self).
	* sysdeps/mach/hurd/fork.c (__fork): When __hurd_sigthread_stack_end
	is zero, instead compute child signal thread's starting SP from parent
	signal thread's current SP and the threadvar_stack variables.
	* hurd/Versions (GLIBC_2.1.3): Add cthread_fork, cthread_detach.
	These are now referenced weakly by _hurdsig_init.
1999-11-18 06:17:13 +00:00
Roland McGrath
369d284902 1999-11-14 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/nfs/nfs.h: New file, empty but for comments.
	Its presence lets librpcsvc compile ok.  This from Mark Kettenis.
	We don't install this file for users.
	* sysdeps/mach/hurd/Dist: Add it.
	* sysdeps/mach/hurd/Makefile [$(subdir) = sunrpc] (sysdep_headers):
	Append nfs/nfs.h here.
1999-11-15 00:38:58 +00:00
Roland McGrath
9eabf04299 1999-11-09 Roland McGrath <roland@baalperazim.frob.com>
* hurd/report-wait.c (describe_port): Return char * and use __stpcpy
	to return the location of the null byte written into the string.
	(describe_number): Likewise.
	(describe_number): Remove assert, not always used with #.
	If FLAVOR is null, don't use it.
	(describe_number): Take signed argument and print a - if negative.
	(_S_msg_report_wait): Report system call number for system calls that
	aren't mach_msg.  Soup up reporting for mach_msg: If destination port
	matches SS->intr_port, bracket port description with [...] to indicate
	a Hurd interruptible RPC; if destination port is null, examine the
	receive port and report that state; if receive port is also null,
	check for timeout and report its value.
	* sysdeps/mach/hurd/i386/intr-msg.h (MSG_EXAMINE): Return int that is
	zero iff we managed to examine the stack; take new args RCV_NAME,
	SEND_NAME, OPTION, and TIMEOUT to fill in with mach_msg args.
1999-11-13 23:42:53 +00:00
Roland McGrath
f1699640b1 1999-10-04 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdlookup.c (__hurd_directory_name_split): New function.
	(__directory_name_split): New function.
	* hurd/hurd.h: Declare them.
	* sysdeps/mach/hurd/rmdir.c: Use __directory_name_split instead of
	__file_name_split, so we ignore trailing slashes properly.
	* sysdeps/mach/hurd/rename.c: Likewise.
1999-11-13 23:42:45 +00:00
Roland McGrath
95688720e8 1999-10-19 Bruno Haible <haible@ilog.fr>
* sysdeps/mach/sleep.c (__sleep): If we slept longer than requested,
	return 0, not UINT_MAX.
1999-10-19 17:53:26 +00:00
Roland McGrath
7eed8c34e9 1999-10-01 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdioctl.c (rectty_dtable): Renamed to install_ctty.
	(install_ctty): Do the changing of the cttyid port cell here, inside
	the critical section while we holding the dtable lock.
	(_hurd_setcttyid, tiocsctty, tiocnotty): Use that instead of changing
	the port cell and calling rectty_dtable.
	(_hurd_locked_install_cttyid): New function, split out of install_ctty.
	(install_ctty): Use it inside a critical section, with the lock held.
	* sysdeps/mach/hurd/setsid.c (__setsid): Use
	_hurd_locked_install_cttyid to effect the cttyid and dtable changes
	after proc_setsid, having held the dtable lock throughout.
	* hurd/dtable.c (ctty_new_pgrp): With the dtable lock held, check the
	cttyid port for null and bail out early if so.  The dtable lock
	serializes us after any cttyid change and its associated dtable update.
1999-10-01 20:02:29 +00:00
Roland McGrath
38f795013c 1999-09-18 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/wait4.c (__wait4): When proc_wait returns EAGAIN,
	return zero to indicate no children died yet (assuming WNOHANG).
1999-09-18 10:43:37 +00:00
Roland McGrath
a56ac119ed 1999-09-18 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/setsid.c: #include <hurd/fd.h>.
1999-09-18 10:43:28 +00:00
Roland McGrath
eb73feeb6d 1999-09-17 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/setsid.c (__setsid): Fix return type -> pid_t.
	Return _hurd_pgrp instead of 0.
1999-09-17 08:40:09 +00:00
Ulrich Drepper
b887ee2281 Define SIGCONTEXT_EXTRA_ARGS. 1999-08-23 17:51:34 +00:00
Roland McGrath
8595b3b943 1999-08-19 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/i386/intr-msg.h (INTR_MSG_TRAP): Mark OPTION and
	TIMEOUT as outputs of the asm to indicate that the signal thread
	might mutate them.
	* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Short circuit to plain
	mach_msg if only sending or only receiving (i.e., not an RPC).  When
	making an RPC that might get interrupted, save OPTION and the portion
	of the message buffer that gets clobbered by an EINTR reply message,
	and properly restore them before attempting to retry the request
	message send.
1999-08-20 03:45:14 +00:00
Ulrich Drepper
d36f40995a Add change from main branch. 1999-08-19 21:00:36 +00:00
Roland McGrath
68a743d253 1999-07-27 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/i386/init-first.c (init): Move the inline
	assembler code to switch stacks and call init1 outside this
	function.  Inside `init' the code was optimized away by gcc
	2.95 since it was "clearly" unreachable.
	* sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
	Do something similar for the trampoline code.
1999-07-28 18:22:23 +00:00
Roland McGrath
a6877d2677 1999-07-27 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/Makefile [stdio-common]: Set inhibit-siglist.
	(The code this disables is entirely gone in the main branch,
	so this change does not need to be propagated from the 2.1 branch.)
1999-07-28 18:18:59 +00:00
Roland McGrath
b9d638fcd4 1999-07-20 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/_strerror.c: Include <libintl.h>.
1999-07-20 21:07:48 +00:00
Andreas Schwab
01ff174aeb * iconvdata/Makefile (distribute): Don't distribute CVS
directory.
	* sysdeps/generic/Dist: Add siglist.h.
	* sysdeps/mach/hurd/Dist: Add siglist.h.
1999-07-20 08:36:38 +00:00
Roland McGrath
ce5922110a 1999-07-11 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/brk.c (static_data_start): New variable.
	(_hurd_set_brk, init_brk): Use that instead of &__data_start.
	Initialize it from &__data_start if defined, or else &_end.
1999-07-11 17:13:53 +00:00
Roland McGrath
3f584b92ef 1999-06-16 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/unix/sysv/linux/siglist.c: Moved to ...
	* sysdeps/gnu/siglist.c: ... here.
	Use <siglist.h> instead of "siglist.h", to ensure sysdeps-search.
	Use <bits/wordsize.h> instead of <sizes.h> to determine PTR_SIZE_STR.
	* sysdeps/gnu/siglist.h: New file, contents from linux version.
	Add entry for SIGLOST protected by #ifdef.
	* sysdeps/unix/sysv/linux/siglist.h: Just #include that file,
	and define OLD_SIGLIST_SIZE_STR.
	* sysdeps/mach/hurd/siglist.h: New file, likewise.
1999-06-19 12:15:13 +00:00
Roland McGrath
091b6505fc 1999-06-12 Mark Kettenis <kettenis@gnu.org>
* Makeconfig (static-start-installed-name): Set to
	$(start-installed-name) if not defined.
	(+link-static): Use $(static-start-installed-name) instead of
	$(start-installed-name).
	* sysdeps/mach/hurd/i386/Makefile (static-start-installed-name):
	Set to crt0.o.
1999-06-13 10:02:10 +00:00
Roland McGrath
1cf22aeeb8 copyright year 1999-06-13 09:53:22 +00:00
Roland McGrath
75913a5ef5 1999-06-12 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/fork.c (__fork): Make use of `insert_type' when
	inserting a send right into the child instead of unconditionally
	copying the send right.
1999-06-13 09:51:02 +00:00
Roland McGrath
af275feae5 1999-04-28 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/getdents.c (__getdirentries): Remove
	implementation and just always fail with ENOSYS.  This entry point is
	obsolete.  Add link warning to that effect.
1999-04-28 12:03:33 +00:00
Roland McGrath
ab7ed37a40 1999-04-10 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/Dist: Add clk_tck.c.
1999-04-10 14:21:19 +00:00
Roland McGrath
0c6ee8a5ba 1999-03-26 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/bits/time.h: New file. 
* sysdeps/mach/hurd/getrusage.c: New file. 
* sysdeps/mach/hurd/clk_tck.c: New file. 
* sysdeps/mach/hurd/Versions (libc) [GLIBC_2.1.1]: Add __libc_clk_tck. 
* sysdeps/mach/hurd/Makefile [$(subdir) = posix] 
(sysdep_routines): Add clk_tck. 
* sysdeps/mach/hurd/times.c: Removed, since getrusage is now 
implemented.
1999-04-06 01:06:12 +00:00
Roland McGrath
76bd175f4d 1999-03-26 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/bits/time.h: New file. 
* sysdeps/mach/hurd/getrusage.c: New file. 
* sysdeps/mach/hurd/clk_tck.c: New file. 
* sysdeps/mach/hurd/Versions (libc) [GLIBC_2.1.1]: Add __libc_clk_tck. 
* sysdeps/mach/hurd/Makefile [$(subdir) = posix] 
(sysdep_routines): Add clk_tck. 
* sysdeps/mach/hurd/times.c: Removed, since getrusage is now 
implemented.
1999-04-05 20:34:53 +00:00
Roland McGrath
3635e76aab 1999-03-26 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/Makefile: Only install libc_p.a linker script 
if we build the profiled library.
1999-03-26 08:33:42 +00:00
Roland McGrath
0d29d6d60e Thu Mar 25 23:57:57 1999 Roland McGrath <roland@yaumatei.ai.mit.edu>
* sysdeps/mach/hurd/i386/Makefile [$(subdir) = csu]
	(CFLAGS-initfini.s): New variable, add -DWEAK_GMON_START.
	This does for Hurd/i386 what the 1998-09-08 change did for Linux/i386.
1999-03-25 21:00:06 +00:00
Roland McGrath
5407f442ec 1999-03-23 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/Makefile: Undo last change.
	[$(subdir) = mach] (lib-noranlib): Depend on libmachuser-link.so.
	[$(subdir) = hurd] (lib-noranlib): Depend on libhurduser-link.so.

	* mach/Machrules (+preinit, +postinit, +interp,
	LDFLAGS-$(interface.so)): Variables removed.  Interface libraries get
	linked just like other shared libraries.
	(interface.so): Fix typo in defn, so it works.
	($(objpfx)$(interface.so)): Make it depend on libc.so.
1999-03-23 18:05:48 +00:00
Roland McGrath
12e3dc3197 1999-03-21 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/Makefile (subdir_lib): Depend on 
$(link-rpcuserlibs).
1999-03-23 17:13:50 +00:00
Roland McGrath
0702b5f4fb 1999-03-19 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/fcntl.c (__fcntl: case F_GETLK,F_SETLK,F_SETLKW): 
Support whole-file locking (only) by using the file_lock RPC.  This 
has very wrong semantics, but is better than nothing for the time 
being.  (Correct POSIX.1 locking will require new RPCs in the Hurd 
protocols that will be somewhat hairy to specify.)
1999-03-19 15:32:17 +00:00
Roland McGrath
488c6a323b * sysdeps/mach/hurd/Versions (ld.so) [GLIBC_2.0]: Add
__hurd_sigthread_stack_base, __hurd_sigthread_stack_end,
	__hurd_sigthread_variables, __hurd_threadvar_stack_mask,
	__hurd_threadvar_stack_offset, __close, __fxstat, __getcwd,
	__getpid, __libc_read, __libc_write, __lseek, __mmap, __open,
	__xstat, _exit, _hurd_intr_rpc_mach_msg and abort.

1999-03-15  Mark Kettenis  <kettenis@gnu.org>
1999-03-15 16:49:41 +00:00
Roland McGrath
d012636f1f 1999-03-15 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/poll.c (__poll): Correctly pass NULL to
	_hurd_select if TIMEMOUT is -1.

1999-03-15  Mark Kettenis  <kettenis@gnu.org>

	* sysdeps/mach/hurd/recvfrom.c (recvfrom): Allow ADDR to be NULL.
1999-03-15 14:33:27 +00:00
Roland McGrath
9cfba5dc11 1999-03-15 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/poll.c (__poll): Correctly pass NULL to 
_hurd_select if TIMEMOUT is -1.
1999-03-15 14:22:38 +00:00
Roland McGrath
e441971517 1999-03-09 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/ioctl.c (__ioctl): Move the marshalling of the 
arguments into the request message buffer inside `send_rpc' 
subfunction.  We must repeat the marshalling when retrying the RPC 
after a SIGTTOU delivery.
1999-03-08 21:01:20 +00:00
Roland McGrath
791cfdb726 1999-03-03 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/bits/fcntl.h 
[__USE_GNU] (O_NOFOLLOW, O_DIRECTORY): New macros. 
* hurd/hurdlookup.c (__hurd_file_name_lookup): If O_NOFOLLOW is set, 
set O_NOTRANS as well. 
(__hurd_file_name_lookup_retry): At successful end of lookup, 
if O_NOFOLLOW set, io_stat the resultant port and fail with ENOENT if 
it is a translated node not owned by root. 
(__hurd_file_name_lookup): If O_DIRECTORY is set, put a trailing slash 
on the file name passed to LOOKUP.
1999-03-03 00:31:05 +00:00
Roland McGrath
0fd43249a0 1999-02-28 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/getsockname.c (getsockname): Set *LEN to the 
actual length if the adress length is smaller than the input 
value.  Change type of *LEN paramater to socklen_t. 
* sysdeps/mach/hurd/getpeername.c (getpeername): Likewise. 
* sysdeps/mach/hurd/accept.c (accept): Likewise. 
* sysdeps/mach/hurd/recvfrom.c (recvfrom): Likewise. 
* sysdeps/mach/hurd/sendto.c (sendto): Change type of ADDR_LEN 
paramater to socklen_t.
1999-02-28 13:01:23 +00:00
Roland McGrath
e8f51d56d4 1999-02-27 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/getsysstats.c (__get_nprocs_conf, __get_nprocs,
	__get_phys_pages): Cast &HBI to silence warning.

	* hurd/Makefile (routines): Add hurdchdir and hurdfchdir.
	* hurd/hurdchdir.c: New file.
	* hurd/hurdfchdir.c: New file.
	* sysdeps/mach/hurd/chroot.c: Call
	_hurd_change_directory_port_from_name to do the work.
	* sysdeps/mach/hurd/chdir.c: Likewise.
	* sysdeps/mach/hurd/fchdir.c: Call
	_hurd_change_directory_port_from_fd to do the work.
	* hurd/fchroot.c: Likewise.
	* hurd/hurd.h: Declare them.
1999-02-27 20:06:34 +00:00
Roland McGrath
4014b2cf34 1999-02-27 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/getsysstats.c (__get_nprocs_conf, __get_nprocs, 
__get_phys_pages): Cast &HBI to silence warning.
1999-02-27 20:00:41 +00:00
Roland McGrath
78cee1d8dc 1999-02-16 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/revoke.c: New file.
1999-02-16 19:10:02 +00:00
Roland McGrath
cfcf323d33 1999-02-10 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/pipe.c (__pipe): Don't call __socket_shutdown on 
the "unused" ends of the sockets.  Let pipes be bidirectional.
1999-02-15 16:11:21 +00:00
Ulrich Drepper
e518937a3a Update.
1999-02-07  Ulrich Drepper  <drepper@cygnus.com>

	* Versions.def: New version GLIBC_2.1.1 for libc.
	* stdlib/Versions: Add _Exit, imaxdiv, and imaxdiv to GLIBC_2.1.1.
	* stdlib/labs.c: Moved to...
	* sysdeps/generic/labs.c: ...here.
	* stdlib/llabs.c: Moved to...
	* sysdeps/generic/llabs.c: ...here.
	* stdlib/stdlib.h: Allow definition of ldiv_t and lldiv_t in other
	header.  Declare _Exit.
	* sysdeps/generic/_exit.c: Add alias _Exit.
	* sysdeps/mach/hurd/_exit.c: Likewise.
	* sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
	* sysdeps/standalone/i960/nindy960/_exit.c: Likewise.
	* sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise.
	* sysdeps/unix/_exit.c: Likewise.
	* sysdeps/wordsize-32/inttypes.h: Define imaxdiv_t and declare
	imaxdiv and imaxabs.  Declare lldiv_t if necessary.
	* sysdeps/wordsize-64/inttypes.h: Likewise.
	* sysdeps/wordsize-32/llabs.c: New file.
	* sysdeps/wordsize-32/lldiv.c: New file.
	* sysdeps/wordsize-64/labs.c: New file.
	* sysdeps/wordsize-64/ldiv.c: New file.
	* manual/arith.texi: Document imaxabs, imaxdiv_t, and imaxdiv.
	* manual/startup.texi: Document _Exit.

1999-02-07  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* nscd/cache.c: Include <arpa/inet.h> for inet_ntop.
1999-02-07 12:50:11 +00:00
Roland McGrath
d313236075 1999-02-03 Mark Kettenis <kettenis@gnu.org>
* sysdeps/mach/hurd/utimes.c (__utimes): Deal with TVP being NULL.
1999-02-03 15:17:07 +00:00
Roland McGrath
6e9df19cbe 1999-01-31 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/mach/hurd/times.c: New file.
1999-02-02 23:12:08 +00:00
Roland McGrath
d7440f640e 1999-01-24 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/ioctl.c: Include <hurd/ioctls.defs>. 
(__ioctl): Use IOC_MSGID macro.
1999-01-25 08:42:15 +00:00
Roland McGrath
67afae5860 1999-01-23 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/unix/sysv/linux/sys/mtio.h: Moved to... 
* sysdeps/gnu/sys/mtio.h: ...here. 
(_IOT_mtop, _IOT_mtget, _IOT_mtpos, _IOT_mtconfiginfo): New macros. 
* sysdeps/gnu/Dist: Add sys/mtio.h. 
* sysdeps/unix/sysv/linux/Dist: Remove sys/mtio.h. 
* sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc] 
(sysdep_headers): Don't add sys/mtio.h here. 
* sysdeps/gnu/Makefile [$(subdir) = misc] (sysdep_headers): Add it 
here instead.
1999-01-24 10:40:26 +00:00