diff options
Diffstat (limited to 'src/lib/libssl/d1_lib.c')
| -rw-r--r-- | src/lib/libssl/d1_lib.c | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/lib/libssl/d1_lib.c b/src/lib/libssl/d1_lib.c index cf4c5100d5..fe51769530 100644 --- a/src/lib/libssl/d1_lib.c +++ b/src/lib/libssl/d1_lib.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: d1_lib.c,v 1.62 2022/10/02 16:36:41 jsing Exp $ */ | 1 | /* $OpenBSD: d1_lib.c,v 1.63 2022/11/11 17:15:26 jsing Exp $ */ |
| 2 | /* | 2 | /* |
| 3 | * DTLS implementation written by Nagendra Modadugu | 3 | * DTLS implementation written by Nagendra Modadugu |
| 4 | * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. | 4 | * (nagendra@cs.stanford.edu) for the OpenSSL project 2005. |
| @@ -105,6 +105,23 @@ dtls1_new(SSL *s) | |||
| 105 | } | 105 | } |
| 106 | 106 | ||
| 107 | static void | 107 | static void |
| 108 | dtls1_drain_rcontents(pqueue queue) | ||
| 109 | { | ||
| 110 | DTLS1_RCONTENT_DATA_INTERNAL *rdata; | ||
| 111 | pitem *item; | ||
| 112 | |||
| 113 | if (queue == NULL) | ||
| 114 | return; | ||
| 115 | |||
| 116 | while ((item = pqueue_pop(queue)) != NULL) { | ||
| 117 | rdata = (DTLS1_RCONTENT_DATA_INTERNAL *)item->data; | ||
| 118 | tls_content_free(rdata->rcontent); | ||
| 119 | free(item->data); | ||
| 120 | pitem_free(item); | ||
| 121 | } | ||
| 122 | } | ||
| 123 | |||
| 124 | static void | ||
| 108 | dtls1_drain_records(pqueue queue) | 125 | dtls1_drain_records(pqueue queue) |
| 109 | { | 126 | { |
| 110 | pitem *item; | 127 | pitem *item; |
| @@ -141,7 +158,7 @@ dtls1_clear_queues(SSL *s) | |||
| 141 | dtls1_drain_records(s->d1->unprocessed_rcds.q); | 158 | dtls1_drain_records(s->d1->unprocessed_rcds.q); |
| 142 | dtls1_drain_fragments(s->d1->buffered_messages); | 159 | dtls1_drain_fragments(s->d1->buffered_messages); |
| 143 | dtls1_drain_fragments(s->d1->sent_messages); | 160 | dtls1_drain_fragments(s->d1->sent_messages); |
| 144 | dtls1_drain_records(s->d1->buffered_app_data.q); | 161 | dtls1_drain_rcontents(s->d1->buffered_app_data.q); |
| 145 | } | 162 | } |
| 146 | 163 | ||
| 147 | void | 164 | void |
