IP_Address can now be a wildcard (not a valid IP, used for binding)

This commit is contained in:
Fabio Alessandrelli 2017-01-18 04:03:51 +01:00
parent 98a7e2b4e0
commit 4198291cd4
2 changed files with 8 additions and 1 deletions

View file

@ -175,6 +175,7 @@ void IP_Address::clear() {
memset(&field8[0], 0, sizeof(field8)); memset(&field8[0], 0, sizeof(field8));
valid = false; valid = false;
wildcard = false;
}; };
bool IP_Address::is_ipv4() const{ bool IP_Address::is_ipv4() const{
@ -208,7 +209,11 @@ IP_Address::IP_Address(const String& p_string) {
clear(); clear();
if (p_string.find(":") >= 0) { if (p_string == "*") {
// Wildcard (not a vaild IP)
wildcard = true;
} else if (p_string.find(":") >= 0) {
// IPv6 // IPv6
_parse_ipv6(p_string); _parse_ipv6(p_string);
valid = true; valid = true;

View file

@ -42,6 +42,7 @@ private:
}; };
bool valid; bool valid;
bool wildcard;
protected: protected:
void _parse_ipv6(const String& p_string); void _parse_ipv6(const String& p_string);
@ -67,6 +68,7 @@ public:
} }
void clear(); void clear();
bool is_wildcard() const {return wildcard;}
bool is_valid() const {return valid;} bool is_valid() const {return valid;}
bool is_ipv4() const; bool is_ipv4() const;
const uint8_t *get_ipv4() const; const uint8_t *get_ipv4() const;