diff options
author | Linus Nordberg <linus@nordu.net> | 2016-03-09 12:14:33 +0100 |
---|---|---|
committer | Linus Nordberg <linus@nordu.net> | 2016-09-21 13:15:11 +0200 |
commit | 668f81b43785cd4181ffc1ca898f6301100b094f (patch) | |
tree | 41214927589758a5de13fd0fa46efce304070ec4 | |
parent | 71a1cfdf066012ea4a8c8049cb3dc3554348d2b2 (diff) |
Stop accessing ssl->rbio directly.
-rw-r--r-- | dtls.c | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -168,8 +168,8 @@ int dtlsread(SSL *ssl, struct gqueue *q, unsigned char *buf, int num, int timeou rbio = getrbio(ssl, q, timeout); if (!rbio) return 0; - BIO_free(ssl->rbio); - ssl->rbio = rbio; + BIO_free(SSL_get_rbio(ssl)); + SSL_set_bio(ssl, rbio, SSL_get_wbio(ssl)); cnt = 0; continue; case SSL_ERROR_WANT_WRITE: @@ -210,9 +210,9 @@ SSL *dtlsacccon(uint8_t acc, SSL_CTX *ctx, int s, struct sockaddr *addr, struct if (res == 0) break; if (SSL_get_error(ssl, res) == SSL_ERROR_WANT_READ) { - BIO_free(ssl->rbio); - ssl->rbio = getrbio(ssl, rbios, 5); - if (!ssl->rbio) + BIO_free(SSL_get_rbio(ssl)); + SSL_set_bio(ssl, getrbio(ssl, rbios, 5), SSL_get_wbio(ssl)); + if (!SSL_get_rbio(ssl)) break; } while ((error = ERR_get_error())) |