25 #define MDNS_RESOURCE_TYPE_MAP(XX) \ 26 XX(A, 0x0001, "32-bit IPv4 address") \ 27 XX(SOA, 0x0006, "Authoritative DNS Zone information") \ 28 XX(PTR, 0x000C, "Pointer to a canonical name") \ 29 XX(HINFO, 0x000D, "Host Information") \ 30 XX(TXT, 0x0010, "Arbitrary human-readable text") \ 31 XX(AAAA, 0x001C, "128-bit IPv6 address") \ 32 XX(SRV, 0x0021, "Server selection") \ 33 XX(ANY, 0x00FF, "Matches any resource type in query") 42 #define XX(name, value, desc) name = value, 62 uint8_t* getRecord()
const;
105 void init(
const String& name);
116 using Record::Record;
130 using Record::Record;
132 uint8_t count()
const;
134 String operator[](uint8_t index)
const;
152 return getValue(name, strlen(name));
165 void add(
const char* value,
uint16_t len);
174 add(value, strlen(value));
185 const char*
get(uint8_t index, uint8_t& len)
const;
186 mutable uint8_t mCount{0};
197 using Record::Record;
213 using Record::Record;
221 Name getHost()
const;
A class to make it easier to handle and pass around IP addresses.
Definition: IpAddress.h:43
Resource Record with no specific type.
Definition: Resource.h:50
const char * c_str() const
Get a constant (un-modifiable) pointer to String content.
Definition: WString.h:641
uint8_t addr[16]
Definition: Resource.h:17
TXT & operator+=(const char *value)
Definition: Resource.h:172
void add(const String &value)
Definition: Resource.h:167
TXT & operator+=(const String &value)
Definition: Resource.h:178
Record(const Answer &answer)
Definition: Resource.h:53
#define MDNS_RESOURCE_TYPE_MAP(XX)
MDNS resource type identifiers.
Definition: Resource.h:25
'A' record containing IP4 address
Definition: Resource.h:69
void init()
Definition: Resource.h:161
The String class.
Definition: WString.h:136
'TXT' record containing attribute list
Definition: Resource.h:125
A single mDNS Answer.
Definition: Answer.h:25
bool getValue(const TSource &source, TDest &dest)
Copies a Json data value to a variable, but only if it exists.
Definition: ArduinoJson.h:80
'SRV' Service Locator record
Definition: Resource.h:208
String getValue(const String &name) const
Definition: Resource.h:155
String operator[](const String &name) const
Definition: Resource.h:141
String operator[](const char *name) const
Definition: Resource.h:136
Answer & answer
Definition: Resource.h:59
size_t length(void) const
Obtain the String length in characters, excluding NUL terminator.
Definition: WString.h:237
String getValue(const char *name) const
Definition: Resource.h:150
'PTR' record containing pointer to a canonical name
Definition: Resource.h:90
'AAAA' record containing 128-bit IPv6 address
Definition: Resource.h:192
String toString() const
Definition: Resource.h:78
XX(name, extensionStart, mime)
Type
Definition: Resource.h:41
String toString(mDNS::ResourceType type)
String toString() const
Definition: Resource.h:99
Definition: Resource.h:16
'HINFO' record containing Host information
Definition: Resource.h:111
Encoded DNS name.
Definition: Name.h:37