Mercurial > hg > nginx-quic
annotate src/http/modules/perl/ngx_http_perl_module.h @ 8383:385d511b5064 quic
QUIC: fixed udp buffer initialization.
The start field is used to check if the QUIC packet is first in the datagram.
This fixes stateless reset detection.
author | Vladimir Homutov <vl@nginx.com> |
---|---|
date | Tue, 30 Mar 2021 14:33:43 +0300 |
parents | 975d7ab37b39 |
children |
rev | line source |
---|---|
599 | 1 |
2 /* | |
3 * Copyright (C) Igor Sysoev | |
4412 | 4 * Copyright (C) Nginx, Inc. |
599 | 5 */ |
6 | |
7 | |
8 #ifndef _NGX_HTTP_PERL_MODULE_H_INCLUDED_ | |
9 #define _NGX_HTTP_PERL_MODULE_H_INCLUDED_ | |
10 | |
11 | |
12 #include <ngx_config.h> | |
13 #include <ngx_core.h> | |
14 #include <ngx_http.h> | |
775 | 15 #include <nginx.h> |
599 | 16 |
17 #include <EXTERN.h> | |
18 #include <perl.h> | |
19 | |
20 | |
21 typedef ngx_http_request_t *nginx; | |
22 | |
23 typedef struct { | |
7524
deebe988cbd7
Perl: reworked perl module to pass ctx instead of request.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
24 ngx_http_request_t *request; |
deebe988cbd7
Perl: reworked perl module to pass ctx instead of request.
Maxim Dounin <mdounin@mdounin.ru>
parents:
4412
diff
changeset
|
25 |
633 | 26 ngx_str_t filename; |
599 | 27 ngx_str_t redirect_uri; |
911 | 28 |
681 | 29 SV *next; |
30 | |
7525 | 31 ngx_int_t status; |
32 | |
33 unsigned done:1; | |
34 unsigned error:1; | |
7528
0cb693b4cbbb
Perl: disabled unrelated calls from variable handlers.
Maxim Dounin <mdounin@mdounin.ru>
parents:
7525
diff
changeset
|
35 unsigned variable:1; |
7530
fd9252844ec1
Perl: avoid returning 500 if header was already sent.
Maxim Dounin <mdounin@mdounin.ru>
parents:
7528
diff
changeset
|
36 unsigned header_sent:1; |
599 | 37 |
912
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
38 ngx_array_t *variables; /* array of ngx_http_perl_var_t */ |
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
39 |
617 | 40 #if (NGX_HTTP_SSI) |
599 | 41 ngx_http_ssi_ctx_t *ssi; |
617 | 42 #endif |
599 | 43 } ngx_http_perl_ctx_t; |
44 | |
45 | |
912
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
46 typedef struct { |
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
47 ngx_uint_t hash; |
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
48 ngx_str_t name; |
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
49 ngx_str_t value; |
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
50 } ngx_http_perl_var_t; |
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
51 |
7fa926a7926d
$r->variable() supports perl only variables
Igor Sysoev <igor@sysoev.ru>
parents:
911
diff
changeset
|
52 |
599 | 53 extern ngx_module_t ngx_http_perl_module; |
54 | |
55 | |
56 /* | |
57 * workaround for "unused variable `Perl___notused'" warning | |
58 * when building with perl 5.6.1 | |
59 */ | |
60 #ifndef PERL_IMPLICIT_CONTEXT | |
61 #undef dTHXa | |
62 #define dTHXa(a) | |
63 #endif | |
64 | |
65 | |
868 | 66 extern void boot_DynaLoader(pTHX_ CV* cv); |
599 | 67 |
68 | |
681 | 69 void ngx_http_perl_handle_request(ngx_http_request_t *r); |
1897 | 70 void ngx_http_perl_sleep_handler(ngx_http_request_t *r); |
681 | 71 |
72 | |
599 | 73 #endif /* _NGX_HTTP_PERL_MODULE_H_INCLUDED_ */ |