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
|
char *prime;
char *s_pub_key;
//Génération de la clé pub par le serveur.
DH_generate_key(dh);
prime = malloc(sizeof(dh->p));
if(prime == NULL) { perror("malloc"); exit(2); }
prime = BN_bn2hex(dh->p);
s_pub_key = malloc(sizeof(dh->pub_key));
if(s_pub_key == NULL) { perror("malloc"); exit(2); }
s_pub_key = BN_bn2hex((dh->pub_key);
...
// écriture dans la socket
// Sending DH params to client
printf("Sending server's prime : %16s ... ", prime);
// +1 pour écrire également le '\0' de fin de chaine
send(client_sock, prime, strlen(prime)+1, 0);
printf("Sending server's public key: %16s ... ", s_pub_key);
send(client_sock, s_pub_key, strlen(s_pub_key)+1, 0);
sprintf(generator,"%i", GENERATOR);
printf("Sending server's generator : %16s ... ", generator);
send(client_sock, generator, strlen(generator)+1, 0);
...
// FREE de tout ce que t'as alloué ;) |
Partager