nl::Inet::TunEndPoint

#include <src/inet/TunEndPoint.h>

Objek di class ini merepresentasikan antarmuka tunnel.

Ringkasan

Nest Inet Layer mengenkapsulasi metode untuk berinteraksi pada sistem POSIX dan sistem LwIP dengan mekanisme tunneling IP-in-IP untuk mendukung agen tunnel Weave.

Inheritance

Mewarisi dari: nl::Inet::EndPointBasis

Jenis publik

@11 enum
Status dinamis dasar tunnel yang mendasarinya.
OnPacketReceivedFunct)(TunEndPoint *endPoint, Weave::System::PacketBuffer *message) typedef
void(*
Jenis pengendali peristiwa penerimaan paket.
OnReceiveErrorFunct)(TunEndPoint *endPoint, INET_ERROR err) typedef
void(*
Jenis pengendali peristiwa error.
RouteOp{
  kRouteTunIntf_Add = 0,
  kRouteTunIntf_Del = 1
}
enum
Operasi saat menetapkan rute ke antarmuka tunnel.
RouteOp typedef
Operasi saat menetapkan rute ke antarmuka tunnel.

Atribut publik

OnPacketReceived
Paket endpoint akan menerima delegasi pengendali peristiwa.
OnReceiveError
mAppState
void *
Pointer ke objek status khusus aplikasi.
mState
enum nl::Inet::TunEndPoint::@11
Status dinamis dasar tunnel yang mendasarinya.

Fungsi publik

Free(void)
void
Tutup tunnel dan lepaskan handle pada objek.
GetTunnelInterfaceId(void)
InterfaceId
Mendapatkan ID antarmuka tunnel.
Init(InetLayer *inetLayer)
void
Lakukan inisialisasi objek Tunnel EndPoint.
InterfaceDown(void)
Nonaktifkan antarmuka tunnel.
InterfaceUp(void)
Aktifkan antarmuka tunnel.
IsInterfaceUp(void) const
bool
Ekstrak status aktivasi antarmuka tunnel.
Open(void)
Buka antarmuka semu tunnel dan buat handle untuknya.
Open(const char *intfName)
Send(Weave::System::PacketBuffer *message)
Kirim paket IPv6 ke perangkat tun yang akan dikirim.

Jenis publik

@11

 @11

Status dinamis dasar tunnel yang mendasarinya.

Objek diinisialisasi dalam folder "open" status, lanjutkan ke status "tertutup" menyatakan kapan data tersebut siap untuk didaur ulang.

OnPacketReceivedFunct

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

Jenis pengendali peristiwa penerimaan paket.

Jenis delegasi ke lapisan yang lebih tinggi untuk bertindak setelah menerima paket IPv6 dari tunnel.

Detail
Parameter
[in] endPoint
Pointer ke objek TunEndPoint.
[in] message
Pointer ke objek pesan Weave::System::PacketBuffer.

OnReceiveErrorFunct

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

Jenis pengendali peristiwa error.

Jenis delegasi ke lapisan yang lebih tinggi untuk bertindak setelah error memproses paket IPv6 dari tunnel.

Detail
Parameter
[in] endPoint
Objek TunEndPoint.
[in] err
Kode error dilaporkan.

RouteOp

 RouteOp

Operasi saat menetapkan rute ke antarmuka tunnel.

Nilai jenis yang dienumerasi ini digunakan saat menetapkan rute untuk tunnel yang dienkapsulasi.

Properti
kRouteTunIntf_Add

Tambahkan rute untuk awalan.

kRouteTunIntf_Del

Hapus rute untuk awalan.

RouteOp

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

Operasi saat menetapkan rute ke antarmuka tunnel.

Nilai jenis yang dienumerasi ini digunakan saat menetapkan rute untuk tunnel yang dienkapsulasi.

Atribut publik

OnPacketReceived

OnPacketReceivedFunct OnPacketReceived

Paket endpoint akan menerima delegasi pengendali peristiwa.

OnReceiveError

OnReceiveErrorFunct OnReceiveError

mAppState

void * mAppState

Pointer ke objek status khusus aplikasi.

mState

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

Status dinamis dasar tunnel yang mendasarinya.

Objek diinisialisasi dalam folder "open" status, lanjutkan ke status "tertutup" menyatakan kapan data tersebut siap untuk didaur ulang.

Fungsi publik

Gratis

void Free(
  void
)

Tutup tunnel dan lepaskan handle pada objek.

Tutup perangkat antarmuka semu tunnel dan mengurangi jumlah referensi objek InetLayer.

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

Mendapatkan ID antarmuka tunnel.

Detail
Hasil
ID antarmuka tunnel.

Init

void Init(
  InetLayer *inetLayer
)

Lakukan inisialisasi objek Tunnel EndPoint.

Detail
Parameter
[in] inetLayer
Pointer ke objek lapisan Inet yang membuat Tunnel EndPoint.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

Nonaktifkan antarmuka tunnel.

Detail
Nilai yang Ditampilkan
INET_NO_ERROR
berhasil: antarmuka tunnel dinonaktifkan.
other
error sistem atau platform lain

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

Aktifkan antarmuka tunnel.

Detail
Nilai yang Ditampilkan
INET_NO_ERROR
berhasil: antarmuka tunnel diaktifkan.
other
error sistem atau platform lain

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

Ekstrak status aktivasi antarmuka tunnel.

Detail
Hasil
true jika antarmuka tunnel aktif, jika tidak, false.

Buka

INET_ERROR Open(
  void
)

Buka antarmuka semu tunnel dan buat handle untuknya.

Detail
Hasil
INET_NO_ERROR jika berhasil, atau error OS yang dipetakan INET terkait.

Buka

INET_ERROR Open(
  const char *intfName
)

Kirim

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

Kirim paket IPv6 ke perangkat tun yang akan dikirim.

Detail
Parameter
[in] message
paket IPv6 yang akan dikirim.
Nilai yang Ditampilkan
INET_NO_ERROR
sukses: paket dienkapsulasi dan diantrekan untuk dikirim
INET_ERROR_NOT_SUPPORTED
paket bukan IP versi 6
INET_ERROR_BAD_ARGS
message adalah pointer NULL