2 * Copyright (C) 2003-2009 The Music Player Daemon Project
3 * http://www.musicpd.org
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 #include "client_internal.h"
24 static GList
*clients
;
25 static unsigned num_clients
;
28 client_list_is_empty(void)
30 return num_clients
== 0;
34 client_list_is_full(void)
36 return num_clients
>= client_max_connections
;
40 client_list_get_first(void)
42 assert(clients
!= NULL
);
48 client_list_add(struct client
*client
)
50 clients
= g_list_prepend(clients
, client
);
55 client_list_foreach(GFunc func
, gpointer user_data
)
57 g_list_foreach(clients
, func
, user_data
);
61 client_list_remove(struct client
*client
)
63 assert(num_clients
> 0);
64 assert(clients
!= NULL
);
66 clients
= g_list_remove(clients
, client
);