#ifndef _NGX_MODULE_H_INCLUDED_
#define _NGX_MODULE_H_INCLUDED_
#include <ngx_config.h>
#include <ngx_core.h>
#include <nginx.h>
#define NGX_MODULE_UNSET_INDEX …
#define NGX_MODULE_SIGNATURE_0 …
#if (NGX_HAVE_KQUEUE)
#define NGX_MODULE_SIGNATURE_1 …
#else
#define NGX_MODULE_SIGNATURE_1 …
#endif
#if (NGX_HAVE_IOCP)
#define NGX_MODULE_SIGNATURE_2 …
#else
#define NGX_MODULE_SIGNATURE_2 …
#endif
#if (NGX_HAVE_FILE_AIO || NGX_COMPAT)
#define NGX_MODULE_SIGNATURE_3 …
#else
#define NGX_MODULE_SIGNATURE_3 …
#endif
#if (NGX_HAVE_SENDFILE_NODISKIO || NGX_COMPAT)
#define NGX_MODULE_SIGNATURE_4 …
#else
#define NGX_MODULE_SIGNATURE_4 …
#endif
#if (NGX_HAVE_EVENTFD)
#define NGX_MODULE_SIGNATURE_5 …
#else
#define NGX_MODULE_SIGNATURE_5 …
#endif
#if (NGX_HAVE_EPOLL)
#define NGX_MODULE_SIGNATURE_6 …
#else
#define NGX_MODULE_SIGNATURE_6 …
#endif
#if (NGX_HAVE_KEEPALIVE_TUNABLE)
#define NGX_MODULE_SIGNATURE_7 …
#else
#define NGX_MODULE_SIGNATURE_7 …
#endif
#if (NGX_HAVE_INET6)
#define NGX_MODULE_SIGNATURE_8 …
#else
#define NGX_MODULE_SIGNATURE_8 …
#endif
#define NGX_MODULE_SIGNATURE_9 …
#define NGX_MODULE_SIGNATURE_10 …
#if (NGX_HAVE_DEFERRED_ACCEPT && defined SO_ACCEPTFILTER)
#define NGX_MODULE_SIGNATURE_11 …
#else
#define NGX_MODULE_SIGNATURE_11 …
#endif
#define NGX_MODULE_SIGNATURE_12 …
#if (NGX_HAVE_SETFIB)
#define NGX_MODULE_SIGNATURE_13 …
#else
#define NGX_MODULE_SIGNATURE_13 …
#endif
#if (NGX_HAVE_TCP_FASTOPEN)
#define NGX_MODULE_SIGNATURE_14 …
#else
#define NGX_MODULE_SIGNATURE_14 …
#endif
#if (NGX_HAVE_UNIX_DOMAIN)
#define NGX_MODULE_SIGNATURE_15 …
#else
#define NGX_MODULE_SIGNATURE_15 …
#endif
#if (NGX_HAVE_VARIADIC_MACROS)
#define NGX_MODULE_SIGNATURE_16 …
#else
#define NGX_MODULE_SIGNATURE_16 …
#endif
#define NGX_MODULE_SIGNATURE_17 …
#if (NGX_QUIC || NGX_COMPAT)
#define NGX_MODULE_SIGNATURE_18 …
#else
#define NGX_MODULE_SIGNATURE_18 …
#endif
#if (NGX_HAVE_OPENAT)
#define NGX_MODULE_SIGNATURE_19 …
#else
#define NGX_MODULE_SIGNATURE_19 …
#endif
#if (NGX_HAVE_ATOMIC_OPS)
#define NGX_MODULE_SIGNATURE_20 …
#else
#define NGX_MODULE_SIGNATURE_20 …
#endif
#if (NGX_HAVE_POSIX_SEM)
#define NGX_MODULE_SIGNATURE_21 …
#else
#define NGX_MODULE_SIGNATURE_21 …
#endif
#if (NGX_THREADS || NGX_COMPAT)
#define NGX_MODULE_SIGNATURE_22 …
#else
#define NGX_MODULE_SIGNATURE_22 …
#endif
#if (NGX_PCRE)
#define NGX_MODULE_SIGNATURE_23 …
#else
#define NGX_MODULE_SIGNATURE_23 …
#endif
#if (NGX_HTTP_SSL || NGX_COMPAT)
#define NGX_MODULE_SIGNATURE_24 …
#else
#define NGX_MODULE_SIGNATURE_24 …
#endif
#define NGX_MODULE_SIGNATURE_25 …
#if (NGX_HTTP_GZIP)
#define NGX_MODULE_SIGNATURE_26 …
#else
#define NGX_MODULE_SIGNATURE_26 …
#endif
#define NGX_MODULE_SIGNATURE_27 …
#if (NGX_HTTP_X_FORWARDED_FOR)
#define NGX_MODULE_SIGNATURE_28 …
#else
#define NGX_MODULE_SIGNATURE_28 …
#endif
#if (NGX_HTTP_REALIP)
#define NGX_MODULE_SIGNATURE_29 …
#else
#define NGX_MODULE_SIGNATURE_29 …
#endif
#if (NGX_HTTP_HEADERS)
#define NGX_MODULE_SIGNATURE_30 …
#else
#define NGX_MODULE_SIGNATURE_30 …
#endif
#if (NGX_HTTP_DAV)
#define NGX_MODULE_SIGNATURE_31 …
#else
#define NGX_MODULE_SIGNATURE_31 …
#endif
#if (NGX_HTTP_CACHE)
#define NGX_MODULE_SIGNATURE_32 …
#else
#define NGX_MODULE_SIGNATURE_32 …
#endif
#if (NGX_HTTP_UPSTREAM_ZONE)
#define NGX_MODULE_SIGNATURE_33 …
#else
#define NGX_MODULE_SIGNATURE_33 …
#endif
#if (NGX_COMPAT)
#define NGX_MODULE_SIGNATURE_34 …
#else
#define NGX_MODULE_SIGNATURE_34 …
#endif
#define NGX_MODULE_SIGNATURE …
#define NGX_MODULE_V1 …
#define NGX_MODULE_V1_PADDING …
struct ngx_module_s { … };
ngx_core_module_t;
ngx_int_t ngx_preinit_modules(void);
ngx_int_t ngx_cycle_modules(ngx_cycle_t *cycle);
ngx_int_t ngx_init_modules(ngx_cycle_t *cycle);
ngx_int_t ngx_count_modules(ngx_cycle_t *cycle, ngx_uint_t type);
ngx_int_t ngx_add_module(ngx_conf_t *cf, ngx_str_t *file,
ngx_module_t *module, char **order);
extern ngx_module_t *ngx_modules[];
extern ngx_uint_t ngx_max_module;
extern char *ngx_module_names[];
#endif