QUIC: fixed bulding perl module by reducing header pollution.

The ngx_http_perl_module module doesn't have a notion of including additional
search paths through --with-cc-opt, which results in compile error incomplete
type 'enum ssl_encryption_level_t' when building nginx without QUIC support.
The enum is visible from quic event headers and eventually pollutes ngx_core.h.

The fix is to limit including headers to compile units that are real consumers.
This commit is contained in:
Sergey Kandaurov 2020-07-22 14:48:49 +03:00
parent 5468904e3b
commit ca0b9871bc
4 changed files with 5 additions and 2 deletions

View File

@ -86,8 +86,6 @@ typedef void (*ngx_connection_handler_pt)(ngx_connection_t *c);
#include <ngx_event_openssl.h>
#if (NGX_OPENSSL_QUIC)
#include <ngx_event_quic.h>
#include <ngx_event_quic_transport.h>
#include <ngx_event_quic_protection.h>
#endif
#endif
#include <ngx_process_cycle.h>

View File

@ -7,6 +7,8 @@
#include <ngx_config.h>
#include <ngx_core.h>
#include <ngx_event.h>
#include <ngx_event_quic_transport.h>
#include <ngx_event_quic_protection.h>
/* 0-RTT and 1-RTT data exist in the same packet number space,

View File

@ -7,6 +7,8 @@
#include <ngx_config.h>
#include <ngx_core.h>
#include <ngx_event.h>
#include <ngx_event_quic_transport.h>
#include <ngx_event_quic_protection.h>
#define NGX_QUIC_IV_LEN 12

View File

@ -7,6 +7,7 @@
#include <ngx_config.h>
#include <ngx_core.h>
#include <ngx_event.h>
#include <ngx_event_quic_transport.h>
#if (NGX_HAVE_NONALIGNED)