From 600802aef0b2df278142c24968627e1dd242f24c Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Tue, 4 Aug 2015 17:19:06 +0200 Subject: [PATCH] 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. --- include/types/server.h | 1 + src/hlua.c | 2 ++ src/server.c | 1 + 3 files changed, 4 insertions(+) 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; -- 2.47.3