MINOR: quic: define QUIC flag on listener
Mark QUIC listeners with the flag LI_F_QUIC_LISTENER. It is set by the
proto-quic layer on the add listener callback. This allows to override
more clearly the accept callback on quic_session_accept.
diff --git a/src/cfgparse.c b/src/cfgparse.c
index 6ce2f52..3dfaf65 100644
--- a/src/cfgparse.c
+++ b/src/cfgparse.c
@@ -66,6 +66,7 @@
#include <haproxy/log.h>
#include <haproxy/mailers.h>
#include <haproxy/namespace.h>
+#include <haproxy/quic_sock.h>
#include <haproxy/obj_type-t.h>
#include <haproxy/peers-t.h>
#include <haproxy/peers.h>
@@ -3901,11 +3902,13 @@
if (!listener->maxaccept)
listener->maxaccept = global.tune.maxaccept ? global.tune.maxaccept : MAX_ACCEPT;
- /* listener->accept may already be initialized by some
- * protocols so do not overwrite it in this case.
- */
- if (!listener->accept)
- listener->accept = session_accept_fd;
+ /* listener accept callback */
+ listener->accept = session_accept_fd;
+#ifdef USE_QUIC
+ /* override the accept callback for QUIC listeners. */
+ if (listener->flags & LI_F_QUIC_LISTENER)
+ listener->accept = quic_session_accept;
+#endif
listener->analysers |= curproxy->fe_req_ana;
listener->default_target = curproxy->default_target;