Add the Client_find_by_session() function.
[umurmur.git] / src / client.c
index 856c8645e7b647071a9af057d64ff7fe24cd64ac..b69da172cc51324bf87701bbe698d035fa321b55 100644 (file)
@@ -427,6 +427,21 @@ void Client_disconnect_all()
        }
 }
 
+client_t *Client_find_by_session(int session_id)
+{
+       struct dlist *itr;
+
+       list_iterate(itr, &clients) {
+               client_t *client = list_get_entry(itr, client_t, node);
+
+               if (client->sessionId == session_id) {
+                       return client;
+               }
+       }
+
+       return NULL;
+}
+
 client_t *Client_find_by_fd(int fd)
 {
        struct dlist *itr;
@@ -664,7 +679,7 @@ client_t *Client_iterate(client_t **client_itr)
        return c;
 }
 
-void Client_textmessage(client_t *client, char *text)
+void Client_textmessage(client_t *client, const char *text)
 {
        char *message;
        uint32_t *tree_id;