const char*
ttt_server_who (ttt_server_t *server);
-/* Generates the statistics for the user. If the function does not
- * return an error, the response will be allocated in this function
- * and will need to be free'd by the caller.
+/* Checks to see whether a username exists.
*
+ * Returns: ttt_server_get_client_from_username(server, username)
+ *
+ * Locking: See ttt_server_get_client_from_username
+ *
+ * Errors: See ttt_server_get_client_from_username
+ */
+ttt_error_t
+ttt_server_verify_username (ttt_server_t *server,
+ const char *username);
+
+/* Points *client to the client with the supplied username, else
+ * leaves *client unhanged.
+ *
+ * Returns: TTT_ERROR_NONE, else TTT_ERROR_NO_USER if username not
+ * found.
+ *
+ * Locking: The server mutex will be acquired and held throughout the
+ * execution of this function. Each client mutex may also be acquired
+ * and held by functions called during the execution of this function.
+ *
+ * Errors: If an error such as an IO error occurs, this function will
+ * not return.
+ */
+ttt_error_t
+ttt_server_get_client_from_username (ttt_server_t *server,
+ const char *username,
+ ttt_client_t **client);
+
+/* Adds an invitation
+ *
* Locking: The server mutex will be acquired and held throughout the
* execution of this function. Each client mutex may also be acquired
* and held by functions called during the execution of this function.
* not return.
*/
ttt_error_t
-ttt_server_statistics (ttt_server_t *server,
- const char *username,
- char **response);
+ttt_server_add_invite (ttt_server_t *server,
+ ttt_client_t *actor,
+ ttt_client_t *invitee);
-/* Checks to see if the username is registered. If the username exists
- * will return TTT_ERROR_NONE, else TTT_ERROR_NO_USER.
+/* Removes an invitation
*
+ * Returns: TTT_ERROR_NONE, else TTT_ERROR_NO_INVITE if no invite
+ * found.
+ *
* Locking: The server mutex will be acquired and held throughout the
* execution of this function. Each client mutex may also be acquired
* and held by functions called during the execution of this function.
* not return.
*/
ttt_error_t
-ttt_server_verify_username (ttt_server_t *server,
- const char *username);
+ttt_server_remove_invite (ttt_server_t *server,
+ ttt_client_t *actor,
+ ttt_client_t *invitee);
/* Gets the server hostname.
*