@@ -237,21 +237,28 @@ class NetworkClient : public Client
237
237
// ------------------------------
238
238
239
239
friend class NetworkEthernetClient ;
240
+ friend class NetworkEthernetSslClient ;
240
241
friend class NetworkWiFiClient ;
242
+ friend class NetworkWiFiSslClient ;
241
243
};
242
244
243
245
#ifdef COMPILE_ETHERNET
244
246
class NetworkEthernetClient : public NetworkClient
245
247
{
246
248
private:
247
249
248
- EthernetClient _client ;
250
+ EthernetClient _ethernetClient ;
249
251
250
252
public:
251
253
254
+ NetworkEthernetClient () :
255
+ NetworkClient (&_ethernetClient, NETWORK_TYPE_ETHERNET)
256
+ {
257
+ }
258
+
252
259
NetworkEthernetClient (EthernetClient& client) :
253
- _client {client},
254
- NetworkClient (&_client , NETWORK_TYPE_ETHERNET)
260
+ _ethernetClient {client},
261
+ NetworkClient (&_ethernetClient , NETWORK_TYPE_ETHERNET)
255
262
{
256
263
}
257
264
@@ -260,17 +267,45 @@ class NetworkEthernetClient : public NetworkClient
260
267
this ->~NetworkClient ();
261
268
}
262
269
};
270
+
271
+ class NetworkEthernetSslClient : public NetworkClient
272
+ {
273
+ protected:
274
+
275
+ EthernetClient _ethernetClient;
276
+ SSLClientESP32 _sslClient;
277
+
278
+ public:
279
+
280
+ NetworkEthernetSslClient () :
281
+ _sslClient (),
282
+ NetworkClient (&_sslClient, NETWORK_TYPE_ETHERNET)
283
+ {
284
+ _sslClient.setClient (&_ethernetClient);
285
+ _sslClient.setCACertBundle (x509CertificateBundle);
286
+ }
287
+
288
+ ~NetworkEthernetSslClient ()
289
+ {
290
+ this ->~NetworkClient ();
291
+ }
292
+ };
263
293
#endif // COMPILE_ETHERNET
264
294
265
295
#ifdef COMPILE_WIFI
266
296
class NetworkWiFiClient : public NetworkClient
267
297
{
268
- private :
298
+ protected :
269
299
270
300
WiFiClient _client;
271
301
272
302
public:
273
303
304
+ NetworkWiFiClient () :
305
+ NetworkClient (&_client, NETWORK_TYPE_WIFI)
306
+ {
307
+ }
308
+
274
309
NetworkWiFiClient (WiFiClient& client) :
275
310
_client{client},
276
311
NetworkClient (&_client, NETWORK_TYPE_WIFI)
@@ -282,6 +317,29 @@ class NetworkWiFiClient : public NetworkClient
282
317
this ->~NetworkClient ();
283
318
}
284
319
};
320
+
321
+ class NetworkWiFiSslClient : public NetworkClient
322
+ {
323
+ protected:
324
+
325
+ WiFiClient _wifiClient;
326
+ SSLClientESP32 _sslClient;
327
+
328
+ public:
329
+
330
+ NetworkWiFiSslClient () :
331
+ _sslClient (),
332
+ NetworkClient (&_sslClient, NETWORK_TYPE_WIFI)
333
+ {
334
+ _sslClient.setClient (&_wifiClient);
335
+ _sslClient.setCACertBundle (x509CertificateBundle);
336
+ }
337
+
338
+ ~NetworkWiFiSslClient ()
339
+ {
340
+ this ->~NetworkClient ();
341
+ }
342
+ };
285
343
#endif // COMPILE_WIFI
286
344
287
345
#endif // __NETWORK_CLIENT_H__
0 commit comments