From a6de4721d1ecdf95de967da024171d7b8c1c3c55 Mon Sep 17 00:00:00 2001 From: Steven Schubiger Date: Thu, 13 Nov 2008 12:29:59 +0100 Subject: [PATCH] Purge orphaned whitespace in test libraries. --- tests/ChangeLog | 5 ++ tests/FTPServer.pm | 106 +++++++++++++++++++++---------------------- tests/FTPTest.pm | 4 +- tests/HTTPServer.pm | 6 +-- tests/HTTPTest.pm | 6 +-- tests/WgetTest.pm.in | 54 +++++++++++----------- 6 files changed, 93 insertions(+), 88 deletions(-) diff --git a/tests/ChangeLog b/tests/ChangeLog index 4c1b7de7..85fca37e 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,8 @@ +2008-11-13 Steven Schubiger + + * FTPServer.pm, FTPTest.pm, HTTPServer.pm, HTTPTest.pm, + WgetTest.pm.in: Clean up leftover whitespace. + 2008-11-12 Steven Schubiger * Test-auth-basic.px, Test-auth-no-challenge.px, diff --git a/tests/FTPServer.pm b/tests/FTPServer.pm index 94f3b9a7..edeb69dd 100644 --- a/tests/FTPServer.pm +++ b/tests/FTPServer.pm @@ -19,36 +19,36 @@ my $GOT_SIGURG = 0; # connection states my %_connection_states = ( - 'NEWCONN' => 0x01, - 'WAIT4PWD' => 0x02, + 'NEWCONN' => 0x01, + 'WAIT4PWD' => 0x02, 'LOGGEDIN' => 0x04, 'TWOSOCKS' => 0x08, ); # subset of FTP commands supported by these server and the respective # connection states in which they are allowed -my %_commands = ( +my %_commands = ( # Standard commands from RFC 959. 'CWD' => $_connection_states{LOGGEDIN} | - $_connection_states{TWOSOCKS}, + $_connection_states{TWOSOCKS}, # 'EPRT' => $_connection_states{LOGGEDIN}, -# 'EPSV' => $_connection_states{LOGGEDIN}, - 'LIST' => $_connection_states{TWOSOCKS}, +# 'EPSV' => $_connection_states{LOGGEDIN}, + 'LIST' => $_connection_states{TWOSOCKS}, # 'LPRT' => $_connection_states{LOGGEDIN}, -# 'LPSV' => $_connection_states{LOGGEDIN}, - 'PASS' => $_connection_states{WAIT4PWD}, - 'PASV' => $_connection_states{LOGGEDIN}, - 'PORT' => $_connection_states{LOGGEDIN}, +# 'LPSV' => $_connection_states{LOGGEDIN}, + 'PASS' => $_connection_states{WAIT4PWD}, + 'PASV' => $_connection_states{LOGGEDIN}, + 'PORT' => $_connection_states{LOGGEDIN}, 'PWD' => $_connection_states{LOGGEDIN} | - $_connection_states{TWOSOCKS}, + $_connection_states{TWOSOCKS}, 'QUIT' => $_connection_states{LOGGEDIN} | - $_connection_states{TWOSOCKS}, - 'REST' => $_connection_states{TWOSOCKS}, - 'RETR' => $_connection_states{TWOSOCKS}, + $_connection_states{TWOSOCKS}, + 'REST' => $_connection_states{TWOSOCKS}, + 'RETR' => $_connection_states{TWOSOCKS}, 'SYST' => $_connection_states{LOGGEDIN}, 'TYPE' => $_connection_states{LOGGEDIN} | $_connection_states{TWOSOCKS}, - 'USER' => $_connection_states{NEWCONN}, + 'USER' => $_connection_states{NEWCONN}, # From ftpexts Internet Draft. 'SIZE' => $_connection_states{LOGGEDIN} | $_connection_states{TWOSOCKS}, @@ -75,7 +75,7 @@ sub _CWD_command my @elems = split /\//, $path; foreach (@elems) { - if ($_ eq "" || $_ eq ".") { + if ($_ eq "" || $_ eq ".") { # Ignore these. next; } elsif ($_ eq "..") { @@ -116,7 +116,7 @@ sub _LIST_command $dir = "/"; $path =~ s,^/+,,; } - + # Parse the first elements of the path until we find the appropriate # working directory. my @elems = split /\//, $path; @@ -141,10 +141,10 @@ sub _LIST_command } $dir .= $_; } else { # It's the last element: check if it's a file, directory or wildcard. - if (-f $conn->{rootdir} . $dir . $_) { + if (-f $conn->{rootdir} . $dir . $_) { # It's a file. $filename = $_; - } elsif (-d $conn->{rootdir} . $dir . $_) { + } elsif (-d $conn->{rootdir} . $dir . $_) { # It's a directory. $dir .= $_; } elsif (/\*/ || /\?/) { @@ -157,9 +157,9 @@ sub _LIST_command } } } - + print STDERR "_LIST_command - dir is: $dir\n" if $log; - + print {$conn->{socket}} "150 Opening data connection for file listing.\r\n"; # Open a path back to the client. @@ -173,7 +173,7 @@ sub _LIST_command # If the path contains a directory name, extract it so that # we can prefix it to every filename listed. my $prefix = (($filename || $wildcard) && $path =~ /(.*\/).*/) ? $1 : ""; - + print STDERR "_LIST_command - prefix is: $prefix\n" if $log; # OK, we're either listing a full directory, listing a single @@ -190,7 +190,7 @@ sub _LIST_command __list_file ($sock, $prefix . $_); } } - + unless ($sock->close) { print {$conn->{socket}} "550 Error closing data connection: $!\r\n"; return; @@ -207,7 +207,7 @@ sub _PASS_command print STDERR "switching to LOGGEDIN state\n" if $log; $conn->{state} = $_connection_states{LOGGEDIN}; - + if ($conn->{username} eq "anonymous") { print {$conn->{socket}} "202 Anonymous user access is always granted.\r\n"; } else { @@ -218,7 +218,7 @@ sub _PASS_command sub _PASV_command { my ($conn, $cmd, $rest) = @_; - + # Open a listening socket - but don't actually accept on it yet. "0" =~ /(0)/; # Perl 5.7 / IO::Socket::INET bug workaround. my $sock = IO::Socket::INET->new (LocalHost => '127.0.0.1', @@ -245,7 +245,7 @@ sub _PASV_command my $p2 = $sockport % 256; $conn->{state} = $_connection_states{TWOSOCKS}; - + # We only accept connections from localhost. print {$conn->{socket}} "227 Entering Passive Mode (127,0,0,1,$p1,$p2)\r\n"; } @@ -293,7 +293,7 @@ sub _PORT_command sub _PWD_command { my ($conn, $cmd, $rest) = @_; - + # See RFC 959 Appendix II and draft-ietf-ftpext-mlst-11.txt section 6.2.1. my $pathname = $conn->{dir}; $pathname =~ s,/+$,, unless $pathname eq "/"; @@ -305,7 +305,7 @@ sub _PWD_command sub _REST_command { my ($conn, $cmd, $restart_from) = @_; - + unless ($restart_from =~ /^([1-9][0-9]*|0)$/) { print {$conn->{socket}} "501 REST command needs a numeric argument.\r\n"; return; @@ -319,7 +319,7 @@ sub _REST_command sub _RETR_command { my ($conn, $cmd, $path) = @_; - + my $dir = $conn->{dir}; # Absolute path? @@ -335,7 +335,7 @@ sub _RETR_command my $filename = pop @elems; foreach (@elems) { - if ($_ eq "" || $_ eq ".") { + if ($_ eq "" || $_ eq ".") { next # Ignore these. } elsif ($_ eq "..") { # Go to parent directory. @@ -353,14 +353,14 @@ sub _RETR_command unless (defined $filename && length $filename) { print {$conn->{socket}} "550 File or directory not found.\r\n"; - return; + return; } if ($filename eq "." || $filename eq "..") { print {$conn->{socket}} "550 RETR command is not supported on directories.\r\n"; - return; + return; } - + my $fullname = $conn->{rootdir} . $dir . $filename; unless (-f $fullname) { print {$conn->{socket}} "550 RETR command is only supported on plain files.\r\n"; @@ -482,7 +482,7 @@ sub _RETR_command sub _SIZE_command { my ($conn, $cmd, $path) = @_; - + my $dir = $conn->{dir}; # Absolute path? @@ -498,7 +498,7 @@ sub _SIZE_command my $filename = pop @elems; foreach (@elems) { - if ($_ eq "" || $_ eq ".") { + if ($_ eq "" || $_ eq ".") { next # Ignore these. } elsif ($_ eq "..") { # Go to parent directory. @@ -516,12 +516,12 @@ sub _SIZE_command unless (defined $filename && length $filename) { print {$conn->{socket}} "550 File or directory not found.\r\n"; - return; + return; } if ($filename eq "." || $filename eq "..") { print {$conn->{socket}} "550 SIZE command is not supported on directories.\r\n"; - return; + return; } my $fullname = $conn->{rootdir} . $dir . $filename; @@ -550,14 +550,14 @@ sub _SIZE_command sub _SYST_command { my ($conn, $cmd, $dummy) = @_; - + print {$conn->{socket}} "215 UNIX Type: L8\r\n"; } sub _TYPE_command { my ($conn, $cmd, $type) = @_; - + # See RFC 959 section 5.3.2. if ($type =~ /^([AI])$/i) { $conn->{type} = 'A'; @@ -582,7 +582,7 @@ sub _USER_command print STDERR "switching to WAIT4PWD state\n" if $log; $conn->{state} = $_connection_states{WAIT4PWD}; - + if ($conn->{username} eq "anonymous") { print {$conn->{socket}} "230 Anonymous user access granted.\r\n"; } else { @@ -708,11 +708,11 @@ sub __get_file_list my @allfiles = readdir DIRHANDLE; my @filenames = (); - + if ($wildcard) { # Get rid of . and .. @allfiles = grep !/^\.{1,2}$/, @allfiles; - + # Convert wildcard to a regular expression. $wildcard = __wildcard_to_regex ($wildcard); @@ -751,7 +751,7 @@ sub __wildcard_to_regex _reuseAddr => 1, _rootDir => Cwd::getcwd(), ); - + sub _default_for { my ($self, $attr) = @_; @@ -794,7 +794,7 @@ sub new { } -sub run +sub run { my ($self, $synch_callback) = @_; my $initialized = 0; @@ -822,11 +822,11 @@ sub run # the accept loop while (my $client_addr = accept (my $socket, $server_sock)) - { + { # turn buffering off on $socket select((select($socket), $|=1)[0]); - - # find out who connected + + # find out who connected my ($client_port, $client_ip) = sockaddr_in ($client_addr); my $client_ipnum = inet_ntoa ($client_ip); @@ -844,8 +844,8 @@ sub run if (1) { # Child process. # install signals - $SIG{URG} = sub { - $GOT_SIGURG = 1; + $SIG{URG} = sub { + $GOT_SIGURG = 1; }; $SIG{PIPE} = sub { @@ -857,7 +857,7 @@ sub run print STDERR "Connection idle timeout expired. Closing server.\n"; exit; }; - + #$SIG{CHLD} = 'IGNORE'; @@ -871,7 +871,7 @@ sub run 'idle_timeout' => 60, # 1 minute timeout 'rootdir' => $self->{_rootDir}, }; - + print {$conn->{socket}} "220 GNU Wget Testing FTP Server ready.\r\n"; # command handling loop @@ -912,7 +912,7 @@ sub run print {$conn->{socket}} "530 Not logged in.\r\n"; next; } - + # Handle the QUIT command specially. if ($cmd eq "QUIT") { print {$conn->{socket}} "221 Goodbye. Service closing connection.\r\n"; @@ -925,7 +925,7 @@ sub run } else { # Father close $socket; } - } + } $/ = $old_ils; } diff --git a/tests/FTPTest.pm b/tests/FTPTest.pm index 0b45c36c..81b8b008 100644 --- a/tests/FTPTest.pm +++ b/tests/FTPTest.pm @@ -13,7 +13,7 @@ my $VERSION = 0.01; { my %_attr_data = ( # DEFAULT ); - + sub _default_for { my ($self, $attr) = @_; @@ -27,7 +27,7 @@ my $VERSION = 0.01; ($self->SUPER::_standard_keys(), keys %_attr_data); } } - + sub _setup_server { my $self = shift; diff --git a/tests/HTTPServer.pm b/tests/HTTPServer.pm index ac055c32..e3c38e6f 100644 --- a/tests/HTTPServer.pm +++ b/tests/HTTPServer.pm @@ -22,7 +22,7 @@ sub run { if (!$initialized) { $synch_callback->(); $initialized = 1; - } + } my $con = $self->accept(); print STDERR "Accepted a new connection\n" if $log; while (my $req = $con->get_request) { @@ -44,14 +44,14 @@ sub run { if (exists($urls->{$url_path})) { print STDERR "Serving requested URL: ", $url_path, "\n" if $log; next unless ($req->method eq "HEAD" || $req->method eq "GET"); - + my $url_rec = $urls->{$url_path}; $self->send_response($req, $url_rec, $con); } else { print STDERR "Requested wrong URL: ", $url_path, "\n" if $log; $con->send_error($HTTP::Status::RC_FORBIDDEN); last; - } + } } print STDERR "Closing connection\n" if $log; $con->close; diff --git a/tests/HTTPTest.pm b/tests/HTTPTest.pm index d1f5e54f..883213d1 100644 --- a/tests/HTTPTest.pm +++ b/tests/HTTPTest.pm @@ -13,7 +13,7 @@ my $VERSION = 0.01; { my %_attr_data = ( # DEFAULT ); - + sub _default_for { my ($self, $attr) = @_; @@ -21,13 +21,13 @@ my $VERSION = 0.01; return $self->SUPER::_default_for($attr); } - sub _standard_keys + sub _standard_keys { my ($self) = @_; ($self->SUPER::_standard_keys(), keys %_attr_data); } } - + sub _setup_server { my $self = shift; diff --git a/tests/WgetTest.pm.in b/tests/WgetTest.pm.in index 910ac80d..d0a62175 100644 --- a/tests/WgetTest.pm.in +++ b/tests/WgetTest.pm.in @@ -26,14 +26,14 @@ my @unexpected_downloads = (); _name => "", _output => {}, ); - + sub _default_for { my ($self, $attr) = @_; $_attr_data{$attr}; } - sub _standard_keys + sub _standard_keys { keys %_attr_data; } @@ -70,29 +70,29 @@ sub new { sub run { my $self = shift; my $result_message = "Test successful.\n"; - + printf "Running test $self->{_name}\n"; - - # Setup + + # Setup $self->_setup(); chdir ("$self->{_workdir}/$self->{_name}/input"); - + # Launch server my $pid = $self->_fork_and_launch_server(); - + # Call wget chdir ("$self->{_workdir}/$self->{_name}/output"); my $cmdline = $self->{_cmdline}; $cmdline = $self->_substitute_port($cmdline); print "Calling $cmdline\n"; - my $errcode = - ($cmdline =~ m{^/.*}) + my $errcode = + ($cmdline =~ m{^/.*}) ? system ($cmdline) : system ("$self->{_workdir}/../src/$cmdline"); # Shutdown server - # if we didn't explicitely kill the server, we would have to call - # waitpid ($pid, 0) here in order to wait for the child process to + # if we didn't explicitely kill the server, we would have to call + # waitpid ($pid, 0) here in order to wait for the child process to # terminate kill ('TERM', $pid); @@ -124,11 +124,11 @@ sub _setup { chdir ($self->{_name}); mkdir ("input"); mkdir ("output"); - + # Setup existing files chdir ("output"); foreach my $filename (keys %{$self->{_existing}}) { - open (FILE, ">$filename") + open (FILE, ">$filename") or return "Test failed: cannot open pre-existing file $filename\n"; my $file = $self->{_existing}->{$filename}; @@ -141,8 +141,8 @@ sub _setup { utime $file->{timestamp}, $file->{timestamp}, $filename or return "Test failed: cannot set timestamp on pre-existing file $filename\n"; } - } - + } + chdir ("../input"); $self->_setup_server(); @@ -162,15 +162,15 @@ sub _verify_download { my $self = shift; chdir ("$self->{_workdir}/$self->{_name}/output"); - + # use slurp mode to read file content my $old_input_record_separator = $/; undef $/; - + while (my ($filename, $filedata) = each %{$self->{_output}}) { - open (FILE, $filename) + open (FILE, $filename) or return "Test failed: file $filename not downloaded\n"; - + my $content = ; my $expected_content = $filedata->{'content'}; $expected_content = $self->_substitute_port($expected_content); @@ -181,20 +181,20 @@ sub _verify_download { my ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size, $atime, $mtime, $ctime, $blksize, $blocks) = stat FILE; - $mtime == $filedata->{'timestamp'} + $mtime == $filedata->{'timestamp'} or return "Test failed: wrong timestamp for file $filename\n"; } - + close (FILE); - } - - $/ = $old_input_record_separator; + } + + $/ = $old_input_record_separator; # make sure no unexpected files were downloaded chdir ("$self->{_workdir}/$self->{_name}/output"); __dir_walk('.', sub { push @unexpected_downloads, $_[0] unless (exists $self->{_output}{$_[0]}) }, sub { shift; return @_ } ); - if (@unexpected_downloads) { + if (@unexpected_downloads) { return "Test failed: unexpected downloaded files [" . join(', ', @unexpected_downloads) . "]\n"; } @@ -228,7 +228,7 @@ sub __dir_walk { } -sub _fork_and_launch_server +sub _fork_and_launch_server { my $self = shift; @@ -239,7 +239,7 @@ sub _fork_and_launch_server if ($pid < 0) { die "Cannot fork"; } elsif ($pid == 0) { - # child + # child close FROM_CHILD; $self->_launch_server(sub { print TO_PARENT "SYNC\n"; close TO_PARENT }); } else {