nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
इस क्लास के ऑब्जेक्ट, रॉ आईपी नेटवर्क एंडपॉइंट को दिखाते हैं.
खास जानकारी
Nest Inet लेयर, आईपी नेटवर्क एंडपॉइंट (Linux पर SOCK_RAW सॉकेट और Linux और BSD से जुड़े सिस्टम पर SOCK_RAW सॉकेट) या LwIP रॉ प्रोटोकॉल कंट्रोल ब्लॉक से इंटरैक्ट करने के तरीकों को इनकैप्सुलेट करता है. ऐसा इसलिए, क्योंकि सिस्टम को इसके हिसाब से कॉन्फ़िगर किया जाता है.
इनहेरिटेंस
इनसे इनहेरिट किया जाता है: nl::Inet::IPEndPointBasis
सार्वजनिक विशेषताएं |
|
---|---|
IPProto
|
IPProtocol
इंटरनेट कंट्रोल मैसेज प्रोटोकॉल (आईसीएमपी) का वर्शन
|
IPVer
|
IPVersion
इंटरनेट प्रोटोकॉल का वर्शन.
|
सार्वजनिक फ़ंक्शन |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
एंडपॉइंट को किसी इंटरफ़ेस आईपी पते से बाइंड करें.
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
रॉ एंडपॉइंट को बताए गए इंटरफ़ेस इंडेक्स पर, आईपीवी6 लिंक-लोकल स्कोप पते से बाइंड करें.
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
एंडपॉइंट को नेटवर्क इंटरफ़ेस से बाइंड करें.
|
Close(void)
|
void
एंडपॉइंट को बंद करें.
|
Free(void)
|
void
एंडपॉइंट को बंद करें और उसकी मेमोरी को रीसाइकल करें.
|
GetBoundInterface(void)
|
InterfaceId
इस एंडपॉइंट पर बाउंड इंटरफ़ेस पाएं.
|
Listen(void)
|
आईसीएमपी मैसेज पाने के लिए, एंडपॉइंट तैयार करें.
|
SendMsg(const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
तय किए गए डेस्टिनेशन पर एक ICMP मैसेज भेजें.
|
SendTo(IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags) का समानार्थी शब्द. |
SendTo(IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags)
|
तय किए गए डेस्टिनेशन पते पर आईसीएमपी मैसेज भेजें.
|
SetICMPFilter(uint8_t numICMPTypes, const uint8_t *aICMPTypes)
|
नेटवर्क स्टैक में ICMP6 फ़िल्टर पैरामीटर सेट करें.
|
सार्वजनिक विशेषताएं
IPProto
IPProtocol IPProto
इंटरनेट कंट्रोल मैसेज प्रोटोकॉल (आईसीएमपी) का वर्शन
यह फ़ील्ड एक बदला जा सकने वाला क्लास वैरिएबल है, लेकिन यह क्लास का एक ऐसा इन-वैरिएंट है जिसमें बदलाव नहीं किया जा सकता.
आईपीवीर
IPVersion IPVer
इंटरनेट प्रोटोकॉल का वर्शन.
यह फ़ील्ड एक बदला जा सकने वाला क्लास वैरिएबल है, लेकिन यह क्लास का एक ऐसा इन-वैरिएंट है जिसमें बदलाव नहीं किया जा सकता.
सार्वजनिक फ़ंक्शन
बाइंड
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
एंडपॉइंट को किसी इंटरफ़ेस आईपी पते से बाइंड करें.
एंडपॉइंट को बताए गए नेटवर्क इंटरफ़ेस के आईपी पते से बाइंड करता है.
ब्यौरा | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||||
रिटर्न वैल्यू |
|
LwIP पर, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए.
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
रॉ एंडपॉइंट को बताए गए इंटरफ़ेस इंडेक्स पर, आईपीवी6 लिंक-लोकल स्कोप पते से बाइंड करें.
साथ ही, यह अलग-अलग आईपीवी6 सॉकेट विकल्प भी सेट करता है, जो लिंक पर मौजूद डेस्टिनेशन पर पैकेट भेजने और वहां से भेजने के लिए सही होते हैं.
intf
में बताए गए नेटवर्क इंटरफ़ेस पर, एंडपॉइंट को आईपीवी6 लिंक-लोकल पते addr
से बाइंड करता है.
ब्यौरा | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||
पैरामीटर |
|
||||||||||||
रिटर्न वैल्यू |
|
||||||||||||
लौटाए जाने वाले प्रॉडक्ट |
सफलता मिलने पर INET_NO_ERROR, या विफल होने पर मैप की गई OS गड़बड़ी. किसी अमान्य पैरामीटर सूची का नतीजा INET_ERROR_WRONG_ADDRESS_TYPE हो सकता है. अगर रॉ एंडपॉइंट पहले से ही बाउंड है या सुन रहा है, तो INET_ERROR_IN सही_स्टेट फ़ंक्शन के साथ नतीजे दिखाता है. एंडपॉइंट को किसी इंटरफ़ेस IPv6 लिंक-लोकल पते से बाइंड करें.
|
LwIP पर, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए.
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
एंडपॉइंट को नेटवर्क इंटरफ़ेस से बाइंड करें.
एंडपॉइंट को बताए गए नेटवर्क इंटरफ़ेस के आईपी पते से बाइंड करता है.
ब्यौरा | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
रिटर्न वैल्यू |
|
LwIP पर, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए.
बंद करें
void Close( void )
एंडपॉइंट को बंद करें.
अगर mState != kState_Closed
है, तो एंडपॉइंट को बंद कर देता है. इसे कम्यूनिकेशन इवेंट के लिए ज़रूरी शर्तें पूरी करने वाले एंडपॉइंट के सेट से हटा दिया जाता है.
LwIP सिस्टम में, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए.
मुफ़्त
void Free( void )
एंडपॉइंट को बंद करें और उसकी मेमोरी को रीसाइकल करें.
यह Close
तरीके को शुरू करता है. इसके बाद, ऑब्जेक्ट को उसके मेमोरी पूल में वापस भेजने के लिए, InetLayerBasis::Release
मेथड को शुरू करता है.
LwIP सिस्टम में, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए.
GetBoundInterface
InterfaceId GetBoundInterface( void )
इस एंडपॉइंट पर बाउंड इंटरफ़ेस पाएं.
ब्यौरा | |
---|---|
लौटाए जाने वाले प्रॉडक्ट |
इंटरफ़ेस आईडी बाउंड इंटरफ़ेस आईडी.
|
सुनें
INET_ERROR Listen( void )
आईसीएमपी मैसेज पाने के लिए, एंडपॉइंट तैयार करें.
अगर mState
पहले से kState_Listening
पर सेट है, तो कोई कार्रवाई नहीं की जाएगी. ऐसा न होने पर, mState
को kState_Listening
पर सेट किया जाता है. साथ ही, प्लैटफ़ॉर्म के सिमैंटिक के हिसाब से एंडपॉइंट को ICMPv6 मैसेज पाने के लिए तैयार किया जाता है.
ब्यौरा | |||
---|---|---|---|
रिटर्न वैल्यू |
|
LwIP पर, इस तरीके को पहले से हासिल किए गए LwIP स्टैक लॉक के साथ कॉल नहीं किया जाना चाहिए
SendMsg
INET_ERROR SendMsg( const IPPacketInfo *pktInfo, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
तय किए गए डेस्टिनेशन पर एक ICMP मैसेज भेजें.
Send the ICMP message \c msg using the destination information given in \c addr. Where (sendFlags & kSendFlag_RetainBuffer) != 0, calls Weave::System::PacketBuffer::Free on behalf of the caller, otherwise this method deep-copies \c msg into a fresh object, and queues that for transmission, leaving the original \c msg available after return.
ब्यौरा | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||
रिटर्न वैल्यू |
|
SendTo
INET_ERROR SendTo( IPAddress addr, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
SendTo(addr, INET_NULL_INTERFACEID, msg, sendFlags)
का समानार्थी शब्द.
SendTo
INET_ERROR SendTo( IPAddress addr, InterfaceId intfId, Weave::System::PacketBuffer *msg, uint16_t sendFlags )
तय किए गए डेस्टिनेशन पते पर आईसीएमपी मैसेज भेजें.
Send the ICMP message in \c msg to the destination given in \c addr. Where (sendFlags & kSendFlag_RetainBuffer) != 0, calls Weave::System::PacketBuffer::Free on behalf of the caller, otherwise this method deep-copies \c msg into a fresh object, and queues that for transmission, leaving the original \c msg available after return.
ब्यौरा | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||
रिटर्न वैल्यू |
|
SetICMPFilter
INET_ERROR SetICMPFilter( uint8_t numICMPTypes, const uint8_t *aICMPTypes )
नेटवर्क स्टैक में ICMP6 फ़िल्टर पैरामीटर सेट करें.
aICMPTypes
में मौजूद कोड के लिए, सिस्टम नेटवर्किंग स्टैक के एंडपॉइंट में ICMPv6 फ़िल्टर करने वाले पैरामीटर लागू करें.
ब्यौरा | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
रिटर्न वैल्यू |
|