[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Minios-devel] [UNIKRAFT/LIB-NGINX] Provde NGINX modules as Kconfig options.
Signed-off-by: Alexander Jung <a.jung@xxxxxxxxxxx> --- Config.uk | 604 ++++++++++++++++++++++++++++- Makefile.uk | 172 ++++++--- include/ngx_auto_config.h | 184 ++++----- ngx_modules.c | 945 +++++++++++++++++++++++++++++++++++++++++++--- 4 files changed, 1692 insertions(+), 213 deletions(-) diff --git a/Config.uk b/Config.uk index 927178d..bba702d 100644 --- a/Config.uk +++ b/Config.uk @@ -1,5 +1,5 @@ menuconfig LIBNGINX - bool "libnginx - Nginx" + bool "libnginx - a HTTP and reverse proxy, a mail proxy, and a generic TCP/UDP proxy server" default n select LIBUKSCHEDCOOP select LIBSYSCALL_SHIM @@ -24,7 +24,609 @@ menuconfig LIBNGINX select LIBPTHREAD_EMBEDDED if LIBNGINX + config LIBNGINX_MAIN_FUNCTION bool "Provide main function" default n + +config LIBNGINX_DEBUG + bool "Build with debugging enabled" + default n + +menuconfig LIBNGINX_HTTP + bool "Enable HTTP and reverse proxy server" + default y + +if LIBNGINX_HTTP + +config LIBNGINX_HTTP_V2 + bool "Enable ngx_http_v2_module and ngx_http_v2_filter_module" + default n + help + Provides support for HTTP/2. + +config LIBNGINX_HTTP_GZIP + bool "Enable ngx_http_gzip_module" + default y + select LIBZLIB + help + The ngx_http_gzip_module module is a filter that compresses responses using + the "gzip" method. + +config LIBNGINX_HTTP_GZIP_STATIC + bool "Enable ngx_http_gzip_static_module" + default n + select LIBNGINX_HTTP_GZIP + help + The ngx_http_gzip_static_module module allows sending precompressed files + with the ".gz" filename extension instead of regular files. + +config LIBNGINX_HTTP_SSI + bool "Enable ngx_http_ssi_module" + default y + select LIBNGINX_HTTP_POSTPONE + help + The ngx_http_ssi_module module is a filter that processes SSI (Server Side + Includes) commands in responses passing through it. Currently, the list of + supported SSI commands is incomplete. + +config LIBNGINX_HTTP_SLICE + bool "Enable ngx_http_slice_module" + default n + select LIBNGINX_HTTP_POSTPONE + help + The ngx_http_slice_module module is a filter that splits a request into + subrequests, each returning a certain range of response. The filter + provides more effective caching of big responses. + +config LIBNGINX_HTTP_ADDITION + bool "Enable ngx_http_addition_module" + default n + select LIBNGINX_HTTP_POSTPONE + help + The ngx_http_addition_module module is a filter that adds text before and + after a response. + +config LIBNGINX_HTTP_POSTPONE + bool "Enable ngx_http_postpone_module" + default n + help + With the ngx_http_postpone_module it is possible that the transmission of + client data will be postponed until nginx has at least size bytes of data + to send. A zero value disables postponing data transmission. + +config LIBNGINX_HTTP_CHARSET + bool "Enable ngx_http_charset_module" + default y + help + The ngx_http_charset_module module adds the specified charset to the + "Content-Type" response header field. In addition, the module can convert + data from one charset to another. + +config LIBNGINX_HTTP_XSLT + bool "Enable ngx_http_xslt_module" + default n + help + The ngx_http_xslt_module is a filter that transforms XML responses using + one or more XSLT stylesheets. + +config LIBNGINX_HTTP_IMAGE_FILTER + bool "Enable ngx_http_image_filter_module" + default n + help + The ngx_http_image_filter_module module is a filter that transforms images + in JPEG, GIF, PNG, and WebP formats. + +config LIBNGINX_HTTP_SUB + bool "Enable ngx_http_sub_module" + default n + help + The ngx_http_sub_module module is a filter that modifies a response by + replacing one specified string by another. + +config LIBNGINX_HTTP_GUNZIP + bool "Enable ngx_http_gunzip_filter_module" + default n + help + The ngx_http_gunzip_module module is a filter that decompresses responses + with "Content-Encoding: gzip" for clients that do not support "gzip" + encoding method. The module will be useful when it is desirable to store + data compressed to save space and reduce I/O costs. + +config LIBNGINX_HTTP_USERID + bool "Enable ngx_http_userid_module" + default y + select LIBPOSIX_USER + help + The ngx_http_userid_module module sets cookies suitable for client + identification. Received and set cookies can be logged using the embedded + variables $uid_got and $uid_set. This module is compatible with the mod_uid + module for Apache. + +config LIBNGINX_HTTP_DAV + bool "Enable ngx_http_dav_module" + default n + help + The ngx_http_dav_module module is intended for file management automation + via the WebDAV protocol. The module processes HTTP and WebDAV methods PUT, + DELETE, MKCOL, COPY, and MOVE. + +config LIBNGINX_HTTP_AUTOINDEX + bool "Enable ngx_http_autoindex_module" + default y + help + The ngx_http_autoindex_module module processes requests ending with the + slash character ('/') and produces a directory listing. Usually a request + is passed to the ngx_http_autoindex_module module when the + ngx_http_index_module module cannot find an index file. + +config LIBNGINX_HTTP_RANDOM_INDEX + bool "Enable ngx_http_random_index_module" + default n + help + The ngx_http_random_index_module module processes requests ending with the + slash character ('/') and picks a random file in a directory to serve as an + index file. The module is processed before the ngx_http_index_module + module. + +config LIBNGINX_HTTP_MIRROR + bool "Enable ngx_http_mirror_module" + default y + help + The ngx_http_mirror_module module implements mirroring of an original + request by creating background mirror subrequests. Responses to mirror + subrequests are ignored. + +config LIBNGINX_HTTP_AUTH_REQUEST + bool "Enable ngx_http_auth_request_module" + default n + help + The ngx_http_auth_request_module module implements client authorization + based on the result of a subrequest. If the subrequest returns a 2xx + response code, the access is allowed. If it returns 401 or 403, the access + is denied with the corresponding error code. Any other response code + returned by the subrequest is considered an error. + + For the 401 error, the client also receives the "WWW-Authenticate" header + from the subrequest response. + + The module may be combined with other access modules, such as + ngx_http_access_module, ngx_http_auth_basic_module, and + ngx_http_auth_jwt_module, via the satisfy directive. + +config LIBNGINX_HTTP_AUTH_BASIC + bool "Enable ngx_http_auth_basic_module" + default n + select LIBCRYPTO + help + The ngx_http_auth_basic_module module allows limiting access to resources + by validating the user name and password using the "HTTP Basic + Authentication" protocol. + + Access can also be limited by address, by the result of subrequest, or by + JWT. Simultaneous limitation of access by address and by password is + controlled by the satisfy directive. + +config LIBNGINX_HTTP_ACCESS + bool "Enable ngx_http_access_module" + default y + help + The ngx_http_access_module module allows limiting access to certain client + addresses. + + Access can also be limited by password, by the result of subrequest, or by + JWT. Simultaneous limitation of access by address and by password is + controlled by the satisfy directive. + +config LIBNGINX_HTTP_LIMIT_CONN + bool "Enable ngx_http_limit_conn_module" + default y + help + The ngx_http_limit_conn_module module is used to limit the number of + connections per the defined key, in particular, the number of connections + from a single IP address. + + Not all connections are counted. A connection is counted only if it has a + request being processed by the server and the whole request header has + already been read. + +config LIBNGINX_HTTP_LIMIT_REQ + bool "Enable ngx_http_limit_req_module" + default y + help + The ngx_http_limit_req_module module is used to limit the request + processing rate per a defined key, in particular, the processing rate of + requests coming from a single IP address. The limitation is done using the + "leaky bucket" method. + +config LIBNGINX_HTTP_REALIP + bool "Enable ngx_http_realip_module" + default n + help + The ngx_http_realip_module module is used to change the client address and + optional port to those sent in the specified header field. + +config LIBNGINX_HTTP_STATUS + bool "Enable ngx_http_status_module" + default n + help + The ngx_http_status_module module provides access to various status + information. + +config LIBNGINX_HTTP_GEO + bool "Enable ngx_http_geo_module" + default y + help + The ngx_http_geo_module module creates variables with values depending on + the client IP address. + +config LIBNGINX_HTTP_GEOIP + bool "Enable ngx_http_geoip_moduleHTTP geoip" + default n + help + The ngx_http_geoip_module module creates variables with values depending on + the client IP address, using the precompiled MaxMind databases. + + When using the databases with IPv6 support, IPv4 addresses are looked up as + IPv4-mapped IPv6 addresses. + +config LIBNGINX_HTTP_MAP + bool "Enable ngx_http_map_module" + default y + help + The ngx_http_map_module module creates variables whose values depend on + values of other variables. + +config LIBNGINX_HTTP_SPLIT_CLIENTS + bool "Enable ngx_http_split_clients_module" + default y + help + The ngx_http_split_clients_module module creates variables suitable for A/B + testing, also known as split testing. + +config LIBNGINX_HTTP_REFERER + bool "Enable ngx_http_referer_module" + default y + help + The ngx_http_referer_module module is used to block access to a site for + requests with invalid values in the "Referer" header field. It should be + kept in mind that fabricating a request with an appropriate "Referer" field + value is quite easy, and so the intended purpose of this module is not to + block such requests thoroughly but to block the mass flow of requests sent + by regular browsers. It should also be taken into consideration that + regular browsers may not send the "Referer" field even for valid requests. + +config LIBNGINX_HTTP_REWRITE + bool "Enable ngx_http_rewrite_module" + default n + select LIBPCRE + help + The ngx_http_rewrite_module module is used to change request URI using PCRE + regular expressions, return redirects, and conditionally select + configurations. + +config LIBNGINX_HTTP_SSL + bool "Enable ngx_http_ssl_module" + default n + select LIBOPENSSL + select LIBSSL + help + The ngx_http_ssl_module module provides the necessary support for HTTPS. + +config LIBNGINX_HTTP_PROXY + bool "Enable ngx_http_proxy_module" + default y + help + The ngx_http_proxy_module module allows passing requests to another server. + +config LIBNGINX_HTTP_FASTCGI + bool "Enable ngx_http_fastcgi_module" + default y + help + The ngx_http_fastcgi_module module allows passing requests to a FastCGI + server. + +config LIBNGINX_HTTP_UWSGI + bool "Enable ngx_http_uwsgi_module" + default y + help + The ngx_http_uwsgi_module module allows passing requests to a uwsgi server. + +config LIBNGINX_HTTP_SCGI + bool "Enable ngx_http_scgi_module" + default y + help + The ngx_http_scgi_module module allows passing requests to an SCGI server. + +config LIBNGINX_HTTP_GRPC + bool "Enable ngx_http_grpc_module" + default y + select LIBNGINX_HTTP_V2 + help + The ngx_http_grpc_module module allows passing requests to a gRPC server. + +config LIBNGINX_HTTP_PERL + bool "Enable ngx_http_perl_module" + default n + select LIBPCRE + help + The ngx_http_perl_module module is used to implement location and variable + handlers in Perl and insert Perl calls into SSI. + +config LIBNGINX_HTTP_MEMCACHED + bool "Enable ngx_http_memcached_module" + default y + help + The ngx_http_memcached_module module is used to obtain responses from a + memcached server. The key is set in the $memcached_key variable. A + response should be put in memcached in advance by means external to nginx. + +config LIBNGINX_HTTP_EMPTY_GIF + bool "Enable ngx_http_empty_gif_module" + default y + help + The ngx_http_empty_gif_module module emits single-pixel transparent GIF. + +config LIBNGINX_HTTP_BROWSER + bool "Enable ngx_http_browser_module" + default y + help + The ngx_http_browser_module module creates variables whose values depend on + the value of the "User-Agent" request header field: + + $modern_browser: equals the value set by the modern_browser_value + directive, if a browser was identified as modern; + + $ancient_browser: equals the value set by the ancient_browser_value + directive, if a browser was identified as ancient; + + $msie: equals "1" if a browser was identified as MSIE of any version. + +config LIBNGINX_HTTP_SECURE_LINK + bool "Enable ngx_http_secure_link_module" + default n + help + The ngx_http_secure_link_module module is used to check authenticity of + requested links, protect resources from unauthorized access, and limit + link lifetime. + + The authenticity of a requested link is verified by comparing the checksum + value passed in a request with the value computed for the request. If a + link has a limited lifetime and the time has expired, the link is + considered outdated. The status of these checks is made available in the + $secure_link variable. + + The module provides two alternative operation modes. The first mode is + enabled by the secure_link_secret directive and is used to check + authenticity of requested links as well as protect resources from + unauthorized access. The second mode is enabled by the secure_link and + secure_link_md5 directives and is also used to limit lifetime of links. + +config LIBNGINX_HTTP_DEGRADATION + bool "Enable ngx_http_degradation_module" + default n + help + The ngx_http_degradation_module orders Nginx to serve a particular error + page when low memory conditions are met. + +config LIBNGINX_HTTP_FLV + bool "Enable ngx_http_flv_module" + default n + help + The ngx_http_flv_module module provides pseudo-streaming server-side + support for Flash Video (FLV) files. + + It handles requests with the start argument in the request URI's query + string specially, by sending back the contents of a file starting from the + requested byte offset and with the prepended FLV header. + +config LIBNGINX_HTTP_UPSTREAM + bool "Enable ngx_http_upstream_module" + default y + help + The ngx_http_upstream_module module is used to define groups of servers + that can be referenced by the proxy_pass, fastcgi_pass, uwsgi_pass, + scgi_pass, memcached_pass, and grpc_pass directives. + +config LIBNGINX_HTTP_UPSTREAM_HASH + bool "Enable ngx_http_upstream_hash_module" + select LIBNGINX_HTTP_UPSTREAM + default y + help + Specifies a load balancing method for a server group where the + client-server mapping is based on the hashed key value. + +config LIBNGINX_HTTP_UPSTREAM_IP_HASH + bool "Enable ngx_http_upstream_ip_hash_module" + select LIBNGINX_HTTP_UPSTREAM + default y + help + Specifies that a group should use a load balancing method where requests + are distributed between servers based on client IP addresses. + +config LIBNGINX_HTTP_UPSTREAM_LEAST_CONN + bool "Enable ngx_http_upstream_least_conn_module" + select LIBNGINX_HTTP_UPSTREAM + default y + help + Specifies that a group should use a load balancing method where a request + is passed to the server with the least number of active connections, taking + into account weights of servers. If there are several such servers, they + are tried in turn using a weighted round-robin balancing method. + +config LIBNGINX_HTTP_UPSTREAM_RANDOM + bool "Enable ngx_http_upstream_random_module" + select LIBNGINX_HTTP_UPSTREAM + default y + help + Specifies that a group should use a load balancing method where a request + is passed to a randomly selected server, taking into account weights of + servers. + +config LIBNGINX_HTTP_UPSTREAM_KEEPALIVE + bool "Enable ngx_http_upstream_keepalive_module" + select LIBNGINX_HTTP_UPSTREAM + default y + help + Activates the cache for connections to upstream servers. + +config LIBNGINX_HTTP_UPSTREAM_ZONE + bool "Enable ngx_http_upstream_zone_module" + select LIBNGINX_HTTP_UPSTREAM + default y + help + Defines the name and size of the shared memory zone that keeps the group's + configuration and run-time state that are shared between worker processes. + +config LIBNGINX_HTTP_STUB_STATUS + bool "Enable ngx_http_stub_status_module" + default y + help + The ngx_http_stub_status_module module provides access to basic status + information. + +endif + +menuconfig LIBNGINX_MAIL + bool "Enable mail proxy server" + default n + +if LIBNGINX_MAIL + +config LIBNGINX_MAIL_SSL + bool "Enable ngx_mail_ssl_module" + default n + select LIBOPENSSL + select LIBSSL + help + The ngx_mail_ssl_module module provides the necessary support for a mail + proxy server to work with the SSL/TLS protocol. + +config LIBNGINX_MAIL_POP3 + bool "Enable ngx_mail_pop3_module" + default y + help + Sets permitted methods of authentication for POP3 clients. + +config LIBNGINX_MAIL_IMAP + bool "Enable ngx_mail_imap_module" + default y + help + Sets permitted methods of authentication for IMAP clients. + +config LIBNGINX_MAIL_SMTP + bool "Enable ngx_mail_smtp_module" + default y + help + Sets permitted methods of SASL authentication for SMTP clients. + +endif + +menuconfig LIBNGINX_STREAM + bool "Enable generic TCP/UDP proxy server" + default n + +if LIBNGINX_STREAM + +config LIBNGINX_STREAM_SSL + bool "Enable ngx_stream_ssl_module" + default n + select LIBOPENSSL + select LIBSSL + select LIBUKSWRAND + select LIBUKSWRAND_DEVFS + help + The ngx_stream_ssl_module module provides the necessary support for a + stream proxy server to work with the SSL/TLS protocol. + +config LIBNGINX_STREAM_REALIP + bool "Enable ngx_stream_realip_module" + default n + help + The ngx_stream_realip_module module is used to change the client address + and port to the ones sent in the PROXY protocol header. The PROXY protocol + must be previously enabled by setting the proxy_protocol parameter in the + listen directive. + +config LIBNGINX_STREAM_ACCESS + bool "Enable ngx_stream_access_module" + default y + help + The ngx_stream_access_module module allows limiting access to certain + client addresses. + +config LIBNGINX_STREAM_GEO + bool "Enable ngx_stream_geo_module" + default y + help + The ngx_stream_geo_module module creates variables with values depending on + the client IP address. + +config LIBNGINX_STREAM_GEOIP + bool "Enable ngx_stream_geoip_module" + default n + help + The ngx_stream_geoip_module module creates variables with values depending + on the client IP address, using the precompiled MaxMind databases. + + When using the databases with IPv6 support, IPv4 addresses are looked up as + IPv4-mapped IPv6 addresses. + +config LIBNGINX_STREAM_SPLIT_CLIENTS + bool "Enable ngx_stream_split_clients_module" + default y + help + The ngx_stream_split_clients_module module creates variables suitable for A/ + B testing, also known as split testing. + +config LIBNGINX_STREAM_RETURN + bool "Enable ngx_stream_return_module" + default y + help + The ngx_stream_return_module module allows sending a specified value to the + client and then closing the connection. + +config LIBNGINX_STREAM_UPSTREAM + bool "Enable ngx_stream_upstream_module" + default y + help + The ngx_stream_upstream_module module is used to define groups of servers + that can be referenced by the proxy_pass directive. + +config LIBNGINX_STREAM_UPSTREAM_LEAST_CONN + bool "Enable ngx_stream_upstream_least_conn_module" + select LIBNGINX_STREAM_UPSTREAM + default y + help + Specifies that a group should use a load balancing method where a + connection is passed to the server with the least number of active + connections, taking into account weights of servers. If there are several + such servers, they are tried in turn using a weighted round-robin balancing + method. + +config LIBNGINX_STREAM_UPSTREAM_RANDOM + bool "Enable ngx_stream_upstream_random_module" + select LIBNGINX_STREAM_UPSTREAM + default y + help + Specifies that a group should use a load balancing method where a + connection is passed to a randomly selected server, taking into account + weights of servers. + +config LIBNGINX_STREAM_UPSTREAM_ZONE + bool "Enable ngx_stream_upstream_zone_module" + select LIBNGINX_STREAM_UPSTREAM + default y + help + Defines the name and size of the shared memory zone that keeps the group's + configuration and run-time state that are shared between worker processes. + +config LIBNGINX_STREAM_SSL_PREREAD + bool "Enable ngx_stream_ssl_preread_module" + default n + help + The ngx_stream_ssl_preread_module module allows extracting information from + the ClientHello message without terminating SSL/TLS, for example, the + server name requested through SNI or protocols advertised in ALPN. +endif endif diff --git a/Makefile.uk b/Makefile.uk index 839a7f8..812bdcd 100644 --- a/Makefile.uk +++ b/Makefile.uk @@ -3,8 +3,10 @@ # Nginx Makefile.uk # # Authors: Mihai Pogonaru <pogonarumihai@xxxxxxxxx> +# Alexander Jung <alexander.jung@xxxxxxxxx> # # Copyright (c) 2019, University Politehnica of Bucharest. All rights reserved. +# 2020, NEC Europe Ltd., NEC Corporation. All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions @@ -67,13 +69,13 @@ CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_BASE)/include LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/core LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/event LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/event/modules -LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/http -LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/http/modules -LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/http/modules/perl -LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/http/v2 -LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/mail +LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX_HTTP) += -I$(LIBNGINX_SRC)/http +LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX_HTTP) += -I$(LIBNGINX_SRC)/http/modules +LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX_HTTP) += -I$(LIBNGINX_SRC)/http/modules/perl +LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX_HTTP_V2) += -I$(LIBNGINX_SRC)/http/v2 +LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX_MAIL) += -I$(LIBNGINX_SRC)/mail LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/os/unix -LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX) += -I$(LIBNGINX_SRC)/stream +LIBNGINX_CINCLUDES-$(CONFIG_LIBNGINX_STREAM) += -I$(LIBNGINX_SRC)/stream ################################################################################ # Flags @@ -130,6 +132,7 @@ LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/core/ngx_spinlock.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/core/ngx_string.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/core/ngx_syslog.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/core/ngx_times.c +LIBNGINX_SRCS-$(CONFIG_LIBPCRE) += $(LIBNGINX_SRC)/core/ngx_regex.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/event/modules/ngx_select_module.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/event/ngx_event_accept.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/event/ngx_event.c @@ -138,20 +141,8 @@ LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/event/ngx_event_pipe.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/event/ngx_event_posted.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/event/ngx_event_timer.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/event/ngx_event_udp.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_copy_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_core_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_header_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_parse.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_postpone_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_request_body.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_request.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_script.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_special_response.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_upstream.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_upstream_round_robin.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_variables.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/ngx_http_write_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBSSL) += $(LIBNGINX_SRC)/event/ngx_event_openssl.c +LIBNGINX_SRCS-$(CONFIG_LIBSSL) += $(LIBNGINX_SRC)/event/ngx_event_openssl_stapling.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/os/unix/ngx_alloc.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/os/unix/ngx_channel.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/os/unix/ngx_daemon.c @@ -176,37 +167,110 @@ LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/os/unix/ngx_udp_send.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/os/unix/ngx_udp_sendmsg_chain.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/os/unix/ngx_user.c LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/os/unix/ngx_writev_chain.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_access_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_autoindex_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_browser_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_charset_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_chunked_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_empty_gif_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_fastcgi_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_geo_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_headers_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_index_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_limit_conn_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_limit_req_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_log_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_map_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_memcached_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_mirror_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_not_modified_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_proxy_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_range_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_referer_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_scgi_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_split_clients_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_ssi_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_static_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_sub_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_try_files_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_hash_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_ip_hash_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_keepalive_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_least_conn_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_random_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_zone_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_userid_filter_module.c -LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_uwsgi_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_core_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_parse.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_request_body.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_request.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_script.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_special_response.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_upstream.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_upstream_round_robin.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_variables.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_write_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_log_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_header_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_chunked_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_V2) += $(LIBNGINX_SRC)/http/v2/ngx_http_v2_encode.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_V2) += $(LIBNGINX_SRC)/http/v2/ngx_http_v2_huff_decode.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_V2) += $(LIBNGINX_SRC)/http/v2/ngx_http_v2_huff_encode.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_V2) += $(LIBNGINX_SRC)/http/v2/ngx_http_v2_table.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_V2) += $(LIBNGINX_SRC)/http/v2/ngx_http_v2.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_V2) += $(LIBNGINX_SRC)/http/v2/ngx_http_v2_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_range_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_GZIP) += $(LIBNGINX_SRC)/http/modules/ngx_http_gzip_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_POSTPONE) += $(LIBNGINX_SRC)/http/ngx_http_postpone_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_SSI) += $(LIBNGINX_SRC)/http/modules/ngx_http_ssi_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_CHARSET) += $(LIBNGINX_SRC)/http/modules/ngx_http_charset_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_XSLT) += $(LIBNGINX_SRC)/http/modules/ngx_http_xslt_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_IMAGE_FILTER) += $(LIBNGINX_SRC)/http/modules/ngx_http_image_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_SUB) += $(LIBNGINX_SRC)/http/modules/ngx_http_sub_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_ADDITION) += $(LIBNGINX_SRC)/http/modules/ngx_http_addition_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_GUNZIP) += $(LIBNGINX_SRC)/http/modules/ngx_http_gunzip_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_USERID) += $(LIBNGINX_SRC)/http/modules/ngx_http_userid_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_headers_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/ngx_http_copy_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_not_modified_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_SLICE) += $(LIBNGINX_SRC)/http/modules/ngx_http_slice_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_V2) += $(LIBNGINX_SRC)/http/v2/ngx_http_v2_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_static_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_GZIP_STATIC) += $(LIBNGINX_SRC)/http/modules/ngx_http_gzip_static_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_DAV) += $(LIBNGINX_SRC)/http/modules/ngx_http_dav_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_AUTOINDEX) += $(LIBNGINX_SRC)/http/modules/ngx_http_autoindex_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_index_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_RANDOM_INDEX) += $(LIBNGINX_SRC)/http/modules/ngx_http_random_index_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_MIRROR) += $(LIBNGINX_SRC)/http/modules/ngx_http_mirror_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP) += $(LIBNGINX_SRC)/http/modules/ngx_http_try_files_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_AUTH_REQUEST) += $(LIBNGINX_SRC)/http/modules/ngx_http_auth_request_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_AUTH_BASIC) += $(LIBNGINX_SRC)/http/modules/ngx_http_auth_basic_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_ACCESS) += $(LIBNGINX_SRC)/http/modules/ngx_http_access_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_LIMIT_CONN) += $(LIBNGINX_SRC)/http/modules/ngx_http_limit_conn_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_LIMIT_REQ) += $(LIBNGINX_SRC)/http/modules/ngx_http_limit_req_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_REALIP) += $(LIBNGINX_SRC)/http/modules/ngx_http_limit_req_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_STATUS) += $(LIBNGINX_SRC)/http/modules/ngx_http_status_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_GEO) += $(LIBNGINX_SRC)/http/modules/ngx_http_geo_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_GEOIP) += $(LIBNGINX_SRC)/http/modules/ngx_http_geoip_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_MAP) += $(LIBNGINX_SRC)/http/modules/ngx_http_map_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_SPLIT_CLENTS) += $(LIBNGINX_SRC)/http/modules/ngx_http_split_clients_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_REFERER) += $(LIBNGINX_SRC)/http/modules/ngx_http_referer_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_REWRITE) += $(LIBNGINX_SRC)/http/modules/ngx_http_rewrite_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_SSL) += $(LIBNGINX_SRC)/http/modules/ngx_http_ssl_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_PROXY) += $(LIBNGINX_SRC)/http/modules/ngx_http_proxy_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_FASTCGI) += $(LIBNGINX_SRC)/http/modules/ngx_http_fastcgi_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_UWSGI) += $(LIBNGINX_SRC)/http/modules/ngx_http_uwsgi_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_SCGI) += $(LIBNGINX_SRC)/http/modules/ngx_http_scgi_module.c +ifeq ($(CONFIG_LIBNGINX_HTTP_GRPC)$(CONFIG_LIBNGINX_HTTP_V2),yy) +LIBNGINX_SRCS-y += $(LIBNGINX_SRC)/http/modules/ngx_http_grpc_module.c +endif +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_PERL) += $(LIBNGINX_SRC)/http/modules/ngx_http_perl_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_MEMCACHED) += $(LIBNGINX_SRC)/http/modules/ngx_http_memcached_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_EMPTY_GIF) += $(LIBNGINX_SRC)/http/modules/ngx_http_empty_gif_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_BROWSER) += $(LIBNGINX_SRC)/http/modules/ngx_http_browser_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_SECURE_LINK) += $(LIBNGINX_SRC)/http/modules/ngx_http_secure_link_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_DEGRADATION) += $(LIBNGINX_SRC)/http/modules/ngx_http_degradation_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_FLV) += $(LIBNGINX_SRC)/http/modules/ngx_http_flv_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_MP4) += $(LIBNGINX_SRC)/http/modules/ngx_http_mp4_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_UPSTREAM_HASH) += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_hash_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_UPSTREAM_IP_HASH) += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_ip_hash_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_UPSTREAM_LEAST_CONN) += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_least_conn_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_UPSTREAM_RANDOM) += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_random_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_UPSTREAM_KEEPALIVE) += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_keepalive_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_UPSTREAM_ZONE) += $(LIBNGINX_SRC)/http/modules/ngx_http_upstream_zone_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_HTTP_STUB_STATUS) += $(LIBNGINX_SRC)/http/modules/ngx_http_stub_status_module.c + +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL) += $(LIBNGINX_SRC)/mail/ngx_mail.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL) += $(LIBNGINX_SRC)/mail/ngx_mail_core_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL_SSL) += $(LIBNGINX_SRC)/mail/ngx_mail_ssl_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL_POP3) += $(LIBNGINX_SRC)/mail/ngx_mail_pop3_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL_IMAP) += $(LIBNGINX_SRC)/mail/ngx_mail_imap_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL_SMTP) += $(LIBNGINX_SRC)/mail/ngx_mail_smtp_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL) += $(LIBNGINX_SRC)/mail/ngx_mail_auth_http_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_MAIL) += $(LIBNGINX_SRC)/mail/ngx_mail_proxy_module.c + +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM) += $(LIBNGINX_SRC)/stream/ngx_stream.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM) += $(LIBNGINX_SRC)/stream/ngx_stream_core_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM) += $(LIBNGINX_SRC)/stream/ngx_stream_log_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM) += $(LIBNGINX_SRC)/stream/ngx_stream_proxy_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM) += $(LIBNGINX_SRC)/stream/ngx_stream_upstream_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM) += $(LIBNGINX_SRC)/stream/ngx_stream_write_filter_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_SSL) += $(LIBNGINX_SRC)/stream/ngx_stream_ssl_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_REALIP) += $(LIBNGINX_SRC)/stream/ngx_stream_realip_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_ACCESS) += $(LIBNGINX_SRC)/stream/ngx_stream_access_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_GEO) += $(LIBNGINX_SRC)/stream/ngx_stream_geo_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_GEOIP) += $(LIBNGINX_SRC)/stream/ngx_stream_geoip_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_SPLIT_CLIENTS) += $(LIBNGINX_SRC)/stream/ngx_stream_split_clients_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_RETURN) += $(LIBNGINX_SRC)/stream/ngx_stream_return_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_UPSTREAM_LEAST_CONN) += $(LIBNGINX_SRC)/stream/ngx_stream_upstream_least_conn_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_UPSTREAM_RANDOM) += $(LIBNGINX_SRC)/stream/ngx_stream_upstream_random_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_UPSTREAM_ZONE) += $(LIBNGINX_SRC)/stream/ngx_stream_upstream_zone_module.c +LIBNGINX_SRCS-$(CONFIG_LIBNGINX_STREAM_SSL_PREREAD) += $(LIBNGINX_SRC)/stream/ngx_stream_ssl_preread_module.c diff --git a/include/ngx_auto_config.h b/include/ngx_auto_config.h index d85b8a6..564dc02 100644 --- a/include/ngx_auto_config.h +++ b/include/ngx_auto_config.h @@ -1,493 +1,475 @@ -#define NGX_CONFIGURE " --prefix=/nginx --with-http_sub_module --with-select_module --without-http_gzip_module --without-pcre --without-http_rewrite_module --without-http_auth_basic_module --without-http-cache" +#define NGX_CONFIGURE "\ + --prefix=/nginx \ + --with-http_sub_module \ + --with-select_module \ + --without-http_gzip_module \ + --without-pcre \ + --without-http_rewrite_module \ + --without-http_auth_basic_module \ + --without-http-cache" + +#ifndef NGX_DEBUG +#ifdef CONFIG_LIBNGINX_DEBUG +#define NGX_DEBUG 1 +#else +#define NGX_DEBUG 0 +#endif +#endif #ifndef NGX_COMPILER #define NGX_COMPILER "gcc 6.3.0 20170516 (Debian 6.3.0-18+deb9u1) " #endif - #ifndef NGX_HAVE_GCC_ATOMIC #define NGX_HAVE_GCC_ATOMIC 1 #endif - #ifndef NGX_HAVE_C99_VARIADIC_MACROS #define NGX_HAVE_C99_VARIADIC_MACROS 1 #endif - #ifndef NGX_HAVE_GCC_VARIADIC_MACROS #define NGX_HAVE_GCC_VARIADIC_MACROS 1 #endif - #ifndef NGX_HAVE_GCC_BSWAP64 #define NGX_HAVE_GCC_BSWAP64 1 #endif - #ifndef NGX_HAVE_EPOLL #define NGX_HAVE_EPOLL 0 #endif - #ifndef NGX_HAVE_CLEAR_EVENT #define NGX_HAVE_CLEAR_EVENT 1 #endif - #ifndef NGX_HAVE_EPOLLRDHUP #define NGX_HAVE_EPOLLRDHUP 0 #endif - #ifndef NGX_HAVE_EPOLLEXCLUSIVE #define NGX_HAVE_EPOLLEXCLUSIVE 0 #endif - #ifndef NGX_HAVE_O_PATH #define NGX_HAVE_O_PATH 0 #endif - #ifndef NGX_HAVE_SENDFILE #define NGX_HAVE_SENDFILE 1 #endif - #ifndef NGX_HAVE_SENDFILE64 #define NGX_HAVE_SENDFILE64 1 #endif - #ifndef NGX_HAVE_PR_SET_DUMPABLE #define NGX_HAVE_PR_SET_DUMPABLE 1 #endif - #ifndef NGX_HAVE_PR_SET_KEEPCAPS #define NGX_HAVE_PR_SET_KEEPCAPS 1 #endif - #ifndef NGX_HAVE_CAPABILITIES #define NGX_HAVE_CAPABILITIES 0 #endif - #ifndef NGX_HAVE_GNU_CRYPT_R #define NGX_HAVE_GNU_CRYPT_R 1 #endif - #ifndef NGX_HAVE_NONALIGNED #define NGX_HAVE_NONALIGNED 1 #endif - #ifndef NGX_CPU_CACHE_LINE #define NGX_CPU_CACHE_LINE 64 #endif - #define NGX_KQUEUE_UDATA_T (void *) - #ifndef NGX_HAVE_POSIX_FADVISE #define NGX_HAVE_POSIX_FADVISE 0 #endif - #ifndef NGX_HAVE_O_DIRECT #define NGX_HAVE_O_DIRECT 0 #endif - #ifndef NGX_HAVE_ALIGNED_DIRECTIO #define NGX_HAVE_ALIGNED_DIRECTIO 0 #endif - #ifndef NGX_HAVE_STATFS #define NGX_HAVE_STATFS 1 #endif - #ifndef NGX_HAVE_STATVFS #define NGX_HAVE_STATVFS 1 #endif +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_RANDOM +#ifndef NGX_STAT_STUB +#define NGX_STAT_STUB 1 +#endif +#endif #ifndef NGX_HAVE_DLOPEN #define NGX_HAVE_DLOPEN 1 #endif - #ifndef NGX_HAVE_SCHED_YIELD #define NGX_HAVE_SCHED_YIELD 1 #endif - #ifndef NGX_HAVE_SCHED_SETAFFINITY #define NGX_HAVE_SCHED_SETAFFINITY 0 #endif - #ifndef NGX_HAVE_REUSEPORT #define NGX_HAVE_REUSEPORT 1 #endif - #ifndef NGX_HAVE_TRANSPARENT_PROXY #define NGX_HAVE_TRANSPARENT_PROXY 1 #endif - #ifndef NGX_HAVE_IP_BIND_ADDRESS_NO_PORT #define NGX_HAVE_IP_BIND_ADDRESS_NO_PORT 0 #endif - #ifndef NGX_HAVE_IP_PKTINFO #define NGX_HAVE_IP_PKTINFO 0 #endif - #ifndef NGX_HAVE_IPV6_RECVPKTINFO #define NGX_HAVE_IPV6_RECVPKTINFO 0 #endif - #ifndef NGX_HAVE_DEFERRED_ACCEPT #define NGX_HAVE_DEFERRED_ACCEPT 1 #endif - #ifndef NGX_HAVE_KEEPALIVE_TUNABLE #define NGX_HAVE_KEEPALIVE_TUNABLE 1 #endif - #ifndef NGX_HAVE_TCP_FASTOPEN #define NGX_HAVE_TCP_FASTOPEN 0 #endif - #ifndef NGX_HAVE_TCP_INFO #define NGX_HAVE_TCP_INFO 0 #endif - #ifndef NGX_HAVE_ACCEPT4 #define NGX_HAVE_ACCEPT4 0 #endif - #ifndef NGX_HAVE_EVENTFD #define NGX_HAVE_EVENTFD 0 #endif - #ifndef NGX_HAVE_SYS_EVENTFD_H #define NGX_HAVE_SYS_EVENTFD_H 1 #endif - #ifndef NGX_HAVE_UNIX_DOMAIN #define NGX_HAVE_UNIX_DOMAIN 0 #endif - #ifndef NGX_PTR_SIZE #define NGX_PTR_SIZE 8 #endif - #ifndef NGX_SIG_ATOMIC_T_SIZE #define NGX_SIG_ATOMIC_T_SIZE 4 #endif - #ifndef NGX_HAVE_LITTLE_ENDIAN #define NGX_HAVE_LITTLE_ENDIAN 1 #endif - #ifndef NGX_MAX_SIZE_T_VALUE #define NGX_MAX_SIZE_T_VALUE 9223372036854775807LL #endif - #ifndef NGX_SIZE_T_LEN #define NGX_SIZE_T_LEN (sizeof("-9223372036854775808") - 1) #endif - #ifndef NGX_MAX_OFF_T_VALUE #define NGX_MAX_OFF_T_VALUE 9223372036854775807LL #endif - #ifndef NGX_OFF_T_LEN #define NGX_OFF_T_LEN (sizeof("-9223372036854775808") - 1) #endif - #ifndef NGX_TIME_T_SIZE #define NGX_TIME_T_SIZE 8 #endif - #ifndef NGX_TIME_T_LEN #define NGX_TIME_T_LEN (sizeof("-9223372036854775808") - 1) #endif - #ifndef NGX_MAX_TIME_T_VALUE #define NGX_MAX_TIME_T_VALUE 9223372036854775807LL #endif - #ifndef NGX_HAVE_INET6 #define NGX_HAVE_INET6 0 #endif - #ifndef NGX_HAVE_PREAD #define NGX_HAVE_PREAD 1 #endif - #ifndef NGX_HAVE_PWRITE #define NGX_HAVE_PWRITE 1 #endif - #ifndef NGX_HAVE_PWRITEV #define NGX_HAVE_PWRITEV 1 #endif - #ifndef NGX_SYS_NERR #define NGX_SYS_NERR 12 /* was 135, Unikraft does not have all the error codes */ #endif - #ifndef NGX_HAVE_LOCALTIME_R #define NGX_HAVE_LOCALTIME_R 1 #endif - #ifndef NGX_HAVE_CLOCK_MONOTONIC #define NGX_HAVE_CLOCK_MONOTONIC 0 #endif - #ifndef NGX_HAVE_POSIX_MEMALIGN #define NGX_HAVE_POSIX_MEMALIGN 1 #endif - #ifndef NGX_HAVE_MEMALIGN #define NGX_HAVE_MEMALIGN 1 #endif - #ifndef NGX_HAVE_MAP_ANON #define NGX_HAVE_MAP_ANON 1 #endif - #ifndef NGX_HAVE_MAP_DEVZERO #define NGX_HAVE_MAP_DEVZERO 1 #endif - #ifndef NGX_HAVE_SYSVSHM #define NGX_HAVE_SYSVSHM 1 #endif - #ifndef NGX_HAVE_POSIX_SEM #define NGX_HAVE_POSIX_SEM 1 #endif - #ifndef NGX_HAVE_MSGHDR_MSG_CONTROL #define NGX_HAVE_MSGHDR_MSG_CONTROL 1 #endif - #ifndef NGX_HAVE_FIONBIO #define NGX_HAVE_FIONBIO 1 /* ioctl(FIONBIO) */ #endif - #ifndef NGX_HAVE_GMTOFF #define NGX_HAVE_GMTOFF 1 #endif - #ifndef NGX_HAVE_D_TYPE #define NGX_HAVE_D_TYPE 1 #endif - #ifndef NGX_HAVE_SC_NPROCESSORS_ONLN #define NGX_HAVE_SC_NPROCESSORS_ONLN 1 #endif - #ifndef NGX_HAVE_LEVEL1_DCACHE_LINESIZE #define NGX_HAVE_LEVEL1_DCACHE_LINESIZE 1 #endif - #ifndef NGX_HAVE_OPENAT #define NGX_HAVE_OPENAT 1 #endif - #ifndef NGX_HAVE_GETADDRINFO #define NGX_HAVE_GETADDRINFO 1 #endif - #ifndef NGX_HAVE_SELECT #define NGX_HAVE_SELECT 1 #endif +#ifdef CONFIG_LIBNGINX_HTTP_V2 +#ifndef NGX_HTTP_V2 +#define NGX_HTTP_V2 1 +#endif +#else +#ifndef NGX_HTTP_V2 +#define NGX_HTTP_V2 0 +#endif +#endif + +#ifndef NGX_SSL +#ifdef CONFIG_LIBSSL +#define NGX_SSL 1 +#else +#define NGX_SSL 0 +#endif +#endif + +#ifndef NGX_OPENSSL +#if defined(CONFIG_LIBSSL) +#define NGX_OPENSSL 1 +#else +#define NGX_OPENSSL 0 +#endif +#endif + +#ifndef NGX_HTTP_SSL +#ifdef CONFIG_LIBNGINX_HTTP_SSL +#define NGX_HTTP_SSL 1 +#else +#define NGX_HTTP_SSL 0 +#endif +#endif #ifndef NGX_HTTP_CACHE #define NGX_HTTP_CACHE 0 /* disabled module */ #endif +#ifndef NGX_HTTP_HEADERS +#define NGX_HTTP_HEADERS 1 +#endif #ifndef NGX_HTTP_GZIP -#define NGX_HTTP_GZIP 0 /* disabled module */ +#ifdef CONFIG_LIBNGINX_HTTP_GZIP +#define NGX_HTTP_GZIP 1 +#else +#define NGX_HTTP_GZIP 0 +#endif #endif - +#ifdef CONFIG_LIBNGINX_HTTP_SSI #ifndef NGX_HTTP_SSI #define NGX_HTTP_SSI 1 #endif +#endif - +#ifdef CONFIG_LIBCRYPTO #ifndef NGX_CRYPT -#define NGX_CRYPT 0 /* disabled module */ +#define NGX_CRYPT 1 +#endif +#else +#ifndef NGX_CRYPT +#define NGX_CRYPT 0 +#endif #endif - #ifndef NGX_HTTP_X_FORWARDED_FOR #define NGX_HTTP_X_FORWARDED_FOR 1 #endif - #ifndef NGX_HTTP_X_FORWARDED_FOR #define NGX_HTTP_X_FORWARDED_FOR 1 #endif - #ifndef NGX_HTTP_UPSTREAM_ZONE #define NGX_HTTP_UPSTREAM_ZONE 1 #endif - +#ifdef CONFIG_LIBPCRE #ifndef NGX_PCRE -#define NGX_PCRE 0 /* disabled module */ +#define NGX_PCRE 1 #endif - #ifndef NGX_HAVE_PCRE_JIT -#define NGX_HAVE_PCRE_JIT 0 /* disabled module */ +#define NGX_HAVE_PCRE_JIT 0 +#endif #endif - +#ifdef CONFIG_LIBZLIB #ifndef NGX_ZLIB -#define NGX_ZLIB 0 /* disabled module */ +#define NGX_ZLIB 1 +#endif +#else +#ifndef NGX_ZLIB +#define NGX_ZLIB 0 +#endif #endif - #ifndef NGX_PREFIX #define NGX_PREFIX "/nginx/" #endif - #ifndef NGX_CONF_PREFIX #define NGX_CONF_PREFIX "conf/" #endif - #ifndef NGX_SBIN_PATH #define NGX_SBIN_PATH "sbin/nginx" #endif - #ifndef NGX_CONF_PATH #define NGX_CONF_PATH "conf/nginx.conf" #endif - #ifndef NGX_PID_PATH #define NGX_PID_PATH "logs/nginx.pid" #endif - #ifndef NGX_LOCK_PATH #define NGX_LOCK_PATH "logs/nginx.lock" #endif - #ifndef NGX_ERROR_LOG_PATH #define NGX_ERROR_LOG_PATH "logs/error.log" #endif - #ifndef NGX_HTTP_LOG_PATH #define NGX_HTTP_LOG_PATH "logs/access.log" #endif - #ifndef NGX_HTTP_CLIENT_TEMP_PATH #define NGX_HTTP_CLIENT_TEMP_PATH "client_body_temp" #endif - #ifndef NGX_HTTP_PROXY_TEMP_PATH #define NGX_HTTP_PROXY_TEMP_PATH "proxy_temp" #endif - #ifndef NGX_HTTP_FASTCGI_TEMP_PATH #define NGX_HTTP_FASTCGI_TEMP_PATH "fastcgi_temp" #endif - #ifndef NGX_HTTP_UWSGI_TEMP_PATH #define NGX_HTTP_UWSGI_TEMP_PATH "uwsgi_temp" #endif - #ifndef NGX_HTTP_SCGI_TEMP_PATH #define NGX_HTTP_SCGI_TEMP_PATH "scgi_temp" #endif - #ifndef NGX_SUPPRESS_WARN #define NGX_SUPPRESS_WARN 1 #endif - #ifndef NGX_SMP #define NGX_SMP 0 #endif - #ifndef NGX_USER #define NGX_USER "root" #endif - #ifndef NGX_GROUP #define NGX_GROUP "root" #endif diff --git a/ngx_modules.c b/ngx_modules.c index 99e6eac..3015582 100644 --- a/ngx_modules.c +++ b/ngx_modules.c @@ -2,116 +2,671 @@ #include <ngx_config.h> #include <ngx_core.h> - - extern ngx_module_t ngx_core_module; extern ngx_module_t ngx_errlog_module; extern ngx_module_t ngx_conf_module; -//extern ngx_module_t ngx_regex_module; extern ngx_module_t ngx_events_module; extern ngx_module_t ngx_event_core_module; -//extern ngx_module_t ngx_epoll_module; extern ngx_module_t ngx_select_module; + +#ifdef CONFIG_LIBNGINX_HTTP +#include <ngx_http.h> + extern ngx_module_t ngx_http_module; extern ngx_module_t ngx_http_core_module; extern ngx_module_t ngx_http_log_module; + +#ifdef CONFIG_LIBNGINX_UPSTREAM extern ngx_module_t ngx_http_upstream_module; +#endif + +extern ngx_module_t ngx_http_write_filter_module; +extern ngx_module_t ngx_http_header_filter_module; +extern ngx_module_t ngx_http_chunked_filter_module; + +#ifdef CONFIG_LIBNGINX_HTTP_V2 +extern ngx_module_t ngx_http_v2_filter_module; +#endif + +extern ngx_module_t ngx_http_range_header_filter_module; + +#ifdef CONFIG_LIBNGINX_HTTP_GZIP +extern ngx_module_t ngx_http_gzip_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_POSTPONE +extern ngx_module_t ngx_http_postpone_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SSI +extern ngx_module_t ngx_http_ssi_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_CHARSET +extern ngx_module_t ngx_http_charset_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_XSLT +extern ngx_module_t ngx_http_xslt_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_IMAGE_FILTER +extern ngx_module_t ngx_http_image_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SUB +extern ngx_module_t ngx_http_sub_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_ADDITION +extern ngx_module_t ngx_http_addition_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GUNZIP +extern ngx_module_t ngx_http_gunzip_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_USERID +extern ngx_module_t ngx_http_userid_filter_module; +#endif + +extern ngx_module_t ngx_http_headers_filter_module; +extern ngx_module_t ngx_http_copy_filter_module; +extern ngx_module_t ngx_http_range_body_filter_module; +extern ngx_module_t ngx_http_not_modified_filter_module; + +#ifdef CONFIG_LIBNGINX_HTTP_SLICE +extern ngx_module_t ngx_http_slice_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_V2 +extern ngx_module_t ngx_http_v2_module; +#endif + extern ngx_module_t ngx_http_static_module; + +#ifdef CONFIG_LIBNGINX_HTTP_GZIP_STATIC +extern ngx_module_t ngx_http_gzip_static_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_DAV +extern ngx_module_t ngx_http_dav_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_AUTOINDEX extern ngx_module_t ngx_http_autoindex_module; +#endif + extern ngx_module_t ngx_http_index_module; + +#ifdef CONFIG_LIBNGINX_HTTP_RANDOM_INDEX +extern ngx_module_t ngx_http_random_index_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MIRROR extern ngx_module_t ngx_http_mirror_module; +#endif + extern ngx_module_t ngx_http_try_files_module; -//extern ngx_module_t ngx_http_auth_basic_module; + +#ifdef CONFIG_LIBNGINX_HTTP_AUTH_REQUEST +extern ngx_module_t ngx_http_auth_request_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_AUTH_BASIC +extern ngx_module_t ngx_http_auth_basic_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_ACCESS extern ngx_module_t ngx_http_access_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_LIMIT_CONN extern ngx_module_t ngx_http_limit_conn_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_LIMIT_REQ extern ngx_module_t ngx_http_limit_req_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REALIP +extern ngx_module_t ngx_http_realip_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_STATUS +extern ngx_module_t ngx_http_status_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GEO extern ngx_module_t ngx_http_geo_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GEOIP +extern ngx_module_t ngx_http_geoip_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MAP extern ngx_module_t ngx_http_map_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SPLIT_CLENTS extern ngx_module_t ngx_http_split_clients_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REFERER extern ngx_module_t ngx_http_referer_module; -//extern ngx_module_t ngx_http_rewrite_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REWRITE +extern ngx_module_t ngx_http_rewrite_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SSL +extern ngx_module_t ngx_http_ssl_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_PROXY extern ngx_module_t ngx_http_proxy_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_FASTCGI extern ngx_module_t ngx_http_fastcgi_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UWSGI extern ngx_module_t ngx_http_uwsgi_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SCGI extern ngx_module_t ngx_http_scgi_module; +#endif + +#if defined CONFIG_LIBNGINX_HTTP_GRPC && defined CONFIG_LIBNGINX_HTTP_V2 +extern ngx_module_t ngx_http_grpc_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_PERL +extern ngx_module_t ngx_http_perl_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MEMCACHED extern ngx_module_t ngx_http_memcached_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_EMPTY_GIF extern ngx_module_t ngx_http_empty_gif_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_BROWSER extern ngx_module_t ngx_http_browser_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SECURE_LINK +extern ngx_module_t ngx_http_secure_link_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_DEGRADATION +extern ngx_module_t ngx_http_degradation_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_FLV +extern ngx_module_t ngx_http_flv_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MP4 +extern ngx_module_t ngx_http_mp4_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_HASH extern ngx_module_t ngx_http_upstream_hash_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_IP_HASH extern ngx_module_t ngx_http_upstream_ip_hash_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_LEAST_CONN extern ngx_module_t ngx_http_upstream_least_conn_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_RANDOM extern ngx_module_t ngx_http_upstream_random_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_KEEPALIVE extern ngx_module_t ngx_http_upstream_keepalive_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_ZONE extern ngx_module_t ngx_http_upstream_zone_module; -extern ngx_module_t ngx_http_write_filter_module; -extern ngx_module_t ngx_http_header_filter_module; -extern ngx_module_t ngx_http_chunked_filter_module; -extern ngx_module_t ngx_http_range_header_filter_module; -//extern ngx_module_t ngx_http_gzip_filter_module; -extern ngx_module_t ngx_http_postpone_filter_module; -extern ngx_module_t ngx_http_ssi_filter_module; -extern ngx_module_t ngx_http_charset_filter_module; -extern ngx_module_t ngx_http_sub_filter_module; -extern ngx_module_t ngx_http_userid_filter_module; -extern ngx_module_t ngx_http_headers_filter_module; -extern ngx_module_t ngx_http_copy_filter_module; -extern ngx_module_t ngx_http_range_body_filter_module; -extern ngx_module_t ngx_http_not_modified_filter_module; +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_STUB_STATUS +extern ngx_module_t ngx_http_stub_status_module; +#endif +#endif + +#ifdef CONFIG_LIBNGINX_MAIL +extern ngx_module_t ngx_mail_module; +extern ngx_module_t ngx_mail_core_module; + +#ifdef CONFIG_LIBNGINX_MAIL_SSL +extern ngx_module_t ngx_mail_ssl_module; +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_POP3 +extern ngx_module_t ngx_mail_pop3_module; +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_IMAP +extern ngx_module_t ngx_mail_imap_module; +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_SMTP +extern ngx_module_t ngx_mail_smtp_module; +#endif + +extern ngx_module_t ngx_mail_auth_http_module; +extern ngx_module_t ngx_mail_proxy_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM +extern ngx_module_t ngx_stream_module; +extern ngx_module_t ngx_stream_core_module; +extern ngx_module_t ngx_stream_log_module; +extern ngx_module_t ngx_stream_proxy_module; + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM +extern ngx_module_t ngx_stream_upstream_module; +#endif + +extern ngx_module_t ngx_stream_write_filter_module; + +#ifdef CONFIG_LIBNGINX_STREAM_SSL +extern ngx_module_t ngx_stream_ssl_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_REALIP +extern ngx_module_t ngx_stream_realip_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_ACCESS +extern ngx_module_t ngx_stream_access_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_GEO +extern ngx_module_t ngx_stream_geo_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_GEOIP +extern ngx_module_t ngx_stream_geoip_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_SPLIT_CLIENTS +extern ngx_module_t ngx_stream_split_clients_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_RETURN +extern ngx_module_t ngx_stream_return_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_LEAST_CONN +extern ngx_module_t ngx_stream_upstream_least_conn_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_RANDOM +extern ngx_module_t ngx_stream_upstream_random_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_ZONE +extern ngx_module_t ngx_stream_upstream_zone_module; +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_SSL_PREREAD +extern ngx_module_t ngx_stream_ssl_preread_module; +#endif +#endif + +#ifdef CONFIG_LIBNSSL +extern ngx_module_t ngx_openssl_module; +#endif + +#ifdef CONFIG_LIBPCRE +extern ngx_module_t ngx_regex_module; +#endif ngx_module_t *ngx_modules[] = { &ngx_core_module, &ngx_errlog_module, &ngx_conf_module, -// &ngx_regex_module, &ngx_events_module, &ngx_event_core_module, -// &ngx_epoll_module, &ngx_select_module, + +#ifdef CONFIG_LIBNGINX_HTTP &ngx_http_module, &ngx_http_core_module, &ngx_http_log_module, + +#ifdef CONFIG_LIBNGINX_UPSTREAM &ngx_http_upstream_module, +#endif + + &ngx_http_write_filter_module, + &ngx_http_header_filter_module, + &ngx_http_chunked_filter_module, + +#ifdef CONFIG_LIBNGINX_HTTP_V2 + &ngx_http_v2_filter_module, +#endif + + &ngx_http_range_header_filter_module, + +#ifdef CONFIG_LIBNGINX_HTTP_GZIP + &ngx_http_gzip_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_POSTPONE + &ngx_http_postpone_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SSI + &ngx_http_ssi_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_CHARSET + &ngx_http_charset_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_XSLT + &ngx_http_xslt_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_IMAGE_FILTER + &ngx_http_image_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SUB + &ngx_http_sub_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_ADDITION + &ngx_http_addition_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GUNZIP + &ngx_http_gunzip_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_USERID + &ngx_http_userid_filter_module, +#endif + + &ngx_http_headers_filter_module, + &ngx_http_copy_filter_module, + &ngx_http_range_body_filter_module, + &ngx_http_not_modified_filter_module, + +#ifdef CONFIG_LIBNGINX_HTTP_SLICE + &ngx_http_slice_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_V2 + &ngx_http_v2_module, +#endif + &ngx_http_static_module, + +#ifdef CONFIG_LIBNGINX_HTTP_GZIP_STATIC + &ngx_http_gzip_static_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_DAV + &ngx_http_dav_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_AUTOINDEX &ngx_http_autoindex_module, +#endif + &ngx_http_index_module, + +#ifdef CONFIG_LIBNGINX_HTTP_RANDOM_INDEX + &ngx_http_random_index_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MIRROR &ngx_http_mirror_module, +#endif + &ngx_http_try_files_module, -// &ngx_http_auth_basic_module, + +#ifdef CONFIG_LIBNGINX_HTTP_AUTH_REQUEST + &ngx_http_auth_request_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_AUTH_BASIC + &ngx_http_auth_basic_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_ACCESS &ngx_http_access_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_LIMIT_CONN &ngx_http_limit_conn_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_LIMIT_REQ &ngx_http_limit_req_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REALIP + &ngx_http_realip_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_STATUS + &ngx_http_status_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GEO &ngx_http_geo_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GEOIP + &ngx_http_geoip_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MAP &ngx_http_map_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SPLIT_CLENTS &ngx_http_split_clients_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REFERER &ngx_http_referer_module, -// &ngx_http_rewrite_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REWRITE + &ngx_http_rewrite_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SSL + &ngx_http_ssl_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_PROXY &ngx_http_proxy_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_FASTCGI &ngx_http_fastcgi_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UWSGI &ngx_http_uwsgi_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SCGI &ngx_http_scgi_module, +#endif + +#if defined CONFIG_LIBNGINX_HTTP_GRPC && defined CONFIG_LIBNGINX_HTTP_V2 + &ngx_http_grpc_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_PERL + &ngx_http_perl_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MEMCACHED &ngx_http_memcached_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_EMPTY_GIF &ngx_http_empty_gif_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_BROWSER &ngx_http_browser_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SECURE_LINK + &ngx_http_secure_link_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_DEGRADATION + &ngx_http_degradation_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_FLV + &ngx_http_flv_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MP4 + &ngx_http_mp4_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_HASH &ngx_http_upstream_hash_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_IP_HASH &ngx_http_upstream_ip_hash_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_LEAST_CONN &ngx_http_upstream_least_conn_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_RANDOM &ngx_http_upstream_random_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_KEEPALIVE &ngx_http_upstream_keepalive_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_ZONE &ngx_http_upstream_zone_module, - &ngx_http_write_filter_module, - &ngx_http_header_filter_module, - &ngx_http_chunked_filter_module, - &ngx_http_range_header_filter_module, -// &ngx_http_gzip_filter_module, - &ngx_http_postpone_filter_module, - &ngx_http_ssi_filter_module, - &ngx_http_charset_filter_module, - &ngx_http_sub_filter_module, - &ngx_http_userid_filter_module, - &ngx_http_headers_filter_module, - &ngx_http_copy_filter_module, - &ngx_http_range_body_filter_module, - &ngx_http_not_modified_filter_module, +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_STUB_STATUS + &ngx_http_stub_status_module, +#endif +#endif + +#ifdef CONFIG_LIBNGINX_MAIL + &ngx_mail_module, + &ngx_mail_core_module, + +#ifdef CONFIG_LIBNGINX_MAIL_SSL + &ngx_mail_ssl_module, +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_POP3 + &ngx_mail_pop3_module, +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_IMAP + &ngx_mail_imap_module, +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_SMTP + &ngx_mail_smtp_module, +#endif + + &ngx_mail_auth_http_module, + &ngx_mail_proxy_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM + &ngx_stream_module, + &ngx_stream_core_module, + &ngx_stream_log_module, + &ngx_stream_proxy_module, + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM + &ngx_stream_upstream_module, +#endif + + &ngx_stream_write_filter_module, + +#ifdef CONFIG_LIBNGINX_STREAM_SSL + &ngx_stream_ssl_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_REALIP + &ngx_stream_realip_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_ACCESS + &ngx_stream_access_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_GEO + &ngx_stream_geo_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_GEOIP + &ngx_stream_geoip_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_SPLIT_CLIENTS + &ngx_stream_split_clients_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_RETURN + &ngx_stream_return_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_LEAST_CONN + &ngx_stream_upstream_least_conn_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_RANDOM + &ngx_stream_upstream_random_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_ZONE + &ngx_stream_upstream_zone_module, +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_SSL_PREREAD + &ngx_stream_ssl_preread_module, +#endif +#endif + +#ifdef CONFIG_LIBNSSL + &ngx_openssl_module, +#endif + +#ifdef CONFIG_LIBPCRE + &ngx_regex_module, +#endif + NULL }; @@ -119,56 +674,332 @@ char *ngx_module_names[] = { "ngx_core_module", "ngx_errlog_module", "ngx_conf_module", -// "ngx_regex_module", "ngx_events_module", "ngx_event_core_module", -// "ngx_epoll_module", "ngx_select_module", + +#ifdef CONFIG_LIBNGINX_HTTP "ngx_http_module", "ngx_http_core_module", "ngx_http_log_module", + "ngx_http_write_filter_module", + "ngx_http_header_filter_module", + "ngx_http_chunked_filter_module", + +#ifdef CONFIG_LIBNGINX_UPSTREAM "ngx_http_upstream_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_V2 + "ngx_http_v2_filter_module", +#endif + + "ngx_http_range_header_filter_module", + +#ifdef CONFIG_LIBNGINX_HTTP_GZIP + "ngx_http_gzip_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_POSTPONE + "ngx_http_postpone_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SSI + "ngx_http_ssi_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_CHARSET + "ngx_http_charset_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_XSLT + "ngx_http_xslt_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_IMAGE_FILTER + "ngx_http_image_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SUB + "ngx_http_sub_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_ADDITION + "ngx_http_addition_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GUNZIP + "ngx_http_gunzip_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_USERID + "ngx_http_userid_filter_module", +#endif + + "ngx_http_headers_filter_module", + "ngx_http_copy_filter_module", + "ngx_http_range_body_filter_module", + "ngx_http_not_modified_filter_module", + +#ifdef CONFIG_LIBNGINX_HTTP_SLICE + "ngx_http_slice_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_V2 + "ngx_http_v2_module", +#endif + "ngx_http_static_module", + +#ifdef CONFIG_LIBNGINX_HTTP_GZIP_STATIC + "ngx_http_gzip_static_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_DAV + "ngx_http_dav_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_AUTOINDEX "ngx_http_autoindex_module", +#endif + "ngx_http_index_module", + +#ifdef CONFIG_LIBNGINX_HTTP_RANDOM_INDEX + "ngx_http_random_index_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MIRROR "ngx_http_mirror_module", +#endif + "ngx_http_try_files_module", -// "ngx_http_auth_basic_module", + +#ifdef CONFIG_LIBNGINX_HTTP_AUTH_REQUEST + "ngx_http_auth_request_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_AUTH_BASIC + "ngx_http_auth_basic_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_ACCESS "ngx_http_access_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_LIMIT_CONN "ngx_http_limit_conn_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_LIMIT_REQ "ngx_http_limit_req_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REALIP + "ngx_http_realip_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_STATUS + "ngx_http_status_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GEO "ngx_http_geo_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_GEOIP + "ngx_http_geoip_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MAP "ngx_http_map_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SPLIT_CLENTS "ngx_http_split_clients_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REFERER "ngx_http_referer_module", -// "ngx_http_rewrite_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_REWRITE + "ngx_http_rewrite_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SSL + "ngx_http_ssl_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_PROXY "ngx_http_proxy_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_FASTCGI "ngx_http_fastcgi_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UWSGI "ngx_http_uwsgi_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SCGI "ngx_http_scgi_module", +#endif + +#if defined CONFIG_LIBNGINX_HTTP_GRPC && defined CONFIG_LIBNGINX_HTTP_V2 + "ngx_http_grpc_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_PERL + "ngx_http_perl_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MEMCACHED "ngx_http_memcached_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_EMPTY_GIF "ngx_http_empty_gif_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_BROWSER "ngx_http_browser_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_SECURE_LINK + "ngx_http_secure_link_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_DEGRADATION + "ngx_http_degradation_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_FLV + "ngx_http_flv_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_MP4 + "ngx_http_mp4_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_HASH "ngx_http_upstream_hash_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_IP_HASH "ngx_http_upstream_ip_hash_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_LEAST_CONN "ngx_http_upstream_least_conn_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_RANDOM "ngx_http_upstream_random_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_KEEPALIVE "ngx_http_upstream_keepalive_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_UPSTREAM_ZONE "ngx_http_upstream_zone_module", - "ngx_http_write_filter_module", - "ngx_http_header_filter_module", - "ngx_http_chunked_filter_module", - "ngx_http_range_header_filter_module", -// "ngx_http_gzip_filter_module", - "ngx_http_postpone_filter_module", - "ngx_http_ssi_filter_module", - "ngx_http_charset_filter_module", - "ngx_http_sub_filter_module", - "ngx_http_userid_filter_module", - "ngx_http_headers_filter_module", - "ngx_http_copy_filter_module", - "ngx_http_range_body_filter_module", - "ngx_http_not_modified_filter_module", +#endif + +#ifdef CONFIG_LIBNGINX_HTTP_STUB_STATUS + "ngx_http_stub_status_module", +#endif +#endif + +#ifdef CONFIG_LIBNGINX_MAIL + "ngx_mail_module", + "ngx_mail_core_module", + +#ifdef CONFIG_LIBNGINX_MAIL_SSL + "ngx_mail_ssl_module", +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_POP3 + "ngx_mail_pop3_module", +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_IMAP + "ngx_mail_imap_module", +#endif + +#ifdef CONFIG_LIBNGINX_MAIL_SMTP + "ngx_mail_smtp_module", +#endif + + "ngx_mail_auth_http_module", + "ngx_mail_proxy_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM + "ngx_stream_module", + "ngx_stream_core_module", + "ngx_stream_log_module", + "ngx_stream_proxy_module", + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM + "ngx_stream_upstream_module", +#endif + + "ngx_stream_write_filter_module", + +#ifdef CONFIG_LIBNGINX_STREAM_SSL + "ngx_stream_ssl_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_REALIP + "ngx_stream_realip_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_ACCESS + "ngx_stream_access_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_GEO + "ngx_stream_geo_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_GEOIP + "ngx_stream_geoip_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_SPLIT_CLIENTS + "ngx_stream_split_clients_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_RETURN + "ngx_stream_return_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_LEAST_CONN + "ngx_stream_upstream_least_conn_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_RANDOM + "ngx_stream_upstream_random_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_UPSTREAM_ZONE + "ngx_stream_upstream_zone_module", +#endif + +#ifdef CONFIG_LIBNGINX_STREAM_SSL_PREREAD + "ngx_stream_ssl_preread_module", +#endif +#endif + +#ifdef CONFIG_LIBNSSL + "ngx_openssl_module", +#endif + +#ifdef CONFIG_LIBPCRE + "ngx_regex_module", +#endif + NULL }; - -- 2.11.0 _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |