nl::Inet::TunEndPoint

#include <src/inet/TunEndPoint.h>

ออบเจ็กต์ของคลาสนี้แสดงอินเทอร์เฟซอุโมงค์ข้อมูล

สรุป

Nest Inet Layer สรุปวิธีการโต้ตอบทั้งในระบบ POSIX และระบบ LwIP กับกลไกอุโมงค์เสมือน IP-in-IP สำหรับรองรับ Agent ของ Weave Tunnel

การสืบทอด

รับค่าจาก: nl::Inet::EndPointBasis

ประเภทสาธารณะ

@11 enum
สถานะไดนามิกพื้นฐานของอุโมงค์ข้อมูลที่เกี่ยวข้อง
OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) Typedef
void(*
ประเภทของเครื่องจัดการเหตุการณ์การรับแพ็กเก็ต
OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err) Typedef
void(*
ประเภทของเครื่องจัดการเหตุการณ์ข้อผิดพลาด
RouteOp{
  kRouteTunIntf_Add = 0,
  kRouteTunIntf_Del = 1
}
enum
การทำงานเมื่อตั้งค่าเส้นทางไปยังอินเทอร์เฟซอุโมงค์ข้อมูล
RouteOp Typedef
การทำงานเมื่อตั้งค่าเส้นทางไปยังอินเทอร์เฟซอุโมงค์ข้อมูล

แอตทริบิวต์สาธารณะ

OnPacketReceived
ผู้รับมอบสิทธิ์เครื่องจัดการเหตุการณ์ของการรับแพ็กเก็ตปลายทาง
OnReceiveError
mAppState
void *
ชี้ไปที่ออบเจ็กต์สถานะเฉพาะแอปพลิเคชัน
mState
enum nl::Inet::TunEndPoint::@11
สถานะไดนามิกพื้นฐานของอุโมงค์ข้อมูลที่เกี่ยวข้อง

ฟังก์ชันสาธารณะ

Free(void)
void
ปิดอุโมงค์ข้อมูลและแฮนเดิลสำหรับปล่อยออบเจ็กต์
GetTunnelInterfaceId(void)
InterfaceId
รับตัวระบุอินเทอร์เฟซของอุโมงค์ข้อมูล
Init(InetLayer *inetLayer)
void
เริ่มต้นออบเจ็กต์ Tunnel EndPoint
InterfaceDown(void)
ปิดใช้งานอินเทอร์เฟซอุโมงค์ข้อมูล
InterfaceUp(void)
เปิดใช้งานอินเทอร์เฟซอุโมงค์ข้อมูล
IsInterfaceUp(void) const
bool
แยกสถานะการเปิดใช้งานของอินเทอร์เฟซอุโมงค์ข้อมูล
Open(void)
เปิดอินเทอร์เฟซเทียมของ Tunnel และสร้างแฮนเดิล
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
ส่งแพ็กเก็ต IPv6 ไปยังอุปกรณ์ Tunnel ที่จะส่งออก

ประเภทสาธารณะ

@11

 @11

สถานะไดนามิกพื้นฐานของอุโมงค์ข้อมูลที่เกี่ยวข้อง

เริ่มต้นออบเจ็กต์ในส่วน "open" สถานะ ให้ไปที่ "ปิด" เมื่อพร้อมจะรีไซเคิล

OnPacketReceivedFunct

void(* OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message)

ประเภทของเครื่องจัดการเหตุการณ์การรับแพ็กเก็ต

ประเภทการมอบสิทธิ์ไปยังเลเยอร์ที่สูงขึ้นเพื่อดำเนินการเมื่อได้รับแพ็กเก็ต IPv6 จากอุโมงค์ข้อมูล

รายละเอียด
พารามิเตอร์
[in] endPoint
ตัวชี้ไปยังออบเจ็กต์ TunEndPoint
[in] message
ตัวชี้ไปยังออบเจ็กต์ข้อความ Weave::System::PacketBuffer

OnReceiveErrorFunct

void(* OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err)

ประเภทของเครื่องจัดการเหตุการณ์ข้อผิดพลาด

ประเภทการมอบสิทธิ์ไปยังเลเยอร์ที่สูงขึ้นเพื่อดำเนินการกับข้อผิดพลาดในการประมวลผลแพ็กเก็ต IPv6 จากอุโมงค์ข้อมูล

รายละเอียด
พารามิเตอร์
[in] endPoint
ออบเจ็กต์ TunEndPoint
[in] err
รายงานรหัสข้อผิดพลาดแล้ว

RouteOp

 RouteOp

การทำงานเมื่อตั้งค่าเส้นทางไปยังอินเทอร์เฟซอุโมงค์ข้อมูล

ค่าของประเภทการแจกแจงนี้จะนำไปใช้เมื่อตั้งค่าเส้นทางสำหรับอุโมงค์ข้อมูลที่ครอบคลุม

พร็อพเพอร์ตี้
kRouteTunIntf_Add

เพิ่มเส้นทางเป็นคำนำหน้า

kRouteTunIntf_Del

นำเส้นทางสำหรับคำนำหน้าออก

RouteOp

enum nl::Inet::TunEndPoint::RouteOp RouteOp

การทำงานเมื่อตั้งค่าเส้นทางไปยังอินเทอร์เฟซอุโมงค์ข้อมูล

ค่าของประเภทการแจกแจงนี้จะนำไปใช้เมื่อตั้งค่าเส้นทางสำหรับอุโมงค์ข้อมูลที่ครอบคลุม

แอตทริบิวต์สาธารณะ

OnPacketReceived

OnPacketReceivedFunct OnPacketReceived

ผู้รับมอบสิทธิ์เครื่องจัดการเหตุการณ์ของการรับแพ็กเก็ตปลายทาง

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

ชี้ไปที่ออบเจ็กต์สถานะเฉพาะแอปพลิเคชัน

mState

enum nl::Inet::TunEndPoint::@11 mState

สถานะไดนามิกพื้นฐานของอุโมงค์ข้อมูลที่เกี่ยวข้อง

เริ่มต้นออบเจ็กต์ในส่วน "open" สถานะ ให้ไปที่ "ปิด" เมื่อพร้อมจะรีไซเคิล

ฟังก์ชันสาธารณะ

ฟรี

void Free(
  void
)

ปิดอุโมงค์ข้อมูลและแฮนเดิลสำหรับปล่อยออบเจ็กต์

ปิดอุปกรณ์อินเทอร์เฟซจำลองอุโมงค์และลดจำนวนการอ้างอิงของออบเจ็กต์ InetLayer

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

รับตัวระบุอินเทอร์เฟซของอุโมงค์ข้อมูล

รายละเอียด
การคืนสินค้า
ตัวระบุอินเทอร์เฟซอุโมงค์ข้อมูล

Init

void Init(
  InetLayer *inetLayer
)

เริ่มต้นออบเจ็กต์ Tunnel EndPoint

รายละเอียด
พารามิเตอร์
[in] inetLayer
ตัวชี้ไปยังออบเจ็กต์เลเยอร์ Inet ที่สร้าง EndPoint ของ Tunnel

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

ปิดใช้งานอินเทอร์เฟซอุโมงค์ข้อมูล

รายละเอียด
ผลลัพธ์
INET_NO_ERROR
สำเร็จ: อินเทอร์เฟซอุโมงค์ข้อมูลถูกปิดใช้งาน
other
ข้อผิดพลาดของระบบหรือแพลตฟอร์มอื่น

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

เปิดใช้งานอินเทอร์เฟซอุโมงค์ข้อมูล

รายละเอียด
ผลลัพธ์
INET_NO_ERROR
สำเร็จ: เปิดใช้งานอินเทอร์เฟซ Tunnel แล้ว
other
ข้อผิดพลาดของระบบหรือแพลตฟอร์มอื่น

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

แยกสถานะการเปิดใช้งานของอินเทอร์เฟซอุโมงค์ข้อมูล

รายละเอียด
การคืนสินค้า
true หากอินเทอร์เฟซของอุโมงค์ข้อมูลทำงานอยู่ มิฉะนั้นจะเป็น false

เปิด

INET_ERROR Open(
  void
)

เปิดอินเทอร์เฟซเทียมของ Tunnel และสร้างแฮนเดิล

รายละเอียด
การคืนสินค้า
INET_NO_ERROR สำหรับสำเร็จ แต่เป็นข้อผิดพลาดของระบบปฏิบัติการแมปที่ INET ที่เกี่ยวข้อง

เปิด

INET_ERROR Open(
  const char *intfName
)

ส่ง

INET_ERROR Send(
  Weave::System::PacketBuffer *message
)

ส่งแพ็กเก็ต IPv6 ไปยังอุปกรณ์ Tunnel ที่จะส่งออก

รายละเอียด
พารามิเตอร์
[in] message
แพ็กเก็ต IPv6 ที่จะส่ง
ผลลัพธ์
INET_NO_ERROR
สำเร็จ: แพ็คเก็ตได้รับการห่อหุ้มและอยู่ในคิวที่จะส่ง
INET_ERROR_NOT_SUPPORTED
แพ็กเก็ตไม่ใช่ IP เวอร์ชัน 6
INET_ERROR_BAD_ARGS
message เป็นคะแนนของ NULL