nl::Inet::TunEndPoint

#include <src/inet/TunEndPoint.h>

Các đối tượng của lớp này đại diện cho giao diện đường hầm.

Tóm tắt

Lớp Nest Inet đóng gói các phương pháp để tương tác trên cả hệ thống POSIX và hệ thống LwIP với cơ chế tạo đường hầm IP-in-IP để hỗ trợ tác nhân đường hầm Weave.

Tính kế thừa

Kế thừa từ: nl::Inet::EndPointBasis

Loại công khai

@11 enum
Trạng thái động cơ bản của đường hầm bên dưới.
OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) typedef
void(*
Loại trình xử lý sự kiện nhận gói tin.
OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err) typedef
void(*
Loại trình xử lý sự kiện lỗi.
RouteOp{
  kRouteTunIntf_Add = 0,
  kRouteTunIntf_Del = 1
}
enum
Thao tác khi thiết lập giao diện định tuyến đến đường hầm.
RouteOp typedef
Thao tác khi thiết lập giao diện định tuyến đến đường hầm.

Thuộc tính công khai

OnPacketReceived
Gói nhận trình xử lý sự kiện uỷ quyền của điểm cuối.
OnReceiveError
mAppState
void *
Con trỏ đến đối tượng trạng thái dành riêng cho ứng dụng.
mState
enum nl::Inet::TunEndPoint::@11
Trạng thái động cơ bản của đường hầm bên dưới.

Hàm công khai

Free(void)
void
Đóng đường hầm và tay cầm thả trên đối tượng.
GetTunnelInterfaceId(void)
InterfaceId
Lấy giá trị nhận dạng giao diện đường hầm.
Init(InetLayer *inetLayer)
void
Khởi chạy đối tượng Tunnel EndPoint.
InterfaceDown(void)
Huỷ kích hoạt giao diện đường hầm.
InterfaceUp(void)
Kích hoạt giao diện đường hầm.
IsInterfaceUp(void) const
bool
Trích xuất trạng thái kích hoạt của giao diện đường hầm.
Open(void)
Mở giao diện giả đường hầm rồi tạo trình xử lý cho giao diện đó.
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
Gửi một gói IPv6 tới thiết bị mạng để gửi đi.

Loại công khai

@11

 @11

Trạng thái động cơ bản của đường hầm bên dưới.

Các đối tượng được khởi tạo ở trạng thái "mở", chuyển sang trạng thái "đóng" khi chúng sẵn sàng được tái chế.

OnPacketReceivedFunct

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

Loại trình xử lý sự kiện nhận gói tin.

Loại uỷ quyền cho lớp cao hơn để hoạt động khi nhận được gói IPv6 từ đường hầm.

Thông tin chi tiết
Các tham số
[in] endPoint
Con trỏ đến đối tượng TunEndPoint.
[in] message
Con trỏ đến đối tượng thông báo Weave::System::PacketBuffer.

OnReceiveErrorFunct

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

Loại trình xử lý sự kiện lỗi.

Loại uỷ quyền cho lớp cao hơn để xử lý lỗi khi xử lý gói IPv6 từ đường hầm.

Thông tin chi tiết
Các tham số
[in] endPoint
Đối tượng TunEndPoint.
[in] err
Đã báo cáo mã lỗi.

RouteOp

 RouteOp

Thao tác khi thiết lập giao diện định tuyến đến đường hầm.

Giá trị của loại được liệt kê này được dùng khi thiết lập tuyến cho đường hầm được đóng gói.

Thuộc tính
kRouteTunIntf_Add

Thêm tuyến cho một tiền tố.

kRouteTunIntf_Del

Xoá tuyến đường cho một tiền tố.

RouteOp

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

Thao tác khi thiết lập giao diện định tuyến đến đường hầm.

Giá trị của loại được liệt kê này được dùng khi thiết lập tuyến cho đường hầm được đóng gói.

Thuộc tính công khai

OnPacketReceived

OnPacketReceivedFunct OnPacketReceived

Gói nhận trình xử lý sự kiện uỷ quyền của điểm cuối.

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

Con trỏ đến đối tượng trạng thái dành riêng cho ứng dụng.

mState

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

Trạng thái động cơ bản của đường hầm bên dưới.

Các đối tượng được khởi tạo ở trạng thái "mở", chuyển sang trạng thái "đóng" khi chúng sẵn sàng được tái chế.

Hàm công khai

Miễn phí

void Free(
  void
)

Đóng đường hầm và tay cầm thả trên đối tượng.

Đóng thiết bị giao diện giả đường hầm và giảm số lượng tham chiếu của đối tượng InetLayer.

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

Lấy giá trị nhận dạng giao diện đường hầm.

Thông tin chi tiết
Trả về
Giá trị nhận dạng giao diện đường hầm.

Bắt đầu

void Init(
  InetLayer *inetLayer
)

Khởi chạy đối tượng Tunnel EndPoint.

Thông tin chi tiết
Các tham số
[in] inetLayer
Con trỏ đến đối tượng lớp Inet đã tạo EndPoint của đường hầm.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

Huỷ kích hoạt giao diện đường hầm.

Thông tin chi tiết
Giá trị trả về
INET_NO_ERROR
thành công: giao diện đường hầm đã tắt.
other
lỗi hệ thống hoặc nền tảng khác

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

Kích hoạt giao diện đường hầm.

Thông tin chi tiết
Giá trị trả về
INET_NO_ERROR
thành công: giao diện đường hầm được kích hoạt.
other
lỗi hệ thống hoặc nền tảng khác

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

Trích xuất trạng thái kích hoạt của giao diện đường hầm.

Thông tin chi tiết
Trả về
true nếu giao diện đường hầm đang hoạt động, nếu không thì false.

Đang mở

INET_ERROR Open(
  void
)

Mở giao diện giả đường hầm rồi tạo trình xử lý cho giao diện đó.

Thông tin chi tiết
Trả về
INET_NO_ERROR khi thành công, nếu không thì lỗi hệ điều hành được ánh xạ INET tương ứng.

Đang mở

INET_ERROR Open(
  const char *intfName
)

Gửi

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

Gửi một gói IPv6 tới thiết bị mạng để gửi đi.

Thông tin chi tiết
Các tham số
[in] message
gói IPv6 cần gửi.
Giá trị trả về
INET_NO_ERROR
thành công: gói được đóng gói và đưa vào hàng đợi để gửi
INET_ERROR_NOT_SUPPORTED
gói không phải IP phiên bản 6
INET_ERROR_BAD_ARGS
message là một con trỏ NULL