2005-11-14 Carl Worth <cworth@cworth.org>
authorCarl Worth <carl@theworths.org>
Mon, 14 Nov 2005 21:14:52 +0000 (21:14 +0000)
committerCarl Worth <carl@theworths.org>
Mon, 14 Nov 2005 21:14:52 +0000 (21:14 +0000)
commit15672ac8305a1c5ba0d9bf6edabb0a194c30628e
tree0a17e11b5e937ae1b863458174561bbf10d01bac
parent5d56d3cd8b4685e905ed604277ac9cb32c876127
2005-11-14  Carl Worth  <cworth@cworth.org>

        Server now acts as a very simple chat server.

        * src/ttt-client.h:
        * src/ttt-client.c: (ttt_client_create), (ttt_client_destroy),
        (_append_to_request), (ttt_client_read_into_request_until),
        (ttt_client_read_line), (ttt_client_send): Add support to do a
        buffering read within the client and to reuse the buffer (which
        grows by doubling) from one request to the next. Add function to
        send a message to a client.

        * src/ttt-server.c: (ttt_server_init), (ttt_server_create_client):
        Add support for a client idea. Resize the server's client list by
        doubling.
        * src/ttt-server.c: (ttt_server_destroy_client): Add support to
        destroy a client.
        * src/ttt-server.c: (_handle_client_requests_thread),
        (_accept_client): Move handling of client requests up to
        ttt-server.c from ttt-client.c. Use threads rather than a fork per
        client.
        * src/ttt-server.h:
        * src/ttt-server.h: (ttt_server_broadcast): Add function to send a
        message to all connected clients.

        * src/ttt-socket.h:
        * src/ttt-socket.c: (ttt_socket_read),
        (ttt_socket_write): Add functions to do blocking read or write of
        the specified number of bytes.

        * src/ttt-socket.c: (ttt_socket_accept): Remove fork, so that the
        accept function call can take care of anything like that itself.

        * src/x.h:
        * src/x.c: (xread), (xwrite): New wrappers for read and write.

        * src/ttt.h: Add TTT_STATUS_EOF, TRUE, and FALSE.

        * src/ttt.c: Need to include ttt-args.h explicitly now.
ChangeLog
src/ttt-client.c
src/ttt-client.h
src/ttt-server.c
src/ttt-server.h
src/ttt-socket.c
src/ttt-socket.h
src/ttt.c
src/ttt.h
src/x.c
src/x.h