From 1920f897d8ffcdbf39d5438f8cc234782b4d4542 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Thu, 12 Jan 2023 18:55:13 +0100 Subject: [PATCH] MINOR: listener: move the backlog setting from listener to bind_conf The backlog setting is also defined by the bind_conf, so let's move it there. --- include/haproxy/listener-t.h | 2 +- src/listener.c | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/include/haproxy/listener-t.h b/include/haproxy/listener-t.h index 7a6aeccae..413d84b96 100644 --- a/include/haproxy/listener-t.h +++ b/include/haproxy/listener-t.h @@ -201,6 +201,7 @@ struct bind_conf { int maxseg; /* for TCP, advertised MSS */ int tcp_ut; /* for TCP, user timeout */ int maxaccept; /* if set, max number of connections accepted at once (-1 when disabled) */ + unsigned int backlog; /* if set, listen backlog */ int level; /* stats access level (ACCESS_LVL_*) */ int severity_output; /* default severity output format in cli feedback messages */ struct list listeners; /* list of listeners using this bind config */ @@ -243,7 +244,6 @@ struct listener { struct fe_counters *counters; /* statistics counters */ int nbconn; /* current number of connections on this listener */ int maxconn; /* maximum connections allowed on this listener */ - unsigned int backlog; /* if set, listen backlog */ int (*accept)(struct connection *conn); /* upper layer's accept() */ enum obj_type *default_target; /* default target to use for accepted sessions or NULL */ /* cache line boundary */ diff --git a/src/listener.c b/src/listener.c index 32a11589a..18c08a8f6 100644 --- a/src/listener.c +++ b/src/listener.c @@ -810,8 +810,8 @@ void delete_listener(struct listener *listener) */ int listener_backlog(const struct listener *l) { - if (l->backlog) - return l->backlog; + if (l->bind_conf->backlog) + return l->bind_conf->backlog; if (l->bind_conf->frontend->backlog) return l->bind_conf->frontend->backlog; @@ -1540,7 +1540,6 @@ static int bind_parse_accept_netscaler_cip(char **args, int cur_arg, struct prox /* parse the "backlog" bind keyword */ static int bind_parse_backlog(char **args, int cur_arg, struct proxy *px, struct bind_conf *conf, char **err) { - struct listener *l; int val; if (!*args[cur_arg + 1]) { @@ -1554,9 +1553,7 @@ static int bind_parse_backlog(char **args, int cur_arg, struct proxy *px, struct return ERR_ALERT | ERR_FATAL; } - list_for_each_entry(l, &conf->listeners, by_bind) - l->backlog = val; - + conf->backlog = val; return 0; }