aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2007-04-03 02:36:55 +0000
committerYang Tse <yangsita@gmail.com>2007-04-03 02:36:55 +0000
commit161be66c8970084e5e7970353a1aef12a5f03022 (patch)
tree4b82850c84a2d6dc0f933c40c1daa26e8dfa70f4
parent4095c9de373eae19a696dfc3895a01bb4d4eab5a (diff)
when detecting un/supported sshd options use curl's sshd config file.
-rw-r--r--tests/sshserver.pl12
1 files changed, 8 insertions, 4 deletions
diff --git a/tests/sshserver.pl b/tests/sshserver.pl
index 3295cca58..178ea91e7 100644
--- a/tests/sshserver.pl
+++ b/tests/sshserver.pl
@@ -110,12 +110,18 @@ if (($ssh_daemon !~ /OpenSSH/) || (10 * $ssh_ver_major + $ssh_ver_minor < 37)) {
exit 1;
}
+# Initialize sshd configuration file for curl's tests.
+open(my $CONF, ">$conffile") || die "Could not write $conffile";
+print $CONF "# This is a generated file! Do not edit!\n";
+print $CONF "# OpenSSH sshd configuration file for curl testing\n";
+close $CONF;
+
# Support for some options might have not been built into sshd. On some
# platforms specifying an unsupported option prevents sshd from starting.
# Check here for possible unsupported options, avoiding its use in sshd.
sub sshd_supports_opt($) {
my ($option) = @_;
- my $err = grep /$option/, qx($sshd -t -o $option=no 2>&1);
+ my $err = grep /Unsupported .* $option/, qx($sshd -t -f $conffile -o $option=no 2>&1);
return !$err;
}
@@ -141,10 +147,8 @@ if (! -e "curl_client_key.pub") {
system "ssh-keygen -q -t dsa -f curl_client_key -C 'curl test client' -N ''" and die "Could not generate key";
}
-open(my $FILE, ">$conffile") || die "Could not write $conffile";
+open(my $FILE, ">>$conffile") || die "Could not write $conffile";
print $FILE <<EOF
-# This is a generated file! Do not edit!
-# OpenSSH sshd configuration file for curl testing
AllowUsers $username
DenyUsers
DenyGroups