Re: About SOCK_CLOEXEC, SOCK_NONBLOCK flags, accept4, etc.

2008-12-10 Thread Roland McGrath
accept4.c should define __accept4, move the accept.c guts there, accept should just call __accept4 with 0 flags. CLOEXEC is purely in libc, just pass O_CLOEXEC to _hurd_intern_fd. O_NONBLOCK can be set normally (io_set_openmodes) on the socket before installing it in the fd. That is the intent:

Re: About SOCK_CLOEXEC, SOCK_NONBLOCK flags, accept4, etc.

2008-12-10 Thread Thomas Schwinge
Hello! Roland, thanks for your input! A few questions remain: On Wed, Dec 10, 2008 at 12:37:26AM -0800, Roland McGrath wrote: accept4.c should define __accept4 Directly accept4 is what it's called in io/accept4.c (without doing weak aliasing), so I guess we'll (have to) stick with that? I'll

Re: About SOCK_CLOEXEC, SOCK_NONBLOCK flags, accept4, etc.

2008-12-10 Thread Thomas Schwinge
Hello! Just an amendment to my previous email. On Wed, Dec 10, 2008 at 05:34:37PM +0100, I wrote: CLOEXEC is purely in libc, just pass O_CLOEXEC to _hurd_intern_fd. Really only pass flags O_CLOEXEC or rather pass all flags and let _hurd_intern_fd sort out the ones it's interestied in?

Re: About SOCK_CLOEXEC, SOCK_NONBLOCK flags, accept4, etc.

2008-12-09 Thread Thomas Schwinge
Hello! +int +accept4 (fd, addrarg, addr_len, flags) + int fd; + __SOCKADDR_ARG addrarg; + socklen_t *addr_len; + int flags; +{ error_t err; socket_t new; addr_port_t aport; @@ -43,6 +61,10 @@ accept (fd, addrarg, addr_len) mach_msg_type_number_t buflen;

About SOCK_CLOEXEC, SOCK_NONBLOCK flags, accept4, etc.

2008-12-08 Thread Thomas Schwinge
Hello! Further work on getting glibc HEAD going again. I made some thouhts. Please see through the following and tell me what's right and what's wrong. We yet need more implementations, but these are a start. diff --git a/sysdeps/unix/bsd/bsd4.4/bits/socket.h