diff --git a/cores/esp8266/IPAddress.cpp b/cores/esp8266/IPAddress.cpp index 563409e163..bf6a45b879 100644 --- a/cores/esp8266/IPAddress.cpp +++ b/cores/esp8266/IPAddress.cpp @@ -38,7 +38,7 @@ IPAddress::IPAddress(uint8_t first_octet, uint8_t second_octet, uint8_t third_oc (*this)[3] = fourth_octet; } -IPAddress::IPAddress(uint32_t address) { +void IPAddress::ctor32(uint32_t address) { setV4(); v4() = address; } @@ -172,7 +172,8 @@ bool IPAddress::isValid(const char* arg) { return IPAddress().fromString(arg); } -CONST IPAddress IPNoAddress; // generic "0.0.0.0" for v4 & v6 +CONST IPAddress INADDR_ANY; // generic "0.0.0.0" for IPv4 & IPv6 +const IPAddress INADDR_NONE(255,255,255,255); /**************************************/ diff --git a/cores/esp8266/IPAddress.h b/cores/esp8266/IPAddress.h index 97d2785005..f457127de4 100644 --- a/cores/esp8266/IPAddress.h +++ b/cores/esp8266/IPAddress.h @@ -67,11 +67,15 @@ class IPAddress: public Printable { return reinterpret_cast(&v4()); } + void ctor32 (uint32_t); + public: // Constructors IPAddress(); IPAddress(uint8_t first_octet, uint8_t second_octet, uint8_t third_octet, uint8_t fourth_octet); - IPAddress(uint32_t address); + IPAddress(uint32_t address) { ctor32(address); } + IPAddress(u32_t address) { ctor32(address); } + IPAddress(int address) { ctor32(address); } IPAddress(const uint8_t *address); bool fromString(const char *address); @@ -200,9 +204,9 @@ class IPAddress: public Printable { }; -extern CONST IPAddress IPNoAddress; +extern CONST IPAddress INADDR_ANY; +extern const IPAddress INADDR_NONE; -#include // bring definition of INADDR_NONE #include // bring interface iterator #endif diff --git a/libraries/ESP8266WiFi/src/WiFiUdp.cpp b/libraries/ESP8266WiFi/src/WiFiUdp.cpp index b2c9beefae..8de4cc4ff4 100644 --- a/libraries/ESP8266WiFi/src/WiFiUdp.cpp +++ b/libraries/ESP8266WiFi/src/WiFiUdp.cpp @@ -234,7 +234,7 @@ void WiFiUDP::flush() IPAddress WiFiUDP::remoteIP() const { if (!_ctx) - return IPNoAddress; + return INADDR_ANY; return _ctx->getRemoteAddress(); } @@ -250,7 +250,7 @@ uint16_t WiFiUDP::remotePort() const IPAddress WiFiUDP::destinationIP() const { if (!_ctx) - return IPNoAddress; + return INADDR_ANY; return _ctx->getDestAddress(); } diff --git a/libraries/Ethernet/src/Dns.cpp b/libraries/Ethernet/src/Dns.cpp index 8f5cec8f0d..ad4e167f25 100644 --- a/libraries/Ethernet/src/Dns.cpp +++ b/libraries/Ethernet/src/Dns.cpp @@ -127,7 +127,7 @@ int DNSClient::getHostByName(const char* aHostname, IPAddress& aResult) } // Check we've got a valid DNS server to use - if (iDNSServer == IPNoAddress) + if (iDNSServer == INADDR_NONE || iDNSServer == INADDR_ANY) { return INVALID_SERVER; }