nl::Inet::TunEndPoint

#include <src/inet/TunEndPoint.h>

Bu sınıfın nesneleri tünel arayüzlerini temsil eder.

Özet

Nest Inet Katman, Weave tünel aracısını desteklemek için IP-in-IP tünelleme mekanizmasıyla hem POSIX sistemleri hem de LwIP sistemleriyle etkileşim kurma yöntemlerini içerir.

Devralma

Devralındığı kaynak: nl::Inet::EndPointBasis

Herkese açık türler

@11 enum
Alt tünelin temel dinamik durumu.
OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) typedef
void(*
Paket alma etkinlik işleyicinin türü.
OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err) typedef
void(*
Hata etkinliği işleyici türü.
RouteOp{
  kRouteTunIntf_Add = 0,
  kRouteTunIntf_Del = 1
}
enum
Tünel arayüzüne rota ayarlanırken yapılan işlem.
RouteOp typedef
Tünel arayüzüne rota ayarlanırken yapılan işlem.

Herkese açık özellikler

OnPacketReceived
Uç noktanın paket alma etkinlik işleyici yetkisi.
OnReceiveError
mAppState
void *
Uygulamaya özel durum nesnesinin işaretçisi.
mState
enum nl::Inet::TunEndPoint::@11
Alt tünelin temel dinamik durumu.

Herkese açık işlevler

Free(void)
void
Tüneli kapatın ve nesnenin üzerindeki tutma yerini bırakın.
GetTunnelInterfaceId(void)
InterfaceId
Tünel arayüzü tanımlayıcısını alın.
Init(InetLayer *inetLayer)
void
Tünel Uç Noktası nesnesini başlatın.
InterfaceDown(void)
Tünel arayüzünü devre dışı bırakın.
InterfaceUp(void)
Tünel arayüzünü etkinleştirin.
IsInterfaceUp(void) const
bool
Tünel arayüzünün etkinleştirme durumunu çıkarın.
Open(void)
Bir tünel sanal arayüzü açın ve bunun için bir tutma yeri oluşturun.
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
Göndermek için tun cihazına bir IPv6 paketi gönderin.

Herkese açık türler

@11

 @11

Alt tünelin temel dinamik durumu.

Nesneler "açık" konumda başlatılır "closed" (kapalı) bölümüne geçin geri dönüştürülmeye hazır olduklarında gösterilir.

OnPacketReceivedFunct

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

Paket alma etkinlik işleyicinin türü.

Tünelden IPv6 paketi alındığında işlem yapacak daha yüksek bir katmana yetki türü.

Ayrıntılar
Parametreler
[in] endPoint
TunEndPoint nesnesinin işaretçisi.
[in] message
Weave::System::PacketBuffer mesaj nesnesinin işaretçisi.

OnReceiveErrorFunct

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

Hata etkinliği işleyici türü.

Tünelden IPv6 paketi işlenirken hatayla karşılaşıldığında işlem yapacak daha yüksek bir katmana yetki türü.

Ayrıntılar
Parametreler
[in] endPoint
TunEndPoint nesnesi.
[in] err
Hata kodu bildirildi.

RouteOp

 RouteOp

Tünel arayüzüne rota ayarlanırken yapılan işlem.

Bu numaralandırılmış türün değerleri, kapsüllenmiş tünel için rota ayarlanırken kullanılır.

Özellikler
kRouteTunIntf_Add

Önek için yol ekleyin.

kRouteTunIntf_Del

Önek için yolu kaldırın.

RouteOp

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

Tünel arayüzüne rota ayarlanırken yapılan işlem.

Bu numaralandırılmış türün değerleri, kapsüllenmiş tünel için rota ayarlanırken kullanılır.

Herkese açık özellikler

OnPacketReceived

OnPacketReceivedFunct OnPacketReceived

Uç noktanın paket alma etkinlik işleyici yetkisi.

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

Uygulamaya özel durum nesnesinin işaretçisi.

mState

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

Alt tünelin temel dinamik durumu.

Nesneler "açık" konumda başlatılır "closed" (kapalı) bölümüne geçin geri dönüştürülmeye hazır olduklarında gösterilir.

Herkese açık işlevler

Ücretsiz

void Free(
  void
)

Tüneli kapatın ve nesnenin üzerindeki tutma yerini bırakın.

Tünel sözde arayüz cihazını kapatın ve InetLayer nesnesinin referans sayısını azaltın.

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

Tünel arayüzü tanımlayıcısını alın.

Ayrıntılar
İadeler
Tünel arayüzü tanımlayıcısı.

Init

void Init(
  InetLayer *inetLayer
)

Tünel Uç Noktası nesnesini başlatın.

Ayrıntılar
Parametreler
[in] inetLayer
Tunnel EndPoint'i oluşturan Inet katmanı nesnesinin işaretçisi.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

Tünel arayüzünü devre dışı bırakın.

Ayrıntılar
Değerleri Döndür
INET_NO_ERROR
başarılı: tünel arayüzü devre dışı bırakıldı.
other
başka bir sistem veya platform hatası

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

Tünel arayüzünü etkinleştirin.

Ayrıntılar
Değerleri Döndür
INET_NO_ERROR
başarılı: tünel arayüzü etkinleştirildi.
other
başka bir sistem veya platform hatası

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

Tünel arayüzünün etkinleştirme durumunu çıkarın.

Ayrıntılar
İadeler
Tünel arayüzü etkinse true, aksi takdirde false.

INET_ERROR Open(
  void
)

Bir tünel sanal arayüzü açın ve bunun için bir tutma yeri oluşturun.

Ayrıntılar
İadeler
Başarıda INET_NO_ERROR, aksi takdirde INET eşlenmiş işletim sistemi hatası.

INET_ERROR Open(
  const char *intfName
)

Gönder

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

Göndermek için tun cihazına bir IPv6 paketi gönderin.

Ayrıntılar
Parametreler
[in] message
gereken IPv6 paketini girin.
Değerleri Döndür
INET_NO_ERROR
başarılı: paket kapsüllenmiş ve gönderilmek üzere sıraya alındı
INET_ERROR_NOT_SUPPORTED
paket, IP sürüm 6 değil
INET_ERROR_BAD_ARGS
message, NULL sayıyla atış yaptı.