nl::Inet::InetLayer

#include <src/inet/InetLayer.h>

इससे एक ही थ्रेड के लिए इंटरनेट सेवाओं का ऐक्सेस मिलता है. इनमें टाइमर, डोमेन नेम सिस्टम (डीएनएस) रिज़ॉल्यूशन, टीसीपी नेटवर्क ट्रांसपोर्ट, यूडीपी नेटवर्क ट्रांसपोर्ट, और रॉ नेटवर्क ट्रांसपोर्ट शामिल है.

खास जानकारी

बीएसडी/POSIX सॉकेट के लिए इवेंट रेडीनेस की सूचना, फ़ाइल डिस्क्रिप्टर के ज़रिए मैनेज की जाती है. साथ ही, इसे प्लैटफ़ॉर्म के हिसाब से तय करने के लिए, एक ट्रेडिशनल पोल / चुनिंदा प्रोसेस को लागू किया जाता है.

LwIP के लिए, इवेंट रेडीनेस की सूचना को इवेंट / मैसेज और प्लैटफ़ॉर्म- और इवेंट / मैसेज सिस्टम के लिए सिस्टम से जुड़े खास हुक के ज़रिए मैनेज किया जाता है.

कंस्ट्रक्टर और डिस्ट्रक्टर

InetLayer(void)
यह InetLayer डिफ़ॉल्ट कंस्ट्रक्टर है.

सार्वजनिक टाइप

@5{
  kState_NotInitialized = 0,
  kState_Initialized = 1,
  kState_ShutdownInProgress = 2
}
enum
InetLayer ऑब्जेक्ट की मौजूदा स्थिति.
DNSResolveCompleteFunct typedef
DNSResolver::OnResolveCompleteFunct

सार्वजनिक एट्रिब्यूट

State
enum nl::Inet::InetLayer::@5
InetLayer ऑब्जेक्ट की मौजूदा स्थिति.

सार्वजनिक स्टैटिक एट्रिब्यूट

sInetEventHandlerDelegate

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

CanEnqueueDroppableEvent(void)
bool
CancelResolveHostAddress(DNSResolveCompleteFunct onComplete, void *appState)
void
ऐसी कोई भी डीएनएस क्वेरी रद्द करें जो अब भी चालू हो. जैसे, मैचिंग पूरी होने वाले कॉलबैक और ऐप्लिकेशन की स्थिति के लिए.
DroppableEventDequeued(void)
void
GetInterfaceFromAddr(const IPAddress & addr, InterfaceId & intfId)
किसी खास आईपी पते के लिए इंटरफ़ेस आइडेंटिफ़ायर पाएं.
GetLinkLocalAddr(InterfaceId link, IPAddress *llAddr)
किसी खास लिंक या इंटरफ़ेस के लिए लिंक का लोकल IPv6 पता पाएं.
GetPlatformData(void)
void *
इससे, इंस्टेंस को असाइन किया गया क्लाइंट का ऐसा कोई भी डेटा दिखता है जिसे पहले से सेट किया गया हो.
HandleSelectResult(int selectRes, fd_set *readfds, fd_set *writefds, fd_set *exceptfds)
void
I/O को किसी चुनिंदा कॉल से मैनेज करें.
Init(Weave::System::Layer & aSystemLayer, void *aContext)
यह InetLayer साफ़ तौर पर शुरू करने वाला टूल है.
InitQueueLimiter(void)
MatchLocalIPv6Subnet(const IPAddress & addr)
bool
देखें कि दिए गए IPv6 पते और स्थानीय तौर पर कॉन्फ़िगर किए गए किसी IPv6 पते के बीच कोई प्रीफ़िक्स मैच है या नहीं.
NewRawEndPoint(IPVersion ipVer, IPProtocol ipProto, RawEndPoint **retEndPoint)
किसी खास आईपी वर्शन और प्रोटोकॉल के लिए, एक नया RawEndPoint ऑब्जेक्ट बनाता है.
NewTCPEndPoint(TCPEndPoint **retEndPoint)
नया TCPEndPoint ऑब्जेक्ट बनाता है.
NewTunEndPoint(TunEndPoint **retEndPoint)
नया TunEndPoint ऑब्जेक्ट बनाता है.
NewUDPEndPoint(UDPEndPoint **retEndPoint)
नया UDPEndPoint ऑब्जेक्ट बनाता है.
PrepareSelect(int & nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval & sleepTime)
void
select() के साथ काम करने के लिए, फ़ाइल डिस्क्रिप्टर के सेट तैयार करें.
ResolveHostAddress(const char *hostName, uint16_t hostNameLen, uint8_t options, uint8_t maxAddrs, IPAddress *addrArray, DNSResolveCompleteFunct onComplete, void *appState)
किसी खास होस्टनेम के लिए आईपी पते का रिज़ॉल्यूशन करें.
ResolveHostAddress(const char *hostName, uint16_t hostNameLen, uint8_t maxAddrs, IPAddress *addrArray, DNSResolveCompleteFunct onComplete, void *appState)
किसी खास होस्टनेम के लिए आईपी पते का रिज़ॉल्यूशन करें.
ResolveHostAddress(const char *hostName, uint8_t maxAddrs, IPAddress *addrArray, DNSResolveCompleteFunct onComplete, void *appState)
किसी खास होस्टनेम के लिए आईपी पते का रिज़ॉल्यूशन करें.
SetPlatformData(void *aPlatformData)
void
यह इंस्टेंस के लिए क्लाइंट के हिसाब से खास प्लैटफ़ॉर्म का डेटा सेट करता है, ताकि क्लाइंट प्लैटफ़ॉर्म को बाद में वापस पाया जा सके.
Shutdown(void)
यह InetLayer साफ़ तौर पर शुरू होने वाला डिरेंशियलाइज़र है. इसे इंस्टैंशिएट किए गए InetLayer इंस्टेंस को हटाने से पहले कॉल किया जाना चाहिए.
SystemLayer(void) const

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

