Commit Graph

15 Commits

Author SHA1 Message Date
Samuel Thibault c187253fc2 hurdselect: remove dead code.
This removes code which actually never happens, and is already taken
care of in the function.

This is in the second part of select, when the __mach_msg() function
over the portset has returned something else than MACH_MSG_SUCCESS. I
guess in the past the value returned by __mach_msg() was stored in err,
so this code was necessary to set back err to 0, but now it is stored in
msgerr, so err is already still 0 by default. It can thus never contain
MACH_RCV_TIMED_OUT, i.e. the code is dead. The first case mentioned in
the comment is already handled: on time out with no message, err is
already still the default 0. On time out due to poll, err would still be
0, unless some of the io_select RPCs has returned EINTR, in which case
it contains EINTR. If any other io_select RPCs had returned a proper
answer, got!=0, and thus err is set to 0 just below. The code is thus
indeed not useful any more.
2015-02-07 22:18:03 +01:00
Samuel Thibault a9a002fb6c hurdselect: Let select get interrupted by signals
We need to set MACH_RCV_INTERRUPT to avoid __mach_msg just looping on signals,
and then we can handle the interruption.
2015-02-07 22:13:46 +01:00
Samuel Thibault d5131d3c1e hurd: allow poll() array bigger than FD_SETSIZE 2015-02-07 22:07:38 +01: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
Pino Toscano c6474b07e7 Hurd: _hurd_select: check for invalid parameter values 2012-05-10 15:57:27 -07:00
Paul Eggert 59ba27a63a Replace FSF snail mail address with URLs. 2012-02-09 23:18:22 +00:00
Samuel Thibault 5a42321d43 Hurd: fix timeout rounding in select 2010-08-02 16:46:12 -07:00
Roland McGrath db6b51ada7 * hurd/hurdselect.c (_hurd_select): Fix
MACH_MSG_TYPE_INTEGER_T -> integer_t in sizeof.
	Use a union rather than casts to compare mach_msg_type_t as int.

2002-03-25  Roland McGrath  <roland@frob.com>

	* hurd/hurdchdir.c (_hurd_change_directory_port_from_name): Don't
	check off the end of NAME when it's shorter than 2 chars.
	Reported by Ognyan Kulev <ogi@fmi.uni-sofia.bg>.

2002-03-17  Roland McGrath  <roland@frob.com>

	* sysdeps/mach/hurd/i386/sys/io.h: New file.
	* sysdeps/mach/hurd/i386/ioperm.c: New file.
	* sysdeps/mach/hurd/i386/Dist: Add them.
	* sysdeps/mach/hurd/i386/Versions
	(libc: GLIBC_2.2.6): New set, add ioperm.
	* sysdeps/mach/configure.in: New check to set HAVE_I386_IO_PERM_MODIFY.
	(mach_interface_list): Check for mach_i386.defs.
	* config.h.in (HAVE_I386_IO_PERM_MODIFY): #undef it.
	* sysdeps/mach/configure: Regenerated.
2002-04-02 04:43:06 +00:00
Roland McGrath f22a77e1db * hurd/hurdselect.c (_hurd_select) [MACH_MSG_TRAILER_MINIMUM_SIZE]:
Use untyped Mach IPC message format.

	* sysdeps/mach/hurd/ioctl.c (__ioctl) [! MACH_MSG_TYPE_BIT]: Handle
	Handle untyped Mach IPC message formats.

	* hurd/catch-exc.c (_S_catch_exception_raise) [EXC_MASK_ALL]:
	Expect different argument conventions when this is defined.
	[EXC_MASK_ALL] (_S_catch_exception_raise_state): New stub function.
	[EXC_MASK_ALL] (_S_catch_exception_raise_state_identity): Likewise.
	* hurd/hurdfault.c: Likewise for _hurdsig_fault_catch_exception_*.
	[NDR_CHAR_ASCII] (mig_reply_header_t): #define as mig_reply_error_t
	for OSF Mach variant.
	(faulted): Use mig_reply_error_t for REPLY.
	(_hurdsig_fault_init) [EXC_MASK_ALL]: Use EXCEPTION_STATE_IDENTITY
	in __thread_set_exception_ports call.
	(_hurdsig_fault_init) [MACH_PORT_RECEIVE_STATUS]: Use
	__mach_port_set_attributes in place of __mach_port_set_qlimit.

	* sysdeps/mach/powerpc/sysdep.h (_MACH_MACHINE_ASM_H): Define this
	before include <sysdeps/mach/sysdep.h>, to inhibit <mach/machine/asm.h>
	on Darwin, which includes bogons.
2002-02-17 22:54:39 +00:00
Roland McGrath 80081a0a88 2001-10-28 Roland McGrath <roland@frob.com>
* hurd/hurdselect.c (_hurd_select): Check SELECT_RETURNED bit when
	packing results for a `poll' call.
2001-10-28 22:10:26 +00:00
Andreas Jaeger 41bdb6e20c Update to LGPL v2.1.
2001-07-06  Paul Eggert  <eggert@twinsun.com>

	* manual/argp.texi: Remove ignored LGPL copyright notice; it's
	not appropriate for documentation anyway.
	* manual/libc-texinfo.sh: "Library General Public License" ->
	"Lesser General Public License".

2001-07-06  Andreas Jaeger  <aj@suse.de>

	* All files under GPL/LGPL version 2: Place under LGPL version
	2.1.
2001-07-06 04:58:11 +00:00
Roland McGrath c3aba1be90 1999-02-27 Roland McGrath <roland@baalperazim.frob.com>
* hurd/hurdselect.c (_hurd_select): When bailing for bogus fd, don't 
try to _hurd_port_free a lower-numbered descriptor that was not in any 
fd_set.
1999-02-27 13:27:03 +00:00
Roland McGrath 0d3eb016d6 1998-12-05 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/pselect.c: New file.

	* sysdeps/mach/hurd/poll.c: New file.

	* hurd/Makefile (routines): Add hurdselect.
	* hurd/hurdselect.c: New file.
	(_hurd_select): New function, guts taken from ...
	* sysdeps/mach/hurd/select.c (__select): ... here.
	Now work by just calling _hurd_select.
	* hurd/hurd/fd.h: Declare _hurd_select.

1998-12-05  Roland McGrath  <roland@baalperazim.frob.com>

	* time/strptime.c: Fix unterminated comment in last change.

	* argp/argp.h: Add __restrict.
1998-12-06 00:44:12 +00:00