mirror of
https://github.com/nginx/nginx.git
synced 2024-12-17 15:17:48 +08:00
68 lines
1.2 KiB
C
68 lines
1.2 KiB
C
|
|
/*
|
|
* Copyright (C) Igor Sysoev
|
|
* Copyright (C) Nginx, Inc.
|
|
*/
|
|
|
|
|
|
#ifndef _NGX_HTTP_PERL_MODULE_H_INCLUDED_
|
|
#define _NGX_HTTP_PERL_MODULE_H_INCLUDED_
|
|
|
|
|
|
#include <ngx_config.h>
|
|
#include <ngx_core.h>
|
|
#include <ngx_http.h>
|
|
#include <nginx.h>
|
|
|
|
#include <EXTERN.h>
|
|
#include <perl.h>
|
|
|
|
|
|
typedef ngx_http_request_t *nginx;
|
|
|
|
typedef struct {
|
|
ngx_str_t filename;
|
|
ngx_str_t redirect_uri;
|
|
ngx_str_t redirect_args;
|
|
|
|
SV *next;
|
|
|
|
ngx_uint_t done; /* unsigned done:1; */
|
|
|
|
ngx_array_t *variables; /* array of ngx_http_perl_var_t */
|
|
|
|
#if (NGX_HTTP_SSI)
|
|
ngx_http_ssi_ctx_t *ssi;
|
|
#endif
|
|
} ngx_http_perl_ctx_t;
|
|
|
|
|
|
typedef struct {
|
|
ngx_uint_t hash;
|
|
ngx_str_t name;
|
|
ngx_str_t value;
|
|
} ngx_http_perl_var_t;
|
|
|
|
|
|
extern ngx_module_t ngx_http_perl_module;
|
|
|
|
|
|
/*
|
|
* workaround for "unused variable `Perl___notused'" warning
|
|
* when building with perl 5.6.1
|
|
*/
|
|
#ifndef PERL_IMPLICIT_CONTEXT
|
|
#undef dTHXa
|
|
#define dTHXa(a)
|
|
#endif
|
|
|
|
|
|
extern void boot_DynaLoader(pTHX_ CV* cv);
|
|
|
|
|
|
void ngx_http_perl_handle_request(ngx_http_request_t *r);
|
|
void ngx_http_perl_sleep_handler(ngx_http_request_t *r);
|
|
|
|
|
|
#endif /* _NGX_HTTP_PERL_MODULE_H_INCLUDED_ */
|