Mercurial > hg > nginx-tests
annotate mail_error_log.t @ 1847:a9704b9ed7a2
Tests: removed multiple server certificates from ssl_ocsp.t.
Multiple server certificates are not needed to test OCSP verification of
client certificates (in contrast to OCSP stapling, where server certificates
are verified, and different staples should be correctly returned with
different server certificates). And using multiple server certificates
causes issues when testing with LibreSSL due to broken sigalgs-based
server certificate selection in LibreSSL with TLSv1.3.
Accordingly, the test is simplified to do not use multiple server
certificates.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Thu, 23 Mar 2023 19:50:26 +0300 |
parents | 74986ebee2fd |
children | ce4a06d72256 |
rev | line source |
---|---|
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
1 #!/usr/bin/perl |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
2 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
3 # (C) Sergey Kandaurov |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
4 # (C) Nginx, Inc. |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
5 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
6 # Tests for nginx mail imap module, error_log directive. |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
7 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
8 ############################################################################### |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
9 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
10 use warnings; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
11 use strict; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
12 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
13 use Test::More; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
14 |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
15 use IO::Select; |
1600
b61e820caa83
Tests: using Sys::Hostname to get hostname in a portable way.
Sergey Kandaurov <pluknet@nginx.com>
parents:
1237
diff
changeset
|
16 use Sys::Hostname; |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
17 |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
18 BEGIN { use FindBin; chdir($FindBin::Bin); } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
19 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
20 use lib 'lib'; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
21 use Test::Nginx; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
22 use Test::Nginx::IMAP; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
23 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
24 ############################################################################### |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
25 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
26 select STDERR; $| = 1; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
27 select STDOUT; $| = 1; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
28 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
29 plan(skip_all => 'win32') if $^O eq 'MSWin32'; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
30 |
976
a8b8dd6e8ae1
Tests: changed startup order in mail tests for consistency.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
970
diff
changeset
|
31 my $t = Test::Nginx->new()->has(qw/mail imap http rewrite/); |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
32 |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
33 $t->plan(30)->write_file_expand('nginx.conf', <<'EOF'); |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
34 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
35 %%TEST_GLOBALS%% |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
36 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
37 error_log %%TESTDIR%%/e_glob.log info; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
38 error_log %%TESTDIR%%/e_glob2.log info; |
1237
e4974af3fb12
Tests: adjusted udp ports to match allocated ports range.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
1020
diff
changeset
|
39 error_log syslog:server=127.0.0.1:%%PORT_8981_UDP%% info; |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
40 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
41 daemon off; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
42 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
43 events { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
44 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
45 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
46 mail { |
1679
74986ebee2fd
Tests: added proxy_timeout in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
1600
diff
changeset
|
47 proxy_timeout 15s; |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
48 auth_http http://127.0.0.1:8080/mail/auth; |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
49 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
50 server { |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
51 listen 127.0.0.1:8143; |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
52 protocol imap; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
53 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
54 error_log %%TESTDIR%%/e_debug.log debug; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
55 error_log %%TESTDIR%%/e_info.log info; |
1237
e4974af3fb12
Tests: adjusted udp ports to match allocated ports range.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
1020
diff
changeset
|
56 error_log syslog:server=127.0.0.1:%%PORT_8982_UDP%% info; |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
57 error_log stderr info; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
58 } |
570
f7bc1f74970a
Tests: avoid send errors in syslog tests with mail error_log.
Sergey Kandaurov <pluknet@nginx.com>
parents:
569
diff
changeset
|
59 |
f7bc1f74970a
Tests: avoid send errors in syslog tests with mail error_log.
Sergey Kandaurov <pluknet@nginx.com>
parents:
569
diff
changeset
|
60 server { |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
61 listen 127.0.0.1:8145; |
570
f7bc1f74970a
Tests: avoid send errors in syslog tests with mail error_log.
Sergey Kandaurov <pluknet@nginx.com>
parents:
569
diff
changeset
|
62 protocol imap; |
f7bc1f74970a
Tests: avoid send errors in syslog tests with mail error_log.
Sergey Kandaurov <pluknet@nginx.com>
parents:
569
diff
changeset
|
63 |
1237
e4974af3fb12
Tests: adjusted udp ports to match allocated ports range.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
1020
diff
changeset
|
64 error_log syslog:server=127.0.0.1:%%PORT_8983_UDP%% info; |
570
f7bc1f74970a
Tests: avoid send errors in syslog tests with mail error_log.
Sergey Kandaurov <pluknet@nginx.com>
parents:
569
diff
changeset
|
65 } |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
66 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
67 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
68 http { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
69 %%TEST_GLOBALS_HTTP%% |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
70 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
71 server { |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
72 listen 127.0.0.1:8080; |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
73 server_name localhost; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
74 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
75 location = /mail/auth { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
76 add_header Auth-Status OK; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
77 add_header Auth-Server 127.0.0.1; |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
78 add_header Auth-Port %%PORT_8144%%; |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
79 add_header Auth-Wait 1; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
80 return 204; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
81 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
82 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
83 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
84 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
85 EOF |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
86 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
87 open OLDERR, ">&", \*STDERR; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
88 open STDERR, '>', $t->testdir() . '/stderr' or die "Can't reopen STDERR: $!"; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
89 open my $stderr, '<', $t->testdir() . '/stderr' |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
90 or die "Can't open stderr file: $!"; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
91 |
976
a8b8dd6e8ae1
Tests: changed startup order in mail tests for consistency.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
970
diff
changeset
|
92 $t->run_daemon(\&Test::Nginx::IMAP::imap_test_daemon); |
1237
e4974af3fb12
Tests: adjusted udp ports to match allocated ports range.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
1020
diff
changeset
|
93 $t->run_daemon(\&syslog_daemon, port(8981), $t, 's_glob.log'); |
e4974af3fb12
Tests: adjusted udp ports to match allocated ports range.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
1020
diff
changeset
|
94 $t->run_daemon(\&syslog_daemon, port(8982), $t, 's_info.log'); |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
95 |
976
a8b8dd6e8ae1
Tests: changed startup order in mail tests for consistency.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
970
diff
changeset
|
96 $t->waitforsocket('127.0.0.1:' . port(8144)); |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
97 $t->waitforfile($t->testdir . '/s_glob.log'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
98 $t->waitforfile($t->testdir . '/s_info.log'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
99 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
100 $t->run(); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
101 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
102 open STDERR, ">&", \*OLDERR; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
103 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
104 ############################################################################### |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
105 |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
106 my $s = Test::Nginx::IMAP->new(); |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
107 $s->ok('greeting'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
108 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
109 # error_log levels |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
110 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
111 SKIP: { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
112 skip "no --with-debug", 1 unless $t->has_module('--with-debug'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
113 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
114 isnt(lines($t, 'e_debug.log', '[debug]'), 0, 'file debug in debug'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
115 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
116 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
117 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
118 isnt(lines($t, 'e_info.log', '[info]'), 0, 'file info in info'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
119 is(lines($t, 'e_info.log', '[debug]'), 0, 'file debug in info'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
120 isnt(lines($t, 'stderr', '[info]'), 0, 'stderr info in info'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
121 is(lines($t, 'stderr', '[debug]'), 0, 'stderr debug in info'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
122 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
123 # multiple error_log |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
124 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
125 like($t->read_file('e_glob.log'), qr!nginx/[.0-9]+!, 'error global'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
126 like($t->read_file('e_glob2.log'), qr!nginx/[.0-9]+!, 'error global 2'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
127 is_deeply(levels($t, 'e_glob.log'), levels($t, 'e_glob2.log'), |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
128 'multiple error global'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
129 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
130 # syslog |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
131 |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
132 parse_syslog_message('syslog', get_syslog()); |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
133 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
134 is_deeply(levels($t, 's_glob.log'), levels($t, 'e_glob.log'), |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
135 'global syslog messages'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
136 is_deeply(levels($t, 's_info.log'), levels($t, 'e_info.log'), |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
137 'mail syslog messages'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
138 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
139 ############################################################################### |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
140 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
141 sub lines { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
142 my ($t, $file, $pattern) = @_; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
143 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
144 if ($file eq 'stderr') { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
145 return map { $_ =~ /\Q$pattern\E/ } (<$stderr>); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
146 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
147 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
148 my $path = $t->testdir() . '/' . $file; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
149 open my $fh, '<', $path or return "$!"; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
150 my $value = map { $_ =~ /\Q$pattern\E/ } (<$fh>); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
151 close $fh; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
152 return $value; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
153 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
154 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
155 sub levels { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
156 my ($t, $file) = @_; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
157 my %levels_hash; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
158 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
159 map { $levels_hash{$_}++; } ($t->read_file($file) =~ /(\[\w+\])/g); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
160 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
161 return \%levels_hash; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
162 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
163 |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
164 sub get_syslog { |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
165 my $data = ''; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
166 my ($s); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
167 |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
168 eval { |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
169 local $SIG{ALRM} = sub { die "timeout\n" }; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
170 local $SIG{PIPE} = sub { die "sigpipe\n" }; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
171 alarm(1); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
172 $s = IO::Socket::INET->new( |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
173 Proto => 'udp', |
1237
e4974af3fb12
Tests: adjusted udp ports to match allocated ports range.
Andrey Zelenkov <zelenkov@nginx.com>
parents:
1020
diff
changeset
|
174 LocalAddr => '127.0.0.1:' . port(8983) |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
175 ); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
176 alarm(0); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
177 }; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
178 alarm(0); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
179 if ($@) { |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
180 log_in("died: $@"); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
181 return undef; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
182 } |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
183 |
970
c227348453db
Tests: simplified parallel modifications in mail tests.
Maxim Dounin <mdounin@mdounin.ru>
parents:
952
diff
changeset
|
184 Test::Nginx::IMAP->new(PeerAddr => '127.0.0.1:' . port(8145))->read(); |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
185 |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
186 IO::Select->new($s)->can_read(1.5); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
187 while (IO::Select->new($s)->can_read(0.1)) { |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
188 my $buffer; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
189 sysread($s, $buffer, 4096); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
190 $data .= $buffer; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
191 } |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
192 $s->close(); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
193 return $data; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
194 } |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
195 |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
196 sub parse_syslog_message { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
197 my ($desc, $line) = @_; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
198 |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
199 ok($line, $desc); |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
200 |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
201 SKIP: { |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
202 skip "$desc timeout", 18 unless $line; |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
203 |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
204 my @months = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
205 'Sep', 'Oct', 'Nov', 'Dec'); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
206 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
207 my ($pri, $mon, $mday, $hour, $minute, $sec, $host, $tag, $msg) = |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
208 $line =~ /^<(\d{1,3})> # PRI |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
209 ([A-Z][a-z]{2})\s # mon |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
210 ([ \d]\d)\s(\d{2}):(\d{2}):(\d{2})\s # date |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
211 ([\S]*)\s # host |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
212 (\w{1,32}):\s # tag |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
213 (.*)/x; # MSG |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
214 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
215 my $sev = $pri & 0x07; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
216 my $fac = ($pri & 0x03f8) >> 3; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
217 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
218 ok(defined($pri), "$desc has PRI"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
219 ok($sev >= 0 && $sev <= 7, "$desc valid severity"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
220 ok($fac >= 0 && $fac < 24, "$desc valid facility"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
221 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
222 ok(defined($mon), "$desc has month"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
223 ok((grep $mon, @months), "$desc valid month"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
224 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
225 ok(defined($mday), "$desc has day"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
226 ok($mday <= 31, "$desc valid day"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
227 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
228 ok(defined($hour), "$desc has hour"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
229 ok($hour < 24, "$desc valid hour"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
230 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
231 ok(defined($minute), "$desc has minutes"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
232 ok($minute < 60, "$desc valid minutes"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
233 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
234 ok(defined($sec), "$desc has seconds"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
235 ok($sec < 60, "$desc valid seconds"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
236 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
237 ok(defined($host), "$desc has host"); |
1600
b61e820caa83
Tests: using Sys::Hostname to get hostname in a portable way.
Sergey Kandaurov <pluknet@nginx.com>
parents:
1237
diff
changeset
|
238 is($host, lc(hostname()), "$desc valid host"); |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
239 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
240 ok(defined($tag), "$desc has tag"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
241 like($tag, qr'\w+', "$desc valid tag"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
242 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
243 ok(length($msg) > 0, "$desc valid CONTENT"); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
244 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
245 |
569
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
246 } |
adbb9b5108aa
Tests: fixed mail error_log test timeouts similar to 22bade4c7e12.
Sergey Kandaurov <pluknet@nginx.com>
parents:
564
diff
changeset
|
247 |
564
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
248 ############################################################################### |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
249 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
250 sub syslog_daemon { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
251 my ($port, $t, $file) = @_; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
252 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
253 my $s = IO::Socket::INET->new( |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
254 Proto => 'udp', |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
255 LocalAddr => "127.0.0.1:$port" |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
256 ); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
257 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
258 open my $fh, '>', $t->testdir() . '/' . $file; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
259 select $fh; $| = 1; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
260 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
261 while (1) { |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
262 my $buffer; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
263 $s->recv($buffer, 4096); |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
264 print $fh $buffer . "\n"; |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
265 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
266 } |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
267 |
a1c93746570d
Tests: mail error_log tests.
Sergey Kandaurov <pluknet@nginx.com>
parents:
diff
changeset
|
268 ############################################################################### |