summaryrefslogtreecommitdiffstats
path: root/src/kim/test/test_kll.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kim/test/test_kll.c')
-rw-r--r--src/kim/test/test_kll.c179
1 files changed, 89 insertions, 90 deletions
diff --git a/src/kim/test/test_kll.c b/src/kim/test/test_kll.c
index d1773ae30..e0261480c 100644
--- a/src/kim/test/test_kll.c
+++ b/src/kim/test/test_kll.c
@@ -21,10 +21,10 @@ int main(void)
KLTime t;
KLStatus err;
KLPrincipal principal;
-
+
/* force use of UI */
- fclose (stdin);
-
+ fclose (stdin);
+
err = KLCreatePrincipalFromTriplet ("nobody", "", "TEST-KERBEROS-1.3.1", &principal);
printf ("KLCreatePrincipalFromTriplet(nobody@TEST-KERBEROS-1.3.1) (err = %d)\n", err);
if (err == klNoErr) {
@@ -32,58 +32,58 @@ int main(void)
printf ("KLChangePassword() (err = %d)\n", err);
KLDisposePrincipal (principal);
}
-
+
err = KLLastChangedTime(&t);
printf ("KLLastChangedTime returned %d (err = %d)\n", t, err);
-
+
TestKLPrincipal ();
TestLoginOptions ();
TestApplicationOptions ();
TestErrorHandling ();
TestKerberosRealms ();
TestHighLevelAPI ();
-
+
err = KLLastChangedTime(&t);
printf ("KLLastChangedTime returned %d (err = %d)\n", t, err);
-
- return 0;
+
+ return 0;
}
void TestErrorHandling (void)
{
long err;
char* errorString;
-
+
err = KLGetErrorString (KRB5KRB_AP_ERR_BAD_INTEGRITY, &errorString);
printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
-
+
err = KLGetErrorString (klCredentialsBadAddressErr, &errorString);
- printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
+ printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
-
+
err = KLGetErrorString (klCacheDoesNotExistErr, &errorString);
- printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
+ printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
-
+
err = KLGetErrorString (klPasswordMismatchErr, &errorString);
- printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
+ printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
-
+
err = KLGetErrorString (klInsecurePasswordErr, &errorString);
- printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
+ printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
-
+
err = KLGetErrorString (klPasswordChangeFailedErr, &errorString);
- printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
+ printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
-
+
err = KLGetErrorString (klCantContactServerErr, &errorString);
- printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
+ printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
-
+
err = KLGetErrorString (klCantDisplayUIErr, &errorString);
- printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
+ printf ("KLGetErrorString() returned %s (err = %ld)\n", errorString, err);
if (!err) { KLDisposeString (errorString); }
}
@@ -96,7 +96,7 @@ void TestHighLevelAPI (void)
char* principalString;
char timeString[256];
KLBoolean valid;
-
+
err = KLCreatePrincipalFromTriplet ("grail", "", "TESTV5-KERBEROS-1.3.1", &inPrincipal);
printf ("KLCreatePrincipalFromTriplet(grail@TESTV5-KERBEROS-1.3.1) (err = %d)\n", err);
if (err == klNoErr) {
@@ -109,7 +109,7 @@ void TestHighLevelAPI (void)
}
KLDisposePrincipal (inPrincipal);
}
-
+
err = KLCreatePrincipalFromTriplet ("nobody", "", "TEST-KERBEROS-1.3.1", &inPrincipal);
printf ("KLCreatePrincipalFromTriplet(nobody@TEST-KERBEROS-1.3.1) (err = %d)\n", err);
if (err == klNoErr) {
@@ -122,7 +122,7 @@ void TestHighLevelAPI (void)
}
KLDisposePrincipal (inPrincipal);
}
-
+
err = KLAcquireNewInitialTickets (NULL, NULL, &inPrincipal, &outCredCacheName);
printf ("KLAcquireNewInitialTickets() (err = %d)\n", err);
if (err == klNoErr) {
@@ -135,21 +135,21 @@ void TestHighLevelAPI (void)
}
KLDisposePrincipal (inPrincipal);
}
-
+
err = KLSetDefaultLoginOption (loginOption_LoginName, "testname", 3);
printf ("KLSetDefaultLoginOption(loginOption_LoginName) to testname (err = %d)\n", err);
if (err == klNoErr) {
err = KLSetDefaultLoginOption (loginOption_LoginInstance, "testinstance", 6);
printf ("KLSetDefaultLoginOption(loginOption_LoginInstance) to testinstance (err = %d)\n", err);
}
-
+
err = KLAcquireNewInitialTickets (NULL, NULL, &inPrincipal, &outCredCacheName);
printf ("KLAcquireNewInitialTickets() (err = %d)\n", err);
if (err == klNoErr) {
KLDisposeString (outCredCacheName);
KLDisposePrincipal (inPrincipal);
}
-
+
// Principal == NULL
while (KLAcquireNewInitialTickets (NULL, NULL, &outPrincipal, &outCredCacheName) == klNoErr) {
err = KLTicketExpirationTime (outPrincipal, kerberosVersion_All, &expirationTime);
@@ -171,14 +171,14 @@ void TestHighLevelAPI (void)
KLDisposeString (outCredCacheName);
KLDisposePrincipal (outPrincipal);
}
-
+
err = KLAcquireNewInitialTickets (NULL, NULL, &outPrincipal, &outCredCacheName);
if (err == klNoErr) {
KLDisposeString (outCredCacheName);
KLDisposePrincipal (outPrincipal);
}
-
-
+
+
err = KLCreatePrincipalFromTriplet ("nobody", "", "TEST-KERBEROS-1.3.1", &inPrincipal);
printf ("KLCreatePrincipalFromTriplet(nobody@TEST-KERBEROS-1.3.1) (err = %d)\n", err);
if (err == klNoErr) {
@@ -189,10 +189,10 @@ void TestHighLevelAPI (void)
KLDisposePrincipal (outPrincipal);
}
err = KLDestroyTickets (inPrincipal);
-
+
KLDisposePrincipal (inPrincipal);
}
-
+
err = KLCreatePrincipalFromTriplet ("nobody", "", "TEST-KERBEROS-1.3.1", &inPrincipal);
printf ("KLCreatePrincipalFromTriplet(nobody@TEST-KERBEROS-1.3.1) (err = %d)\n", err);
if (err == klNoErr) {
@@ -202,7 +202,7 @@ void TestHighLevelAPI (void)
KLDisposeString (outCredCacheName);
KLDisposePrincipal (outPrincipal);
}
-
+
err = KLAcquireNewInitialTickets (inPrincipal, NULL, &outPrincipal, &outCredCacheName);
if (err == klNoErr) {
err = KLGetStringFromPrincipal (outPrincipal, kerberosVersion_V5, &principalString);
@@ -210,22 +210,22 @@ void TestHighLevelAPI (void)
err = KLTicketExpirationTime (outPrincipal, kerberosVersion_All, &expirationTime);
printf ("Tickets for principal '%s' expire on %s\n",
principalString, TimeToString(timeString, expirationTime));
-
+
KLDisposeString (principalString);
}
KLDisposeString (outCredCacheName);
KLDisposePrincipal (outPrincipal);
}
-
+
err = KLChangePassword (inPrincipal);
printf ("KLChangePassword() (err = %d)\n", err);
-
+
err = KLDestroyTickets (inPrincipal);
printf ("KLDestroyTickets() (err = %d)\n", err);
-
+
KLDisposePrincipal (inPrincipal);
}
-
+
}
@@ -241,22 +241,22 @@ void TestKLPrincipal (void)
char *user = NULL;
char *instance = NULL;
char *realm = NULL;
-
+
printf ("Entering TestKLPrincipal()\n");
printf ("----------------------------------------------------------------\n");
-
+
err = KLCreatePrincipalFromString ("thisprincipalnameislongerthanissupportedbyKerberos4@TEST-KERBEROS-1.3.1",
kerberosVersion_V5, &extraLongPrincipal);
printf ("KLCreatePrincipalFromString "
"('thisprincipalnameislongerthanissupportedbyKerberos4@TEST-KERBEROS-1.3.1') "
"(err = %s)\n", error_message(err));
-
+
printf ("----------------------------------------------------------------\n");
-
+
err = KLCreatePrincipalFromTriplet ("nobody", "", "TEST-KERBEROS-1.3.1", &principal);
printf ("KLCreatePrincipalFromTriplet ('nobody' '' 'TEST-KERBEROS-1.3.1') (err = %s)\n",
error_message(err));
-
+
if (err == klNoErr) {
err = KLGetStringFromPrincipal (principal, kerberosVersion_V5, &principalString);
if (err == klNoErr) {
@@ -265,7 +265,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody@TEST-KERBEROS-1.3.1, v5) returned (err = %s)\n", error_message(err));
}
-
+
err = KLGetStringFromPrincipal (principal, kerberosVersion_V4, &principalString);
if (err == klNoErr) {
printf ("KLGetStringFromPrincipal (nobody@TEST-KERBEROS-1.3.1, v4) returned string '%s'\n", principalString);
@@ -273,7 +273,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody@TEST-KERBEROS-1.3.1, v4) returned (err = %s)\n", error_message(err));
}
-
+
err = KLGetTripletFromPrincipal (principal, &user, &instance, &realm);
if (err == klNoErr) {
printf ("KLGetTripletFromPrincipal (nobody@TEST-KERBEROS-1.3.1) returned triplet %s' '%s' '%s'\n",
@@ -283,14 +283,14 @@ void TestKLPrincipal (void)
KLDisposeString (realm);
} else {
printf ("KLGetTripletFromPrincipal(nobody@TEST-KERBEROS-1.3.1) returned (err = %s)\n", error_message(err));
- }
+ }
}
-
+
printf ("----------------------------------------------------------------\n");
-
+
err = KLCreatePrincipalFromTriplet ("nobody", "admin", "TEST-KERBEROS-1.3.1", &adminPrincipal);
printf ("KLCreatePrincipalFromTriplet ('nobody' 'admin' 'TEST-KERBEROS-1.3.1') (err = %d)\n", err);
-
+
if (err == klNoErr) {
err = KLGetStringFromPrincipal (adminPrincipal, kerberosVersion_V5, &principalString);
if (err == klNoErr) {
@@ -299,7 +299,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody/admin@TEST-KERBEROS-1.3.1, v5) returned (err = %d)\n", err);
}
-
+
err = KLGetStringFromPrincipal (adminPrincipal, kerberosVersion_V4, &principalString);
if (err == klNoErr) {
printf ("KLGetStringFromPrincipal (nobody/admin@TEST-KERBEROS-1.3.1, v4) returned string '%s'\n", principalString);
@@ -307,7 +307,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody/admin@TEST-KERBEROS-1.3.1, v4) returned (err = %d)\n", err);
}
-
+
err = KLGetTripletFromPrincipal (adminPrincipal, &user, &instance, &realm);
if (err == klNoErr) {
printf ("KLGetTripletFromPrincipal (nobody/admin@TEST-KERBEROS-1.3.1) returned triplet %s' '%s' '%s'\n",
@@ -319,9 +319,9 @@ void TestKLPrincipal (void)
printf ("KLGetTripletFromPrincipal(lxs/admin@TEST-KERBEROS-1.3.1) returned (err = %d)\n", err);
}
}
-
+
printf ("----------------------------------------------------------------\n");
-
+
err = KLCreatePrincipalFromString ("nobody/root@TEST-KERBEROS-1.3.1", kerberosVersion_V5, &adminPrincipalV5);
printf ("KLCreatePrincipalFromString ('nobody/root@TEST-KERBEROS-1.3.1', v5) (err = %d)\n", err);
if (err == klNoErr) {
@@ -332,7 +332,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody/root@TEST-KERBEROS-1.3.1, v5) returned (err = %d)\n", err);
}
-
+
err = KLGetStringFromPrincipal (adminPrincipalV5, kerberosVersion_V4, &principalString);
if (err == klNoErr) {
printf ("KLGetStringFromPrincipal (nobody/admin@TEST-KERBEROS-1.3.1, v4) returned string '%s'\n", principalString);
@@ -340,7 +340,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody/admin@TEST-KERBEROS-1.3.1, v4) returned (err = %d)\n", err);
}
-
+
err = KLGetTripletFromPrincipal (adminPrincipalV5, &user, &instance, &realm);
if (err == klNoErr) {
printf ("KLGetTripletFromPrincipal (nobody/admin@TEST-KERBEROS-1.3.1) returned triplet %s' '%s' '%s'\n",
@@ -352,9 +352,9 @@ void TestKLPrincipal (void)
printf ("KLGetTripletFromPrincipal(nobody/admin@TEST-KERBEROS-1.3.1) returned (err = %d)\n", err);
}
}
-
+
printf ("----------------------------------------------------------------\n");
-
+
err = KLCreatePrincipalFromString ("nobody.admin@TEST-KERBEROS-1.3.1", kerberosVersion_V4, &adminPrincipalV4);
printf ("KLCreatePrincipalFromString ('nobody.admin@TEST-KERBEROS-1.3.1') (err = %d)\n", err);
if (err == klNoErr) {
@@ -365,7 +365,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody.admin@TEST-KERBEROS-1.3.1, v5) returned (err = %d)\n", err);
}
-
+
err = KLGetStringFromPrincipal (adminPrincipalV4, kerberosVersion_V4, &principalString);
if (err == klNoErr) {
printf ("KLGetStringFromPrincipal (nobody.admin@TEST-KERBEROS-1.3.1, v4) returned string '%s'\n", principalString);
@@ -373,7 +373,7 @@ void TestKLPrincipal (void)
} else {
printf ("KLGetStringFromPrincipal(nobody.admin@TEST-KERBEROS-1.3.1, v4) returned (err = %d)\n", err);
}
-
+
err = KLGetTripletFromPrincipal (adminPrincipalV4, &user, &instance, &realm);
if (err == klNoErr) {
printf ("KLGetTripletFromPrincipal (nobody.admin@TEST-KERBEROS-1.3.1) returned triplet %s' '%s' '%s'\n",
@@ -385,12 +385,12 @@ void TestKLPrincipal (void)
printf ("KLGetTripletFromPrincipal(nobody.admin@TEST-KERBEROS-1.3.1) returned (err = %d)\n", err);
}
}
-
+
printf ("----------------------------------------------------------------\n");
-
+
if (adminPrincipalV4 != NULL && adminPrincipalV5 != NULL) {
KLBoolean equivalent;
-
+
err = KLComparePrincipal (adminPrincipalV5, adminPrincipalV4, &equivalent);
if (err == klNoErr) {
printf ("KLComparePrincipal %s comparing nobody/admin@TEST-KERBEROS-1.3.1 and nobody.admin@TEST-KERBEROS-1.3.1\n",
@@ -399,10 +399,10 @@ void TestKLPrincipal (void)
printf ("KLComparePrincipal returned (err = %d)\n", err);
}
}
-
+
if (principal != NULL && adminPrincipalV5 != NULL) {
KLBoolean equivalent;
-
+
err = KLComparePrincipal (principal, adminPrincipalV4, &equivalent);
if (err == klNoErr) {
printf ("KLComparePrincipal %s comparing nobody@TEST-KERBEROS-1.3.1 and nobody.admin@TEST-KERBEROS-1.3.1\n",
@@ -411,10 +411,10 @@ void TestKLPrincipal (void)
printf ("KLComparePrincipal returned (err = %d)\n", err);
}
}
-
+
if (principal != NULL && adminPrincipalV5 != NULL) {
KLBoolean equivalent;
-
+
err = KLComparePrincipal (principal, adminPrincipalV5, &equivalent);
if (err == klNoErr) {
printf ("KLComparePrincipal %s comparing nobody@TEST-KERBEROS-1.3.1 and nobody/admin@TEST-KERBEROS-1.3.1\n",
@@ -423,10 +423,10 @@ void TestKLPrincipal (void)
printf ("KLComparePrincipal returned (err = %d)\n", err);
}
}
-
+
if (adminPrincipal != NULL && adminPrincipalV5 != NULL) {
KLBoolean equivalent;
-
+
err = KLComparePrincipal (adminPrincipalV5, principal, &equivalent);
if (err == klNoErr) {
printf ("KLComparePrincipal %s comparing nobody/admin@TEST-KERBEROS-1.3.1 and nobody@TEST-KERBEROS-1.3.1\n",
@@ -435,9 +435,9 @@ void TestKLPrincipal (void)
printf ("KLComparePrincipal returned (err = %d)\n", err);
}
}
-
+
printf ("----------------------------------------------------------------\n\n");
-
+
if (extraLongPrincipal != NULL) KLDisposePrincipal (extraLongPrincipal);
if (adminPrincipalV5 != NULL) KLDisposePrincipal (adminPrincipalV5);
if (adminPrincipalV4 != NULL) KLDisposePrincipal (adminPrincipalV4);
@@ -456,24 +456,24 @@ void TestKerberosRealms (void)
printf ("About to test Kerberos realms\n");
KLRemoveAllKerberosRealms ();
KLAcquireNewInitialTickets (NULL, NULL, NULL, NULL);
-
+
KLInsertKerberosRealm (realmList_End, "FOO");
KLInsertKerberosRealm (realmList_End, "BAR");
KLInsertKerberosRealm (realmList_End, "BAZ");
KLAcquireNewInitialTickets (NULL, NULL, NULL, NULL);
-
+
KLInsertKerberosRealm (realmList_End, "FOO");
KLAcquireNewInitialTickets (NULL, NULL, NULL, NULL);
-
+
KLSetKerberosRealm (0, "QUUX");
KLAcquireNewInitialTickets (NULL, NULL, NULL, NULL);
-
+
KLRemoveKerberosRealm (0);
KLAcquireNewInitialTickets (NULL, NULL, NULL, NULL);
-
+
KLSetKerberosRealm (2, "TEST-KERBEROS-1.3.1");
KLAcquireNewInitialTickets (NULL, NULL, NULL, NULL);
-
+
KLRemoveAllKerberosRealms ();
KLInsertKerberosRealm (realmList_End, "TEST-KERBEROS-1.3.1");
KLInsertKerberosRealm (realmList_End, "TEST-KERBEROS-1.0.6");
@@ -485,7 +485,7 @@ void TestKerberosRealms (void)
KLInsertKerberosRealm (realmList_End, "TEST-HEIMDAL-0.3D");
KLInsertKerberosRealm (realmList_End, "TESTV5-HEIMDAL-0.3D");
KLInsertKerberosRealm (realmList_End, "TEST-KTH-KRB-1.1");
-}
+}
void TestLoginOptions (void)
@@ -493,25 +493,25 @@ void TestLoginOptions (void)
KLBoolean optionSetting;
KLStatus err = klNoErr;
KLLifetime lifetime;
-
+
lifetime = 10*60;
KLSetDefaultLoginOption(loginOption_MinimalTicketLifetime, &lifetime, sizeof(KLLifetime));
-
+
lifetime = 8*60*60;
KLSetDefaultLoginOption(loginOption_MaximalTicketLifetime, &lifetime, sizeof(KLLifetime));
-
+
lifetime = 8*60*60;
KLSetDefaultLoginOption(loginOption_DefaultTicketLifetime, &lifetime, sizeof(KLLifetime));
-
+
optionSetting = FALSE;
KLSetDefaultLoginOption(loginOption_DefaultForwardableTicket, &optionSetting, sizeof(optionSetting));
-
+
optionSetting = TRUE;
KLSetDefaultLoginOption(loginOption_RememberPrincipal, &optionSetting, sizeof(optionSetting));
-
+
optionSetting = TRUE;
err = KLSetDefaultLoginOption(loginOption_RememberExtras, &optionSetting, sizeof(optionSetting));
-
+
if (err == klNoErr) {
KLAcquireNewInitialTickets (NULL, NULL, NULL, NULL);
optionSetting = TRUE;
@@ -532,9 +532,9 @@ char* TimeToString (char* timeString, long t)
/* we come in in 1970 time */
time_t timer = (time_t) t;
struct tm tm;
-
+
tm = *localtime (&timer);
-
+
sprintf(timeString, "%.3s %.3s%3d %.2d:%.2d:%.2d %d",
day_name[tm.tm_wday],
month_name[tm.tm_mon],
@@ -543,7 +543,7 @@ char* TimeToString (char* timeString, long t)
tm.tm_min,
tm.tm_sec,
tm.tm_year + 1900);
-
+
return timeString;
}
@@ -553,4 +553,3 @@ void MyKerberosLoginIdleCallback (KLRefCon inAppData)
syslog (LOG_ALERT, "App got callback while waiting for Mach IPC (appData == %d)\n", inAppData);
// KLCancelAllDialogs ();
}
-