본문 바로가기

프로그래밍/공부관련

etsockname() 소켓 IP확인

 getsockname(SOCKET s, struct sockaddr* name,int* namelen)

socket으로 만든 SOCKET변수를 getsockname에 집어 넣으면,


sockaddr타입의 변수가 출력됩니다.

 

// 예제

 

int clientSocket = 0;
 int client_len = 0;

 client_len = sizeof(struct sockaddr_in);
 
 SOCKADDR_IN serverAddress, clientAddress, myaddr;

 

 if( ( clientSocket = accept( serverSocket, (SOCKADDR *)(&clientAddress), &client_len ) ) == INVALID_SOCKET )
  {
   printf("socket생성 실패");
   return 0;
  }

 

  printf("클라이언트가 접속\n");
  
  getpeername(clientSocket, (struct sockaddr *)&myaddr, &client_len);

 

  printf("Client port = %d\n", myaddr.sin_port);            //port
  printf("client ip = %s\n",inet_ntoa(myaddr.sin_addr)); //ip


'프로그래밍 > 공부관련' 카테고리의 다른 글

5/5 구조체 send 해줄때.. , 리스트몇개있는가? , STL 반복자할때 주의  (0) 2010.05.06
convention  (0) 2010.05.04
튜토리얼  (0) 2010.04.21
GLUT_윈도우의 초기화와 생성  (0) 2010.04.21
오일러 각  (0) 2010.04.16