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
เริ่มต้นออบเจ็กต์ EndPoint ของ Tunnel
InterfaceDown(void)
ปิดใช้งานอินเทอร์เฟซอุโมงค์ข้อมูล
InterfaceUp(void)
เปิดใช้งานอินเทอร์เฟซ Tunnel
IsInterfaceUp(void) const
bool
ดึงข้อมูลสถานะการเปิดใช้งานของอินเทอร์เฟซทันเนล
Open(void)
เปิดอินเทอร์เฟซเทียมของ Tunnel และสร้างแฮนเดิลขึ้นมา
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
ส่งแพ็กเก็ต IPv6 ไปยังอุปกรณ์ปรับแต่งเพื่อส่งออก

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

@11

 @11

สถานะไดนามิกพื้นฐานของอุโมงค์ข้อมูลเบื้องหลัง

ออบเจ็กต์จะเริ่มในสถานะ "เปิด" และไปยังสถานะ "ปิด" เมื่อพร้อมสำหรับการรีไซเคิล

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

สถานะไดนามิกพื้นฐานของอุโมงค์ข้อมูลเบื้องหลัง

ออบเจ็กต์จะเริ่มในสถานะ "เปิด" และไปยังสถานะ "ปิด" เมื่อพร้อมสำหรับการรีไซเคิล

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

ฟรี

void Free(
  void
)

ปิดอุโมงค์และที่จับสำหรับวัตถุ

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

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

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

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

เริ่มต้น

void Init(
  InetLayer *inetLayer
)

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

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

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

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

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

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

เปิดใช้งานอินเทอร์เฟซ Tunnel

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

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

ดึงข้อมูลสถานะการเปิดใช้งานของอินเทอร์เฟซทันเนล

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

เปิด

INET_ERROR Open(
  void
)

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

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

เปิด

INET_ERROR Open(
  const char *intfName
)

ส่ง

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

ส่งแพ็กเก็ต IPv6 ไปยังอุปกรณ์ปรับแต่งเพื่อส่งออก

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