nl:: Inet:: RawEndPoint
#include <src/inet/RawEndPoint.h>
ออบเจ็กต์ของคลาสนี้แสดงถึงปลายทางเครือข่าย IP ดิบ
สรุป
Nest Inet Layer สรุปวิธีการในการโต้ตอบกับปลายทางเครือข่าย IP (ซ็อกเก็ต SOCK_RAW ในระบบที่ได้รับ Linux และ BSD) หรือบล็อกการควบคุมโปรโตคอลดิบ LwIP เนื่องจากมีการกำหนดค่าของระบบให้สอดคล้องกัน
การสืบทอด
รับค่าจาก: nl::Inet::IPEndPointBasis
แอตทริบิวต์สาธารณะ |
|
---|---|
IPProto
|
IPProtocol
เวอร์ชันของ Internet Control Message Protocol (ICMP)
|
IPVer
|
IPVersion
เวอร์ชันของอินเทอร์เน็ตโปรโตคอล
|
ฟังก์ชันสาธารณะ |
|
---|---|
Bind(IPAddressType addrType, IPAddress addr, InterfaceId intfId)
|
เชื่อมโยงปลายทางกับที่อยู่ IP ของอินเทอร์เฟซ
|
BindIPv6LinkLocal(InterfaceId intf, IPAddress addr)
|
เชื่อมโยงปลายทางข้อมูลดิบกับที่อยู่ขอบเขตลิงก์ภายในของ IPv6 ที่ดัชนีอินเทอร์เฟซที่ระบุ
|
BindInterface(IPAddressType addrType, InterfaceId intf)
|
เชื่อมโยงปลายทางกับอินเทอร์เฟซเครือข่าย
|
Close(void)
|
void
ปิดปลายทาง
|
Free(void)
|
void
ปิดปลายทางและใช้หน่วยความจำอีกครั้ง
|
GetBoundInterface(void)
|
InterfaceId
รับอินเทอร์เฟซที่เชื่อมโยงบนปลายทางนี้
|
Listen(void)
|
เตรียมปลายทางเพื่อรับข้อความ ICMP
|
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)
|
ส่งข้อความ ICMP ไปยังที่อยู่ปลายทางที่ระบุ
|
SetICMPFilter(uint8_t numICMPTypes, const uint8_t *aICMPTypes)
|
ตั้งค่าพารามิเตอร์ตัวกรอง ICMP6 ในกลุ่มเครือข่าย
|
แอตทริบิวต์สาธารณะ
IPProto
IPProtocol IPProto
เวอร์ชันของ Internet Control Message Protocol (ICMP)
แม้ว่าช่องนี้จะเป็นตัวแปรคลาสที่เปลี่ยนแปลงได้ แต่เป็นตัวแปรคงที่ของคลาสที่จะไม่มีการแก้ไข
IPVer
IPVersion IPVer
เวอร์ชันของอินเทอร์เน็ตโปรโตคอล
แม้ว่าช่องนี้จะเป็นตัวแปรคลาสที่เปลี่ยนแปลงได้ แต่เป็นตัวแปรคงที่ของคลาสที่จะไม่มีการแก้ไข
ฟังก์ชันสาธารณะ
เชื่อมโยง
INET_ERROR Bind( IPAddressType addrType, IPAddress addr, InterfaceId intfId )
เชื่อมโยงปลายทางกับที่อยู่ IP ของอินเทอร์เฟซ
เชื่อมโยงปลายทางกับที่อยู่ IP ของอินเทอร์เฟซเครือข่ายที่ระบุ
รายละเอียด | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||
ผลลัพธ์ |
|
ใน LwIP ต้องไม่เรียกใช้เมธอดนี้เมื่อได้สแต็กล็อก LwIP แล้ว
BindIPv6LinkLocal
INET_ERROR BindIPv6LinkLocal( InterfaceId intf, IPAddress addr )
เชื่อมโยงปลายทางข้อมูลดิบกับที่อยู่ขอบเขตลิงก์ภายในของ IPv6 ที่ดัชนีอินเทอร์เฟซที่ระบุ
และตั้งค่าตัวเลือกซ็อกเก็ต IPv6 ที่หลากหลายที่เหมาะสำหรับการส่งแพ็กเก็ตไปยังและจากปลายทางแบบออนลิงก์
เชื่อมโยงปลายทางกับที่อยู่ลิงก์ภายในของ IPv6 addr
ในอินเทอร์เฟซเครือข่ายที่ระบุโดย intf
รายละเอียด | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||
พารามิเตอร์ |
|
||||||||||||
ผลลัพธ์ |
|
||||||||||||
การคืนสินค้า |
INET_NO_ERROR ในขณะสำเร็จ หรือข้อผิดพลาดของระบบปฏิบัติการที่แมปเมื่อล้มเหลว รายการพารามิเตอร์ที่ไม่ถูกต้องอาจทำให้เกิด INET_ERROR_WRONG_ADDRESS_TYPE หากปลายทางข้อมูลดิบมีการเชื่อมโยงอยู่แล้วหรือกำลังฟังอยู่ ให้แสดงผล INET_ERROR_INCORRECT_STATE เชื่อมโยงปลายทางกับที่อยู่ลิงก์ภายในของอินเทอร์เฟซ IPv6
|
ใน LwIP ต้องไม่เรียกใช้เมธอดนี้เมื่อได้สแต็กล็อก LwIP แล้ว
BindInterface
INET_ERROR BindInterface( IPAddressType addrType, InterfaceId intf )
เชื่อมโยงปลายทางกับอินเทอร์เฟซเครือข่าย
เชื่อมโยงปลายทางกับที่อยู่ IP ของอินเทอร์เฟซเครือข่ายที่ระบุ
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
ผลลัพธ์ |
|
ใน LwIP ต้องไม่เรียกใช้เมธอดนี้เมื่อได้สแต็กล็อก LwIP แล้ว
ปิด
void Close( void )
ปิดปลายทาง
หากเป็น mState != kState_Closed
ให้ปิดปลายทางดังกล่าว โดยนำออกจากชุดปลายทางที่มีสิทธิ์สำหรับเหตุการณ์การสื่อสาร
ในระบบ LwIP ต้องไม่เรียกใช้เมธอดนี้เมื่อได้สแต็กล็อก LwIP แล้ว
ฟรี
void Free( void )
ปิดปลายทางและใช้หน่วยความจำอีกครั้ง
เรียกใช้เมธอด Close
แล้วเรียกใช้เมธอด InetLayerBasis::Release
เพื่อส่งคืนออบเจ็กต์ไปยังพูลหน่วยความจำ
ในระบบ LwIP ต้องไม่เรียกใช้เมธอดนี้เมื่อได้สแต็กล็อก LwIP แล้ว
GetBoundInterface
InterfaceId GetBoundInterface( void )
รับอินเทอร์เฟซที่เชื่อมโยงบนปลายทางนี้
รายละเอียด | |
---|---|
การคืนสินค้า |
InterfaceId รหัสอินเทอร์เฟซที่เชื่อมโยง
|
ฟัง
INET_ERROR Listen( void )
เตรียมปลายทางเพื่อรับข้อความ ICMP
หาก 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 )
ส่งข้อความ ICMP ไปยังที่อยู่ปลายทางที่ระบุ
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 ในกลุ่มเครือข่าย
ใช้พารามิเตอร์การกรอง ICMPv6 สำหรับรหัสใน aICMPTypes
กับปลายทางเบื้องหลังในสแต็กเครือข่ายของระบบ
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
ผลลัพธ์ |
|