31#ifndef _MDNS_RESPONDER_MISC_H
32#define _MDNS_RESPONDER_MISC_H
45void mdnsResponderChangeState(MdnsResponderContext *context,
48void mdnsResponderChangeHostname(MdnsResponderContext *context);
50error_t mdnsResponderSendProbe(MdnsResponderContext *context);
51error_t mdnsResponderSendAnnouncement(MdnsResponderContext *context);
52error_t mdnsResponderSendGoodbye(MdnsResponderContext *context);
54void mdnsResponderProcessQuery(NetInterface *interface,
MdnsMessage *query);
56error_t mdnsResponderParseQuestion(NetInterface *interface,
57 const MdnsMessage *query,
size_t offset,
const DnsQuestion *question,
60void mdnsResponderParseKnownAnRecord(NetInterface *interface,
62 const DnsResourceRecord *queryRecord,
MdnsMessage *response);
64void mdnsResponderParseAnRecord(NetInterface *interface,
65 const MdnsMessage *response,
size_t offset,
const DnsResourceRecord *record);
67void mdnsResponderParseNsRecords(MdnsResponderContext *context,
70void mdnsResponderGenerateAdditionalRecords(MdnsResponderContext *context,
73error_t mdnsResponderGenerateIpv4AddrRecords(MdnsResponderContext *context,
74 MdnsMessage *message, bool_t cacheFlush, uint32_t ttl);
76error_t mdnsResponderGenerateIpv6AddrRecords(MdnsResponderContext *context,
77 MdnsMessage *message, bool_t cacheFlush, uint32_t ttl);
79error_t mdnsResponderGenerateIpv4PtrRecords(MdnsResponderContext *context,
80 MdnsMessage *message, bool_t cacheFlush, uint32_t ttl);
82error_t mdnsResponderGenerateIpv6PtrRecords(MdnsResponderContext *context,
83 MdnsMessage *message, bool_t cacheFlush, uint32_t ttl);
85error_t mdnsResponderFormatIpv4AddrRecord(MdnsResponderContext *context,
86 MdnsMessage *message,
const uint8_t *ipv4Addr, bool_t cacheFlush,
89error_t mdnsResponderFormatIpv6AddrRecord(MdnsResponderContext *context,
90 MdnsMessage *message,
const uint8_t *ipv6Addr, bool_t cacheFlush,
93error_t mdnsResponderFormatIpv4PtrRecord(MdnsResponderContext *context,
94 MdnsMessage *message,
const char_t *reverseName, bool_t cacheFlush,
97error_t mdnsResponderFormatIpv6PtrRecord(MdnsResponderContext *context,
98 MdnsMessage *message,
const char_t *reverseName, bool_t cacheFlush,
101error_t mdnsResponderFormatNsecRecord(MdnsResponderContext *context,
102 MdnsMessage *message, bool_t cacheFlush, uint32_t ttl);
104DnsResourceRecord *mdnsResponderGetNextHostRecord(MdnsResponderContext *context,
105 DnsResourceRecord *record);
107DnsResourceRecord *mdnsResponderGetNextTiebreakerRecord(MdnsResponderContext *context,
108 const MdnsMessage *query,
size_t offset, DnsResourceRecord *record);
error_t
Error codes.
Definition error.h:43
mDNS client (Multicast DNS)
MdnsState
mDNS responder states
Definition mdns_responder.h:139
uint32_t systime_t
System time.
Definition os_port_none.h:90
mDNS message
Definition mdns_common.h:78