nl::Inet::AsyncDNSSolutionrSockets

#include <src/inet/AsyncDNSResolverSockets.h>

Bu, InetLayer'da Eşzamansız Alan Adı Sistemi (DNS) çözümü için yardımcı API'ler sunan InetLayer dahili bir sınıfıdır.

Özet

Uygulama katmanı için herkese açık bir arayüz yok.

Herkese açık işlevler

Cancel(DNSResolver & resolver)
Hâlâ etkin olabilecek bekleyen bir DNS sorgusunu iptal edin.
EnqueueRequest(DNSResolver & resolver)
Belirtilen ana makine adının eşzamansız IP adresi çözünürlüğü için bir DNSSolutionr nesnesi sıraya alın.
Init(InetLayer *inet)
AsyncDNSSolutionrSockets sınıfı için açık başlatıcı.
PrepareDNSResolver(DNSResolver & resolver, const char *hostName, uint16_t hostNameLen, uint8_t options, uint8_t maxAddrs, IPAddress *addrArray, DNSResolver::OnResolveCompleteFunct onComplete, void *appState)
Bu yöntem, eşzamansız çözümden önce DNSSolutionr nesnesi hazırlar.
Shutdown(void)
Bu, AsyncDNSSolutionrSockets sınıfının açık bir göstergesidir. İleti dizilerini kapatıp mikrofonun ve semaphore değişkenlerinin yok edilmesini sağlar.

Herkese açık işlevler

İptal

INET_ERROR Cancel(
  DNSResolver & resolver
)

Hâlâ etkin olabilecek bekleyen bir DNS sorgusunu iptal edin.

Ayrıntılar
Parametreler
[in] resolver
DNSSolutionr nesnesine referans.

Giriş İsteği

INET_ERROR EnqueueRequest(
  DNSResolver & resolver
)

Belirtilen ana makine adının eşzamansız IP adresi çözünürlüğü için bir DNSSolutionr nesnesi sıraya alın.

Ayrıntılar
Parametreler
[in] resolver
DNSSolutionr nesnesine referans.
Döndürülen Değerler
INET_NO_ERROR
DNS isteği başarıyla sıraya alınmışsa.
INET_ERROR_NO_MEMORY
Inet katman çözücü havuzu doluysa.
other
uygun POSIX ağı veya işletim sistemi hatası.

Başlangıç

INET_ERROR Init(
  InetLayer *inet
)

AsyncDNSSolutionrSockets sınıfı için açık başlatıcı.

Bu, sessiz ve semahore değişkenlerini başlatır ve eşzamansız DNS çözümlemesini işlemek için mesaj dizilerini oluşturur.

Ayrıntılar
Parametreler
[in] aInet
InetLayer nesnesine ait bir işaretçi.
Döndürülen Değerler
INET_NO_ERROR
özelliğini kullanmanız gerekir.
other
uygun POSIX ağı veya işletim sistemi hatası.

DNSDNSÇözücü

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

Bu yöntem, eşzamansız çözümden önce DNSSolutionr nesnesi hazırlar.

Ayrıntılar
Parametreler
[in] resolver
Ayrılmış DNSSolutionr nesnesine referans.
[in] hostName
Sorgulanacak ana bilgisayar adını temsil eden bir C dizesine işaretçi.
[in] hostNameLen
Ana makine adının dize uzunluğu.
[in] options
Ana makine adı adres çözümlemesinin nasıl gerçekleştirileceğini kontrol eden bir tam sayı değeri. Değerler #DNSOptions numaralandırmasından alınmıştır.
[in] maxAddrs
DNS tablosunda depolanacak maksimum adres sayısı.
[in] addrArray
DNS tablosuna işaretçi.
[in] onComplete
Bir DNS isteği tamamlandığında geri çağırma işlevinin işaretçisi.
[in] appState
Bir DNS isteği tamamlandığında uygulama durumunun onComplete'e iletileceği uygulama durumunun işaretçisi.
Döndürülen Değerler
INET_NO_ERROR
DNS isteği başarıyla işlenir.

Kapat

INET_ERROR Shutdown(
  void
)

Bu, AsyncDNSSolutionrSockets sınıfının açık bir göstergesidir. İleti dizilerini kapatıp mikrofonun ve semaphore değişkenlerinin yok edilmesini sağlar.

Ayrıntılar
Döndürülen Değerler
INET_NO_ERROR
özelliğini kullanabilirsiniz.
other
uygun POSIX ağı veya işletim sistemi hatası.