summaryrefslogtreecommitdiff
path: root/src/server_find.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/server_find.c')
-rw-r--r--src/server_find.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/server_find.c b/src/server_find.c
index 80148e4..73cb9ba 100644
--- a/src/server_find.c
+++ b/src/server_find.c
@@ -29,8 +29,11 @@ find_client(RealmT* ptr, char mode, int usrclipair)
switch(mode) {
case 1: { /* fill first client before go to next */
for (i = 0; i < ptr->clinum; ++i) {
- if ((ptr->clitable[i].ready == 3) && (ptr->clitable[i].whatusrcli == usrclipair)) {
- if (ptr->clitable[i].usercon < ptr->clitable[i].usernum) {
+ if ((ConnectClient_get_state(ptr->clitable[i]) ==
+ CONNECTCLIENT_STATE_ACCEPTED) &&
+ (ConnectClient_get_usrCliPair(ptr->clitable[i]) == usrclipair)) {
+ if (ConnectClient_get_connected(ptr->clitable[i]) <
+ ConnectClient_get_limit(ptr->clitable[i])) {
return i;
}
}
@@ -45,12 +48,12 @@ find_client(RealmT* ptr, char mode, int usrclipair)
}
int
-find_usernum(ConnectclientT* ptr, int usernum)
+find_usernum(ConnectClient* ptr, int usernum)
{
int i;
- for (i = 0; i < ptr->usernum; ++i) {
- if (ptr->users[i] == -1) {
- ptr->users[i] = usernum;
+ for (i = 0; i < ConnectClient_get_limit(ptr); ++i) {
+ if (ConnectClient_get_users(ptr)[i] == -1) {
+ ConnectClient_get_users(ptr)[i] = usernum;
return i;
}
}