[4708] in Kerberos
Re: Kerberos getpwnam() equivalent...
daemon@ATHENA.MIT.EDU (Daniel G. Pouzzner)
Wed Mar 1 20:00:16 1995
Date: Wed, 1 Mar 1995 19:47:17 -0500
From: "Daniel G. Pouzzner" <douzzer@prez.brain.ai.mit.edu>
To: kerberos@MIT.EDU
easy:
#include <stdio.h>
#include <krb.h>
int is_krb_user(username)
char *username;
{
char realm[REALM_SZ];
int kerrno;
if (krb_get_lrealm(realm,1) != KSUCCESS)
return(0);
if ((kerrno = krb_get_pw_in_tkt (username, "", realm, "krbtgt", realm, 1, "")) == INTK_BADPW)
return(1);
else if (kerrno == KDC_PR_UNKNOWN)
return(0);
else {
fprintf(stderr,"kerberos error: %s\n",
((kerrno >= 0) && (kerrno < KRB_MAX_ERRORS)) ?
krb_err_txt[kerrno] :
"unknown error");
return(0);
}
}
in other words, you have to actually request a ticket from the server,
and then throw it out (not a big deal).
-douzzer