nl::Inet::TunEndPoint

#include <src/inet/TunEndPoint.h>

Obiekty tej klasy reprezentują interfejsy tunelu.

Podsumowanie

Nest Inet Layer zawiera metody interakcji zarówno z systemami POSIX, jak i z systemami LwIP, z mechanizmem tunelowania IP-in-IP do obsługi agenta tunelu Weave.

Dziedziczenie

Dziedziczy z: nl::Inet::EndPointBasis

Typy publiczne

@11 enum | typ wyliczeniowy
Podstawowy stan dynamiczny bazowego tunelu.
OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) typedef
void(*
Typ modułu obsługi zdarzeń odbioru pakietów.
OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err) typedef
void(*
Typ modułu obsługi zdarzeń błędu.
RouteOp{
  kRouteTunIntf_Add = 0,
  kRouteTunIntf_Del = 1
}
enum | typ wyliczeniowy
Operacja podczas ustawiania trasy do interfejsu tunelu.
RouteOp typedef
Operacja podczas ustawiania trasy do interfejsu tunelu.

Atrybuty publiczne

OnPacketReceived
Delegat modułu obsługi zdarzeń odbierania pakietów w punkcie końcowym.
OnReceiveError
mAppState
void *
Wskaźnik do obiektu stanu specyficznego dla aplikacji.
mState
enum nl::Inet::TunEndPoint::@11
Podstawowy stan dynamiczny bazowego tunelu.

Funkcje publiczne

Free(void)
void
Zamknij tunel i zwolnij uchwyt obiektu.
GetTunnelInterfaceId(void)
InterfaceId
Pobierz identyfikator interfejsu tunelu.
Init(InetLayer *inetLayer)
void
Zainicjuj obiekt Tunnel EndPoint.
InterfaceDown(void)
Dezaktywuj interfejs tunelu.
InterfaceUp(void)
Aktywuj interfejs tunelu.
IsInterfaceUp(void) const
bool
Wyodrębnij stan aktywacji interfejsu tunelu.
Open(void)
Otwórz pseudointerfejs tunelu i utwórz do niego nick.
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
Wyślij pakiet IPv6 do urządzenia tun, aby go wysłać.

Typy publiczne

@11

 @11

Podstawowy stan dynamiczny bazowego tunelu.

Obiekty są zainicjowane w stanie „otwarty”. Gdy są gotowe do ponownego recyklingu, przechodzą do stanu „zamknięte”.

OnPacketReceivedFunct

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

Typ modułu obsługi zdarzeń odbioru pakietów.

Typ delegata do wyższej warstwy, który może działać po odebraniu pakietu IPv6 z tunelu.

Szczegóły
Parametry
[in] endPoint
Wskaźnik do obiektu TunEndPoint.
[in] message
Wskaźnik do obiektu komunikatu Weave::System::PacketBuffer.

OnReceiveErrorFunct

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

Typ modułu obsługi zdarzeń błędu.

Typ delegata do wyższego poziomu, który ma wykonać działanie w przypadku błędu podczas przetwarzania pakietu IPv6 z tunelu.

Szczegóły
Parametry
[in] endPoint
Obiekt TunEndPoint.
[in] err
Zgłoszono kod błędu.

RouteOp

 RouteOp

Operacja podczas ustawiania trasy do interfejsu tunelu.

Wartości tego typu wyliczanego są używane podczas ustawiania trasy dla zamkniętego tunelu.

Właściwości
kRouteTunIntf_Add

Dodaj trasę dla prefiksu.

kRouteTunIntf_Del

Usuń trasę dla prefiksu.

RouteOp

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

Operacja podczas ustawiania trasy do interfejsu tunelu.

Wartości tego typu wyliczanego są używane podczas ustawiania trasy dla zamkniętego tunelu.

Atrybuty publiczne

OnPacketReceived

OnPacketReceivedFunct OnPacketReceived

Delegat modułu obsługi zdarzeń odbierania pakietów w punkcie końcowym.

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

Wskaźnik do obiektu stanu specyficznego dla aplikacji.

mState

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

Podstawowy stan dynamiczny bazowego tunelu.

Obiekty są zainicjowane w stanie „otwarty”. Gdy są gotowe do ponownego recyklingu, przechodzą do stanu „zamknięte”.

Funkcje publiczne

bezpłatnie

void Free(
  void
)

Zamknij tunel i zwolnij uchwyt obiektu.

Zamknij urządzenie pseudointerfejsu tunelu i zmniejsz liczbę odwołań do obiektu InetLayer.

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

Pobierz identyfikator interfejsu tunelu.

Szczegóły
Zwroty
Identyfikator interfejsu tunelu.

Zainicjuj

void Init(
  InetLayer *inetLayer
)

Zainicjuj obiekt Tunnel EndPoint.

Szczegóły
Parametry
[in] inetLayer
Wskaźnik do obiektu warstwy Inet, który utworzył punkt końcowy tunelu.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

Dezaktywuj interfejs tunelu.

Szczegóły
Zwracane wartości
INET_NO_ERROR
powodzenie: interfejs tunelu jest zdezaktywowany.
other
błąd innego systemu lub platformy

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

Aktywuj interfejs tunelu.

Szczegóły
Zwracane wartości
INET_NO_ERROR
sukces: interfejs tunelu został aktywowany.
other
błąd innego systemu lub platformy

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

Wyodrębnij stan aktywacji interfejsu tunelu.

Szczegóły
Zwroty
true, jeśli interfejs tunelu jest aktywny. W przeciwnym razie false.

Otwórz

INET_ERROR Open(
  void
)

Otwórz pseudointerfejs tunelu i utwórz do niego nick.

Szczegóły
Zwroty
INET_NO_ERROR w przypadku powodzenia, w przeciwnym razie odpowiedni błąd systemu operacyjnego zmapowanego przez INET.

Otwórz

INET_ERROR Open(
  const char *intfName
)

Wyślij

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

Wyślij pakiet IPv6 do urządzenia tun, aby go wysłać.

Szczegóły
Parametry
[in] message
pakiet IPv6 do wysłania.
Zwracane wartości
INET_NO_ERROR
udane: pakiet został zamknięty i umieszczony w kolejce do wysłania
INET_ERROR_NOT_SUPPORTED
pakiet inny niż adres IP w wersji 6
INET_ERROR_BAD_ARGS
message zdobywa wskaźnik NULL