26 #include <sys/types.h> 57 for (ent_p = broker_Proxy_conn.
proxy_conn_ent; ent_p; ent_p = next_ent_p)
59 next_ent_p = ent_p->
next;
79 FD_SET (ent_p->
fd, fds);
106 if (FD_ISSET (ent_p->
fd, fds))
109 FD_CLR (ent_p->
fd, fds);
207 for (prev_ent_p = ent_p = broker_Proxy_conn.
proxy_conn_ent; ent_p; prev_ent_p = ent_p, ent_p = ent_p->
next)
249 for (prev_ent_p = ent_p = broker_Proxy_conn.
proxy_conn_ent; ent_p; prev_ent_p = ent_p, ent_p = ent_p->
next)
319 int min_cur_client = -1;
321 int max_context = -1;
336 for (proxy_index = 0; proxy_index < shm_proxy_p->
num_proxy; proxy_index++)
340 if (proxy_info_p->
pid <= 0)
348 #if !defined(WINDOWS) 358 if (min_cur_client == -1)
360 min_cur_client = cur_client;
363 if (cur_client < max_context && cur_client <= min_cur_client)
371 min_cur_client = cur_client;
374 #if !defined(WINDOWS) 379 return find_proxy_info_p->proxy_port;
385 #if !defined(WINDOWS) 399 if (max_fd < ent_p->fd)
int broker_init_proxy_conn(int max_proxy)
SOCKET broker_find_available_proxy(T_SHM_PROXY *shm_proxy_p)
#define pthread_mutex_init(a, b)
int broker_add_proxy_conn(SOCKET fd)
T_PROXY_INFO * shard_shm_find_proxy_info(T_SHM_PROXY *proxy_p, int proxy_id)
#define pthread_mutex_unlock(a)
int broker_set_proxy_fds(fd_set *fds)
T_PROXY_CONN broker_Proxy_conn
static T_SHM_PROXY * shm_proxy_p
SOCKET broker_get_proxy_conn_maxfd(SOCKET proxy_sock_fd)
static void broker_free_all_proxy_conn_ent(void)
static SOCKET proxy_sock_fd
T_PROXY_CONN_ENT * proxy_conn_ent
static T_PROXY_CONN_ENT * broker_find_proxy_conn_by_fd(SOCKET fd)
T_PROXY_INFO * proxy_info_p
static T_PROXY_CONN_ENT * broker_find_proxy_conn_by_id(int proxy_id)
int broker_delete_proxy_conn_by_proxy_id(int proxy_id)
int broker_register_proxy_conn(SOCKET fd, int proxy_id)
SOCKET broker_get_readable_proxy_conn(fd_set *fds)
pthread_mutex_t proxy_conn_mutex
#define pthread_mutex_lock(a)
int broker_delete_proxy_conn_by_fd(SOCKET fd)
void broker_destroy_proxy_conn(void)
#define pthread_mutex_destroy(a)