comparison src/mail/ngx_mail.h @ 7794:12ea1de7d87c

Mail: parsing of the PROXY protocol from clients. Activated with the "proxy_protocol" parameter of the "listen" directive. Obtained information is passed to the auth_http script in Proxy-Protocol-Addr, Proxy-Protocol-Port, Proxy-Protocol-Server-Addr, and Proxy-Protocol-Server-Port headers.
author Maxim Dounin <mdounin@mdounin.ru>
date Fri, 05 Mar 2021 17:16:24 +0300
parents d84f13618277
children ef4bdbbce57e
comparison
equal deleted inserted replaced
7793:44ebeeceb70e 7794:12ea1de7d87c
39 unsigned ssl:1; 39 unsigned ssl:1;
40 #if (NGX_HAVE_INET6) 40 #if (NGX_HAVE_INET6)
41 unsigned ipv6only:1; 41 unsigned ipv6only:1;
42 #endif 42 #endif
43 unsigned so_keepalive:2; 43 unsigned so_keepalive:2;
44 unsigned proxy_protocol:1;
44 #if (NGX_HAVE_KEEPALIVE_TUNABLE) 45 #if (NGX_HAVE_KEEPALIVE_TUNABLE)
45 int tcp_keepidle; 46 int tcp_keepidle;
46 int tcp_keepintvl; 47 int tcp_keepintvl;
47 int tcp_keepcnt; 48 int tcp_keepcnt;
48 #endif 49 #endif
53 54
54 55
55 typedef struct { 56 typedef struct {
56 ngx_mail_conf_ctx_t *ctx; 57 ngx_mail_conf_ctx_t *ctx;
57 ngx_str_t addr_text; 58 ngx_str_t addr_text;
58 ngx_uint_t ssl; /* unsigned ssl:1; */ 59 unsigned ssl:1;
60 unsigned proxy_protocol:1;
59 } ngx_mail_addr_conf_t; 61 } ngx_mail_addr_conf_t;
60 62
61 typedef struct { 63 typedef struct {
62 in_addr_t addr; 64 in_addr_t addr;
63 ngx_mail_addr_conf_t conf; 65 ngx_mail_addr_conf_t conf;