X-Git-Url: https://git.cworth.org/git?p=ttt;a=blobdiff_plain;f=src%2Fttt-server.c;h=60276d39ccf691bed7b86e90822e02d3fb90abd7;hp=f1a1eef7310473c39f2aa09b5ab6a821cfcad934;hb=980a478f042f8cf48f4484bb117fab8dafd8b450;hpb=f8bdcd97af8d0dcee79ab692fffb83dba5a5498a diff --git a/src/ttt-server.c b/src/ttt-server.c index f1a1eef..60276d3 100644 --- a/src/ttt-server.c +++ b/src/ttt-server.c @@ -65,11 +65,11 @@ ttt_server_register_client (ttt_server_t *server, ttt_client_t *client) assert (name != NULL); if (name[0] == '\0') - return TTT_ERROR_INVALIDNAME; + return TTT_ERROR_INVALID_NAME; for (i = 0; i < server->num_clients; i++) { if (strcmp (ttt_client_get_name (server->clients[i]), name) == 0) { - error = TTT_ERROR_INVALIDNAME; + error = TTT_ERROR_INVALID_NAME; goto CLEANUP_LOCK; } } @@ -120,6 +120,7 @@ ttt_server_unregister_client (ttt_server_t *server, ttt_client_t *client) pthread_mutex_unlock (&server->mutex); } +/* Exported: See ttt-server.h for documentation. */ void ttt_server_broadcast (ttt_server_t *server, const char *message) { @@ -133,6 +134,27 @@ ttt_server_broadcast (ttt_server_t *server, const char *message) pthread_mutex_unlock (&server->mutex); } +/* Exported: See ttt-server.h for documentation. */ +const char* +ttt_server_who (ttt_server_t *server) +{ + int i; + char *response; + + pthread_mutex_lock (&server->mutex); + + xasprintf (&response, "WHO"); + + for (i = 0; i < server->num_clients; i++) + xasprintf (&response, "%s %s", response, ttt_client_get_name(server->clients[i])); + + xasprintf (&response, "%s\n", response); + + pthread_mutex_unlock (&server->mutex); + + return response; +} + /* Exported: See ttt-server.h for documentation. */ const char* ttt_server_get_host (ttt_server_t *server)