| 12
 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
 
 | #include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <netinet/in.h>
 
 
 
void Die(char *mess) { perror(mess); exit(1); }
 
int main (int argc, char *argv[]) {
                    int sock;
                    struct sockaddr_in echoserver;
                    int i, control;
                    char cChar;
                    char * ligne;
 
                if (argc != 4) {
 
                      fprintf(stderr, "USAGE: ./programme <server_ip> <message_a_envoye> <port>\n");
                      exit(1);
                }
                        /* Initialisation de la socket  */
                if ((sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP)) < 0) {
                      Die("Impossible de d'initialiser la socket..");
                }
                       /* Construction de la structure */
                memset(&echoserver, 0, sizeof(echoserver));       /* On nettoie la structure */
                echoserver.sin_family = AF_INET;                  /* Internet/IP */
                echoserver.sin_addr.s_addr = inet_addr(argv[1]);  /* adresse ip du serveur */
                echoserver.sin_port = htons(atoi(argv[3]));       /* le port de connexion */
 
                           /* On etablit la connection */
                if (connect(sock,(struct sockaddr *) &echoserver, sizeof(echoserver)) < 0) {
                      Die("Impossible de se connecter au server..");
                }                   printf("Connecte... Envoi requete...");
                          send(sock, "GET / HTTP/1.0\n\n", 16, 0);
 
                /* Lecture de ce que nous envoi le server */
                ligne = malloc(600);
                control = read(sock, ligne, sizeof(ligne));
 
                        ligne[control] = 0;
                        printf(" control : %d \n %s \n",control,ligne);
 
 
 
                return 0;
 
} | 
Partager