Webserver+3d print
mdns_responder.h File Reference
mDNS responder (Multicast DNS) More...
Go to the source code of this file.
Data Structures | |
struct | MdnsResponderSettings |
mDNS responder settings More... | |
struct | _MdnsResponderContext |
mDNS responder context More... | |
Typedefs | |
typedef void(* | MdnsResponderStateChangeCallback )(MdnsResponderContext *context, NetInterface *interface, MdnsState state) |
FSM state change callback. | |
Enumerations | |
enum | MdnsState |
mDNS responder states More... | |
Functions | |
void | mdnsResponderGetDefaultSettings (MdnsResponderSettings *settings) |
Initialize settings with default values. | |
error_t | mdnsResponderInit (MdnsResponderContext *context, const MdnsResponderSettings *settings) |
mDNS responder initialization | |
error_t | mdnsResponderStart (MdnsResponderContext *context) |
Start mDNS responder. | |
error_t | mdnsResponderStop (MdnsResponderContext *context) |
Stop mDNS responder. | |
MdnsState | mdnsResponderGetState (MdnsResponderContext *context) |
Retrieve current state. | |
error_t | mdnsResponderSetHostname (MdnsResponderContext *context, const char_t *hostname) |
Set hostname. | |
error_t | mdnsResponderSetIpv4ReverseName (MdnsResponderContext *context) |
Generate domain name for reverse DNS lookup (IPv4) | |
error_t | mdnsResponderSetIpv6ReverseName (MdnsResponderContext *context) |
Generate domain name for reverse DNS lookup (IPv6) | |
error_t | mdnsResponderStartProbing (MdnsResponderContext *context) |
Restart probing process. | |
void | mdnsResponderTick (MdnsResponderContext *context) |
mDNS responder timer handler | |
void | mdnsResponderLinkChangeEvent (MdnsResponderContext *context) |
Callback function for link change event. | |
void | mdnsResponderChangeState (MdnsResponderContext *context, MdnsState newState, systime_t delay) |
Update FSM state. | |
void | mdnsResponderChangeHostname (MdnsResponderContext *context) |
Programmatically change the host name. | |
error_t | mdnsResponderSendProbe (MdnsResponderContext *context) |
Send probe packet. | |
error_t | mdnsResponderSendAnnouncement (MdnsResponderContext *context) |
Send announcement packet. | |
error_t | mdnsResponderSendGoodbye (MdnsResponderContext *context) |
Send goodbye packet. | |
void | mdnsResponderProcessQuery (NetInterface *interface, MdnsMessage *query) |
Process mDNS query message. | |
error_t | mdnsResponderParseQuestion (NetInterface *interface, const MdnsMessage *query, size_t offset, const DnsQuestion *question, MdnsMessage *response) |
Parse a question. | |
void | mdnsResponderParseKnownAnRecord (NetInterface *interface, const MdnsMessage *query, size_t queryOffset, const DnsResourceRecord *queryRecord, MdnsMessage *response) |
Parse a resource record from the Known-Answer Section. | |
void | mdnsResponderParseNsRecord (NetInterface *interface, const MdnsMessage *query, size_t offset, const DnsResourceRecord *record) |
Parse a resource record from the Authority Section. | |
void | mdnsResponderParseAnRecord (NetInterface *interface, const MdnsMessage *response, size_t offset, const DnsResourceRecord *record) |
Parse a resource record from the Answer Section. | |
void | mdnsResponderGenerateAdditionalRecords (NetInterface *interface, MdnsMessage *response, bool_t legacyUnicast) |
Additional record generation. | |
error_t | mdnsResponderAddIpv4AddrRecord (NetInterface *interface, MdnsMessage *message, bool_t cacheFlush, uint32_t ttl) |
Add A record to a mDNS message. | |
error_t | mdnsResponderAddIpv6AddrRecord (NetInterface *interface, MdnsMessage *message, bool_t cacheFlush, uint32_t ttl) |
Add AAAA record to a mDNS message. | |
error_t | mdnsResponderAddIpv4ReversePtrRecord (NetInterface *interface, MdnsMessage *message, bool_t cacheFlush, uint32_t ttl) |
Add reverse address mapping PTR record (IPv4) | |
error_t | mdnsResponderAddIpv6ReversePtrRecord (NetInterface *interface, MdnsMessage *message, bool_t cacheFlush, uint32_t ttl) |
Add reverse address mapping PTR record (IPv6) | |
error_t | mdnsResponderAddNsecRecord (NetInterface *interface, MdnsMessage *message, bool_t cacheFlush, uint32_t ttl) |
Add NSEC record to a mDNS message. |
Detailed Description
mDNS responder (Multicast DNS)
License
Copyright (C) 2010-2017 Oryx Embedded SARL. All rights reserved.
This file is part of CycloneTCP Open.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- Version:
- 1.7.6
Definition in file mdns_responder.h.
Typedef Documentation
typedef void(* MdnsResponderStateChangeCallback)(MdnsResponderContext *context, NetInterface *interface, MdnsState state) |
FSM state change callback.
Definition at line 138 of file mdns_responder.h.
Enumeration Type Documentation
enum MdnsState |
mDNS responder states
Definition at line 124 of file mdns_responder.h.
Function Documentation
error_t mdnsResponderAddIpv4AddrRecord | ( | NetInterface * | interface, |
MdnsMessage * | message, | ||
bool_t | cacheFlush, | ||
uint32_t | ttl | ||
) |
Add A record to a mDNS message.
- Parameters:
-
[in] interface Underlying network interface [in,out] message Pointer to the mDNS message [in] cacheFlush Cache-flush bit [in] ttl Resource record TTL (cache lifetime)
- Returns:
- Error code
Definition at line 1884 of file mdns_responder.c.
error_t mdnsResponderAddIpv4ReversePtrRecord | ( | NetInterface * | interface, |
MdnsMessage * | message, | ||
bool_t | cacheFlush, | ||
uint32_t | ttl | ||
) |
Add reverse address mapping PTR record (IPv4)
- Parameters:
-
[in] interface Underlying network interface [in,out] message Pointer to the mDNS message [in] cacheFlush Cache-flush bit [in] ttl Resource record TTL (cache lifetime)
- Returns:
- Error code
Definition at line 2052 of file mdns_responder.c.
error_t mdnsResponderAddIpv6AddrRecord | ( | NetInterface * | interface, |
MdnsMessage * | message, | ||
bool_t | cacheFlush, | ||
uint32_t | ttl | ||
) |
Add AAAA record to a mDNS message.
- Parameters:
-
[in] interface Underlying network interface [in,out] message Pointer to the mDNS message [in] cacheFlush Cache-flush bit [in] ttl Resource record TTL (cache lifetime)
- Returns:
- Error code
Definition at line 1968 of file mdns_responder.c.
error_t mdnsResponderAddIpv6ReversePtrRecord | ( | NetInterface * | interface, |
MdnsMessage * | message, | ||
bool_t | cacheFlush, | ||
uint32_t | ttl | ||
) |
Add reverse address mapping PTR record (IPv6)
- Parameters:
-
[in] interface Underlying network interface [in,out] message Pointer to the mDNS message [in] cacheFlush Cache-flush bit [in] ttl Resource record TTL (cache lifetime)
- Returns:
- Error code
Definition at line 2148 of file mdns_responder.c.
error_t mdnsResponderAddNsecRecord | ( | NetInterface * | interface, |
MdnsMessage * | message, | ||
bool_t | cacheFlush, | ||
uint32_t | ttl | ||
) |
Add NSEC record to a mDNS message.
- Parameters:
-
[in] interface Underlying network interface [in,out] message Pointer to the mDNS message [in] cacheFlush Cache-flush bit [in] ttl Resource record TTL (cache lifetime)
- Returns:
- Error code
Definition at line 2244 of file mdns_responder.c.
void mdnsResponderChangeHostname | ( | MdnsResponderContext * | context ) |
Programmatically change the host name.
- Parameters:
-
[in] context Pointer to the mDNS responder context
Definition at line 713 of file mdns_responder.c.
void mdnsResponderChangeState | ( | MdnsResponderContext * | context, |
MdnsState | newState, | ||
systime_t | delay | ||
) |
Update FSM state.
- Parameters:
-
[in] context Pointer to the mDNS responder context [in] newState New state to switch to [in] delay Initial delay
Definition at line 678 of file mdns_responder.c.
void mdnsResponderGenerateAdditionalRecords | ( | NetInterface * | interface, |
MdnsMessage * | response, | ||
bool_t | legacyUnicast | ||
) |
Additional record generation.
- Parameters:
-
[in] interface Underlying network interface [in,out] response mDNS response message [in] legacyUnicast This flag is set for legacy unicast responses
Definition at line 1713 of file mdns_responder.c.
void mdnsResponderGetDefaultSettings | ( | MdnsResponderSettings * | settings ) |
Initialize settings with default values.
- Parameters:
-
[out] settings Structure that contains mDNS responder settings
Definition at line 55 of file mdns_responder.c.
MdnsState mdnsResponderGetState | ( | MdnsResponderContext * | context ) |
Retrieve current state.
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Current mDNS responder state
Definition at line 181 of file mdns_responder.c.
error_t mdnsResponderInit | ( | MdnsResponderContext * | context, |
const MdnsResponderSettings * | settings | ||
) |
mDNS responder initialization
- Parameters:
-
[in] context Pointer to the mDNS responder context [in] settings mDNS responder specific settings
- Returns:
- Error code
Definition at line 76 of file mdns_responder.c.
void mdnsResponderLinkChangeEvent | ( | MdnsResponderContext * | context ) |
Callback function for link change event.
- Parameters:
-
[in] context Pointer to the mDNS responder context
Definition at line 649 of file mdns_responder.c.
void mdnsResponderParseAnRecord | ( | NetInterface * | interface, |
const MdnsMessage * | response, | ||
size_t | offset, | ||
const DnsResourceRecord * | record | ||
) |
Parse a resource record from the Answer Section.
- Parameters:
-
[in] interface Underlying network interface [in] response Incoming mDNS response message [in] offset Offset to first byte of the resource record to be checked [in] record Pointer to the resource record
Definition at line 1615 of file mdns_responder.c.
void mdnsResponderParseKnownAnRecord | ( | NetInterface * | interface, |
const MdnsMessage * | query, | ||
size_t | queryOffset, | ||
const DnsResourceRecord * | queryRecord, | ||
MdnsMessage * | response | ||
) |
Parse a resource record from the Known-Answer Section.
- Parameters:
-
[in] interface Underlying network interface [in] query Incoming mDNS query message [in] queryOffset Offset to first byte of the resource record [in] queryRecord Pointer to the resource record [in,out] response mDNS response message
Definition at line 1428 of file mdns_responder.c.
void mdnsResponderParseNsRecord | ( | NetInterface * | interface, |
const MdnsMessage * | query, | ||
size_t | offset, | ||
const DnsResourceRecord * | record | ||
) |
Parse a resource record from the Authority Section.
- Parameters:
-
[in] interface Underlying network interface [in] query Incoming mDNS query message [in] offset Offset to first byte of the resource record [in] record Pointer to the resource record
Definition at line 1511 of file mdns_responder.c.
error_t mdnsResponderParseQuestion | ( | NetInterface * | interface, |
const MdnsMessage * | query, | ||
size_t | offset, | ||
const DnsQuestion * | question, | ||
MdnsMessage * | response | ||
) |
Parse a question.
- Parameters:
-
[in] interface Underlying network interface [in] query Incoming mDNS query message [in] offset Offset to first byte of the question [in] question Pointer to the question [in,out] response mDNS response message
- Returns:
- Error code
Definition at line 1261 of file mdns_responder.c.
void mdnsResponderProcessQuery | ( | NetInterface * | interface, |
MdnsMessage * | query | ||
) |
Process mDNS query message.
- Parameters:
-
[in] interface Underlying network interface [in] query Incoming mDNS query message
Definition at line 976 of file mdns_responder.c.
error_t mdnsResponderSendAnnouncement | ( | MdnsResponderContext * | context ) |
Send announcement packet.
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 848 of file mdns_responder.c.
error_t mdnsResponderSendGoodbye | ( | MdnsResponderContext * | context ) |
Send goodbye packet.
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 914 of file mdns_responder.c.
error_t mdnsResponderSendProbe | ( | MdnsResponderContext * | context ) |
Send probe packet.
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 773 of file mdns_responder.c.
error_t mdnsResponderSetHostname | ( | MdnsResponderContext * | context, |
const char_t * | hostname | ||
) |
Set hostname.
- Parameters:
-
[in] context Pointer to the mDNS responder context [in] hostname NULL-terminated string that contains the hostname
- Returns:
- Error code
Definition at line 204 of file mdns_responder.c.
error_t mdnsResponderSetIpv4ReverseName | ( | MdnsResponderContext * | context ) |
Generate domain name for reverse DNS lookup (IPv4)
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 256 of file mdns_responder.c.
error_t mdnsResponderSetIpv6ReverseName | ( | MdnsResponderContext * | context ) |
Generate domain name for reverse DNS lookup (IPv6)
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 297 of file mdns_responder.c.
error_t mdnsResponderStart | ( | MdnsResponderContext * | context ) |
Start mDNS responder.
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 119 of file mdns_responder.c.
error_t mdnsResponderStartProbing | ( | MdnsResponderContext * | context ) |
Restart probing process.
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 356 of file mdns_responder.c.
error_t mdnsResponderStop | ( | MdnsResponderContext * | context ) |
Stop mDNS responder.
- Parameters:
-
[in] context Pointer to the mDNS responder context
- Returns:
- Error code
Definition at line 150 of file mdns_responder.c.
void mdnsResponderTick | ( | MdnsResponderContext * | context ) |
mDNS responder timer handler
This routine must be periodically called by the TCP/IP stack to manage mDNS operation
- Parameters:
-
[in] context Pointer to the mDNS responder context
Definition at line 383 of file mdns_responder.c.
Generated on Tue Jul 12 2022 17:10:20 by
