]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MAJOR: listeners: use dual-linked lists to chain listeners with frontends
authorWilly Tarreau <w@1wt.eu>
Thu, 20 Sep 2012 14:48:07 +0000 (16:48 +0200)
committerWilly Tarreau <w@1wt.eu>
Thu, 20 Sep 2012 14:48:07 +0000 (16:48 +0200)
commit4348fad1c1b89c44f8e9fd4b9a9b88b12c131768
tree712b33bc9017fa4d06762d590a52956aa62f5087
parent81a8117b41586f07c43ad70cb5ca17532fdcfa7f
MAJOR: listeners: use dual-linked lists to chain listeners with frontends

Navigating through listeners was very inconvenient and error-prone. Not to
mention that listeners were linked in reverse order and reverted afterwards.
In order to definitely get rid of these issues, we now do the following :
  - frontends have a dual-linked list of bind_conf
  - frontends have a dual-linked list of listeners
  - bind_conf have a dual-linked list of listeners
  - listeners have a pointer to their bind_conf

This way we can now navigate from anywhere to anywhere and always find the
proper bind_conf for a given listener, as well as find the list of listeners
for a current bind_conf.
13 files changed:
include/proto/listener.h
include/types/listener.h
include/types/proxy.h
include/types/stream_interface.h
src/cfgparse.c
src/dumpstats.c
src/haproxy.c
src/listener.c
src/peers.c
src/proto_tcp.c
src/proto_uxst.c
src/proxy.c
src/ssl_sock.c