36 lines
1 KiB
Perl
36 lines
1 KiB
Perl
use strict;
|
|
use warnings FATAL => 'all';
|
|
|
|
use Apache::Test;
|
|
use Apache::TestRequest;
|
|
use Apache::TestUtil;
|
|
use Apache::TestConfig ();
|
|
|
|
my $tests = 3;
|
|
my $server_suppresses_interim = 1;
|
|
if (!have_min_apache_version("2.4.10")) {
|
|
$tests = 1;
|
|
$server_suppresses_interim = 0;
|
|
}
|
|
|
|
plan tests => $tests, need_module 'proxy';
|
|
|
|
Apache::TestRequest::module("proxy_http_reverse");
|
|
Apache::TestRequest::user_agent(requests_redirectable => 0);
|
|
|
|
my $r = GET("/reverse/");
|
|
ok t_cmp($r->code, 200, "reverse proxy to index.html");
|
|
if (have_cgi) {
|
|
if ($server_suppresses_interim) {
|
|
# XXX: This doesn't work in 2.2.x w/o at least r1588519 because LWP
|
|
# sees the unexpected interim response and stops.
|
|
$r = GET("/reverse/modules/cgi/nph-interim1.pl");
|
|
ok t_cmp($r->code, 200, "small number of interim responses - CVE-2008-2364");
|
|
|
|
$r = GET("/reverse/modules/cgi/nph-interim2.pl");
|
|
ok t_cmp($r->code, 502, "large number of interim responses - CVE-2008-2364");
|
|
}
|
|
} else {
|
|
skip "skipping tests without CGI module" foreach (1..2);
|
|
}
|
|
|