pull up r23713 from trunk
authorTom Yu <tlyu@mit.edu>
Fri, 12 Feb 2010 20:28:43 +0000 (20:28 +0000)
committerTom Yu <tlyu@mit.edu>
Fri, 12 Feb 2010 20:28:43 +0000 (20:28 +0000)
 ------------------------------------------------------------------------
 r23713 | hartmans | 2010-02-09 14:15:12 -0500 (Tue, 09 Feb 2010) | 10 lines

 subject: krb5int_fast_free_state segfaults if state is null
 ticket: 6657
 target_version: 1.8
 tags: pullup

 krb5int_fast_free_state fails if state is null.  INstead it should
 simply return Reorganization of the get_init_creds logic has created
 situations where the init_creds loop can fail between the time when
 the context is initialized and the fast state is initialized.

ticket: 6657
version_fixed: 1.8
status: resolved

git-svn-id: svn://anonsvn.mit.edu/krb5/branches/krb5-1-8@23719 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/krb/fast.c

index 2ebbdcfcbb8c5d2b1c36127fc81071abc237fb45..1ff2d67cd7a54b10dab0241eeb39431422758e45 100644 (file)
@@ -533,6 +533,8 @@ krb5int_fast_make_state( krb5_context context, struct krb5int_fast_request_state
 void
 krb5int_fast_free_state( krb5_context context, struct krb5int_fast_request_state *state)
 {
+    if (state == NULL)
+        return;
     /*We are responsible for none of the store in the fast_outer_req*/
     krb5_free_keyblock(context, state->armor_key);
     krb5_free_fast_armor(context, state->armor);