diff options
author | Theodore Tso <tytso@mit.edu> | 1994-06-02 16:41:50 +0000 |
---|---|---|
committer | Theodore Tso <tytso@mit.edu> | 1994-06-02 16:41:50 +0000 |
commit | 754201bd7a7d12eb60e73a4f822595b7bc7ed8c6 (patch) | |
tree | 278ae8802abf2eb1db14d29be216d3013bee817f /src/lib | |
parent | 0c22636815a3759feea33402a70c996c57fcd209 (diff) | |
download | krb5-754201bd7a7d12eb60e73a4f822595b7bc7ed8c6.tar.gz krb5-754201bd7a7d12eb60e73a4f822595b7bc7ed8c6.tar.xz krb5-754201bd7a7d12eb60e73a4f822595b7bc7ed8c6.zip |
rd_req_sim was using the wrong component of the server name to generate
the replay cache name.
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@3672 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/krb5/krb/rd_req_sim.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/src/lib/krb5/krb/rd_req_sim.c b/src/lib/krb5/krb/rd_req_sim.c index ff3c77941..0e77cdf48 100644 --- a/src/lib/krb5/krb/rd_req_sim.c +++ b/src/lib/krb5/krb/rd_req_sim.c @@ -62,7 +62,7 @@ krb5_tkt_authent **authdat; { krb5_error_code retval; krb5_ap_req *request; - krb5_rcache rcache; + krb5_rcache rcache = 0; if (!krb5_is_ap_req(inbuf)) return KRB5KRB_AP_ERR_MSG_TYPE; @@ -74,15 +74,20 @@ krb5_tkt_authent **authdat; return(retval); } } - if (!(retval = krb5_get_server_rcache(krb5_princ_component(server, 1), - &rcache))) { - retval = krb5_rd_req_decoded(request, server, - sender_addr, 0, - 0, 0, rcache, authdat); - krb5_rc_close(rcache); + + if (server) { + retval = krb5_get_server_rcache(krb5_princ_component(server, 0), + &rcache); + if (retval) + goto cleanup; } - krb5_free_ap_req(request); + retval = krb5_rd_req_decoded(request, server, sender_addr, 0, 0, 0, + rcache, authdat); +cleanup: + if (rcache) + krb5_rc_close(rcache); + krb5_free_ap_req(request); return retval; } |