Commit 2bf0393d authored by pernelle's avatar pernelle
Browse files

création des fonctions lireStructureCOL3_s lireSiteduMondeCOL3_s

parent 2bef6dd4
...@@ -338,11 +338,8 @@ int lireMessageCOL3_s(int sock, char * msgrecu,int logFlag) { ...@@ -338,11 +338,8 @@ int lireMessageCOL3_s(int sock, char * msgrecu,int logFlag) {
} }
/** /**
DEPRECATED
cette fonction lit une structure (lessitesdumonde) sur la socket (sock) et cette fonction lit une structure (lessitesdumonde) sur la socket (sock) et
retourne le nb octet recu retourne le nb octet recu
...@@ -371,6 +368,82 @@ int lireSitesDuMondeCOL3(int sock, capacite_clan * messites) { ...@@ -371,6 +368,82 @@ int lireSitesDuMondeCOL3(int sock, capacite_clan * messites) {
} }
/**
cette fonction lit une structure (lessitesdumonde) sur la socket (sock) et
retourne le nb octet recu (version securisé)
p.pernelle - 2020
*/
int lireSitesDuMondeCOL3_s(int sock, capacite_clan * messites, int logFlag) {
struct sockaddr_in addresIPClient ;
int longAdresseIPClient= sizeof(addresIPClient);
int nbrecu = 0, nbtotal=0 ;
int taille=sizeof(capacite_clan);
if (getpeername(sock,&addresIPClient,&longAdresseIPClient) == -1)
{
if (logFlag) printf(" --> socket[reception CAPACITE_CAMP] : socket %d non connectée | lecture [NOK] \n",sock);
nbrecu=-1;
}
else
{
if (logFlag) printf(" --> socket[reception CAPACITE_CAMP] | taille = %d ...\n",taille);
while (nbtotal<taille)
{
nbrecu = recv(sock, (char *) messites, taille, 0);
if (nbrecu< 0) {
perror("reception message [NOK]");
}
else nbtotal+=nbrecu;
}
if (logFlag) printf(" --> socket[reception CAPACITE_CAMP] : [OK] | nbrecu = %d \n",nbrecu);
}
return nbrecu;
}
/**
cette fonction lit une structure (mastructure) sur la socket (sock) et
retourne le nb octet recu (version securisé)
p.pernelle / d.wayntal - 2020
*/
int lireStructureCOL3_s(int sock, void * mastructure, int logFlag) {
struct sockaddr_in addresIPClient ;
int longAdresseIPClient= sizeof(addresIPClient);
int nbrecu = 0, nbtotal=0 ;
int taille=sizeof(capacite_clan);
if (getpeername(sock,&addresIPClient,&longAdresseIPClient) == -1)
{
if (logFlag) printf(" --> socket[lireStructureCOL3] : socket %d non connectée | lecture [NOK] \n",sock);
nbrecu=-1;
}
else
{
if (logFlag) printf(" --> socket[lireStructureCOL3] | taille = %d ...\n",taille);
while (nbtotal<taille)
{
nbrecu = recv(sock, ((char *) mastructure)+nbtotal, taille, 0);
if (nbrecu< 0) {
if (logFlag) printf(" --> socket[reception CAPACITE_CAMP] : [NOK] | nbrecu = %d \n",nbrecu);
}
else nbtotal+=nbrecu;
}
if (logFlag) printf(" --> socket[reception CAPACITE_CAMP] : [OK] | nbrecu = %d \n",nbrecu);
}
return nbrecu;
}
......
...@@ -223,6 +223,21 @@ int lireMessageCOL3_s(int sock, char * msgrecu,int logFlag); ...@@ -223,6 +223,21 @@ int lireMessageCOL3_s(int sock, char * msgrecu,int logFlag);
*/ */
int lireSitesDuMondeCOL3(int sock, capacite_clan * messites); int lireSitesDuMondeCOL3(int sock, capacite_clan * messites);
/**
cette fonction lit une structure (lessitesdumonde) sur la socket (sock) et
retourne le nb octet recu (version securisé)
p.pernelle - 2020
*/
int lireSitesDuMondeCOL3_s(int sock, capacite_clan * messites, int logFlag);
/**
cette fonction lit une structure (mastructure) sur la socket (sock) et
retourne le nb octet recu (version securisé)
p.pernelle / d.wayntal - 2020
*/
int lireStructureCOL3_s(int sock, void * mastructure, int logFlag) ;
/* =================================================== /* ===================================================
les fonctions de conversion les fonctions de conversion
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment