Programmation
Programmation - TCP chaîne encodée (C++)
Je suis en train d’essayer de résoudre le 2nd exo de programmation en c++.
Mon problème est que j’arrive à décoder le string, (en partant du principe que c’est du base 64 - https://www.dcode.fr/identification-chiffrement#q3).
Cependant, une fois décodé, j’envoi ma réponse et j’attend une réponse du serveur qui ne vient jamais, voir :
##OUTPUT START##
Connect port 52023
Data retreived
==================
ENCRYPTED STRING
==================
Tell me the clear content of this string !
my string is ’WW1vcmlSNVo4bkUzQU1KTFdrWTlGRGdDOWR6aw==’. What is your answer ?
string to decode : WW1vcmlSNVo4bkUzQU1KTFdrWTlGRGdDOWR6aw==
processed string : YmoriR5Z8nE3AMJLWkY9FDgC9dzk
string sent !
sent : YmoriR5Z8nE3AMJLWkY9FDgC9dzk || YmoriR5Z8nE3AMJLWkY9FDgC9dzk
^C
##OUTPUT END##
j’envoi pourtant bien une réponse sous forme de string et le décodage du string reçu semble correct si l’on compare mes réponses avec celles d’un site comme https://www.dcode.fr/code-base-64.
partie relevante de mon code :
#CODE#
std::string sendback = process(buffer) ;
std::cout << "processed string : " << sendback << std::endl ;
//send
const char* message = sendback.c_str() ;
if (send(client, message, strlen(message),0) == -1)
std::cout << "couldnt send processed data\n" ;
close(client) ;
return 1 ;
;
std::cout << "string sent !\n" << "sent : " << message << " || " << sendback << std::endl ;
//response
memset(buffer, 0, sizeof(buffer)) ;
if (recv(client, buffer, sizeof(buffer), 0)==-1)
std::cout << "coud not get response\n" ;
close(client) ;
return 1 ;
std::cout << "response : \n" << buffer ;
#CODE#
Programmation - TCP chaîne encodée (C++)
Bonjour,
je pense rencontrer un peu le même problème que toi : je décode bien la chaîne comme il se doit, j’ai vérifié avec un convertisseur, et au niveau de l’envoie, celui-ci s’execute. En revanche, le serveur ne fait que me dire que ma réponse n’est pas correcte. Aurait-tu des pistes sur les petites améliorations que tu a dû faire sur ta fonction de décodage ?
Programmation - TCP chaîne encodée (C++)
okay, i found, it doesn’t accept string in c++ only char*