ExtreamThings

Socket 통신하기 - TCP 클라이언트

firstlook 2013. 9. 4. 00:39

클라이언트 파트 - client.c

client.c

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>
#include <sys/types.h>
#include <sys/socket.h>

#define  BUFF_SIZE   1024

int   main( int argc, char **argv)
{
   int   client_socket;

   struct sockaddr_in   server_addr;

   char   buff[BUFF_SIZE+5];

   client_socket  = socket( PF_INET, SOCK_STREAM, 0);
   if( -1 == client_socket)
   {
      exit( 1);
   } else {
 printf("socket created...\n");
   }

   memset( &server_addr, 0, sizeof( server_addr));
   server_addr.sin_family     = AF_INET;
   server_addr.sin_port       = htons(9100);
   server_addr.sin_addr.s_addr= htonl(INADDR_ANY);

   if( -1 == connect( client_socket, (struct sockaddr*)&server_addr, sizeof( server_addr) ) )
   {
      exit( 1);
   } else {
 printf("client socket created....\n");
   }

   printf("send data .... \n");
   write( client_socket, argv[1], strlen( argv[1])+1);

   printf("read return value\n");
   read ( client_socket, buff, BUFF_SIZE);
   printf( "%s\n", buff);
   close( client_socket);
  
   return 0;
}