From bec7ab0ad9e00ac2f796d5d265cb692cab0c7e8f Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Wed, 23 Sep 2020 18:16:03 +0200 Subject: [PATCH] CLEANUP: proxy: remove the first_to_listen hack in zombify_proxy() This thing was needed for an optimization used in soft_stop() which doesn't exist anymore, so let's remove it as it's cryptic and hinders the listeners cleanup. --- src/proxy.c | 23 +---------------------- 1 file changed, 1 insertion(+), 22 deletions(-) diff --git a/src/proxy.c b/src/proxy.c index d5af92f..a901f53 100644 --- a/src/proxy.c +++ b/src/proxy.c @@ -1326,33 +1326,12 @@ int pause_proxy(struct proxy *p) void zombify_proxy(struct proxy *p) { struct listener *l; - struct listener *first_to_listen = NULL; list_for_each_entry(l, &p->conf.listeners, by_fe) { - enum li_state oldstate = l->state; - unbind_listener_no_close(l); - if (l->state >= LI_ASSIGNED) { + if (l->state >= LI_ASSIGNED) delete_listener(l); - } - /* - * Pretend we're still up and running so that the fd - * will be sent if asked. - */ - if (!first_to_listen && oldstate >= LI_LISTEN) - first_to_listen = l; } - /* Quick hack : at stop time, to know we have to close the sockets - * despite the proxy being marked as stopped, make the first listener - * of the listener list an active one, so that we don't have to - * parse the whole list to be sure. - */ - if (first_to_listen && LIST_ELEM(p->conf.listeners.n, - struct listener *, by_fe) != first_to_listen) { - LIST_DEL(&l->by_fe); - LIST_ADD(&p->conf.listeners, &l->by_fe); - } - p->state = PR_STSTOPPED; } -- 1.7.10.4