Oops use up to date patch for PR#2506
This commit is contained in:
parent
1eb38c563f
commit
2c77c5c8db
2 changed files with 16 additions and 2 deletions
11
ssl/d1_lib.c
11
ssl/d1_lib.c
|
@ -149,15 +149,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);
|
||||
}
|
||||
|
|
|
@ -148,6 +148,7 @@ int dtls1_accept(SSL *s)
|
|||
void (*cb)(const SSL *ssl,int type,int val)=NULL;
|
||||
int ret= -1;
|
||||
int new_state,state,skip=0;
|
||||
int listen;
|
||||
|
||||
RAND_add(&Time,sizeof(Time),0);
|
||||
ERR_clear_error();
|
||||
|
@ -158,6 +159,8 @@ int dtls1_accept(SSL *s)
|
|||
else if (s->ctx->info_callback != NULL)
|
||||
cb=s->ctx->info_callback;
|
||||
|
||||
listen = s->d1->listen;
|
||||
|
||||
/* init things to blank */
|
||||
s->in_handshake++;
|
||||
if (!SSL_in_init(s) || SSL_in_before(s)) SSL_clear(s);
|
||||
|
@ -272,7 +275,7 @@ int dtls1_accept(SSL *s)
|
|||
s->init_num=0;
|
||||
|
||||
/* If we're just listening, stop here */
|
||||
if (s->d1->listen && s->state == SSL3_ST_SW_SRVR_HELLO_A)
|
||||
if (listen && s->state == SSL3_ST_SW_SRVR_HELLO_A)
|
||||
{
|
||||
ret = 2;
|
||||
s->d1->listen = 0;
|
||||
|
|
Loading…
Reference in a new issue