diff options
| author | John Carr <jfc@mit.edu> | 1992-08-21 03:29:21 +0000 |
|---|---|---|
| committer | John Carr <jfc@mit.edu> | 1992-08-21 03:29:21 +0000 |
| commit | 25660ba3ae371bb1d2bd7fe89351dfe206f5a406 (patch) | |
| tree | bdf48f2bb812fb253b43a55f2b2b29d3f3231b7c /src/slave | |
| parent | 1a6dd7e4eb7cebf997d6b910e3d66985c4b0de66 (diff) | |
| download | krb5-25660ba3ae371bb1d2bd7fe89351dfe206f5a406.tar.gz krb5-25660ba3ae371bb1d2bd7fe89351dfe206f5a406.tar.xz krb5-25660ba3ae371bb1d2bd7fe89351dfe206f5a406.zip | |
Principal type changes
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@2367 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/slave')
| -rw-r--r-- | src/slave/kpropd.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/slave/kpropd.c b/src/slave/kpropd.c index 31ec869b5..b878d56e0 100644 --- a/src/slave/kpropd.c +++ b/src/slave/kpropd.c @@ -558,6 +558,7 @@ authorized_principal(p) static char *localrealm = NULL; char *default_realm; krb5_error_code retval; + krb5_data *tmpdata; if (!localrealm) { if (realm) @@ -574,14 +575,16 @@ authorized_principal(p) /* * The other side must be coming from the local realm! */ - if (!p[0] || (p[0]->length != strlen(localrealm)) - || memcmp(p[0]->data, localrealm, p[0]->length)) + tmpdata = krb5_princ_realm(p); + if (tmpdata->length != strlen(localrealm) + || memcmp(tmpdata->data, localrealm, tmpdata->length)) return(FALSE); /* * The client's service must be KPROP_SERVICE_NAME */ - if (!p[1] || (p[1]->length != strlen(KPROP_SERVICE_NAME)) - || memcmp(p[1]->data, KPROP_SERVICE_NAME, p[1]->length)) + tmpdata = krb5_princ_component(p, 0); + if (!tmpdata || (tmpdata->length != strlen(KPROP_SERVICE_NAME)) + || memcmp(tmpdata->data, KPROP_SERVICE_NAME, tmpdata->length)) return(FALSE); /* * For now, it can come from any hostname. We this needs to |