HandleInetLayerEvent(Weave::System::Object & aTarget, Weave::System::EventType aEventType, uintptr_t aArgument)
Weave::System::Error
IsDroppableEvent(Weave::System::EventType aType)
bool
UpdateSnapshot(nl::Weave::System::Stats::Snapshot & aSnapshot)
void

सार्वजनिक टाइप

@5

 @5

InetLayer ऑब्जेक्ट की मौजूदा स्थिति.

प्रॉपर्टी
kState_Initialized

शुरू की गई स्थिति.

kState_NotInitialized

शुरू नहीं की गई स्थिति.

kState_ShutdownInProgress

वह देश जहां शटडाउन ट्रिगर हुआ है.

DNSResolveCompleteFunct

DNSResolver::OnResolveCompleteFunct DNSResolveCompleteFunct

सार्वजनिक एट्रिब्यूट

स्थिति

enum nl::Inet::InetLayer::@5 State

InetLayer ऑब्जेक्ट की मौजूदा स्थिति.

[READ-ONLY] मौजूदा स्थिति.

सार्वजनिक स्टैटिक एट्रिब्यूट

sInetEventHandlerDelegate

Weave::System::LwIPEventHandlerDelegate sInetEventHandlerDelegate

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

CanEnqueueDroppableEvent

bool CanEnqueueDroppableEvent(
  void
)

CancelResolveHostAddress

void CancelResolveHostAddress(
  DNSResolveCompleteFunct onComplete,
  void *appState
)

ऐसी कोई भी डीएनएस क्वेरी रद्द करें जो अब भी चालू हो. जैसे, मैचिंग पूरी होने वाले कॉलबैक और ऐप्लिकेशन की स्थिति के लिए.

जानकारी
पैरामीटर
[in] onComplete
डीएनएस अनुरोध पूरा होने पर कॉलबैक फ़ंक्शन का पॉइंटर.
[in] appState
ऐप्लिकेशन की स्थिति के ऑब्जेक्ट का पॉइंटर, जिसे कॉलबैक फ़ंक्शन को तर्क के तौर पर भेजा जाना है.

DroppableEventDequeued

void DroppableEventDequeued(
  void
)

GetInterfaceFromAddr

INET_ERROR GetInterfaceFromAddr(
  const IPAddress & addr,
  InterfaceId & intfId
)

किसी खास आईपी पते के लिए इंटरफ़ेस आइडेंटिफ़ायर पाएं.

अगर इंटरफ़ेस आइडेंटिफ़ायर नहीं मिल पाता है, तो उसे INET_NULL_INTERFACEID पर सेट किया जाता है.

