Age | Commit message (Collapse) | Author |
|
* io.c (S_io_stat): Adapt to ``struct stat'' changes.
|
|
|
|
2005-05-17 Neal H. Walfield <neal@gnu.org>
* connq.h (struct connq_request): Remove forward.
(connq_listen): Wait for a request to be queued not until there is
a connection attempt. Remove REQ parameter. Update callers.
(connq_request_complete): Remove declaration.
(connq_connect): Wait for a slot to queue a request not until
there is an acceptor. Remove SOCK parameter. Update callers.
(connq_connect_complete): New declaration.
(connq_connect_cancel): New declaration.
* connq.c (struct connq): Remove fields noqueue, queue, length,
head and tail. Add fields head, tail, count, max, connectors and
num_connectors. That is, replace the circular buffer with a
singly linked list.
(qnext): Remove function.
(struct connq_request): Remove field signal, lock, completed and
err. Add field next.
(connq_request_init): Rewrite according to new semantics.
(connq_request_enqueue): New function.
(connq_request_dequeue): New function.
(connq_create): Update according to new semantics.
(connq_destroy): Likewise.
(connq_listen): Rewrite to not block until there is a connector
but until there is a request in the queue.
(connq_request_complete): Remove function.
(connq_connect): Rewrite to not block until there is an acceptor
but until there is space for a request.
(connq_connect_complete): New function.
(connq_connect_cancel): New function.
(connq_compress): Remove dead code.
(connq_set_length): Rewrite.
* socket.c (S_socket_connect): Create the server socket here...
(S_socket_accept): ... not here.
|
|
* io.c (S_io_identity): Use ino_t for FILENO.
|
|
* io.c (S_io_reauthenticate): unsigned -> size_t
(S_io_restrict_auth): Likewise.
|
|
allows implementation of POSIX pipes by using a S_IFSOCK protocol.
* sock.h: Include <sys/types.h>.
(struct sock): Add new member `mode'.
(sock_create): Add new parameter `mode'.
* sock.c (sock_create): Initialize `mode' member of struct sock,
with new parameter.
* pf.c (S_socket_create): Pass file type/mode to sock_create based
on PROTOCOL.
* io.c (S_io_stat): Use new member of `struct sock' to set
ST->st_mode.
|
|
|
|
* io.c (S_io_map_segment): New function.
|
|
* io.c: Add #include <sys/mman.h> for munmap decl.
|
|
* io.c (TRASH_IDS): Use munmap instead of vm_deallocate.
|
|
* io.c (S_io_revoke): New function. Don't attempt to implement.
(Other systems don't even permit non-file revokes.)
|
|
|
|
auth_server_authenticate for as long as we get EINTR.
|
|
auth_server_authenticate.
|
|
|
|
|
|
|
|
Add reply port parameter, and request notification if it dies.
Don't block if we can return EOF/EPIPE immediately.
|
|
The user specifies O_NONBLOCK, not SOCK_NONBLOCK.
(S_io_get_openmodes): Always return O_APPEND.
|
|
|
|
|
|
|
|
|
|
(S_io_write): Pass in the new NOBLOCK parameter to pipe_write.
|
|
|
|
|
|
Don't check open modes and return EBADF.
|
|
Use pipe_release_reader instead of pipe_release.
(S_io_write): Use pipe_release_writer instead of pipe_release.
(S_io_readable, S_io_read): Reflect EPIPE as EOF.
|
|
connections to be interrupted. Change references to the CONNQ field in
struct sock to LISTEN_QUEUE.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|