summaryrefslogtreecommitdiff
path: root/tests/server/keytab-t.in
diff options
context:
space:
mode:
authorRuss Allbery <rra@stanford.edu>2010-02-09 21:01:33 -0800
committerRuss Allbery <rra@stanford.edu>2010-02-09 21:01:33 -0800
commita556c732806da87d06bb787565e12240ea39b553 (patch)
tree960b3a5e8fc32b4cb5399d56d20a3db077ef86b8 /tests/server/keytab-t.in
parentff2d5ac3c63af9833d884d4840c772e60e45da7d (diff)
Stop doing Autoconf substitution on some test suite code
Anything that only was using substitution for the paths to the build tree now uses $SOURCE and $BUILD instead. Stop doing substitution. Also fix tests/data/cmd-wrapper to use the environment variables.
Diffstat (limited to 'tests/server/keytab-t.in')
-rw-r--r--tests/server/keytab-t.in88
1 files changed, 0 insertions, 88 deletions
diff --git a/tests/server/keytab-t.in b/tests/server/keytab-t.in
deleted file mode 100644
index 2a0ceed..0000000
--- a/tests/server/keytab-t.in
+++ /dev/null
@@ -1,88 +0,0 @@
-#!/usr/bin/perl -w
-#
-# Tests for the keytab-backend dispatch code.
-#
-# Written by Russ Allbery <rra@stanford.edu>
-# Copyright 2006, 2007, 2010 Board of Trustees, Leland Stanford Jr. University
-#
-# See LICENSE for licensing terms.
-
-use strict;
-use vars qw($CONFIG $KADMIN $SYSLOG $TMP);
-
-use Test::More tests => 63;
-
-# Load the keytab-backend code and override various settings.
-my $OUTPUT;
-$SYSLOG = \$OUTPUT;
-eval { do "$ENV{SOURCE}/../server/keytab-backend" };
-$CONFIG = "$ENV{SOURCE}/data/allow-extract";
-$KADMIN = "$ENV{SOURCE}/data/fake-kadmin";
-$TMP = '.';
-
-# Run the keytab backend.
-sub run_backend {
- my (@args) = @_;
- my $result = '';
- open (OUTPUT, '>', \$result) or die "cannot create output string: $!\n";
- select OUTPUT;
- local $| = 1;
- eval { download (@args) };
- my $error = $@;
- select STDOUT;
- return ($result, $error);
-}
-
-# The actual tests.
-$ENV{REMOTE_USER} = 'admin';
-my ($out, $err) = run_backend ();
-is ($err, "keytab-backend: invalid arguments: \n", 'Fails with no arguments');
-is ($OUTPUT, "invalid arguments: \n", ' and syslog matches');
-is ($out, '', ' and produces no output');
-($out, $err) = run_backend ('foo', 'bar', 'baz');
-is ($err, "keytab-backend: invalid arguments: foo bar baz\n",
- 'Fails with three arguments');
-is ($OUTPUT, "invalid arguments: foo bar baz\n", ' and syslog matches');
-is ($out, '', ' and produces no output');
-for my $bad (qw{service service\*@example =@example host/foo+bar@example
- rcmd.foo@EXAMPLE host/foo/bar@EXAMPLE /bar@EXAMPLE.NET
- bar/@EXAMPLE.NET bar/bar@}) {
- ($out, $err) = run_backend ('keytab', $bad);
- is ($err, "keytab-backend: bad principal name $bad\n",
- "Invalid principal $bad");
- is ($OUTPUT, "bad principal name $bad\n", ' and syslog matches');
- is ($out, '', ' and produces no output');
-}
-for my $bad (qw{service/foo@EXAMPLE.ORGA bar@EXAMPLE.NET
- host/example.net@EXAMPLE.ORG aservice/foo@EXAMPLE.ORG}) {
- ($out, $err) = run_backend ('keytab', $bad);
- is ($err,
- "keytab-backend: permission denied: admin may not retrieve $bad\n",
- "Permission denied for $bad");
- is ($OUTPUT, "permission denied: admin may not retrieve $bad\n",
- ' and syslog matches');
- is ($out, '', ' and produces no output');
-}
-for my $good (qw{service/foo@EXAMPLE.ORG foo/bar@EXAMPLE.NET
- host/example.org@EXAMPLE.ORG}) {
- ($out, $err) = run_backend ($good);
- is ($err, '', "Success for good keytab $good");
- is ($out, "$good\n", ' and the right output');
- is ($OUTPUT, "keytab $good retrieved by admin\n", ' and syslog is right');
- ok (! -f "$TMP/keytab$$", ' and the file is gone');
-}
-($out, $err) = run_backend ('keytab', 'error@EXAMPLE.ORG');
-is ($err, "keytab-backend: retrieve of error\@EXAMPLE.ORG failed for"
- . " admin: kadmin.local exited with status 1\n",
- 'Good error on kadmin failure');
-is ($OUTPUT, "retrieve of error\@EXAMPLE.ORG failed for admin: kadmin.local"
- . " exited with status 1\n", ' and syslog matches');
-is ($out, '', ' and no output');
-
-# Test a configuration failure.
-$CONFIG = '/path/to/bad/file';
-($out, $err) = run_backend ('get', 'service/foo@EXAMPLE.ORG');
-like ($err, qr{^keytab-backend: cannot open /path/to/bad/file: },
- 'Fails with bad configuration file');
-like ($OUTPUT, qr{^cannot open /path/to/bad/file: }, ' and syslog matches');
-is ($out, '', ' and produces no output');