nl:: اینت:: TunEndPoint

#include <src/inet/TunEndPoint.h>

اشیاء این کلاس رابط های تونل را نشان می دهند.

خلاصه

Nest Inet Layer روش‌هایی را برای تعامل در هر دو سیستم POSIX و سیستم‌های LwIP با مکانیسم تونل IP-in-IP برای پشتیبانی از عامل تونل Weave محصور می‌کند.

ارث

از: 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)
یک رابط شبه تونل را باز کنید و یک دسته برای آن ایجاد کنید.
Open (const char *intfName)
Send ( Weave::System::PacketBuffer *message)
یک بسته IPv6 را به دستگاه tun ارسال کنید تا ارسال شود.

انواع عمومی

@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
)

تونل را ببندید و دستگیره را روی جسم رها کنید.

دستگاه واسط شبه تونل را ببندید و تعداد مرجع شی InetLayer را کاهش دهید.

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

شناسه رابط تونل را دریافت کنید.

جزئیات
برمی گرداند
شناسه رابط تونل.

شروع کنید

void Init(
  InetLayer *inetLayer
)

شی Tunnel EndPoint را مقداردهی اولیه کنید.

جزئیات
پارامترها
[in] inetLayer
یک اشاره گر به شی لایه Inet که Tunnel EndPoint را ایجاد کرد.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

رابط تونل را غیرفعال کنید.

جزئیات
ارزش های بازگشتی
INET_NO_ERROR
موفقیت: رابط تونل غیرفعال است.
other
یک خطای سیستم یا پلتفرم دیگر

رابط کاربری

INET_ERROR InterfaceUp(
  void
)

رابط تونل را فعال کنید.

جزئیات
ارزش های بازگشتی
INET_NO_ERROR
موفقیت: رابط تونل فعال است.
other
یک خطای سیستم یا پلتفرم دیگر

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

حالت فعال سازی رابط تونل را استخراج کنید.

جزئیات
برمی گرداند
true اگر رابط تونل فعال باشد، در غیر این صورت false .

باز کنید

INET_ERROR Open(
  void
)

یک رابط شبه تونل را باز کنید و یک دسته برای آن ایجاد کنید.

جزئیات
برمی گرداند
INET_NO_ERROR در صورت موفقیت، در غیر این صورت یک خطای مربوط به INET نقشه‌برداری شده سیستم عامل.

باز کنید

INET_ERROR Open(
  const char *intfName
)

ارسال کنید

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

یک بسته IPv6 را به دستگاه tun ارسال کنید تا ارسال شود.

جزئیات
پارامترها
[in] message
بسته IPv6 برای ارسال
ارزش های بازگشتی
INET_NO_ERROR
موفقیت: بسته کپسوله شده و در صف ارسال می شود
INET_ERROR_NOT_SUPPORTED
بسته نه IP نسخه 6
INET_ERROR_BAD_ARGS
message یک اشاره گر NULL است