Bonjour à tous,

J'essaye d'envoyer un simple paquet IP depuis une Interface, pour cette partie tout fonctionne bien, seulement l'interface possède plusieurs adresses et je n'arrive pas à sélectionner mon adresse source (il choisit la première)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
    struct sockaddr_in stSockAddr;
    int Res;
    int SocketFD = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
 
    struct sockaddr_in my_addr;
 
    if (-1 == SocketFD)
    {
      perror("cannot create socket");
    }
 
    memset(&stSockAddr, 0, sizeof(stSockAddr));
 
    stSockAddr.sin_family = AF_INET;
    stSockAddr.sin_port = htons(1100);
/* destination */
    Res = inet_pton(AF_INET, "192.168.191.1", &stSockAddr.sin_addr); 
 
    if (0 > Res)
    {
 
      perror("error: first parameter is not a valid address family");
      close(SocketFD);
    }
    else if (0 == Res)
    {
      perror("char string (second parameter does not contain valid ipaddress)");
      close(SocketFD);
    }
 
    if (-1 == connect(SocketFD, (struct sockaddr *)&stSockAddr, sizeof(stSockAddr)))
    {
 
      perror("connect failed");
      close(SocketFD);
    }
 
    shutdown(SocketFD, SHUT_RDWR);
    close(SocketFD);
Il existe un moyen de sélectionner son adresse d'émission ?

Merci