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