From: Aurelien DARRAGON Date: Mon, 11 Dec 2023 16:14:24 +0000 (+0100) Subject: MINOR: server/event_hdl: expose updater info through INETADDR event X-Git-Tag: v3.0-dev1~56 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=33cd676e9e817d613b3c10f2f3af9e5e06f3be5e;p=thirdparty%2Fhaproxy.git MINOR: server/event_hdl: expose updater info through INETADDR event Thanks to the previous commit, we can now expose updater info through INETADDR event. --- diff --git a/include/haproxy/server-t.h b/include/haproxy/server-t.h index 555eace61b..e2233a4a0d 100644 --- a/include/haproxy/server-t.h +++ b/include/haproxy/server-t.h @@ -669,6 +669,7 @@ struct event_hdl_cb_data_server_inetaddr { struct { struct server_inetaddr prev; struct server_inetaddr next; + struct server_inetaddr_updater updater; } safe; /* no unsafe data */ }; diff --git a/src/server.c b/src/server.c index e9df3f416d..44a757069f 100644 --- a/src/server.c +++ b/src/server.c @@ -436,7 +436,8 @@ void _srv_event_hdl_prepare_state(struct event_hdl_cb_data_server_state *cb_data */ static void _srv_event_hdl_prepare_inetaddr(struct event_hdl_cb_data_server_inetaddr *cb_data, struct server *srv, - const struct server_inetaddr *next_inetaddr) + const struct server_inetaddr *next_inetaddr, + struct server_inetaddr_updater updater) { struct server_inetaddr prev_inetaddr; @@ -451,6 +452,9 @@ static void _srv_event_hdl_prepare_inetaddr(struct event_hdl_cb_data_server_inet /* next */ cb_data->safe.next = *next_inetaddr; + + /* updater */ + cb_data->safe.updater = updater; } /* server event publishing helper: publish in both global and @@ -3945,7 +3949,8 @@ int server_set_inetaddr(struct server *s, if (ip_change || port_change) { _srv_event_hdl_prepare(&cb_data.common, s, 0); _srv_event_hdl_prepare_inetaddr(&cb_data.addr, s, - inetaddr); + inetaddr, + updater); /* server_atomic_sync_task will apply the changes for us */ _srv_event_hdl_publish(EVENT_HDL_SUB_SERVER_INETADDR, cb_data, s);