From: Willy Tarreau Date: Tue, 4 Aug 2015 15:19:06 +0000 (+0200) Subject: MINOR: server: add a list of private idle connections X-Git-Tag: v1.6-dev4~117 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=600802aef0b2df278142c24968627e1dd242f24c;p=thirdparty%2Fhaproxy.git MINOR: server: add a list of private idle connections For now it's not populated but we have the list entry. It will carry all idle connections that sessions don't want to share. They may be used later to reclaim connections upon socket shortage for example. --- diff --git a/include/types/server.h b/include/types/server.h index 130c370f7a..f72ca0c8dc 100644 --- a/include/types/server.h +++ b/include/types/server.h @@ -166,6 +166,7 @@ struct server { struct list pendconns; /* pending connections */ struct list actconns; /* active connections */ + struct list priv_conns; /* private idle connections attached to stream interfaces */ struct task *warmup; /* the task dedicated to the warmup when slowstart is set */ struct conn_src conn_src; /* connection source settings */ diff --git a/src/hlua.c b/src/hlua.c index 1c2938b856..08831ab57b 100644 --- a/src/hlua.c +++ b/src/hlua.c @@ -5060,6 +5060,7 @@ void hlua_init(void) socket_tcp.obj_type = OBJ_TYPE_SERVER; LIST_INIT(&socket_tcp.actconns); LIST_INIT(&socket_tcp.pendconns); + LIST_INIT(&socket_tcp.priv_conns); socket_tcp.state = SRV_ST_RUNNING; /* early server setup */ socket_tcp.last_change = 0; socket_tcp.id = "LUA-TCP-CONN"; @@ -5103,6 +5104,7 @@ void hlua_init(void) socket_ssl.obj_type = OBJ_TYPE_SERVER; LIST_INIT(&socket_ssl.actconns); LIST_INIT(&socket_ssl.pendconns); + LIST_INIT(&socket_ssl.priv_conns); socket_ssl.state = SRV_ST_RUNNING; /* early server setup */ socket_ssl.last_change = 0; socket_ssl.id = "LUA-SSL-CONN"; diff --git a/src/server.c b/src/server.c index 503d53ab36..44f0dc385d 100644 --- a/src/server.c +++ b/src/server.c @@ -886,6 +886,7 @@ int parse_server(const char *file, int linenum, char **args, struct proxy *curpr newsrv->obj_type = OBJ_TYPE_SERVER; LIST_INIT(&newsrv->actconns); LIST_INIT(&newsrv->pendconns); + LIST_INIT(&newsrv->priv_conns); do_check = 0; do_agent = 0; newsrv->flags = 0;