nl::Inet::AsyncDNSResolverSockets

#include <src/inet/AsyncDNSResolverSockets.h>

Jest to klasa wewnętrzna usługi InetLayer, która udostępnia pomocnicze interfejsy API do rozpoznawania asynchronicznego systemu nazw domenowych (DNS) w InetLayer.

Podsumowanie

Brak dostępnego publicznie interfejsu dla warstwy aplikacji.

Funkcje publiczne

Cancel(DNSResolver & resolver)
Anuluj zaległe zapytanie DNS, które może być nadal aktywne.
EnqueueRequest(DNSResolver & resolver)
Umieść obiekt DNSResolver w kolejce na potrzeby asynchronicznego rozpoznawania adresów IP o określonej nazwie hosta.
Init(InetLayer *inet)
Jawny inicjator klasy AsynchronousDNS resolverSockets.
PrepareDNSResolver(DNSResolver & resolver, const char *hostName, uint16_t hostNameLen, uint8_t options, uint8_t maxAddrs, IPAddress *addrArray, DNSResolver::OnResolveCompleteFunct onComplete, void *appState)
Ta metoda przygotowuje obiekt DNSResolver przed rozpoczęciem rozpoznawania asynchronicznego.
Shutdown(void)
Jest to jawny de inicjator klasy AsyncDNSResolverSockets. Zajmuje się wyłączaniem wątków oraz niszczeniem zmiennych mutex i semaphore.

Funkcje publiczne

Anuluj

INET_ERROR Cancel(
  DNSResolver & resolver
)

Anuluj zaległe zapytanie DNS, które może być nadal aktywne.

Szczegóły
Parametry
[in] resolver
Odwołanie do obiektu DNSResolver.

EnqueueRequest

INET_ERROR EnqueueRequest(
  DNSResolver & resolver
)

Umieść obiekt DNSResolver w kolejce na potrzeby asynchronicznego rozpoznawania adresów IP o określonej nazwie hosta.

Szczegóły
Parametry
[in] resolver
Odwołanie do obiektu DNSResolver.
Zwracane wartości
INET_NO_ERROR
po dodaniu żądania DNS do kolejki.
INET_ERROR_NO_MEMORY
jeśli pula resolvera warstwy Inet jest pełna.
other
odpowiedni błąd sieci lub systemu operacyjnego POSIX.

Init

INET_ERROR Init(
  InetLayer *inet
)

Jawny inicjator klasy AsynchronousDNS resolverSockets.

Spowoduje to zainicjowanie zmiennych mutex i semafor oraz utworzenie wątków do obsługi asynchronicznego rozpoznawania nazw DNS.

Szczegóły
Parametry
[in] aInet
Wskaźnik do obiektu InetLayer.
Zwracane wartości
INET_NO_ERROR
.
other
odpowiedni błąd sieci lub systemu operacyjnego POSIX.

PrepareDNSResolver

INET_ERROR PrepareDNSResolver(
  DNSResolver & resolver,
  const char *hostName,
  uint16_t hostNameLen,
  uint8_t options,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolver::OnResolveCompleteFunct onComplete,
  void *appState
)

Ta metoda przygotowuje obiekt DNSResolver przed rozpoczęciem rozpoznawania asynchronicznego.

Szczegóły
Parametry
[in] resolver
Odwołanie do przydzielonego obiektu DNSResolver.
[in] hostName
Wskaźnik do ciągu C reprezentującego nazwę hosta, którego ma dotyczyć zapytanie.
[in] hostNameLen
Długość ciągu znaków w nazwie hosta.
[in] options
Wartość całkowita określająca sposób rozpoznawania adresu nazwy hosta. Wartości pochodzą z wyliczenia #DNSOptions.
[in] maxAddrs
Maksymalna liczba adresów do przechowywania w tabeli DNS.
[in] addrArray
Wskaźnik do tabeli DNS.
[in] onComplete
Wskaźnik do funkcji wywołania zwrotnego po zakończeniu żądania DNS.
[in] appState
Wskaźnik do stanu aplikacji, który ma zostać przekazany do onComplete po zakończeniu żądania DNS.
Zwracane wartości
INET_NO_ERROR
po pomyślnym przetworzeniu żądania DNS.

Wyłączono

INET_ERROR Shutdown(
  void
)

Jest to jawny de inicjator klasy AsyncDNSResolverSockets. Zajmuje się wyłączaniem wątków oraz niszczeniem zmiennych mutex i semaphore.

Szczegóły
Zwracane wartości
INET_NO_ERROR
jeśli wyłączenie się powiedzie.
other
odpowiedni błąd sieci lub systemu operacyjnego POSIX.