nl::Inet::TunEndPoint

#include <src/inet/TunEndPoint.h>

이 클래스의 객체는 터널 인터페이스를 나타냅니다.

요약

Nest Inet 레이어는 Weave 터널 에이전트를 지원하는 IP-in-IP 터널링 메커니즘을 사용하여 POSIX 시스템과 LwIP 시스템에서 모두 상호작용하는 메서드를 캡슐화합니다.

상속

상속 출처: 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

기본 터널의 기본 동적 상태입니다.

객체는 'open' 상태에서 초기화됩니다. '닫힘' 상태가 되는 것입니다.

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

기본 터널의 기본 동적 상태입니다.

객체는 'open' 상태에서 초기화됩니다. '닫힘' 상태가 되는 것입니다.

공개 함수

무료

void Free(
  void
)

터널을 닫고 객체의 핸들을 해제합니다.

터널 유사 인터페이스 기기를 닫고 InetLayer 객체의 참조 수를 줄입니다.

GetTunnelInterfaceId

InterfaceId GetTunnelInterfaceId(
  void
)

터널 인터페이스 식별자를 가져옵니다.

세부정보
반환
터널 인터페이스 식별자입니다.

Init

void Init(
  InetLayer *inetLayer
)

Tunnel EndPoint 객체를 초기화합니다.

세부정보
매개변수
[in] inetLayer
터널 엔드포인트를 만든 Inet 레이어 객체에 대한 포인터입니다.

InterfaceDown

INET_ERROR InterfaceDown(
  void
)

터널 인터페이스를 비활성화합니다.

세부정보
반환 값
INET_NO_ERROR
성공: 터널 인터페이스가 비활성화되었습니다.
other
다른 시스템 또는 플랫폼 오류

InterfaceUp

INET_ERROR InterfaceUp(
  void
)

터널 인터페이스를 활성화합니다.

세부정보
반환 값
INET_NO_ERROR
성공: 터널 인터페이스가 활성화되었습니다.
other
다른 시스템 또는 플랫폼 오류

IsInterfaceUp

bool IsInterfaceUp(
  void
) const 

터널 인터페이스의 활성화 상태를 추출합니다.

세부정보
반환
터널 인터페이스가 활성 상태인 경우 true, 그렇지 않으면 false입니다.

열기

INET_ERROR Open(
  void
)

터널 유사 인터페이스를 열고 핸들을 만듭니다.

세부정보
반환
성공 시 INET_NO_ERROR, 그렇지 않은 경우 해당 INET 매핑 OS 오류

열기

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 포인터임