1
0
mirror of https://github.com/esp8266/Arduino.git synced 2025-07-24 19:42:27 +03:00

Initialize SoftAP DhcpServer object on demand (#8546)

* Initialize SoftAP DhcpServer object on demand

Remove dependency on global ctor, and just construct the object when
someone asks us to do it. Only dependency right now is netif_git, which
is expected to be initialized by the lwip code some time before
dhcps_start happens.

Removing ip_info from begin(), since we never reference later on.
Also removing the specific check for netif id and simplify the ctors.

Update tests and recover old nonos-sdk dhcps functions that were not implemented.

* nonos helpers have a separate header

* wifi ap needs this anyway, simplify sketch includes

* missing example

* existing name :/

* trying to fix header dependency

* restyle

* not a c header

* no need to init

* move dhcp server getter to WiFi

more... arduino'ish? we ahve object as namespace, plus everything else
related to softAP is there
redundant includes, redundant mock impl (out-of-scope here to fix)

* ...move things back, still expose as WiFi method

* review fix

* include -nonos header in wifi lib though

* no more lwip include

* style

* need mock dhcpserver instance
This commit is contained in:
Max Prokhorov
2022-06-01 23:46:04 +03:00
committed by GitHub
parent 61e7605549
commit 502d9469fa
15 changed files with 232 additions and 333 deletions

View File

@ -27,6 +27,7 @@
#include "ESP8266WiFiType.h"
#include "ESP8266WiFiGeneric.h"
#include <LwipDhcpServer.h>
class ESP8266WiFiAPClass {
@ -48,8 +49,10 @@ class ESP8266WiFiAPClass {
uint8_t* softAPmacAddress(uint8_t* mac);
String softAPmacAddress(void);
String softAPSSID() const;
String softAPPSK() const;
String softAPSSID() const;
String softAPPSK() const;
static DhcpServer& softAPDhcpServer();
protected: