+2003-01-12 Ezra Peisach <epeisach@bu.edu>
+
+ * kdc_util.h, replay.c, main.c: Pass global krb5_context to
+ kdc_free_lookaside() instead of per realm one - which has been
+ freed by time invoked.
+
2003-01-03 Ezra Peisach <epeisach@bu.edu>
* main.c: On exit, free more allocated memory, including:
krb5_data **);
void kdc_insert_lookaside (krb5_data *, const krb5_fulladdr *,
krb5_data *);
-void kdc_free_lookaside(void);
+void kdc_free_lookaside(krb5_context);
/* sock2p.c */
extern void sockaddr2p (const struct sockaddr *, char *, size_t, int *);
if (kdc_realmlist)
free(kdc_realmlist);
#ifdef USE_RCACHE
- (void) krb5_rc_close(kdc_context, kdc_rcache);
+ (void) krb5_rc_close(kcontext, kdc_rcache);
#endif
#ifndef NOCACHE
- kdc_free_lookaside();
+ kdc_free_lookaside(kcontext);
#endif
krb5_free_context(kcontext);
return errout;
/* frees memory associated with the lookaside queue for memory profiling */
void
-kdc_free_lookaside()
+kdc_free_lookaside(krb5_context kcontext)
{
register krb5_kdc_replay_ent *eptr, *last, *hold;
if (root_ptr.next) {
for (last = &root_ptr, eptr = root_ptr.next;
eptr; eptr = eptr->next) {
- krb5_free_data(kdc_context, eptr->req_packet);
- krb5_free_data(kdc_context, eptr->reply_packet);
- krb5_free_address(kdc_context, eptr->addr);
+ krb5_free_data(kcontext, eptr->req_packet);
+ krb5_free_data(kcontext, eptr->reply_packet);
+ krb5_free_address(kcontext, eptr->addr);
hold = eptr;
last->next = eptr->next;
eptr = last;