콘텐츠로 이동
무료 평가 시작

pdcomm_tcp_event_body

함수

수신 이벤트의 메시지 본문을 복사합니다.

PdcommStatus pdcomm_tcp_event_body(const PdcommTcpEvent *event, uint8_t *output, size_t capacity, size_t *required)

선언 위치: #include <pdcomm_tcp.h>

본문은 수신한 그대로의 인코딩된 SECS-II 항목입니다. 본문이 없는 메시지와 #PDCOMM_TCP_RECEIVED가 아닌 모든 이벤트 종류에서는 비어 있습니다. 복사는 전부 하거나 전혀 하지 않습니다.

매개변수

이름설명
event유효한 이벤트입니다.
output대상 버퍼입니다. 크기를 조회하려면 NULL과 capacity 0을 전달합니다. 본문이 비어 있더라도 용량이 0이 아닌데 NULL이면 거부합니다.
capacityoutput의 크기(바이트)입니다.
required본문 길이를 받습니다. 먼저 0으로 설정됩니다. NULL이 아니어야 합니다.

반환값

본문을 복사했으면(또는 본문이 비어 있고 output이 NULL이며 용량이 0이면) #PDCOMM_OK를 반환합니다. capacity가 *required보다 작으면 #PDCOMM_BUFFER_TOO_SMALL을 반환하며 출력은 변경하지 않습니다. required 또는 event가 NULL이거나, capacity가 0이 아닌데 output이 NULL이면 #PDCOMM_INVALID_ARGUMENT를 반환합니다. 패닉(panic)을 격리했으면 #PDCOMM_INTERNAL_ERROR를 반환합니다.

참고

  • 스레드 안전성: 같은 이벤트에 대한 읽기 호출은 동시에 실행할 수 있습니다. 해제는 이 호출들과 동기화해야 합니다.