diff options
author | Dr. Stephen Henson <steve@openssl.org> | 2011-05-25 14:30:05 +0000 |
---|---|---|
committer | Dr. Stephen Henson <steve@openssl.org> | 2011-05-25 14:30:05 +0000 |
commit | 4159ac43aaa28b5d1fda7cc71b8fa65881057f5a (patch) | |
tree | 5cc251d1bb215626b73b76ff8370346c7fba9d73 /ssl/d1_lib.c | |
parent | 419b09b053fdcb4306284061ca4477c2beefd2be (diff) |
Oops use up to date patch for PR#2506
Diffstat (limited to 'ssl/d1_lib.c')
-rw-r--r-- | ssl/d1_lib.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/ssl/d1_lib.c b/ssl/d1_lib.c index fafc5c0bc6..9fe6b2b8f7 100644 --- a/ssl/d1_lib.c +++ b/ssl/d1_lib.c @@ -133,15 +133,26 @@ static void dtls1_clear_queues(SSL *s) { pitem *item = NULL; hm_fragment *frag = NULL; - + DTLS1_RECORD_DATA *rdata; + while( (item = pqueue_pop(s->d1->unprocessed_rcds.q)) != NULL) { + rdata = (DTLS1_RECORD_DATA *) item->data; + if (rdata->rbuf.buf) + { + OPENSSL_free(rdata->rbuf.buf); + } OPENSSL_free(item->data); pitem_free(item); } while( (item = pqueue_pop(s->d1->processed_rcds.q)) != NULL) { + rdata = (DTLS1_RECORD_DATA *) item->data; + if (rdata->rbuf.buf) + { + OPENSSL_free(rdata->rbuf.buf); + } OPENSSL_free(item->data); pitem_free(item); } |