MEDIUM: config: replace ssl_conf by bind_conf
Some settings need to be merged per-bind config line and are not necessarily
SSL-specific. It becomes quite inconvenient to have this ssl_conf SSL-specific,
so let's replace it with something more generic.
diff --git a/include/types/listener.h b/include/types/listener.h
index 78195ec..0985329 100644
--- a/include/types/listener.h
+++ b/include/types/listener.h
@@ -93,8 +93,8 @@
* maxconn setting to the global.maxsock value so that its resources are reserved.
*/
-/* "bind" line SSL settings */
-struct ssl_conf {
+/* "bind" line settings */
+struct bind_conf {
#ifdef USE_OPENSSL
char *ciphers; /* cipher suite to use if non-null */
int nosslv3; /* disable SSLv3 */
@@ -104,7 +104,7 @@
struct eb_root sni_ctx; /* sni_ctx tree of all known certs full-names sorted by name */
struct eb_root sni_w_ctx; /* sni_ctx tree of all known certs wildcards sorted by name */
#endif
- int ref_cnt; /* number of users of this config, maybe 0 on error */
+ int is_ssl; /* SSL is required for these listeners */
struct list by_fe; /* next binding for the same frontend, or NULL */
char *arg; /* argument passed to "bind" for better error reporting */
char *file; /* file where the section appears */
@@ -147,7 +147,7 @@
char *interface; /* interface name or NULL */
int maxseg; /* for TCP, advertised MSS */
- struct ssl_conf *ssl_conf; /* SSL settings, otherwise NULL */
+ struct bind_conf *bind_conf; /* "bind" line settings, include SSL settings among other things */
/* warning: this struct is huge, keep it at the bottom */
struct sockaddr_storage addr; /* the address we listen to */
diff --git a/include/types/proxy.h b/include/types/proxy.h
index a2355d5..dde002a 100644
--- a/include/types/proxy.h
+++ b/include/types/proxy.h
@@ -360,7 +360,7 @@
struct eb32_node id; /* place in the tree of used IDs */
struct eb_root used_listener_id;/* list of listener IDs in use */
struct eb_root used_server_id; /* list of server IDs in use */
- struct list ssl_bind; /* list of SSL bind settings */
+ struct list bind; /* list of bind settings */
} conf; /* config information */
void *parent; /* parent of the proxy when applicable */
};