int getsockname( __in SOCKET s, __out struct sockaddr *name, __inout int *namelen );
#include <stdio.h> #include <winsock2.h> #include <windows.h> int main(int argc, char **argv) { WSADATA wsaData; int iResult; int clilen; SOCKET listenSocket, clisocket; struct sockaddr_in sockaddr, cliaddr; iResult = WSAStartup(MAKEWORD(2,2), &wsaData); if(iResult != 0) { printf("WSAStart up Error\n"); return 1; } listenSocket = socket(AF_INET, SOCK_STREAM, 0); if(listenSocket == INVALID_SOCKET) { WSACleanup(); return 1; } sockaddr.sin_family=AF_INET; sockaddr.sin_addr.s_addr = htonl(INADDR_ANY); sockaddr.sin_port = htons(3400); if( bind(listenSocket, (SOCKADDR *)&sockaddr, sizeof(sockaddr)) == SOCKET_ERROR) { printf("bind failed\n"); return 1; } listen(listenSocket, 5); while(1) { clilen = sizeof(cliaddr); clisocket = accept(listenSocket, (SOCKADDR *)&cliaddr, &clilen); if(clisocket == INVALID_SOCKET) { printf("Accept failure\n"); closesocket(listenSocket); WSACleanup(); return 1; } clilen = sizeof(cliaddr); getsockname(clisocket, (SOCKADDR *)&cliaddr, &clilen); printf("Client Socket Info :: %s (%d)\n", inet_ntoa(cliaddr.sin_addr), ntohs(cliaddr.sin_port)); } WSACleanup(); return 0; }
Copyrights © - Joinc, All Rights Reserved. Inherited From - Yundream Rebranded By - Joonphil
getsockname
사용 법
매개 변수
반환 값
예제
Recent Posts
Archive Posts
Tags