जानकारी
पैरामीटर
[in] addr
IPAddress ऑब्जेक्ट का रेफ़रंस.
[out] intfId
InterfaceId ऑब्जेक्ट का रेफ़रंस.
लौटाए गए सामान
INET_NO_ERROR बिना किसी शर्त के.

GetLinkLocalAddr

INET_ERROR GetLinkLocalAddr(
  InterfaceId link,
  IPAddress *llAddr
)

किसी खास लिंक या इंटरफ़ेस के लिए लिंक का लोकल IPv6 पता पाएं.

जानकारी
पैरामीटर
[in] link
वह इंटरफ़ेस जिसके लिए लिंक लोकल IPv6 पता मांगा जा रहा है.
[out] llAddr
लिंक के लिए स्थानीय IPv6 पता लिंक.
रिटर्न वैल्यू
INET_ERROR_NOT_IMPLEMENTED
अगर IPv6 काम नहीं करता है.
INET_ERROR_BAD_ARGS
अगर लिंक का स्थानीय पता NULL है.
INET_ERROR_ADDRESS_NOT_FOUND
अगर लिंक में कोई पता कॉन्फ़िगर नहीं किया गया है.
INET_NO_ERROR
सफलता पर.

GetPlatformData

void * GetPlatformData(
  void
)

इससे, इंस्टेंस को असाइन किया गया क्लाइंट का ऐसा कोई भी डेटा दिखता है जिसे पहले से सेट किया गया हो.

जानकारी
लौटाए गए सामान
क्लाइंट के लिए बना प्लैटफ़ॉर्म डेटा, अगर पहले से सेट किया गया हो; अगर ऐसा नहीं है, तो यह अमान्य है.

HandleSelectResult

void HandleSelectResult(
  int selectRes,
  fd_set *readfds,
  fd_set *writefds,
  fd_set *exceptfds
)

I/O को किसी चुनिंदा कॉल से मैनेज करें.

यह तरीका, हर ऐक्टिव एंडपॉइंट में बचे हुए I/O इवेंट को रजिस्टर करता है. इसके बाद, उन एंडपॉइंट से जुड़े I/O हैंडलिंग फ़ंक्शन को शुरू करता है.

जानकारी
पैरामीटर
[in] selectRes
चुने गए कॉल की रिटर्न वैल्यू.
[in] readfds
पढ़ी गई फ़ाइल डिस्क्रिप्टर के सेट के लिए पॉइंटर.
[in] writefds
राइट फ़ाइल डिस्क्रिप्टर के सेट के लिए पॉइंटर.
[in] exceptfds
गड़बड़ियों वाले फ़ाइल डिस्क्रिप्टर के सेट का पॉइंटर.

InetLayer

 InetLayer(
  void
)

यह InetLayer डिफ़ॉल्ट कंस्ट्रक्टर है.

यह डेटा से जुड़े कुछ बुनियादी तरीकों को शुरू करता है. हालांकि, InetLayer एक खास इनिशलाइज़र डिज़ाइन पैटर्न का पालन करता है, इसलिए ऑब्जेक्ट का इस्तेमाल करने से पहले Inetlayer::Init तरीके को कॉल करना ज़रूरी है.

शुरू करें

INET_ERROR Init(
  Weave::System::Layer & aSystemLayer,
  void *aContext
)

यह InetLayer साफ़ तौर पर शुरू करने वाला टूल है.

InetLayer का इस्तेमाल करने से पहले इसे कॉल किया जाना और पूरा होना ज़रूरी है.

कॉलर एक वैकल्पिक संदर्भ तर्क उपलब्ध करा सकता है, जिसे किसी भी प्लैटफ़ॉर्म के खास हुक फ़ंक्शन के ज़रिए पास किया जाएगा. LwIP-आधारित एडैप्टेशन के लिए, यह आम तौर पर InetLayer इंस्टेंस से जुड़े इवेंट सूची का पॉइंटर होगा.

प्लैटफ़ॉर्म अपने प्लैटफ़ॉर्म के खास कॉन्फ़िगरेशन हेडर में INET_CONFIG_WILL_OVERRIDE_PLATFORM_XTOR_FUNCS का दावा कर सकते हैं और प्लैटफ़ॉर्म::Inetlayer::WillInit और प्लैटफ़ॉर्म::Inetlayer::didInit हुक का इस्तेमाल कर सकते हैं. इससे प्लैटफ़ॉर्म के मुताबिक खास कस्टमाइज़ेशन या InetLayer डेटा एक्सटेंशन को लागू करने में मदद मिलेगी.

