X-Git-Url: https://git.cworth.org/git?p=ttt;a=blobdiff_plain;f=ChangeLog;h=dc9d723180edd2541cb990da2d4fe2ee5f51b28f;hp=bc176073fc7e0241c19ef2bfce625caaa48faf62;hb=82b903360548669988e41ffe055bc2215a28b404;hpb=15672ac8305a1c5ba0d9bf6edabb0a194c30628e diff --git a/ChangeLog b/ChangeLog index bc17607..dc9d723 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,105 @@ +2005-11-24 Carl Worth + + * PROTOCOL: Document QUIT. + + * src/ttt-client.c: (_ttt_client_execute_helo), + (_ttt_client_execute_quit), (_ttt_client_init), (_ttt_client_fini), + (_execute_request), (_handle_requests_thread): Implement QUIT. Add + client->registered flag and unregister only if registered. Change + from args_min and args_max to args_required. + + * src/ttt-error.h: + * src/ttt-error.c: (ttt_error_string): + * src/ttt-server.c: (ttt_server_register_client): Put underscores + in TTT_ERRROR names for better readability. + +2005-11-24 Carl Worth + + * PROTOCOL: + * src/ttt-server.c: (ttt_server_init), + (ttt_server_register_client): Remove unique-name generation from + the server. The client is going to have to have code to do this + anyway. + + * src/ttt-client.c: Change minimum arguments for HELO from 0 to 1. + + * TODO: Note that HELO and ERROR INVALIDNAME are implemented in + the server. + +2005-11-23 Richard Worth + + * PROTOCOL: Removed unused servername + + * src/ttt-client.h: * src/ttt-client.c: + (_ttt_client_execute_helo), (_ttt_client_init), + (_ttt_client_fini), (_execute_request), (ttt_client_get_name), + (ttt_client_set_name): Added command descriptions structure. Match + command case-insensitively, dispatch to execute + function. Implement HELO command. Register on HELO instead of on + connect. + + * src/ttt-server.h: * src/ttt-server.c: (ttt_server_init), + (ttt_server_register_client), (ttt_server_unregister_client), + (ttt_server_get_host), (ttt_server_get_port), (main): Added host + and port to server. Make client registration name-based rather + than id-based. + + * src/x.c: (xstrdup): Return NULL on NULL + + * src/ttt-lex.h: Regenerated + +2005-11-22 Carl Worth + + * TODO: Add TODO file listing all the stuff from the protocol that + needs to be implemented. + + * src/Makefile.am: + * configure.in: + * ylwrap: + * src/ttt-lex.h: + * src/ttt-lex.l: + * src/ttt-token.h: Add support for a flex-based tokenizer which + tokenizes newlines and space-separated strings. + + * src/ttt-client.c: (_ttt_client_init), (_ttt_client_fini), + (_append_to_request), (_free_request), (_read_request), + (_execute_request): Use new tokenizer to tokenize input into an + array of request strings. + +2005-11-15 Carl Worth + + * src/Makefile.am: + * src/ttt-error.h: + * src/ttt-error.c: (ttt_error_string): Add error values and error + strings from protocol. + + * src/ttt.h: Add typedefs for ttt_client_t and ttt_server_t so + that there's no problem with ttt-client.h and ttt-server.h needing + to mutually include each other. + + * src/ttt-server.h: + * src/ttt-server.c: (ttt_server_register_client), + (ttt_server_unregister_client), (_ttt_server_accept), (main): Push + the client request handling thread back down into ttt-client.c + where it really does belong. The server code no longer ever + reaches down inside the ttt_client_t structure. Export + ttt_server_register_client and ttt_server_unregister_client. Add + documentation for ttt_server_broadcast. Document locking semantics + for all functions which acquire the server lock. + + * src/ttt-client.h: + * src/ttt-client.c: (_ttt_client_create), (_ttt_client_destroy), + (_read_into_request_until), (_read_request), (_execute_request), + (_handle_requests_thread), (ttt_client_new), (ttt_client_get_id): + Pull the ttt_client structure definition back down inside the + ttt-client.c file. Don't export ttt_client_create and + ttt_client_destroy anymore, but instead just use static + _ttt_client_init and _ttt_client_fini. Implement the broadcast by + just passing a client pointer around and using client->request + rather than passing char *request all over. Document new + ttt_client_new and remove ttt_client_read_line. Add locking to + ttt_client_send and document it. Add ttt_client_get_id. + 2005-11-14 Carl Worth Server now acts as a very simple chat server.