Authen-ACE4
view release on metacpan or search on metacpan
# test.pl
# Test program for Authen::ACE4
#
# Interface to Securid ACE/Server client API version 4
# Copyright (C) 2001 Open System Consultants
# Author: Mike McCauley mikem@open.com.au
# $Id: test.pl,v 1.1 2001/07/28 02:40:47 mikem Exp $
END {print "not ok 1\n" unless $loaded;}
use Authen::ACE4 qw(ACM_OK ACE_SUCCESS);
$loaded = 1;
$testno = 1;
printok($testno++, 1, 'failed to load');
# If you see an error message like:
# /var/ace/sdconf.rec: No such file or directory
# on Unix, you may have a non-stanrard path to
# your sdconf.rec. Ttry setting the VAR_ACE environment variable
# to the correct path to your data directory
Authen::ACE4::AceInitialize();
printok($testno++, 1, 'failed to initialize');
print "enter a SecurID username to test with:\n";
$username = <>;
chomp $username;
($result, $handle, $moreData, $echoFlag, $respTimeout,
$nextRespLen, $prompt)
= Authen::ACE4::AceStartAuth($username);
printok($testno++, $result == ACM_OK, "AceStartAuth failed: $prompt");
while ($moreData)
{
print "$prompt\n";
$resp = <>;
chomp $resp;
($result, $moreData, $echoFlag, $respTimeout,
$nextRespLen, $prompt)
= Authen::ACE4::AceContinueAuth($handle, $resp);
printok($testno++, $result == ACM_OK, "AceContinueAuth failed: $prompt");
}
($result, $status) = Authen::ACE4::AceGetAuthenticationStatus($handle);
# If $result is ACE_SUCCESS, then $status is defined, and
# indicates ACM_OK, ACM_ACCESS_DENIED etc
printok($testno++, $result == ACE_SUCCESS, 'AceGetAuthenticationStatus failed');
printok($testno++, $result == ACE_SUCCESS && $status == ACM_OK, "Authentication failed: $prompt");
($result, $shell) = Authen::ACE4::AceGetShell($handle);
printok($testno++, $result == ACE_SUCCESS, 'AceGetShell failed');
# These wont yield useful data, but test the calls anyway
($result, $alpha) = Authen::ACE4::AceGetAlphanumeric($handle);
printok($testno++, $result == ACE_SUCCESS, 'AceGetAlphanumeric failed');
($result, $maxpin) = Authen::ACE4::AceGetMaxPinLen($handle);
printok($testno++, $result == ACE_SUCCESS, 'AceGetMaxPinLen failed');
($result, $minpin) = Authen::ACE4::AceGetMinPinLen($handle);
printok($testno++, $result == ACE_SUCCESS, 'AceGetMinPinLen failed');
($result, $pin) = Authen::ACE4::AceGetSystemPin($handle);
printok($testno++, $result == ACE_SUCCESS, 'AceGetSystemPin failed');
($result, $usersel) = Authen::ACE4::AceGetUserSelectable($handle);
printok($testno++, $result == ACE_SUCCESS, 'AceGetUserSelectable failed');
$result = Authen::ACE4::AceCloseAuth($handle);
printok($testno++, $result == ACM_OK, 'AceCloseAuth failed');
sub printok
{
my ($n, $ok, $message) = @_;
print($ok? "ok $n\n" : "not ok $n ($message)\n");
$npass++ if $ok;
}
( run in 1.660 second using v1.01-cache-2.11-cpan-39bf76dae61 )