File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / lighttpd / tests / mod-access.t
Revision 1.1.1.2 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Wed Nov 2 10:35:00 2016 UTC (7 years, 7 months ago) by misho
Branches: lighttpd, MAIN
CVS tags: v1_4_41p8, HEAD
lighttpd 1.4.41

    1: #!/usr/bin/env perl
    2: BEGIN {
    3: 	# add current source dir to the include-path
    4: 	# we need this for make distcheck
    5: 	(my $srcdir = $0) =~ s,/[^/]+$,/,;
    6: 	unshift @INC, $srcdir;
    7: }
    8: 
    9: use strict;
   10: use IO::Socket;
   11: use Test::More tests => 6;
   12: use LightyTest;
   13: 
   14: my $tf = LightyTest->new();
   15: my $t;
   16: 
   17: ok($tf->start_proc == 0, "Starting lighttpd") or die();
   18: 
   19: $t->{REQUEST}  = ( <<EOF
   20: GET /index.html~ HTTP/1.0
   21: EOF
   22:  );
   23: $t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.0', 'HTTP-Status' => 403 } ];
   24: ok($tf->handle_http($t) == 0, 'forbid access to ...~');
   25: 
   26: $t->{REQUEST}  = ( <<EOF
   27: GET /index.html~/ HTTP/1.0
   28: EOF
   29:  );
   30: $t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.0', 'HTTP-Status' => 403 } ];
   31: ok($tf->handle_http($t) == 0, '#1230 - forbid access to ...~ - trailing slash');
   32: 
   33: $t->{REQUEST}  = ( <<EOF
   34: GET /ssi-include.txt HTTP/1.0
   35: Host: allow.example.org
   36: EOF
   37:  );
   38: $t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.0', 'HTTP-Status' => 200 } ];
   39: ok($tf->handle_http($t) == 0, 'explicitly allowed');
   40: 
   41: $t->{REQUEST}  = ( <<EOF
   42: GET /cgi.pl HTTP/1.0
   43: Host: allow.example.org
   44: EOF
   45:  );
   46: $t->{RESPONSE} = [ { 'HTTP-Protocol' => 'HTTP/1.0', 'HTTP-Status' => 403 } ];
   47: ok($tf->handle_http($t) == 0, 'not explicitly allowed');
   48: 
   49: ok($tf->stop_proc == 0, "Stopping lighttpd");
   50: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>