34
34
35
35
#include " BearSSLClient.h"
36
36
37
- bool BearSSLClient::_sslio_closing = false ;
38
-
39
37
BearSSLClient::BearSSLClient () :
40
38
_noSNI(false ),
41
- _get_time_func(nullptr )
39
+ _get_time_func(nullptr ),
40
+ _sslio_closing(false )
42
41
{
43
42
_ecKey.curve = 0 ;
44
43
_ecKey.x = NULL ;
@@ -169,7 +168,7 @@ void BearSSLClient::stop()
169
168
{
170
169
if (_client->connected ()) {
171
170
if ((br_ssl_engine_current_state (&_sc.eng ) & BR_SSL_CLOSED) == 0 ) {
172
- BearSSLClient:: _sslio_closing = true ;
171
+ _sslio_closing = true ;
173
172
br_sslio_close (&_ioc);
174
173
}
175
174
@@ -311,7 +310,7 @@ int BearSSLClient::connectSSL(const char* host)
311
310
br_x509_minimal_set_time (&_xc, days, sec);
312
311
313
312
// use our own socket I/O operations
314
- br_sslio_init (&_ioc, &_sc.eng , BearSSLClient::clientRead, _client , BearSSLClient::clientWrite, _client );
313
+ br_sslio_init (&_ioc, &_sc.eng , BearSSLClient::clientRead, this , BearSSLClient::clientWrite, this );
315
314
316
315
br_sslio_flush (&_ioc);
317
316
@@ -332,12 +331,13 @@ int BearSSLClient::connectSSL(const char* host)
332
331
333
332
int BearSSLClient::clientRead (void *ctx, unsigned char *buf, size_t len)
334
333
{
335
- if (BearSSLClient::_sslio_closing) {
334
+ BearSSLClient* bc = (BearSSLClient*)ctx;
335
+ Client* c = bc->_client ;
336
+
337
+ if (bc->_sslio_closing ) {
336
338
return -1 ;
337
339
}
338
340
339
- Client* c = (Client*)ctx;
340
-
341
341
if (!c->connected ()) {
342
342
return -1 ;
343
343
}
@@ -367,12 +367,13 @@ int BearSSLClient::clientRead(void *ctx, unsigned char *buf, size_t len)
367
367
368
368
int BearSSLClient::clientWrite (void *ctx, const unsigned char *buf, size_t len)
369
369
{
370
- if (BearSSLClient::_sslio_closing) {
370
+ BearSSLClient* bc = (BearSSLClient*)ctx;
371
+ Client* c = bc->_client ;
372
+
373
+ if (bc->_sslio_closing ) {
371
374
return -1 ;
372
375
}
373
376
374
- Client* c = (Client*)ctx;
375
-
376
377
#ifdef DEBUGSERIAL
377
378
DEBUGSERIAL.print (" BearSSLClient::clientWrite - " );
378
379
DEBUGSERIAL.print (len);
0 commit comments