mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-22 22:31:28 +02:00
MINOR: mux: Add info about the supported side in alpn_mux_list structure
Now, a multiplexer can specify if it can be install on incoming connections (ALPN_SIDE_FE), on outgoing connections (ALPN_SIDE_BE) or both (ALPN_SIDE_BOTH). These flags are compatible with proxies' ones.
This commit is contained in:
parent
b75bb21092
commit
2d5292a412
@ -429,9 +429,17 @@ enum alpn_proxy_mode {
|
||||
ALPN_MODE_ANY = ALPN_MODE_TCP | ALPN_MODE_HTTP,
|
||||
};
|
||||
|
||||
enum alpn_proxy_side {
|
||||
ALPN_SIDE_NONE = 0,
|
||||
ALPN_SIDE_FE = 1, // same as PR_CAP_FE
|
||||
ALPN_SIDE_BE = 2, // same as PR_CAP_BE
|
||||
ALPN_SIDE_BOTH = ALPN_SIDE_FE | ALPN_SIDE_BE,
|
||||
};
|
||||
|
||||
struct alpn_mux_list {
|
||||
const struct ist token; /* token name and length. Empty is catch-all */
|
||||
enum alpn_proxy_mode mode;
|
||||
enum alpn_proxy_side side;
|
||||
const struct mux_ops *mux;
|
||||
struct list list;
|
||||
};
|
||||
|
@ -3603,7 +3603,7 @@ const struct mux_ops h2_ops = {
|
||||
|
||||
/* ALPN selection : this mux registers ALPN tolen "h2" */
|
||||
static struct alpn_mux_list alpn_mux_h2 =
|
||||
{ .token = IST("h2"), .mode = ALPN_MODE_HTTP, .mux = &h2_ops };
|
||||
{ .token = IST("h2"), .mode = ALPN_MODE_HTTP, .side = ALPN_SIDE_FE, .mux = &h2_ops };
|
||||
|
||||
/* config keyword parsers */
|
||||
static struct cfg_kw_list cfg_kws = {ILH, {
|
||||
|
@ -217,7 +217,7 @@ const struct mux_ops mux_pt_ops = {
|
||||
|
||||
/* ALPN selection : default mux has empty name */
|
||||
static struct alpn_mux_list alpn_mux_pt =
|
||||
{ .token = IST(""), .mode = ALPN_MODE_ANY, .mux = &mux_pt_ops };
|
||||
{ .token = IST(""), .mode = ALPN_MODE_ANY, .side = ALPN_SIDE_BOTH, .mux = &mux_pt_ops };
|
||||
|
||||
__attribute__((constructor))
|
||||
static void __mux_pt_init(void)
|
||||
|
Loading…
x
Reference in New Issue
Block a user