diff options
| author | Keith Vetter <keithv@fusion.com> | 1995-03-22 22:35:49 +0000 |
|---|---|---|
| committer | Keith Vetter <keithv@fusion.com> | 1995-03-22 22:35:49 +0000 |
| commit | b92f61e5c47d5b4b2d8cd3e65f5dfdcc334624e6 (patch) | |
| tree | e690599e0f1b48f4482a975676c1c6c84fdb2acb /src/lib/krb5/os | |
| parent | 15ddec639305cfb75fdbc738814a5307ca815b4f (diff) | |
| download | krb5-b92f61e5c47d5b4b2d8cd3e65f5dfdcc334624e6.tar.gz krb5-b92f61e5c47d5b4b2d8cd3e65f5dfdcc334624e6.tar.xz krb5-b92f61e5c47d5b4b2d8cd3e65f5dfdcc334624e6.zip | |
Added prototypes to ccache change notification
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@5198 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/krb5/os')
| -rw-r--r-- | src/lib/krb5/os/ChangeLog | 4 | ||||
| -rw-r--r-- | src/lib/krb5/os/an_to_ln.c | 31 | ||||
| -rw-r--r-- | src/lib/krb5/os/kuserok.c | 25 |
3 files changed, 52 insertions, 8 deletions
diff --git a/src/lib/krb5/os/ChangeLog b/src/lib/krb5/os/ChangeLog index 3ac19f425..d6a791e5f 100644 --- a/src/lib/krb5/os/ChangeLog +++ b/src/lib/krb5/os/ChangeLog @@ -1,3 +1,7 @@ +Wed Mar 22 13:30:35 1995 Keith Vetter (keithv@fusion.com) + + * an_to_ln.c, kuserok.c: last two os routines ported to the PC. + Fri Mar 17 19:56:39 1995 John Gilmore (gnu at toad.com) * Makefile.in (LDFLAGS): Eliminate, duplicates config/pre.in. diff --git a/src/lib/krb5/os/an_to_ln.c b/src/lib/krb5/os/an_to_ln.c index da065b9dd..01e3d415c 100644 --- a/src/lib/krb5/os/an_to_ln.c +++ b/src/lib/krb5/os/an_to_ln.c @@ -25,11 +25,16 @@ */ #include "k5-int.h" -#ifndef _MSDOS /* Not yet for Windows */ + #ifndef min #define min(a,b) ((a) > (b) ? (b) : (a)) #endif /* min */ +int krb5_lname_username_fallback = 1; +extern char *krb5_lname_file; + +#ifndef _MSDOS + static krb5_error_code dbm_an_to_ln(); static krb5_error_code username_an_to_ln(); @@ -45,10 +50,6 @@ static krb5_error_code username_an_to_ln(); returns system errors, NOT_ENOUGH_SPACE */ -int krb5_lname_username_fallback = 1; - -extern char *krb5_lname_file; - krb5_error_code krb5_aname_to_localname(context, aname, lnsize, lname) krb5_context context; @@ -115,6 +116,7 @@ dbm_an_to_ln(context, aname, lnsize, lname) (void) dbm_close(db); return retval; } +#endif /* _MSDOS */ /* * Implementation: This version checks the realm to see if it is the local @@ -137,7 +139,7 @@ username_an_to_ln(context, aname, lnsize, lname) if (retval = krb5_get_default_realm(context, &def_realm)) { return(retval); } - if ((realm_length != strlen(def_realm)) || + if (((size_t) realm_length != strlen(def_realm)) || (memcmp(def_realm, krb5_princ_realm(context, aname)->data, realm_length))) { free(def_realm); return KRB5_LNAME_NOTRANS; @@ -168,4 +170,19 @@ username_an_to_ln(context, aname, lnsize, lname) } return retval; } -#endif + +#ifdef _MSDOS + +krb5_error_code INTERFACE +krb5_aname_to_localname(context, aname, lnsize, lname) + krb5_context context; + krb5_const_principal aname; + const int lnsize; + char *lname; +{ + if (krb5_lname_username_fallback) + return username_an_to_ln(context, aname, lnsize, lname); + return KRB5_LNAME_CANTOPEN; +} + +#endif /* _MSDOS */ diff --git a/src/lib/krb5/os/kuserok.c b/src/lib/krb5/os/kuserok.c index cefb3ce9a..5a25e53a0 100644 --- a/src/lib/krb5/os/kuserok.c +++ b/src/lib/krb5/os/kuserok.c @@ -136,4 +136,27 @@ krb5_kuserok(context, principal, luser) fclose(fp); return(isok); } -#endif + +#else /* _MSDOS */ + +/* + * If the given Kerberos name "server" translates to the same name as "luser" + * (using * krb5_aname_to_lname()), returns TRUE. + */ +krb5_boolean INTERFACE +krb5_kuserok(context, principal, luser) + krb5_context context; + krb5_principal principal; + const char *luser; +{ + char kuser[50]; + + if (! krb5_aname_to_localname(context, principal, sizeof(kuser), kuser)) + return FALSE; + + if (strcmp(kuser, luser) == 0) + return TRUE; + + return FALSE; +} +#endif /* _MSDOS */ |
