nl::इन नेटवर्क::AsyncDNSSolverSockets

#include <src/inet/AsyncDNSResolverSockets.h>

यह InetLayer का इंटरनल क्लास है जो InetLayer में, एसिंक्रोनस डोमेन नेम सिस्टम (डीएनएस) रिज़ॉल्यूशन के लिए हेल्पर एपीआई उपलब्ध कराता है.

खास जानकारी

ऐप्लिकेशन लेयर के लिए कोई सार्वजनिक इंटरफ़ेस उपलब्ध नहीं है.

सार्वजनिक फ़ंक्शन

Cancel(DNSResolver & resolver)
ऐसी बकाया डीएनएस क्वेरी को रद्द करें जो अब भी चालू हो.
EnqueueRequest(DNSResolver & resolver)
किसी खास होस्टनेम के एसिंक्रोनस आईपी पते के रिज़ॉल्यूशन के लिए, DNSSolver ऑब्जेक्ट को क्वेरी करें.
Init(InetLayer *inet)
AsynchronousDNSSolverSockets क्लास के लिए एक्सप्लिसिट शुरुआती.
PrepareDNSResolver(DNSResolver & resolver, const char *hostName, uint16_t hostNameLen, uint8_t options, uint8_t maxAddrs, IPAddress *addrArray, DNSResolver::OnResolveCompleteFunct onComplete, void *appState)
इस तरीके से एसिंक्रोनस रिज़ॉल्यूशन से पहले डीएनएस रिज़ॉल्वर ऑब्जेक्ट तैयार होता है.
Shutdown(void)
यह AsyncDNSSolverSockets क्लास का साफ़ तौर पर इस्तेमाल शुरू करने वाला है और यह थ्रेड को शट डाउन करने और म्यूटक्स और सेमेफ़र वैरिएबल को खत्म करने का काम करता है.

सार्वजनिक फ़ंक्शन

रद्द करें

INET_ERROR Cancel(
  DNSResolver & resolver
)

ऐसी बकाया डीएनएस क्वेरी को रद्द करें जो अब भी चालू हो.

ब्यौरा
पैरामीटर
[in] resolver
डीएनएस रिज़ॉल्वर ऑब्जेक्ट का रेफ़रंस.

कतार में शामिल होने का अनुरोध

INET_ERROR EnqueueRequest(
  DNSResolver & resolver
)

किसी खास होस्टनेम के एसिंक्रोनस आईपी पते के रिज़ॉल्यूशन के लिए, DNSSolver ऑब्जेक्ट को क्वेरी करें.

ब्यौरा
पैरामीटर
[in] resolver
डीएनएस रिज़ॉल्वर ऑब्जेक्ट का रेफ़रंस.
सामान लौटाने की वैल्यू
INET_NO_ERROR
अगर डीएनएस अनुरोध सूची में शामिल हो गया है.
INET_ERROR_NO_MEMORY
अगर इनेट लेयर रिज़ॉल्वर पूल भर गया है.
other
POSIX के सही नेटवर्क या ओएस की गड़बड़ी.

इनिट

INET_ERROR Init(
  InetLayer *inet
)

AsynchronousDNSSolverSockets क्लास के लिए एक्सप्लिसिट शुरुआती.

यह म्यूटक्स और सेमेफ़र वैरिएबल की शुरुआत करता है और एसिंक्रोनस डीएनएस रिज़ॉल्यूशन को हैंडल करने के लिए थ्रेड बनाता है.

ब्यौरा
पैरामीटर
[in] aInet
InetLayer ऑब्जेक्ट का पॉइंटर.
सामान लौटाने की वैल्यू
INET_NO_ERROR
अगर इसकी प्रोसेस शुरू हो जाती है.
other
POSIX के सही नेटवर्क या ओएस की गड़बड़ी.

डीएनएस रिज़ॉल्वर को इस्तेमाल के लिए तैयार करें

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

इस तरीके से एसिंक्रोनस रिज़ॉल्यूशन से पहले डीएनएस रिज़ॉल्वर ऑब्जेक्ट तैयार होता है.

ब्यौरा
पैरामीटर
[in] resolver
दिए गए डीएनएस रिज़ॉल्वर ऑब्जेक्ट का रेफ़रंस.
[in] hostName
C स्ट्रिंग का पॉइंटर, जिसमें क्वेरी के होस्ट का नाम दिखाया गया है.
[in] hostNameLen
होस्ट के नाम की स्ट्रिंग की लंबाई.
[in] options
एक पूर्णांक वैल्यू, जो यह कंट्रोल करती है कि होस्ट के नाम के पते का रिज़ॉल्यूशन कैसे किया जाता है. वैल्यू #DNSOptions इन्यूमरेशन से हैं.
[in] maxAddrs
डीएनएस टेबल में सेव किए जाने वाले पतों की ज़्यादा से ज़्यादा संख्या.
[in] addrArray
डीएनएस टेबल का पॉइंटर.
[in] onComplete
डीएनएस अनुरोध के पूरा होने पर, कॉलबैक फ़ंक्शन का पॉइंटर.
[in] appState
डीएनएस अनुरोध के पूरा होने पर oncomplete को भेजे जाने वाले ऐप्लिकेशन की स्थिति का पॉइंटर.
सामान लौटाने की वैल्यू
INET_NO_ERROR
अगर डीएनएस अनुरोध को सही तरीके से हैंडल किया जाता है.

शटडाउन

INET_ERROR Shutdown(
  void
)

यह AsyncDNSSolverSockets क्लास का साफ़ तौर पर इस्तेमाल शुरू करने वाला है और यह थ्रेड को शट डाउन करने और म्यूटक्स और सेमेफ़र वैरिएबल को खत्म करने का काम करता है.

ब्यौरा
सामान लौटाने की वैल्यू
INET_NO_ERROR
अगर शटडाउन हो जाता है.
other
POSIX के सही नेटवर्क या ओएस की गड़बड़ी.