다음을 통해 공유


getservbyport 함수(winsock2.h)

getservbyport 함수는 포트 및 프로토콜에 해당하는 서비스 정보를 검색합니다.

구문

servent *WSAAPI getservbyport(
  [in] int        port,
  [in] const char *proto
);

매개 변수

[in] port

서비스 포트(네트워크 바이트 순서)입니다.

[in] proto

프로토콜 이름에 대한 선택적 포인터입니다. null이면 getservbyport포트서비스 구조의 s_port 일치하는 첫 번째 서비스 항목을 반환합니다. 그렇지 않으면 getservbyport포트proto 매개 변수를 모두 일치합니다.

반환 값

오류가 발생하지 않으면 getservbyportservent 구조에 대한 포인터를 반환합니다. 그렇지 않으면 null 포인터를 반환하고 WSAGetLastError를 호출하여 특정 오류 번호를 검색할 수 있습니다.

오류 코드 의미
WSANOTINITIALISED
이 함수를 사용하기 전에 성공적인 WSAStartup 호출이 발생해야 합니다.
WSAENETDOWN
네트워크 하위 시스템이 실패했습니다.
WSAHOST_NOT_FOUND
신뢰할 수 있는 응답 서비스를 찾을 수 없습니다.
WSATRY_AGAIN
인증되지 않은 서비스를 찾을 수 없거나 서버 오류가 발생했습니다.
WSANO_RECOVERY
복구할 수 없는 오류, 서비스 데이터베이스에 액세스할 수 없습니다.
WSANO_DATA
유효한 이름이며 요청된 형식의 데이터 레코드가 없습니다.
WSAEINPROGRESS
차단 Windows 소켓 1.1 호출이 진행 중이거나 서비스 공급자가 여전히 콜백 함수를 처리하고 있습니다.
WSAEFAULT
proto 매개 변수는 사용자 주소 공간의 유효한 부분이 아닙니다.
WSAEINTR
WSACancelBlockingCall을 통해 차단 Windows 소켓 1.1 호출이 취소되었습니다.

설명

getservbyport 함수는 getservbyname 함수에서와 마찬가지로 servent 구조체에 대한 포인터를 반환합니다.

서브트 구조는 Windows 소켓에 의해 할당됩니다. 애플리케이션은 이 구조를 수정하거나 해당 구성 요소를 해제하려고 시도해서는 안 됩니다. 또한 이 구조체의 복사본은 스레드당 하나만 할당되므로 애플리케이션은 다른 Windows Sockets 함수 호출을 실행하기 전에 필요한 정보를 복사해야 합니다.

Windows Phone 8: 이 함수는 Windows Phone 8 이상에서 Windows Phone 스토어 앱에서 지원됩니다.

Windows 8.1Windows Server 2012 R2: 이 함수는 Windows 8.1, Windows Server 2012 R2 이상의 Windows 스토어 앱에서 지원됩니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 8.1, Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 winsock2.h(Winsock2.h 포함)
라이브러리 Ws2_32.lib
DLL Ws2_32.dll

추가 정보

WSAAsyncGetServByPort

Winsock 함수

Winsock 참조

getservbyname