summaryrefslogtreecommitdiff
path: root/pflocal/socket.c
AgeCommit message (Collapse)Author
2008-07-222008-07-22 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* socket.c (S_socket_send): Release a reader reference instead of a writer reference when the destination is given.
2008-07-22fix copyright yearsSamuel Thibault
2008-07-222008-07-22 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* pf.c (S_socket_fabricate_address): Drop one reference from addr since we only take the send right. * socket.c (S_socket_name): Likewise.
2005-08-29Revery previous change. Was intended for ams-branch, not HEAD.Neal H. Walfield
2005-08-29pflocal/Neal H. Walfield
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.
1996-01-27(S_socket_recv):Miles Bader
Test for MSG_OOB in IN_FLAGS, not FLAGS. Return EINVAL if we get MSG_OOB, not EOPNOTSUPP.
1996-01-24(S_socket_connect): Handle connectionless protocols correctly.Miles Bader
(S_socket_send): Allow DEST_ADDR to be null if the socket is connected.
1995-11-21(S_socket_bind, S_socket_connect): Drop ADDR's send right.Miles Bader
1995-08-31(S_socket_send): Pass in the new NOBLOCK parameter to pipe_send.Miles Bader
1995-08-29(S_socket_send, S_socket_recv): `aquire' -> `acquire'.Miles Bader
1995-08-16(S_socket_recv): Use pipe_release_reader instead of pipe_release.Miles Bader
(S_socket_send): Use pipe_release_writer instead of pipe_release. (S_socket_recv): Reflect EPIPE as EOF.
1995-07-30(S_socket_connect): Actually use the connq operations to connect, like theMiles Bader
listening socket is expecting, instead of connecting directly to it. (S_socket_connect): Use the CONNECT_QUEUE field to allow only a single connection attempt at once. (S_socket_connect): Check for already-connected sockets here instead of waiting for the final rendezvous. (S_socket_connect): Return ECONNREFUSED when trying to connect to a non-existant address, instead of EADDRNOTAVAIL. Rename all uses of the CONNQ field in struct sock to LISTEN_QUEUE.
1995-07-26entered into RCSMiles Bader
1995-07-22Formerly socket.c.~14~Miles Bader
1995-07-22Formerly socket.c.~13~Miles Bader
1995-07-19Formerly socket.c.~12~Miles Bader
1995-07-17Formerly socket.c.~11~Miles Bader
1995-07-16Formerly socket.c.~10~Miles Bader
1995-07-15Formerly socket.c.~9~Miles Bader
1995-07-14Formerly socket.c.~8~Miles Bader
1995-07-08Formerly socket.c.~7~Miles Bader
1995-07-05Formerly socket.c.~6~Miles Bader
1995-07-04Formerly socket.c.~5~Miles Bader
1995-07-03Formerly socket.c.~4~Miles Bader
1995-07-02Formerly socket.c.~3~Miles Bader
1995-07-02Formerly socket.c.~2~Miles Bader
1995-07-01Initial revisionMiles Bader