diff options
| author | Richard Basch <probe@mit.edu> | 1996-03-25 16:19:38 +0000 |
|---|---|---|
| committer | Richard Basch <probe@mit.edu> | 1996-03-25 16:19:38 +0000 |
| commit | 3993f5961e9ddab5dde5f7c9e6fd33358ab3193f (patch) | |
| tree | 61e0b65f6e81d93849ac4accf13b551bfa848d04 /src | |
| parent | 9ea89ae1244ec1db35916f6856404104e7a1d8e1 (diff) | |
krshd.c: use the library routines to do v4 to v5 principal translation
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@7710 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
| -rw-r--r-- | src/appl/bsd/ChangeLog | 7 | ||||
| -rw-r--r-- | src/appl/bsd/krshd.c | 16 |
2 files changed, 14 insertions, 9 deletions
diff --git a/src/appl/bsd/ChangeLog b/src/appl/bsd/ChangeLog index 4e4e7e648..c90a1c937 100644 --- a/src/appl/bsd/ChangeLog +++ b/src/appl/bsd/ChangeLog @@ -7,9 +7,14 @@ Sat Mar 23 17:20:00 1996 Sam Hartman <hartmans@tertius.mit.edu> * krshd.c (doit): Don't use non-blocking IO; it is unnecessary and may cause problems. +Fri Mar 22 13:27:40 1996 Richard Basch <basch@lehman.com> + + * krshd.c: use the library routines to do v4 to v5 + principal translation, for a more accurate representation. + Wed Mar 20 19:36:21 1996 Richard Basch <basch@lehman.com> - * krlogind.c (recvauth): use the library routines to do v4 to v5 + * krlogind.c: use the library routines to do v4 to v5 principal translation, for a more accurate representation. Tue Mar 19 20:11:28 1996 Richard Basch <basch@lehman.com> diff --git a/src/appl/bsd/krshd.c b/src/appl/bsd/krshd.c index a7ba147fd..eae3ab584 100644 --- a/src/appl/bsd/krshd.c +++ b/src/appl/bsd/krshd.c @@ -1728,15 +1728,15 @@ krb5_authenticator *authenticator; * principal's name. */ strcpy(remuser, v4_kdata->pname); - kremuser = (char *) malloc(strlen(v4_kdata->pname) + 1 + - strlen(v4_kdata->pinst) + 1 + - strlen(v4_kdata->prealm) + 1); - sprintf(kremuser, "%s/%s@%s", v4_kdata->pname, - v4_kdata->pinst, v4_kdata->prealm); + + status = krb5_425_conv_principal(bsd_context, v4_kdata->pname, + v4_kdata->pinst, v4_kdata->prealm, + &client); + if (status) return status; + + status = krb5_unparse_name(bsd_context, client, &kremuser); - if (status = krb5_parse_name(bsd_context, kremuser, &client)) - return(status); - return 0; + return status; } /* Must be V5 */ |
