1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| # -------------------------------CODE----------------------------------
#include <stdio.h>
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
#include <netdb.h>
#define PORT 6666
#define MAXDATASIZE 100
int main(int argc, char *argv[])
{
int fd, data;
char buf[MAXDATASIZE];
struct hostent *he;
struct sockaddr_in server;
if(argc != 2) {
printf("Usage : %s <ip_address> \n", argv[0]);
exit(-1);
}
if((he = gethostbyname(argv[1])) == NULL) {
printf("Gethostbyname error\n");
exit(-1);
}
if(fd = socket(PF_INET, SOCK_STREAM, 0) == -1) {
printf("Socket error\n");
exit(-1);
}
server.sin_family = AF_INET;
server.sin_port = htons(PORT);
server.sin_addr = *((struct in_addr *) he->h_addr);
bzero(&(server.sin_zero), 8);
if(connect(fd, (struct sockaddr *)&server, sizeof(struct sockaddr)) == -1);
printf("Connect error\n");
exit(-1);
if(data = recv(fd, buf, MAXDATASIZE, 0) == -1) {
exit (-1);
}
buf[data] = '\0';
printf("Message : \n\n %s \n",buf);
close(fd);
}
#-----------------------------------------\CODE------------------------------------------- |
Partager