From 43e8714797d40bcf63efab428dcd25f9caf1d52b Mon Sep 17 00:00:00 2001 From: Jakub Sławiński Date: Fri, 5 Aug 2005 21:45:31 +0200 Subject: v0.7.2 - Added: http proxy basic authorization - Fixed: logging initialization after some value checking - Fixed: auto-reconnect failure when --nossl option is set - Added: auto-reconnect when afserver is not reachable on start - Added: auto-reconnect after normal afserver quit - Added: per user statistics: idle time, amount of downloaded/uploaded bytes and current download/upload rate - Added: support for https proxies - Added: possibility to bind sockets on different interfaces - Fixed: receiving incomplete headers from afclient - Fixed: close user connections by afclient --- src/server_find.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'src/server_find.c') 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; } } -- cgit v1.1