aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2001-09-07 11:19:24 +0000
committerKen Raeburn <raeburn@mit.edu>2001-09-07 11:19:24 +0000
commit361f04c779beed3a2621e91101eca8798f7ac417 (patch)
treefecdbf5729f59174002f7ff839c4fe6dbfc4dfb8
parent5c2f557ed394adbd53f52d8939c09f943f2dc948 (diff)
downloadkrb5-361f04c779beed3a2621e91101eca8798f7ac417.zip
krb5-361f04c779beed3a2621e91101eca8798f7ac417.tar.gz
krb5-361f04c779beed3a2621e91101eca8798f7ac417.tar.bz2
* rd_req_dec.c (krb5_rd_req_decoded_opt): Pass server realm to
transited-list check, not local realm, in case they're different. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@13737 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r--src/lib/krb5/krb/ChangeLog5
-rw-r--r--src/lib/krb5/krb/rd_req_dec.c12
2 files changed, 10 insertions, 7 deletions
diff --git a/src/lib/krb5/krb/ChangeLog b/src/lib/krb5/krb/ChangeLog
index 7f15603..5fef923 100644
--- a/src/lib/krb5/krb/ChangeLog
+++ b/src/lib/krb5/krb/ChangeLog
@@ -1,3 +1,8 @@
+2001-09-07 Ken Raeburn <raeburn@mit.edu>
+
+ * rd_req_dec.c (krb5_rd_req_decoded_opt): Pass server realm to
+ transited-list check, not local realm, in case they're different.
+
2001-08-21 Ken Raeburn <raeburn@mit.edu>
* walk_rtree.c (krb5_walk_realm_tree): Initialize slen to silence
diff --git a/src/lib/krb5/krb/rd_req_dec.c b/src/lib/krb5/krb/rd_req_dec.c
index 4e9f44e..31c02dd 100644
--- a/src/lib/krb5/krb/rd_req_dec.c
+++ b/src/lib/krb5/krb/rd_req_dec.c
@@ -188,7 +188,6 @@ krb5_rd_req_decoded_opt(context, auth_context, req, server, keytab,
/* Hierarchical Cross-Realm */
{
- krb5_data lrealm;
krb5_data * realm;
krb5_transited * trans;
@@ -200,12 +199,11 @@ krb5_rd_req_decoded_opt(context, auth_context, req, server, keytab,
* transited are within the hierarchy between the client's realm
* and the local realm.
*/
- if (trans->tr_contents.data && trans->tr_contents.data[0]) {
- krb5_get_default_realm(context, &(lrealm.data));
- lrealm.length = strlen(lrealm.data);
- retval = krb5_check_transited_list(context, &(trans->tr_contents),
- realm, &lrealm);
- free(lrealm.data);
+ if (trans->tr_contents.data && trans->tr_contents.data[0]) {
+ retval = krb5_check_transited_list(context, &(trans->tr_contents),
+ realm,
+ krb5_princ_realm (context,
+ server));
}
}