krb5int_fast_free_state segfaults if state is null
authorSam Hartman <hartmans@mit.edu>
Tue, 9 Feb 2010 19:15:12 +0000 (19:15 +0000)
committerSam Hartman <hartmans@mit.edu>
Tue, 9 Feb 2010 19:15:12 +0000 (19:15 +0000)
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
target_version: 1.8
tags: pullup

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23713 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/krb/fast.c

index db95adca7144861bb896220f349151b3fb93eecd..6aa71282abf596d8a21305adf7f40e753260d0db 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);