recvfrom

recvfrom

2015. 4. 10. 14:28

지정한 소켓으로 들어온 데이터를 수신한다, 또한 데이터를 송신한 상대방의 주소 정보를 저장한다.

* UDP 프로토콜을 이용한 통신에서 상대방으로부터 데이터를 받을 때 사용한다. 


- 출처 : MSDN


  • s

- 데이터를 수신할 소켓의 식별자를 설정한다.


  • buf

- 수신한 데이터를 저장 할 메모리의 주소를 설정한다.


  • len

- buf 파라메터가 가리키는 수신 데이터를 저장 할 메모리의 크기를 설정한다.


  • flags

- 수신 시 사용할 옵션 값이다, 옵션을 사용하지 않을 경우 0을 설정한다.

- 옵션 사용 시 OR 연산자를 이용하여 하나 이상의 옵션을 지정할 수 있다.


  • from

데이터를 송신한 상대방의 주소 정보를 저장할 SOCKADDR_IN 구조체 변수의 주소를 전달한다.

- 파라메터는 sockaddr의 주소를 전달해야 하지만 IPv4를 사용하는 경우 전용 구조체인 SOCKADDR_IN를 사용 하므로 강제 형변환하여 인자를 전달한다.


  • fromlen

- from 파라메터에 전달되는 데이터의 길이를 저장한 메모리의 주소를 설정한다.

- 함수 호출 후 연결된 클라이언트의 주소 정보 크기가 저장 된다.


Return value : 성공 시 수신 된 데이터 바이트 수를 반환하고, 소켓 정상 종료 시 0을 반환한다. 실패 시 SOCKET_ERROR(-1)을 반환하고, 실패에 대한 자세한 정보는 WSAGetLastError를 참고한다.


Header : Winsock2.h


DLL : ws2_32.dll


'Win32 API' 카테고리의 다른 글

htonl  (0) 2015.04.10
htons  (0) 2015.04.10
sendto  (0) 2015.04.10
recv  (0) 2015.04.09
send  (0) 2015.04.09

+ Recent posts