Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

nl :: Inet :: TCPEndPoint

#include <src/inet/TCPEndPoint.h>

이 클래스의 개체는 TCP 전송 끝점을 나타냅니다.

요약

Nest Inet Layer는 TCP 전송 엔드 포인트 (Linux 및 BSD 파생 시스템의 SOCK_STREAM 소켓) 또는 LwIP TCP 프로토콜 제어 블록과 상호 작용하는 방법을 캡슐화합니다.

계승

:에서 상속 NL :: INET :: EndPointBasis

공개 유형

@10 {
kState_Ready = kBasisState_Closed,
kState_Bound = 1,
kState_Listening = 2,
kState_Connecting = 3,
kState_Connected = 4,
kState_SendShutdown = 5,
kState_ReceiveShutdown = 6,
kState_Closing = 7,
kState_Closed = 8
}
열거 형
기본 엔드 포인트의 기본 동적 상태입니다.
OnAcceptErrorFunct )(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
연결 수락 오류 이벤트 처리 기능의 유형입니다.
OnConnectCompleteFunct )(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
연결 설정 이벤트 처리 기능의 종류.
OnConnectionClosedFunct )(TCPEndPoint *endPoint, INET_ERROR err) typedef
void(*
연결 설정 이벤트 처리 기능의 종류.
OnConnectionReceivedFunct )(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort) typedef
void(*
수신 된 연결 유형 이벤트 처리 기능.
OnDataReceivedFunct )(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data) typedef
void(*
데이터 수신 이벤트 처리 기능의 종류.
OnDataSentFunct )(TCPEndPoint *endPoint, uint16_t len) typedef
void(*
데이터 전송 이벤트 처리 기능의 종류.
OnPeerCloseFunct )(TCPEndPoint *endPoint) typedef
void(*
반 폐쇄 수신 이벤트 처리 기능의 유형.
OnTCPSendIdleChangedFunct )(TCPEndPoint *endPoint, bool isIdle) typedef
void(*
TCP SendIdle의 유형이 신호 처리 기능을 변경했습니다.

공용 속성

OnAcceptError
끝점의 연결 수락 이벤트 처리 함수 대리자입니다.
OnConnectComplete
끝점의 연결 설정 이벤트 처리 기능 대리자입니다.
OnConnectionClosed
끝점의 닫기 이벤트 처리 함수 대리자입니다.
OnConnectionReceived
끝점의 연결은 이벤트 처리 함수 위임을받습니다.
OnDataReceived
끝점의 메시지 텍스트 수신 이벤트 처리 함수 대리자입니다.
OnDataSent
끝점의 메시지 텍스트 전송 이벤트 처리 함수 대리자입니다.
OnPeerClose
끝점의 반쯤 닫힌 수신 이벤트 처리 함수 대리자입니다.
OnTCPSendIdleChanged
TCP 연결의 전송 채널의 유휴 상태가 변경 될 때 신호를 보내는 끝점의 이벤트 처리 함수 위임입니다.
ReceiveEnabled
bool
응용 프로그램이 데이터를 수신하고 있는지 여부를 나타내는 제어 스위치입니다.
State
enum nl::Inet::TCPEndPoint::@10
기본 엔드 포인트의 기본 동적 상태입니다.

공공 기능

Abort (void)
void
끝점을 중단하는 방식으로 닫습니다. 즉, RST 패킷을 보냅니다.
AckReceive (uint16_t len)
메시지 텍스트 수신을 확인합니다.
Bind (IPAddressType addrType, IPAddress addr, uint16_t port, bool reuseAddr)
끝점을 인터페이스 IP 주소에 바인딩합니다.
Close (void)
즉, 송신 및 수신이 모두 완료된 TCP 전체 닫기를 시작합니다.
Connect ( IPAddress addr, uint16_t port, InterfaceId intf)
TCP 연결을 시작합니다.
DisableKeepAlive (void)
TCP "keep-alive"옵션을 비활성화합니다.
DisableReceive (void)
void
수신을 비활성화합니다.
EnableKeepAlive (uint16_t interval, uint16_t timeoutCount)
TCP "keep-alive"옵션을 활성화합니다.
EnableNoDelay (void)
EnableNoDelay.
EnableReceive (void)
void
수신을 활성화합니다.
Free (void)
void
오류를 무시하고 TCP 전체 닫기를 시작 (또는 계속)합니다.
GetLocalInfo ( IPAddress *retAddr, uint16_t *retPort)
로컬 엔드 포인트의 IP 주소와 TCP 포트를 추출합니다.
GetPeerInfo ( IPAddress *retAddr, uint16_t *retPort) const
원격 엔드 포인트의 IP 주소와 TCP 포트를 추출합니다.
IsConnected (void) const
bool
TCP 연결이 설정되었는지 여부를 추출하십시오.
Listen (uint16_t backlog)
TCP 메시지를받을 끝점을 준비합니다.
LogId (void)
uint16_t
끝점에 대한 식별자를 얻습니다.
MarkActive (void)
void
즉, 유휴 타이머를 재설정합니다.
PendingReceiveLength (void)
uint32_t
미확인 수신 데이터의 길이를 추출하십시오.
PendingSendLength (void)
uint32_t
첫 번째 전송을 기다리는 데이터의 길이를 추출합니다.
PutBackReceivedData ( Weave::System::PacketBuffer *data)
메시지 텍스트를 수신 큐의 헤드로 다시 푸시합니다.
Send ( Weave::System::PacketBuffer *data, bool push)
TCP 연결시 메시지 텍스트를 보냅니다.
SetConnectTimeout (const uint32_t connTimeoutMsecs)
void
연결이 성공하거나 오류를 반환하도록 제한 시간을 설정합니다.
SetUserTimeout (uint32_t userTimeoutMillis)
TCP TCP_USER_TIMEOUT 소켓 옵션을 설정합니다.
Shutdown (void)
TCP를 반쯤 닫으면 전송이 완료됩니다.

공개 유형

@ 10

 @10

기본 엔드 포인트의 기본 동적 상태입니다.

개체는 "준비"상태에서 초기화되고 TCP 전송 상태 시스템의 상태 단순화에 해당하는 후속 상태로 진행됩니다.

참고 : kBasisState_Closed 상태 열거을 맵 kState_Ready 역사 바이너리 호환성을 위해. 기존 kState_Closed 별도로 이전에 존재 "아직 열려 있지"과 "이전에 지금은 폐쇄 연"의 차이를 식별하기 위해 존재 kState_ReadykState_Closed 상태.

속성
kState_Bound

끝 점이 바운드되었지만 수신하지 않습니다.

kState_Closed

엔드 포인트가 닫히고 출시 준비가되었습니다.

kState_Closing

끝 점이 양방향으로 닫힙니다.

kState_Connected

끝점 연결됨, tx / rx 준비 완료.

kState_Connecting

연결을 시도하는 엔드 포인트.

kState_Listening

엔드 포인트 수신 연결.

kState_Ready

끝 점이 초기화되었지만 바인딩되지 않았습니다.

kState_ReceiveShutdown

엔드 포인트는 반쯤 마감에 응답했습니다.

kState_SendShutdown

엔드 포인트가 반 폐쇄를 시작했습니다.

OnAcceptErrorFunct

void(* OnAcceptErrorFunct)(TCPEndPoint *endPoint, INET_ERROR err)

연결 수락 오류 이벤트 처리 기능의 유형입니다.

받는 사람이 유형의 기능을 제공 OnAcceptError 에서 프로세스 연결 승인 오류 이벤트에 위임 멤버 endPoint . err 인수는 오류의 유형에 대한 구체적 세부 사항을 제공합니다.

세부
매개 변수
[in] endPoint
이벤트와 관련된 TCP 끝점입니다.
[in] err
오류의 원인입니다.

OnConnectCompleteFunct

void(* OnConnectCompleteFunct)(TCPEndPoint *endPoint, INET_ERROR err)

연결 설정 이벤트 처리 기능의 종류.

받는 사람이 유형의 기능을 제공 OnConnectComplete 에 연결 설정 이벤트를 처리 할 대리자 멤버 endPoint . err 인수는 실패에서 성공의 연결을 구분합니다.

세부
매개 변수
[in] endPoint
이벤트와 관련된 TCP 끝점입니다.
[in] err
INET_NO_ERROR 성공, 또 다른 코드 경우.

OnConnectionClosedFunct

void(* OnConnectionClosedFunct)(TCPEndPoint *endPoint, INET_ERROR err)

연결 설정 이벤트 처리 기능의 종류.

받는 사람이 유형의 기능을 제공 OnConnectionClosed 에 프로세스 연결 종료 이벤트에 위임 멤버 endPoint . err 인수는 실패에서 성공 종단을 구별한다.

세부
매개 변수
[in] endPoint
이벤트와 관련된 TCP 끝점입니다.
[in] err
INET_NO_ERROR 성공, 또 다른 코드 경우.

OnConnectionReceivedFunct

void(* OnConnectionReceivedFunct)(TCPEndPoint *listeningEndPoint, TCPEndPoint *conEndPoint, const IPAddress &peerAddr, uint16_t peerPort)

수신 된 연결 유형 이벤트 처리 기능.

받는 유형의 기능 제공 OnConnectionReceived 에 프로세스 연결부 수신 이벤트 대리자 부재 listeningEndPoint . 새로받은 엔드 포인트 conEndPoint IP 주소에 위치 peerAddr 및 TCP 포트 peerPort .

세부
매개 변수
[in] listeningEndPoint
수신 TCP 엔드 포인트.
[in] conEndPoint
새로 수신 된 TCP 엔드 포인트입니다.
[in] peerAddr
원격 피어의 IP 주소입니다.
[in] peerPort
원격 피어의 TCP 포트입니다.

OnDataReceivedFunct

void(* OnDataReceivedFunct)(TCPEndPoint *endPoint, Weave::System::PacketBuffer *data)

데이터 수신 이벤트 처리 기능의 종류.

받는 유형의 기능 제공 OnDataReceived 온 프로세스 데이터 수신 이벤트 대리자 부재 endPoint data 수신 된 메시지 텍스트이다.

세부
매개 변수
[in] endPoint
이벤트와 관련된 TCP 끝점입니다.
[in] data
수신 된 데이터입니다.

데이터 수신 이벤트 핸들러 사용하여 처리 된 데이터인지해야 AckReceive 방법. Free 하지 않는 데이터 버퍼에 대한 방법은 호출해야합니다 PutBackReceivedData 대신 사용됩니다.

OnDataSentFunct

void(* OnDataSentFunct)(TCPEndPoint *endPoint, uint16_t len)

데이터 전송 이벤트 처리 기능의 종류.

받는 유형의 기능 제공 OnDataSent 온 프로세스 데이터 송신 이벤트 대리자 부재 endPoint len 하부 네트워크 스택으로 전송받을 수있는 TCP 전송 창에 추가 메시지 텍스트의 길이이다.

세부
매개 변수
[in] endPoint
이벤트와 관련된 TCP 끝점입니다.
[in] len
전송 창에 추가 된 바이트 수입니다.

OnPeerCloseFunct

void(* OnPeerCloseFunct)(TCPEndPoint *endPoint)

반 폐쇄 수신 이벤트 처리 기능의 유형.

받는 사람이 유형의 기능을 제공 OnPeerClose 에 연결 종료 이벤트를 처리 할 대리자 멤버 endPoint .

세부
매개 변수
[in] endPoint
이벤트와 관련된 TCP 끝점입니다.

OnTCPSendIdleChangedFunct

void(* OnTCPSendIdleChangedFunct)(TCPEndPoint *endPoint, bool isIdle)

TCP SendIdle의 유형이 신호 처리 기능을 변경했습니다.

받는 이러한 유형의 기능을 제공 OnTCPSendIdleChanged 의 송신 채널의 이벤트 처리 대리인 부재 TCPEndPoint 유휴 인 유휴 상태 사이의 상태를 변경한다.

세부
매개 변수
[in] endPoint
이벤트와 관련된 TCP 끝점입니다.
[in] isIdle
TCP 끝점의 전송 채널이 유휴이면 true이고, 그렇지 않으면 false입니다.

공용 속성

OnAcceptError

OnAcceptErrorFunct OnAcceptError

끝점의 연결 수락 이벤트 처리 함수 대리자입니다.

OnConnectComplete

OnConnectCompleteFunct OnConnectComplete

끝점의 연결 설정 이벤트 처리 기능 대리자입니다.

OnConnectionClosed

OnConnectionClosedFunct OnConnectionClosed

끝점의 닫기 이벤트 처리 함수 대리자입니다.

OnConnectionReceived

OnConnectionReceivedFunct OnConnectionReceived

끝점의 연결은 이벤트 처리 함수 위임을받습니다.

OnDataReceived

OnDataReceivedFunct OnDataReceived

끝점의 메시지 텍스트 수신 이벤트 처리 함수 대리자입니다.

OnDataSent

OnDataSentFunct OnDataSent

끝점의 메시지 텍스트 전송 이벤트 처리 함수 대리자입니다.

OnPeerClose

OnPeerCloseFunct OnPeerClose

끝점의 반쯤 닫힌 수신 이벤트 처리 함수 대리자입니다.

OnTCPSendIdleChanged

OnTCPSendIdleChangedFunct OnTCPSendIdleChanged

TCP 연결의 전송 채널의 유휴 상태가 변경 될 때 신호를 보내는 끝점의 이벤트 처리 함수 위임입니다.

이것은 전송 된 데이터가 피어에게 안정적으로 전달되었는지 여부에 따라 적절한 조치를 취하기 위해 상위 계층에서 사용됩니다.

ReceiveEnabled

bool ReceiveEnabled

응용 프로그램이 데이터를 수신하고 있는지 여부를 나타내는 제어 스위치입니다.

상태

enum nl::Inet::TCPEndPoint::@10 State

기본 엔드 포인트의 기본 동적 상태입니다.

개체는 "준비"상태에서 초기화되고 TCP 전송 상태 시스템의 상태 단순화에 해당하는 후속 상태로 진행됩니다.

참고 : kBasisState_Closed 상태 열거을 맵 kState_Ready 역사 바이너리 호환성을 위해. 기존 kState_Closed 별도로 이전에 존재 "아직 열려 있지"과 "이전에 지금은 폐쇄 연"의 차이를 식별하기 위해 존재 kState_ReadykState_Closed 상태.

공공 기능

중단

void Abort(
  void
)

끝점을 중단하는 방식으로 닫습니다. 즉, RST 패킷을 보냅니다.

AckReceive

INET_ERROR AckReceive(
  uint16_t len
)

메시지 텍스트 수신을 확인합니다.

이 방법을 사용하여 수신 된 데이터 전체 또는 일부의 수신을 확인합니다. 경우 동작은 정의되어 있지 않습니다 len 총 뛰어난 미확인 수신 된 데이터보다 더 크다.

세부
매개 변수
[in] len
승인 할 바이트 수입니다.
반환 값
INET_NO_ERROR
성공 : 수신 확인.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.
INET_ERROR_CONNECTION_ABORTED
TCP 연결이 더 이상 열리지 않습니다.

묶다

INET_ERROR Bind(
  IPAddressType addrType,
  IPAddress addr,
  uint16_t port,
  bool reuseAddr
)

끝점을 인터페이스 IP 주소에 바인딩합니다.

엔드 포인트를 지정된 네트워크 인터페이스 IP 주소에 바인드합니다.

세부
매개 변수
[in] addrType
IP 주소의 프로토콜 버전
[in] addr
IP 주소 (인터페이스 주소 여야 함)
[in] port
TCP 포트
[in] reuseAddr
다른 엔드 포인트와 바인딩을 공유하는 옵션
반환 값
INET_NO_ERROR
성공 : 주소에 바인딩 된 끝점
INET_ERROR_INCORRECT_STATE
끝 점이 이전에 바인딩되었습니다.
INET_NO_MEMORY
끝점에 대한 메모리 부족
INET_ERROR_WRONG_PROTOCOL_TYPE
addrType 일치하지 않는 IPVer .
INET_ERROR_WRONG_ADDRESS_TYPE
addrType 있다 kIPAddressType_Any 또는 유형 addr 동일하지 addrType .
other
다른 시스템 또는 플랫폼 오류

LwIP에서이 메서드는 이미 획득 한 LwIP 스택 잠금으로 호출하면 안됩니다.

닫기

INET_ERROR Close(
  void
)

즉, 송신 및 수신이 모두 완료된 TCP 전체 닫기를 시작합니다.

세부
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.
other
다른 시스템 또는 플랫폼 오류

잇다

INET_ERROR Connect(
  IPAddress addr,
  uint16_t port,
  InterfaceId intf
)

TCP 연결을 시작합니다.

 If possible, then this method initiates a TCP connection to the
 destination \c addr (with \c intf used as the scope
 identifier for IPv6 link-local destinations) and \c port.

세부
매개 변수
[in] addr
목적지 IP 주소
[in] port
목적지 TCP 포트
[in] intf
선택적 네트워크 인터페이스 표시기
반환 값
INET_NO_ERROR
성공 : msg 전송을 위해 대기한다.
INET_ERROR_NOT_IMPLEMENTED
시스템 구현이 완료되지 않았습니다.
INET_ERROR_WRONG_ADDRESS_TYPE
목적지 주소와 바인딩 된 인터페이스의 주소가 일치하는 프로토콜 버전 또는 주소 유형이없는, 또는 목적지 주소는 IPv6 링크 로컬 주소와 intf 지정되지 않았습니다.
other
다른 시스템 또는 플랫폼 오류

DisableKeepAlive

INET_ERROR DisableKeepAlive(
  void
)

TCP "keep-alive"옵션을 비활성화합니다.

TCPEndPoint :: DisableKeepAlive .

연관된 TCP 연결에서 TCP Keepalive 프로브를 비활성화합니다.

세부
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.
INET_ERROR_CONNECTION_ABORTED
TCP 연결이 더 이상 열리지 않습니다.
INET_ERROR_NOT_IMPLEMENTED
시스템 구현이 완료되지 않았습니다.
other
다른 시스템 또는 플랫폼 오류

주 : 엔드 포인트가 연결된 상태 중 하나에있을 때이 방법 만 호출 할 수 있습니다. 이 메서드는 끝점에서 연결 유지가 활성화되지 않은 경우 아무 작업도 수행하지 않습니다.

DisableReceive

void DisableReceive(
  void
)

수신을 비활성화합니다.

모든 이벤트 핸들러를 비활성화합니다. 수신을 비활성화하는 엔드 포인트로 전송 된 데이터는 수신 창이 소진 될 때까지 승인됩니다.

EnableKeepAlive

INET_ERROR EnableKeepAlive(
  uint16_t interval,
  uint16_t timeoutCount
)

TCP "keep-alive"옵션을 활성화합니다.

TCPEndPoint :: EnableKeepAlive .

모든 TCP 전송 "연결 유지"프로브 세그먼트 자동으로 시작 interval 초. 연결은 네거티브 응답을 수신 한 후에, 또는 전송 한 후 자동으로 중단 할 timeoutCount 긍정 응답을 수신하지 않고, 프로브 세그먼트.

세부
매개 변수
[in] interval
프로브 요청 사이의 시간 (초).
[in] timeoutCount
제한 시간 전에 보낼 프로브 수입니다.
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.
INET_ERROR_CONNECTION_ABORTED
TCP 연결이 더 이상 열리지 않습니다.
INET_ERROR_NOT_IMPLEMENTED
시스템 구현이 완료되지 않았습니다.
other
다른 시스템 또는 플랫폼 오류

사양 세부 정보는 RFC 1122, 섹션 4.2.3.6을 참조하십시오.

연결된 TCP 연결에서 TCP 연결 유지 프로브를 활성화합니다.

주 : 엔드 포인트가 연결된 상태 중 하나에있을 때이 방법 만 호출 할 수 있습니다. 이 메서드는 연결 유지 간격 또는 제한 시간 수를 조정하기 위해 여러 번 호출 할 수 있습니다.

세부
매개 변수
interval
Keepalive 프로브 사이의 간격 (초)입니다. 이 값은 마지막으로 전송 된 데이터 패킷과 첫 번째 Keepalive 프로브 전송 사이의 시간도 제어합니다.
timeoutCount
연결 전 미확인 프로브의 최대 수는 실패한 것으로 간주됩니다.

EnableNoDelay

INET_ERROR EnableNoDelay(
  void
)

EnableNoDelay.

TCPEndPoint :: EnableNoDelay .

TCP_NODELAY 소켓 옵션을 설정하여 TCP에서 nagle 버퍼링 알고리즘을 끕니다.

EnableReceive

void EnableReceive(
  void
)

수신을 활성화합니다.

모든 이벤트 핸들러를 활성화합니다. 수신을 비활성화하는 엔드 포인트로 전송 된 데이터는 수신 창이 소진 될 때까지 승인됩니다.

비어 있는

void Free(
  void
)

오류를 무시하고 TCP 전체 닫기를 시작 (또는 계속)합니다.

개체는 사용 가능한 풀로 반환되고 나머지 모든 사용자 참조는 이후에 유효하지 않습니다.

GetLocalInfo

INET_ERROR GetLocalInfo(
  IPAddress *retAddr,
  uint16_t *retPort
)

로컬 엔드 포인트의 IP 주소와 TCP 포트를 추출합니다.

사용하지 마십시오 NULL 어느 쪽인가의 인수에 대한 포인터 값을 설정합니다.

세부
매개 변수
[out] retAddr
로컬 엔드 포인트의 IP 주소입니다.
[out] retPort
로컬 끝점의 TCP 포트입니다.
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.
INET_ERROR_CONNECTION_ABORTED
TCP 연결이 더 이상 열리지 않습니다.

GetPeerInfo

INET_ERROR GetPeerInfo(
  IPAddress *retAddr,
  uint16_t *retPort
) const 

원격 엔드 포인트의 IP 주소와 TCP 포트를 추출합니다.

사용하지 마십시오 NULL 어느 쪽인가의 인수에 대한 포인터 값을 설정합니다.

세부
매개 변수
[out] retAddr
원격 끝점의 IP 주소입니다.
[out] retPort
원격 끝점의 TCP 포트입니다.
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.
INET_ERROR_CONNECTION_ABORTED
TCP 연결이 더 이상 열리지 않습니다.

연결되었다

bool IsConnected(
  void
) const 

TCP 연결이 설정되었는지 여부를 추출하십시오.

들리다

INET_ERROR Listen(
  uint16_t backlog
)

TCP 메시지를받을 끝점을 준비합니다.

경우 State 이미 kState_Listening 후, 아무런 조작이 실행되지 그렇지 State 로 설정 kState_Listening 엔드 포인트는 플랫폼의 의미에있어서, 수신 한 TCP 메시지를 준비한다.

세부
매개 변수
[in] backlog
연결 수락 대기열의 최대 깊이
반환 값
INET_NO_ERROR
성공 : 엔드 포인트가 메시지를 수신 할 준비가되었습니다.
INET_ERROR_INCORRECT_STATE
엔드 포인트가 이미 듣고 있습니다.

일부 플랫폼에서 backlog 인수가 사용되지 않은 경우 (큐의 깊이가 고정되고, 하나의 접속이 동시에 허용 할 수있다).

LwIP 시스템에서이 메서드는 이미 획득 한 LwIP 스택 잠금으로 호출하면 안됩니다.

LogId

uint16_t LogId(
  void
)

끝점에 대한 식별자를 얻습니다.

세부
보고
사용 로그에 대한 불투명 한 고유 식별자를 반환합니다.

MarkActive

void MarkActive(
  void
)

즉, 유휴 타이머를 재설정합니다.

유휴 타이머를 0으로 재설정합니다.

PendingReceiveLength

uint32_t PendingReceiveLength(
  void
)

미확인 수신 데이터의 길이를 추출하십시오.

세부
보고
아직로 인정되지 않은 수신 큐의 바이트 수 AckReceive(uint16_t len) .

PendingSendLength

uint32_t PendingSendLength(
  void
)

첫 번째 전송을 기다리는 데이터의 길이를 추출합니다.

세부
보고
전송 큐의 전송되지 않은 바이트 수입니다.

PutBackReceivedData

INET_ERROR PutBackReceivedData(
  Weave::System::PacketBuffer *data
)

메시지 텍스트를 수신 큐의 헤드로 다시 푸시합니다.

이 메소드는 수신 큐에 데이터의 확인되지 않은 부분을 다시 배치하기 위해 데이터 수신 이벤트 핸들러에 의해서만 호출 될 수 있습니다. 호출자가 데이터 수신 이벤트 핸들러의 범위를 벗어난 경우, 연산 의미론들은 정의되어 있지 data 하지 않 Weave::System::PacketBuffer 처리기에 제공되거나 data a로 인정 된 바이트 이후 남은 수신 확인되지 않은 부분을 포함하지 않는다 받는 이전 통화 AckReceive(uint16_t len) 방법.

세부
매개 변수
[out] data
푸시 할 메시지 텍스트입니다.
반환 값
INET_NO_ERROR
성공 : 수신 확인.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.

보내다

INET_ERROR Send(
  Weave::System::PacketBuffer *data,
  bool push
)

TCP 연결시 메시지 텍스트를 보냅니다.

Weave::System::PacketBuffer::Free 방법은 호출되는 data 에 관계없이 전송이 성공 또는 실패 여부의 인수입니다.

세부
매개 변수
[out] data
보낼 메시지 텍스트입니다.
[out] push
경우 true , 다음, 그렇지 않으면 큐, 즉시 보낼 수 있습니다.
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.

SetConnectTimeout

void SetConnectTimeout(
  const uint32_t connTimeoutMsecs
)

연결이 성공하거나 오류를 반환하도록 제한 시간을 설정합니다.

세부
매개 변수
[in] connTimeoutMsecs

SetUserTimeout

INET_ERROR SetUserTimeout(
  uint32_t userTimeoutMillis
)

TCP TCP_USER_TIMEOUT 소켓 옵션을 설정합니다.

TCPEndPoint :: SetUserTimeout .

값이 0보다 크면 TCP가 해당 연결을 강제로 닫기 전에 전송 된 데이터가 승인되지 않은 상태로 남아있을 수있는 최대 시간 (밀리 초)을 지정합니다. 옵션 값이 0으로 지정되면 TCP는 시스템 기본값을 사용합니다. 자세한 내용은 RFC 5482를 참조하십시오.

세부
매개 변수
[in] userTimeoutMillis
Tcp 사용자 시간 초과 값 (밀리 초)입니다.
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_NOT_IMPLEMENTED
시스템 구현이 완료되지 않았습니다.
other
다른 시스템 또는 플랫폼 오류

TCP 사용자 제한 시간 소켓 옵션을 설정하십시오.

값이 0보다 크면 TCP가 해당 연결을 강제로 닫기 전에 전송 된 데이터가 승인되지 않은 상태로 남아있을 수있는 최대 시간 (밀리 초)을 지정합니다. 옵션 값이 0으로 지정되면 TCP는 시스템 기본값을 사용합니다. 자세한 내용은 RFC 5482를 참조하십시오.

주 : 엔드 포인트가 연결된 상태 중 하나에있을 때이 방법 만 호출 할 수 있습니다. 이 메서드는 연결 유지 간격 또는 제한 시간 수를 조정하기 위해 여러 번 호출 할 수 있습니다.

일시 휴업

INET_ERROR Shutdown(
  void
)

TCP를 반쯤 닫으면 전송이 완료됩니다.

세부
반환 값
INET_NO_ERROR
성공 : 주소와 포트가 추출되었습니다.
INET_ERROR_INCORRECT_STATE
TCP 연결이 설정되지 않았습니다.
other
다른 시스템 또는 플랫폼 오류