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ünel 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
Temel tünelin temel dinamik durumu.
OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) typedef
void(*
Paket alma etkinlik işleyicisinin türü.
OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err) typedef
void(*
Hata etkinliği işleyicinin 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 temsilcisi.
OnReceiveError
mAppState
void *
Uygulamaya özgü durum nesnesine işaret eden.
mState
enum nl::Inet::TunEndPoint::@11
Temel tünelin temel dinamik durumu.

Kamu işlevleri

Free(void)
void
Tüneli kapatın ve nesnedeki 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 EndPoint 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)
Sözde tünel arayüzü açın ve herkese açık kullanıcı adı oluşturun.
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
Gönderilecek tun cihazına IPv6 paketi gönderin.

Herkese açık türler

@11

 @11

Temel tünelin temel dinamik durumu.

Nesneler "açık" durumda başlatılır. Geri dönüştürülmeye hazır olduklarında "kapalı" durumuna geçin.

OnPacketReceivedFunct

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

Paket alma etkinlik işleyicisinin türü.

Tünelden IPv6 paketi alındığında işlem yapılacak daha üst katmana yetki verilen kişinin türü.

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

OnReceiveErrorFunct

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

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

Tünelden bir IPv6 paketi işlenirken hata oluşması durumunda işlem yapılacak daha üst katmana yetki verilen kişinin 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 numaralanmış türün değerleri, kapsüllenmiş tünel için rota ayarlanırken kullanılır.

Özellikler
kRouteTunIntf_Add

Bir önek için rota ekleyin.

kRouteTunIntf_Del

Ön ekin yolunu kaldırın.

RouteOp

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

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

Bu numaralanmış 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 temsilcisi.

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

Uygulamaya özgü durum nesnesine işaret eden.

mState

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

Temel tünelin temel dinamik durumu.

Nesneler "açık" durumda başlatılır. Geri dönüştürülmeye hazır olduklarında "kapalı" durumuna geçin.

Kamu işlevleri

Ücretsiz

void Free(
  void
)

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

Tünel yapay 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ı.

Başlat

void Init(
  InetLayer *inetLayer
)

Tünel EndPoint nesnesini başlatın.

Ayrıntılar
Parametreler
[in] inetLayer
Tünel EndPoint'i oluşturan Inet katman nesnesine işaret eden bir işaretçi.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

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

Ayrıntılar
Döndürülen Değerler
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
Döndürülen Değerler
INET_NO_ERROR
Başarı: 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
)

Sözde tünel arayüzü açın ve herkese açık kullanıcı adı oluşturun.

Ayrıntılar
İadeler
Başarılı INET_NO_ERROR, aksi takdirde karşılık gelen bir INET eşlenmiş OS hatası.

INET_ERROR Open(
  const char *intfName
)

Gönder

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

Gönderilecek tun cihazına IPv6 paketi gönderin.

Ayrıntılar
Parametreler
[in] message
göndermek için IPv6 paketini tanımlar.
Döndürülen Değerler
INET_NO_ERROR
başarıya: paket kapsüllendi ve gönderilmek üzere sıraya alındı
INET_ERROR_NOT_SUPPORTED
IP sürüm 6 olmayan paket
INET_ERROR_BAD_ARGS
message NULL puanlık bir sayı