जानकारी
पैरामीटर
[in] aSystemLayer
वीव सिस्टम लेयर का एक ज़रूरी इंस्टेंस पहले ही शुरू हो चुका है.
[in] aContext
एक वैकल्पिक कॉन्टेक्स्ट आर्ग्युमेंट, जिसे किसी भी प्लैटफ़ॉर्म के हुक फ़ंक्शन की मदद से कॉलर को वापस भेजा जाएगा.
रिटर्न वैल्यू
INET_ERROR_INCORRECT_STATE
अगर InetLayer गलत स्थिति में है.
INET_ERROR_NO_MEMORY
अगर नए टाइमर के लिए इस अनुरोध के लिए, InetLayer का संसाधन खत्म हो जाता है.
other
प्लैटफ़ॉर्म से जुड़ी गड़बड़ियां, जो शुरू होने की वजह के बारे में बताती हैं.
INET_NO_ERROR
सफलता पर.

InitQueueLimiter

INET_ERROR InitQueueLimiter(
  void
)

MatchLocalIPv6Subnet

bool MatchLocalIPv6Subnet(
  const IPAddress & addr
)

देखें कि दिए गए IPv6 पते और स्थानीय तौर पर कॉन्फ़िगर किए गए किसी IPv6 पते के बीच कोई प्रीफ़िक्स मैच है या नहीं.

जानकारी
पैरामीटर
[in] addr
प्रीफ़िक्स-मैच की जांच करने के लिए, आईपीवी6 पता.
लौटाए गए सामान
सफल होने पर, वैल्यू 'सही' होगी. ऐसा नहीं होने पर 'गलत' होगा.

NewRawEndPoint

INET_ERROR NewRawEndPoint(
  IPVersion ipVer,
  IPProtocol ipProto,
  RawEndPoint **retEndPoint
)

किसी खास आईपी वर्शन और प्रोटोकॉल के लिए, एक नया RawEndPoint ऑब्जेक्ट बनाता है.

जानकारी
पैरामीटर
[in] ipVer
IPv4 या IPv6.
[in] ipProto
आईपी फ़ैमिली में मौजूद प्रोटोकॉल (जैसे, ICMPv4 या ICMPv6).
[in,out] retEndPoint
RawEndPoint ऑब्जेक्ट के पॉइंटर का पॉइंटर, जो ऑब्जेक्ट बनने के बाद मिलने वाला रिटर्न पैरामीटर है. अगर कॉन्टेंट बनाया नहीं जा सकता, तो *retEndPoint अमान्य है.
रिटर्न वैल्यू
INET_ERROR_INCORRECT_STATE
अगर InetLayer ऑब्जेक्ट को शुरू नहीं किया गया है.
INET_ERROR_NO_ENDPOINTS
अगर InetLayerRawEndPoint पूल भर गया है और कोई नया एंडपॉइंट नहीं बनाया जा सकता है.
INET_NO_ERROR
सफलता पर.

NewTCPEndPoint

INET_ERROR NewTCPEndPoint(
  TCPEndPoint **retEndPoint
)

नया TCPEndPoint ऑब्जेक्ट बनाता है.

जानकारी
पैरामीटर
[in,out] retEndPoint
TCPEndPoint ऑब्जेक्ट के पॉइंटर का पॉइंटर है, जो ऑब्जेक्ट बनने के बाद मिलने वाला रिटर्न पैरामीटर है. अगर कॉन्टेंट बनाया नहीं जा सकता, तो *retEndPoint अमान्य है.
रिटर्न वैल्यू
INET_ERROR_INCORRECT_STATE
अगर InetLayer ऑब्जेक्ट को शुरू नहीं किया गया है.
INET_ERROR_NO_ENDPOINTS
अगर InetLayerTCPEndPoint पूल भर गया है और कोई नया एंडपॉइंट नहीं बनाया जा सकता है.
INET_NO_ERROR
सफलता पर.

NewTunEndPoint

