Commit dbd5c34f authored by Matt Caswell's avatar Matt Caswell
Browse files

Fix BIO_CTRL_DUP for an SSL BIO



The variables in the BIO weren't being duplicated properly.

Reviewed-by: default avatarRichard Levitte <levitte@openssl.org>
Reviewed-by: default avatarViktor Dukhovni <viktor@openssl.org>
parent 97b04399
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -424,10 +424,11 @@ static long ssl_ctrl(BIO *b, int cmd, long num, void *ptr)
        dbs = BIO_get_data(dbio);
        SSL_free(dbs->ssl);
        dbs->ssl = SSL_dup(ssl);
        dbs->renegotiate_count = dbs->renegotiate_count;
        dbs->byte_count = dbs->byte_count;
        dbs->renegotiate_timeout = dbs->renegotiate_timeout;
        dbs->last_time = dbs->last_time;
        dbs->num_renegotiates = bs->num_renegotiates;
        dbs->renegotiate_count = bs->renegotiate_count;
        dbs->byte_count = bs->byte_count;
        dbs->renegotiate_timeout = bs->renegotiate_timeout;
        dbs->last_time = bs->last_time;
        ret = (dbs->ssl != NULL);
        break;
    case BIO_C_GET_FD: