DNS-SD-Server

Dieses Modul enthält APIs für den DNS-SD-Server.

Zusammenfassung

Aufzählungen

otDnssdQueryType{
  OT_DNSSD_QUERY_TYPE_NONE = 0,
  OT_DNSSD_QUERY_TYPE_BROWSE = 1,
  OT_DNSSD_QUERY_TYPE_RESOLVE = 2,
  OT_DNSSD_QUERY_TYPE_RESOLVE_HOST = 3
}
enum
Gibt einen DNS-SD-Abfragetyp an.

Typedefs

otDnssdCounters typedef
Enthält die Zähler des DNS-SD-Servers.
otDnssdHostInfo typedef
Stellt Informationen zu einem erkannten Host für eine DNS-SD-Abfrage dar.
otDnssdQuery typedef
void
Dieser intransparente Typ steht für eine DNS-SD-Abfrage.
otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
Wird aufgerufen, wenn mit einer DNS-SD-Abfrage eines der folgenden Elemente abonniert wird:
otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName) typedef
void(*
Wird aufgerufen, wenn eine DNS-SD-Abfrage eine der folgenden Aktionen beendet:
otDnssdServiceInstanceInfo typedef
Stellt Informationen zu einer erkannten Dienstinstanz für eine DNS-SD-Abfrage dar.

Funktionen

otDnssdGetCounters(otInstance *aInstance)
const otDnssdCounters *
Gibt die Zähler des DNS-SD-Servers zurück.
otDnssdGetNextQuery(otInstance *aInstance, const otDnssdQuery *aQuery)
const otDnssdQuery *
Bezieht die nächste Abfrage im DNS-SD-Server.
otDnssdGetQueryTypeAndName(const otDnssdQuery *aQuery, char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE])
Bezieht den DNS-SD-Abfragetyp und den Namen für eine bestimmte Abfrage.
otDnssdQueryHandleDiscoveredHost(otInstance *aInstance, const char *aHostFullName, otDnssdHostInfo *aHostInfo)
void
Benachrichtigt einen erkannten Host.
otDnssdQueryHandleDiscoveredServiceInstance(otInstance *aInstance, const char *aServiceFullName, otDnssdServiceInstanceInfo *aInstanceInfo)
void
Benachrichtigt eine erkannte Dienstinstanz.
otDnssdQuerySetCallbacks(otInstance *aInstance, otDnssdQuerySubscribeCallback aSubscribe, otDnssdQueryUnsubscribeCallback aUnsubscribe, void *aContext)
void
Legt Rückrufe für DNS-SD-Serverabfragen fest.
otDnssdUpstreamQueryIsEnabled(otInstance *aInstance)
bool
Gibt zurück, ob der DNSSD-Server DNS-Abfragen an die DNS Upstream API der Plattform weiterleitet.
otDnssdUpstreamQuerySetEnabled(otInstance *aInstance, bool aEnabled)
void
Weiterleitung von DNS-Abfragen an die DNS Upstream API der Plattform aktivieren oder deaktivieren.

Strukturen

otDnssdCounters

Enthält die Zähler des DNS-SD-Servers.

otDnssdHostInfo

Stellt Informationen zu einem erkannten Host für eine DNS-SD-Abfrage dar.

otDnssdServiceInstanceInfo

Stellt Informationen zu einer erkannten Dienstinstanz für eine DNS-SD-Abfrage dar.

Aufzählungen

otDnssdQueryType

 otDnssdQueryType

Gibt einen DNS-SD-Abfragetyp an.

Attribute
OT_DNSSD_QUERY_TYPE_BROWSE

Diensttyp „Browserdienst“.

OT_DNSSD_QUERY_TYPE_NONE

Diensttyp nicht angegeben.

OT_DNSSD_QUERY_TYPE_RESOLVE

Dienstinstanz zur Auflösung des Diensttyps.

OT_DNSSD_QUERY_TYPE_RESOLVE_HOST

Hostname für Diensttypauflösung.

Typedefs

otDnssdCounters

struct otDnssdCounters otDnssdCounters

Enthält die Zähler des DNS-SD-Servers.

otDnssdHostInfo

struct otDnssdHostInfo otDnssdHostInfo

Stellt Informationen zu einem erkannten Host für eine DNS-SD-Abfrage dar.

otDnssdQuery

void otDnssdQuery

Dieser intransparente Typ steht für eine DNS-SD-Abfrage.

otDnssdQuerySubscribeCallback

void(* otDnssdQuerySubscribeCallback)(void *aContext, const char *aFullName)

Wird aufgerufen, wenn mit einer DNS-SD-Abfrage eines der folgenden Elemente abonniert wird:

  1. einen Dienstnamen.
  2. Namen einer Dienstinstanz.
  3. Hostnamen.

Die DNS-SD-Abfrageimplementierung ist dafür verantwortlich, zu identifizieren, was aFullName ist. Wenn aFullName ein Dienstname oder ein Dienstinstanzname ist, sollte die DNS-SD-Abfrageimplementierung die entsprechenden Dienstinstanzinformationen erkennen und den DNS-SD-Server mithilfe von otDnssdQueryHandleDiscoveredServiceInstance benachrichtigen. Wenn aFullName ein Hostname ist, sollte die Implementierung der DNS-SD-Abfrage die Hostinformationen erkennen und den DNS-SD-Server mithilfe von otDnssdQueryHandleDiscoveredHost benachrichtigen.

Details
Parameter
[in] aContext
Ein Zeiger auf den anwendungsspezifischen Kontext.
[in] aFullName
Der mit Null beendete vollständige Dienstname (z.B. "_ipps._tcp.default.service.arpa.") oder der Name der vollständigen Dienstinstanz (z.B. "OpenThread._ipps._tcp.default.service.arpa.") oder der vollständige Hostname (z.B. "ot-host.default.service.arpa.").
Siehe auch:
otDnssdQueryHandleDiscoveredServiceInstance
otDnssdQueryHandleDiscoveredHost

otDnssdQueryUnsubscribeCallback

void(* otDnssdQueryUnsubscribeCallback)(void *aContext, const char *aFullName)

Wird aufgerufen, wenn eine DNS-SD-Abfrage eine der folgenden Aktionen beendet:

  1. einen Dienstnamen.
  2. Namen einer Dienstinstanz.
  3. Hostnamen.

Die DNS-SD-Abfrageimplementierung ist dafür verantwortlich, zu identifizieren, was aFullName ist.

Details
Parameter
[in] aContext
Ein Zeiger auf den anwendungsspezifischen Kontext.
[in] aFullName
Der mit Null beendete vollständige Dienstname (z.B. "_ipps._tcp.default.service.arpa.") oder der Name der vollständigen Dienstinstanz (z.B. "OpenThread._ipps._tcp.default.service.arpa.").

otDnssdServiceInstanceInfo

struct otDnssdServiceInstanceInfo otDnssdServiceInstanceInfo

Stellt Informationen zu einer erkannten Dienstinstanz für eine DNS-SD-Abfrage dar.

Funktionen

otDnssdGetCounters

const otDnssdCounters * otDnssdGetCounters(
  otInstance *aInstance
)

Gibt die Zähler des DNS-SD-Servers zurück.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
Rückgabe
Ein Zeiger auf die Zähler des DNS-SD-Servers.

otDnssdGetNextQuery

const otDnssdQuery * otDnssdGetNextQuery(
  otInstance *aInstance,
  const otDnssdQuery *aQuery
)

Bezieht die nächste Abfrage im DNS-SD-Server.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aQuery
Der Abfragezeiger. Übergeben Sie NULL, um die erste Abfrage abzurufen.
Rückgabe
Ein Zeiger auf die Abfrage oder NULL, wenn keine weiteren Abfragen vorhanden sind.

otDnssdGetQueryTypeAndName

otDnssdQueryType otDnssdGetQueryTypeAndName(
  const otDnssdQuery *aQuery,
  char(*) aNameOutput[OT_DNS_MAX_NAME_SIZE]
)

Bezieht den DNS-SD-Abfragetyp und den Namen für eine bestimmte Abfrage.

Details
Parameter
[in] aQuery
Der von otDnssdGetNextQuery erhaltene Abfragezeiger.
[out] aNameOutput
Der Name-Ausgabepuffer, der OT_DNS_MAX_NAME_SIZE Byte lang sein sollte.
Rückgabe
Der DNS-SD-Abfragetyp.

otDnssdQueryHandleDiscoveredHost

void otDnssdQueryHandleDiscoveredHost(
  otInstance *aInstance,
  const char *aHostFullName,
  otDnssdHostInfo *aHostInfo
)

Benachrichtigt einen erkannten Host.

Der externe Abfrage-Resolver (z.B. Discovery Proxy) sollte diese Funktion aufrufen, um den OpenThread-Kern der abonnierten Hosts zu benachrichtigen.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aHostFullName
Der mit Null beendete vollständige Hostname.
[in] aHostInfo
Ein Zeiger auf die erkannten Dienstinstanzinformationen.

otDnssdQueryHandleDiscoveredServiceInstance

void otDnssdQueryHandleDiscoveredServiceInstance(
  otInstance *aInstance,
  const char *aServiceFullName,
  otDnssdServiceInstanceInfo *aInstanceInfo
)

Benachrichtigt eine erkannte Dienstinstanz.

Der externe Abfrage-Resolver (z.B. Discovery Proxy) sollte diese Funktion aufrufen, um den OpenThread-Kern über die abonnierten Dienste oder Dienstinstanzen zu benachrichtigen.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aServiceFullName
Der mit Null beendete vollständige Dienstname.
[in] aInstanceInfo
Ein Zeiger auf die erkannten Dienstinstanzinformationen.

otDnssdQuerySetCallbacks

void otDnssdQuerySetCallbacks(
  otInstance *aInstance,
  otDnssdQuerySubscribeCallback aSubscribe,
  otDnssdQueryUnsubscribeCallback aUnsubscribe,
  void *aContext
)

Legt Rückrufe für DNS-SD-Serverabfragen fest.

Der DNS-SD-Server ruft aSubscribe auf, um einen Dienst oder eine Dienstinstanz zu abonnieren, um eine DNS-SD-Abfrage aufzulösen, und aUnsubscribe, um das Abo zu beenden, wenn die Abfrage aufgelöst wird oder eine Zeitüberschreitung auftritt.

Details
Parameter
[in] aInstance
Die OpenThread-Instanzstruktur.
[in] aSubscribe
Ein Zeiger auf die Callback-Funktion, mit der ein Dienst oder eine Dienstinstanz abonniert werden kann.
[in] aUnsubscribe
Ein Zeiger auf die Callback-Funktion, mit der das Abo für einen Dienst oder eine Dienstinstanz beendet wird.
[in] aContext
Ein Zeiger auf den anwendungsspezifischen Kontext.

otDnssdUpstreamQueryIsEnabled

bool otDnssdUpstreamQueryIsEnabled(
  otInstance *aInstance
)

Gibt zurück, ob der DNSSD-Server DNS-Abfragen an die DNS Upstream API der Plattform weiterleitet.

Verfügbar, wenn OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE aktiviert ist.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
Rückgabewerte
TRUE
Ob der DNSSD-Server DNS-Abfragen weiterleitet.
FALSE
Wenn der DNSSD-Server keine DNS-Abfragen weiterleitet.
Weitere Informationen:
otDnssdUpstreamQuerySetEnabled

otDnssdUpstreamQuerySetEnabled

void otDnssdUpstreamQuerySetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Weiterleitung von DNS-Abfragen an die DNS Upstream API der Plattform aktivieren oder deaktivieren.

Verfügbar, wenn OPENTHREAD_CONFIG_DNS_UPSTREAM_QUERY_ENABLE aktiviert ist.

Details
Parameter
[in] aInstance
Ein Zeiger auf eine OpenThread-Instanz.
[in] aEnabled
Ein boolescher Wert zum Aktivieren/Deaktivieren der Weiterleitung von DNS-Abfragen an Upstream.
Weitere Informationen:
otPlatDnsStartUpstreamQuery
otPlatDnsCancelUpstreamQuery
otPlatDnsUpstreamQueryDone

Ressourcen

OpenThread API-Referenzthemen stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen finden Sie unter Ressourcen. Dort können Sie auch einen Beitrag zu unserer Dokumentation leisten.