summaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2007-09-04 02:10:13 +0000
committerTom Yu <tlyu@mit.edu>2007-09-04 02:10:13 +0000
commitaaa792bc173ec8415f1fd7df597187425e41c5d1 (patch)
treea30288a2fce1e5e8c92c67550f8ef7fbab2773bf /src/lib
parentf1a06003f32e1cfde3d96333c20e02ee5e761e97 (diff)
downloadkrb5-aaa792bc173ec8415f1fd7df597187425e41c5d1.tar.gz
krb5-aaa792bc173ec8415f1fd7df597187425e41c5d1.tar.xz
krb5-aaa792bc173ec8415f1fd7df597187425e41c5d1.zip
Bail out if encoded "ticket" doesn't decode correctly. This allows
t_cc test case to pass and allows non-tickets to be stored (for now). ticket: 5697 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@19910 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/krb5/ccache/ccfns.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/lib/krb5/ccache/ccfns.c b/src/lib/krb5/ccache/ccfns.c
index f44c0fe6c..15bc87df6 100644
--- a/src/lib/krb5/ccache/ccfns.c
+++ b/src/lib/krb5/ccache/ccfns.c
@@ -78,7 +78,8 @@ krb5_cc_store_cred (krb5_context context, krb5_ccache cache,
*/
s1 = creds->server;
ret = decode_krb5_ticket(&creds->ticket, &tkt);
- if (ret) return ret;
+ /* Bail out on errors in case someone is storing a non-ticket. */
+ if (ret) return 0;
s2 = tkt->server;
if (!krb5_principal_compare(context, s1, s2)) {
creds->server = s2;