INET_ERROR NewTunEndPoint(
  TunEndPoint **retEndPoint
)

नया TunEndPoint ऑब्जेक्ट बनाता है.

जानकारी
पैरामीटर
[in,out] retEndPoint
TunEndPoint ऑब्जेक्ट के पॉइंटर का पॉइंटर, जो ऑब्जेक्ट बनने के बाद मिलने वाला रिटर्न पैरामीटर है. अगर कॉन्टेंट बनाया नहीं जा सकता, तो *retEndPoint अमान्य है.
रिटर्न वैल्यू
INET_ERROR_INCORRECT_STATE
अगर InetLayer ऑब्जेक्ट को शुरू नहीं किया गया है.
INET_ERROR_NO_ENDPOINTS
अगर InetLayerTunEndPoint पूल भर गया है और कोई नया पूल नहीं बनाया जा सकता है.
INET_NO_ERROR
सफलता पर.

NewUDPEndPoint

INET_ERROR NewUDPEndPoint(
  UDPEndPoint **retEndPoint
)

नया UDPEndPoint ऑब्जेक्ट बनाता है.

जानकारी
पैरामीटर
[in,out] retEndPoint
UDPEndPoint ऑब्जेक्ट के पॉइंटर का पॉइंटर, जो ऑब्जेक्ट बनने के बाद मिलने वाला रिटर्न पैरामीटर है. अगर कॉन्टेंट बनाया नहीं जा सकता, तो *retEndPoint अमान्य है.
रिटर्न वैल्यू
INET_ERROR_INCORRECT_STATE
अगर InetLayer ऑब्जेक्ट को शुरू नहीं किया गया है.
INET_ERROR_NO_ENDPOINTS
अगर InetLayerUDPEndPoint पूल भर गई है और कोई नया एंडपॉइंट नहीं बनाया जा सकता है.
INET_NO_ERROR
सफलता पर.

PrepareSelect

void PrepareSelect(
  int & nfds,
  fd_set *readfds,
  fd_set *writefds,
  fd_set *exceptfds,
  struct timeval & sleepTime
)

select() के साथ काम करने के लिए, फ़ाइल डिस्क्रिप्टर के सेट तैयार करें.

जानकारी
पैरामीटर
[out] nfds
फ़ाइल डिस्क्रिप्टर के सेट में, फ़ाइल डिस्क्रिप्टर की रेंज.
[in] readfds
पढ़े जा सकने वाले फ़ाइल डिस्क्रिप्टर के सेट की जानकारी देने वाला पॉइंटर.
[in] writefds
लिखाई जा सकने वाली फ़ाइल डिस्क्रिप्टर के सेट के लिए पॉइंटर.
[in] exceptfds
गड़बड़ियों वाले फ़ाइल डिस्क्रिप्टर के सेट का पॉइंटर.
[in] sleepTimeTV
स्ट्रक्चर की ओर एक पॉइंटर से यह तय होता है कि चुने गए व्यक्ति को कितनी देर तक स्लीप मोड में रखना चाहिए

ResolveHostAddress

INET_ERROR ResolveHostAddress(
  const char *hostName,
  uint16_t hostNameLen,
  uint8_t options,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolveCompleteFunct onComplete,
  void *appState
)

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

जानकारी
पैरामीटर
[in] hostName
ऐसी सी स्ट्रिंग का पॉइंटर जो शून्य नहीं है और खत्म नहीं हुई है. यह क्वेरी किए जाने वाले होस्ट नाम को दिखाता है.
[in] hostNameLen
होस्ट के नाम की स्ट्रिंग की लंबाई.
[in] options
एक पूर्णांक मान जो यह कंट्रोल करता है कि होस्ट के नाम का रिज़ॉल्यूशन कैसे किया जाएगा.
                    Value should be one of the address family values from the
                    #DNSOptions enumeration:

                    #kDNSOption_AddrFamily_Any
                    #kDNSOption_AddrFamily_IPv4Only
                    #kDNSOption_AddrFamily_IPv6Only
                    #kDNSOption_AddrFamily_IPv4Preferred
                    #kDNSOption_AddrFamily_IPv6Preferred
