diff options
Diffstat (limited to 'ssl/d1_pkt.c')
| -rw-r--r-- | ssl/d1_pkt.c | 19 | 
1 files changed, 10 insertions, 9 deletions
| diff --git a/ssl/d1_pkt.c b/ssl/d1_pkt.c index 8186462d4a6b..438c0913d24e 100644 --- a/ssl/d1_pkt.c +++ b/ssl/d1_pkt.c @@ -239,14 +239,6 @@ dtls1_buffer_record(SSL *s, record_pqueue *queue, unsigned char *priority)  	}  #endif -	/* insert should not fail, since duplicates are dropped */ -	if (pqueue_insert(queue->q, item) == NULL) -		{ -		OPENSSL_free(rdata); -		pitem_free(item); -		return(0); -		} -  	s->packet = NULL;  	s->packet_length = 0;  	memset(&(s->s3->rbuf), 0, sizeof(SSL3_BUFFER)); @@ -259,7 +251,16 @@ dtls1_buffer_record(SSL *s, record_pqueue *queue, unsigned char *priority)  		pitem_free(item);  		return(0);  		} -	 + +	/* insert should not fail, since duplicates are dropped */ +	if (pqueue_insert(queue->q, item) == NULL) +		{ +		SSLerr(SSL_F_DTLS1_BUFFER_RECORD, ERR_R_INTERNAL_ERROR); +		OPENSSL_free(rdata); +		pitem_free(item); +		return(0); +		} +  	return(1);  	} | 
