[740] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

lib/krb5/rcache/rc_dfl.c using free()'ed storage

daemon@ATHENA.MIT.EDU (John Gardiner Myers)
Wed Sep 14 01:11:46 1994

Date: Wed, 14 Sep 1994 01:10:09 -0400 (EDT)
From: John Gardiner Myers <jgm+@CMU.EDU>
To: krb5-bugs@MIT.EDU

The rcache code in krb5-beta4 was using memory that had been
previously freed.

*** rc_dfl.c~	Sun Jun 12 13:46:09 1994
--- rc_dfl.c	Wed Sep 14 00:22:11 1994
***************
*** 543,555 ****
    
  #else
      struct authlist *q;
!     char *name = t->name;
      krb5_error_code retval;
      krb5_rcache tmp;
      krb5_deltat lifespan = t->lifespan;  /* save original lifespan
*/
  
      (void) krb5_rc_dfl_close_no_free(id);
      retval = krb5_rc_dfl_resolve(id, name);
      if (retval)
  	return retval;
      retval = krb5_rc_dfl_recover(id);
--- 543,556 ----
    
  #else
      struct authlist *q;
!     char *name = strdup(t->name);
      krb5_error_code retval;
      krb5_rcache tmp;
      krb5_deltat lifespan = t->lifespan;  /* save original lifespan
*/
  
      (void) krb5_rc_dfl_close_no_free(id);
      retval = krb5_rc_dfl_resolve(id, name);
+     free(name);
      if (retval)
  	return retval;
      retval = krb5_rc_dfl_recover(id);

home help back first fref pref prev next nref lref last post