[in] maxAddrs
डीएनएस टेबल में सेव किए जाने वाले पतों की ज़्यादा से ज़्यादा संख्या.
[in] addrArray
डीएनएस टेबल का पॉइंटर.
[in] onComplete
डीएनएस अनुरोध पूरा होने पर कॉलबैक फ़ंक्शन का पॉइंटर.
[in] appState
ऐप्लिकेशन की स्थिति का पॉइंटर, जिसे डीएनएस अनुरोध के पूरा होने पर, oncomplete को पास किया जाना है.
रिटर्न वैल्यू
INET_NO_ERROR
अगर डीएनएस अनुरोध को सही तरीके से हैंडल किया जाता है.
INET_ERROR_NO_MEMORY
अगर Inet लेयर रिज़ॉल्वर पूल भरा हुआ है.
INET_ERROR_HOST_NAME_TOO_LONG
अगर अनुरोध किया गया होस्ट नाम बहुत लंबा है.
INET_ERROR_HOST_NOT_FOUND
अगर अनुरोध किए गए होस्ट नाम का किसी पते तक समाधान नहीं किया जा सका.
INET_ERROR_DNS_TRY_AGAIN
अगर नाम सर्वर ने कुछ समय के लिए गड़बड़ी का संकेत दिया है; बाद में कोशिश करें.
INET_ERROR_DNS_NO_RECOVERY
अगर नाम सर्वर से ऐसी गड़बड़ी मिलती है जिसे ठीक नहीं किया जा सकता.
INET_ERROR_NOT_IMPLEMENTED
अगर दिए गए प्लैटफ़ॉर्म पर डीएनएस रिज़ॉल्यूशन चालू नहीं है.
other
डीएनएस रिज़ॉल्वर को लागू करने की वजह से, POSIX नेटवर्क या ओएस की गड़बड़ी का पता चलता है.

ResolveHostAddress

INET_ERROR ResolveHostAddress(
  const char *hostName,
  uint16_t hostNameLen,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolveCompleteFunct onComplete,
  void *appState
)

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

जानकारी
पैरामीटर
[in] hostName
ऐसी सी स्ट्रिंग का पॉइंटर जो शून्य नहीं है और खत्म नहीं हुई है. यह क्वेरी किए जाने वाले होस्ट नाम को दिखाता है.
[in] hostNameLen
होस्ट के नाम की स्ट्रिंग की लंबाई.
[in] maxAddrs
डीएनएस टेबल में सेव किए जाने वाले पतों की ज़्यादा से ज़्यादा संख्या.
[in] addrArray
डीएनएस टेबल का पॉइंटर.
[in] onComplete
डीएनएस अनुरोध पूरा होने पर कॉलबैक फ़ंक्शन का पॉइंटर.
[in] appState
ऐप्लिकेशन की स्थिति का पॉइंटर, जिसे डीएनएस अनुरोध के पूरा होने पर, oncomplete को पास किया जाना है.
रिटर्न वैल्यू
INET_NO_ERROR
अगर डीएनएस अनुरोध को सही तरीके से हैंडल किया जाता है.
INET_ERROR_NO_MEMORY
अगर Inet लेयर रिज़ॉल्वर पूल भरा हुआ है.
INET_ERROR_HOST_NAME_TOO_LONG
अगर अनुरोध किया गया होस्ट नाम बहुत लंबा है.
INET_ERROR_HOST_NOT_FOUND
अगर अनुरोध किए गए होस्ट नाम का किसी पते तक समाधान नहीं किया जा सका.
INET_ERROR_DNS_TRY_AGAIN
अगर नाम सर्वर ने कुछ समय के लिए गड़बड़ी का संकेत दिया है; बाद में कोशिश करें.
INET_ERROR_DNS_NO_RECOVERY
अगर नाम सर्वर से ऐसी गड़बड़ी मिलती है जिसे ठीक नहीं किया जा सकता.
INET_ERROR_NOT_IMPLEMENTED
अगर दिए गए प्लैटफ़ॉर्म पर डीएनएस रिज़ॉल्यूशन चालू नहीं है.
other
डीएनएस रिज़ॉल्वर को लागू करने की वजह से, POSIX नेटवर्क या ओएस की गड़बड़ी का पता चलता है.

ResolveHostAddress

INET_ERROR ResolveHostAddress(
  const char *hostName,
  uint8_t maxAddrs,
  IPAddress *addrArray,
  DNSResolveCompleteFunct onComplete,
  void *appState
)

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

