X-Git-Url: http://andersk.mit.edu/gitweb/moira.git/blobdiff_plain/0ea7f4a0e18af1fe2b08865d8472f7b0aab220b5..cb974713c2dde56749592d21c0da2a5ad3092400:/gen/genacl.pc diff --git a/gen/genacl.pc b/gen/genacl.pc index 7bff1faa..c4dd1d7a 100644 --- a/gen/genacl.pc +++ b/gen/genacl.pc @@ -16,14 +16,18 @@ #include #include +#ifdef HAVE_KRB4 #include +#else +#include +#endif #include EXEC SQL INCLUDE sqlca; RCSID("$Header$"); -static char defaultrealm[REALM_SZ]; +static char *defaultrealm = NULL; static struct hash *users, *strings; @@ -34,9 +38,23 @@ static struct save_queue *merge_imembers(struct save_queue *sq, void init_acls(void) { + krb5_context context = NULL; + int code; + users = create_hash(2000); strings = create_hash(2000); - krb_get_lrealm(defaultrealm, 1); + + code = krb5_init_context(&context); + if (code) + goto out; + + code = krb5_get_default_realm(context, &defaultrealm); + if (code) + goto out; + + out: + if (context) + krb5_free_context(context); } void dump_krb_acl(FILE *out, char *type, int id, int vers) @@ -97,7 +115,7 @@ void canon_krb(struct imember *m, int vers, char *buf, int len) krb5_principal client = NULL; int status = 0; - if (kname_parse(name, inst, realm, kbuf) != KSUCCESS) + if (mr_kname_parse(name, inst, realm, kbuf) != 0) goto out; status = krb5_init_context(&context);