148
|
1
|
|
2 /*
|
|
3 * Copyright (C) Igor Sysoev
|
|
4 */
|
|
5
|
|
6
|
|
7 #ifndef _NGX_HTTP_PERL_MODULE_H_INCLUDED_
|
|
8 #define _NGX_HTTP_PERL_MODULE_H_INCLUDED_
|
|
9
|
|
10
|
|
11 #include <ngx_config.h>
|
|
12 #include <ngx_core.h>
|
|
13 #include <ngx_http.h>
|
248
|
14 #include <nginx.h>
|
148
|
15
|
|
16 #include <EXTERN.h>
|
|
17 #include <perl.h>
|
|
18
|
|
19
|
|
20 typedef ngx_http_request_t *nginx;
|
|
21
|
|
22 typedef struct {
|
182
|
23 ngx_str_t filename;
|
148
|
24 ngx_str_t redirect_uri;
|
|
25 ngx_str_t redirect_args;
|
266
|
26
|
230
|
27 SV *next;
|
|
28
|
366
|
29 ngx_uint_t done; /* unsigned done:1; */
|
148
|
30
|
266
|
31 ngx_array_t *variables; /* array of ngx_http_perl_var_t */
|
|
32
|
166
|
33 #if (NGX_HTTP_SSI)
|
148
|
34 ngx_http_ssi_ctx_t *ssi;
|
166
|
35 #endif
|
148
|
36 } ngx_http_perl_ctx_t;
|
|
37
|
|
38
|
266
|
39 typedef struct {
|
|
40 ngx_uint_t hash;
|
|
41 ngx_str_t name;
|
|
42 ngx_str_t value;
|
|
43 } ngx_http_perl_var_t;
|
|
44
|
|
45
|
148
|
46 extern ngx_module_t ngx_http_perl_module;
|
|
47
|
|
48
|
|
49 /*
|
|
50 * workaround for "unused variable `Perl___notused'" warning
|
|
51 * when building with perl 5.6.1
|
|
52 */
|
|
53 #ifndef PERL_IMPLICIT_CONTEXT
|
|
54 #undef dTHXa
|
|
55 #define dTHXa(a)
|
|
56 #endif
|
|
57
|
|
58
|
258
|
59 extern void boot_DynaLoader(pTHX_ CV* cv);
|
148
|
60
|
|
61
|
230
|
62 void ngx_http_perl_handle_request(ngx_http_request_t *r);
|
366
|
63 void ngx_http_perl_sleep_handler(ngx_http_request_t *r);
|
230
|
64
|
|
65
|
148
|
66 #endif /* _NGX_HTTP_PERL_MODULE_H_INCLUDED_ */
|