जानकारी
पैरामीटर
[in] hostName
शून्य से खत्म की गई सी स्ट्रिंग का पॉइंटर. यह क्वेरी किए जाने वाले होस्ट नाम को दिखाता है.
[in] maxAddrs
डीएनएस टेबल में सेव किए जाने वाले पतों की ज़्यादा से ज़्यादा संख्या.
[in] addrArray
डीएनएस टेबल का पॉइंटर.
[in] onComplete
डीएनएस अनुरोध पूरा होने पर कॉलबैक फ़ंक्शन का पॉइंटर.
[in] appState
ऐप्लिकेशन की स्थिति का पॉइंटर, जिसे डीएनएस अनुरोध के पूरा होने पर, oncomplete को पास किया जाना है.
रिटर्न वैल्यू
INET_NO_ERROR
अगर डीएनएस अनुरोध को सही तरीके से हैंडल किया जाता है.
INET_ERROR_NO_MEMORY
अगर Inet लेयर रिज़ॉल्वर पूल भरा हुआ है.
INET_ERROR_HOST_NAME_TOO_LONG
अगर अनुरोध किया गया होस्ट नाम बहुत लंबा है.
INET_ERROR_HOST_NOT_FOUND
अगर अनुरोध किए गए होस्ट नाम का किसी पते तक समाधान नहीं किया जा सका.
INET_ERROR_DNS_TRY_AGAIN
अगर नाम सर्वर ने कुछ समय के लिए गड़बड़ी का संकेत दिया है; बाद में कोशिश करें.
INET_ERROR_DNS_NO_RECOVERY
अगर नाम सर्वर से ऐसी गड़बड़ी मिलती है जिसे ठीक नहीं किया जा सकता.
INET_ERROR_NOT_IMPLEMENTED
अगर दिए गए प्लैटफ़ॉर्म पर डीएनएस रिज़ॉल्यूशन चालू नहीं है.
other
डीएनएस रिज़ॉल्वर को लागू करने की वजह से, POSIX नेटवर्क या ओएस की गड़बड़ी का पता चलता है.

SetPlatformData

void SetPlatformData(
  void *aPlatformData
)

यह इंस्टेंस के लिए क्लाइंट के हिसाब से खास प्लैटफ़ॉर्म का डेटा सेट करता है, ताकि क्लाइंट प्लैटफ़ॉर्म को बाद में वापस पाया जा सके.

जानकारी
पैरामीटर
[in] aPlatformData
क्लाइंट के हिसाब से, प्लैटफ़ॉर्म का वह डेटा जिसे सेट करना है.

बंद है

INET_ERROR Shutdown(
  void
)

यह InetLayer साफ़ तौर पर शुरू होने वाला डिरेंशियलाइज़र है. इसे इंस्टैंशिएट किए गए InetLayer इंस्टेंस को हटाने से पहले कॉल किया जाना चाहिए.

प्लैटफ़ॉर्म अपने प्लैटफ़ॉर्म के खास कॉन्फ़िगरेशन हेडर में INET_CONFIG_WILL_OVERRIDE_PLATFORM_XTOR_FUNCS का दावा कर सकते हैं और प्लैटफ़ॉर्म::Inetlayer::WillStopdown और प्लैटफ़ॉर्म::Inetlayer::अभियानशटडाउन हुक का इस्तेमाल कर सकते हैं. इनकी मदद से, InetLayer में डेटा एक्सटेंशन या प्लैटफ़ॉर्म के हिसाब से कस्टमाइज़ेशन को आसान बनाने के लिए हुक का इस्तेमाल किया जा सकता है.

जानकारी
लौटाए गए सामान
सफल होने पर INET_NO_ERROR; वरना, एक खास गड़बड़ी जो शटडाउन की असफलता की वजह बताती है.

SystemLayer

Weave::System::Layer * SystemLayer(
  void
) const 

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

HandleInetLayerEvent

Weave::System::Error HandleInetLayerEvent(
  Weave::System::Object & aTarget,
  Weave::System::EventType aEventType,
  uintptr_t aArgument
)

IsDroppableEvent

bool IsDroppableEvent(
  Weave::System::EventType aType
)

UpdateSnapshot

void UpdateSnapshot(
  nl::Weave::System::Stats::Snapshot & aSnapshot
)