BearSSL: support connect() without timeout on ESP32

Arduino-ESP32 supports both versions of 'connect' method, with and
without timeout argument. Since most users of
WiFiClientSecure_light class use version without this argument -
for example - Telegram, export both on ESP32 to fix build failure
with USE_TELEGRAM enabled on ESP32.

Fixes: 3d5c68b850 ("Berry class ``webclient`` for HTTP/HTTPS requests")
Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
This commit is contained in:
Lech Perczak 2021-10-21 22:07:21 +02:00
parent af85cbedb1
commit b5730a9be9
2 changed files with 3 additions and 6 deletions

View File

@ -303,7 +303,7 @@ int WiFiClientSecure_light::connect(IPAddress ip, uint16_t port, int32_t timeout
} }
return _connectSSL(nullptr); return _connectSSL(nullptr);
} }
#else // ESP32 #endif // ESP32
int WiFiClientSecure_light::connect(IPAddress ip, uint16_t port) { int WiFiClientSecure_light::connect(IPAddress ip, uint16_t port) {
DEBUG_BSSL("connect(%s,%d)", ip.toString().c_str(), port); DEBUG_BSSL("connect(%s,%d)", ip.toString().c_str(), port);
clearLastError(); clearLastError();
@ -313,7 +313,6 @@ int WiFiClientSecure_light::connect(IPAddress ip, uint16_t port) {
} }
return _connectSSL(nullptr); return _connectSSL(nullptr);
} }
#endif
#ifdef ESP32 #ifdef ESP32
int WiFiClientSecure_light::connect(const char* name, uint16_t port, int32_t timeout) { int WiFiClientSecure_light::connect(const char* name, uint16_t port, int32_t timeout) {
@ -334,7 +333,7 @@ int WiFiClientSecure_light::connect(const char* name, uint16_t port, int32_t tim
LOG_HEAP_SIZE("Before calling _connectSSL"); LOG_HEAP_SIZE("Before calling _connectSSL");
return _connectSSL(name); return _connectSSL(name);
} }
#else // ESP32 #endif // ESP32
int WiFiClientSecure_light::connect(const char* name, uint16_t port) { int WiFiClientSecure_light::connect(const char* name, uint16_t port) {
DEBUG_BSSL("connect(%s,%d)\n", name, port); DEBUG_BSSL("connect(%s,%d)\n", name, port);
IPAddress remote_addr; IPAddress remote_addr;
@ -353,7 +352,6 @@ int WiFiClientSecure_light::connect(const char* name, uint16_t port) {
LOG_HEAP_SIZE("Before calling _connectSSL"); LOG_HEAP_SIZE("Before calling _connectSSL");
return _connectSSL(name); return _connectSSL(name);
} }
#endif
void WiFiClientSecure_light::_freeSSL() { void WiFiClientSecure_light::_freeSSL() {
_ctx_present = false; _ctx_present = false;

View File

@ -41,10 +41,9 @@ class WiFiClientSecure_light : public WiFiClient {
#ifdef ESP32 // the method to override in ESP32 has timeout argument #ifdef ESP32 // the method to override in ESP32 has timeout argument
int connect(IPAddress ip, uint16_t port, int32_t timeout) override; int connect(IPAddress ip, uint16_t port, int32_t timeout) override;
int connect(const char* name, uint16_t port, int32_t timeout) override; int connect(const char* name, uint16_t port, int32_t timeout) override;
#else #endif
int connect(IPAddress ip, uint16_t port) override; int connect(IPAddress ip, uint16_t port) override;
int connect(const char* name, uint16_t port) override; int connect(const char* name, uint16_t port) override;
#endif
uint8_t connected() override; uint8_t connected() override;
size_t write(const uint8_t *buf, size_t size) override; size_t write(const uint8_t *buf, size_t size) override;