Merge branch 'main' into yohan

This commit is contained in:
sparis1206 2023-01-18 09:02:10 +01:00 committed by GitHub
commit 4d929c8507
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 66 additions and 0 deletions

View file

@ -43,6 +43,7 @@ struct elementMessage * initElementMessage(void);
struct listeMessage * initListeMessage(void); struct listeMessage * initListeMessage(void);
void ajoutListeMessage(struct listeMessage * listeActuel,messageBAL * leMessage); void ajoutListeMessage(struct listeMessage * listeActuel,messageBAL * leMessage);
void afficheListeMessage(struct listeMessage listeActuel); void afficheListeMessage(struct listeMessage listeActuel);
int bal(void);
BAL * creerBAL(int idRecepteur, struct listeMessage * messageRecepteur); BAL * creerBAL(int idRecepteur, struct listeMessage * messageRecepteur);
struct elementBAL * initElementBAL(void); struct elementBAL * initElementBAL(void);

View file

@ -21,4 +21,10 @@ void getNonOtpArgs(char ** argv, int argc, int * portNumber, char * ipAddress[])
void formatText(char * actualMessage, int num, int tailleMessage, char messageChar); void formatText(char * actualMessage, int num, int tailleMessage, char messageChar);
int exitMax(int var,int tailleMax); int exitMax(int var,int tailleMax);
char * formatTextParam(int numEmetteur, int numRecepteur, int tailleMessage, int nbMessage);
char * formatTextMessage(char * message, int tailleMessage);
int convertion(int nbr,char *numbuffer);
int gestionOffset(char *actualMessage,int encadrementHaut,int encadrementBas,int nbr);
int testProtocol(void);
#endif #endif

View file

@ -5,6 +5,7 @@
int main (int argc, char **argv) int main (int argc, char **argv)
{ {
char usageChar[100]="usage: cmd [-p|-s]|[-u][-u|-r ##|-e ##|-b][-n ##][-l ##] port ipAdress\n"; char usageChar[100]="usage: cmd [-p|-s]|[-u][-u|-r ##|-e ##|-b][-n ##][-l ##] port ipAdress\n";
testProtocol();
char *ipAddress; char *ipAddress;
extern char *optarg; extern char *optarg;
extern int optind; extern int optind;

View file

@ -80,3 +80,61 @@ int exitMax(int var,int tailleMax){
} }
return 0; return 0;
} }
int testProtocol(void)
{
char * msg;
msg=formatTextParam(7, 8, 64, 1);
printf("%s\n",msg);
msg=formatTextMessage("aaaaaa",6);
printf("%s\n",msg);
return 0;
}
char * formatTextParam(int numEmetteur, int numRecepteur, int tailleMessage, int nbMessage)
{
char * actualMessage = malloc(sizeof(char)*16);
actualMessage[0]='1';
gestionOffset(actualMessage, 4,1,numEmetteur);
gestionOffset(actualMessage, 8,5,numRecepteur);
gestionOffset(actualMessage, 12,9,tailleMessage);
gestionOffset(actualMessage, 16,13,nbMessage);
return actualMessage;
}
char * formatTextMessage(char * message, int tailleMessage)
{
char * actualMessage = malloc(sizeof(char)*(tailleMessage+1));
actualMessage[0]='0';
for(int i=1,j=0;i<tailleMessage+1;i++,j++)
{
actualMessage[i]=message[j];
}
return actualMessage;
}
int convertion(int nbr,char *numbuffer)
{
sprintf(numbuffer, "%d", (nbr)%10000);
return 0;
}
int gestionOffset(char *actualMessage,int encadrementHaut,int encadrementBas,int nbr)
{
int taillechaine=0;
char numbuffer[30];
convertion(nbr,numbuffer);
taillechaine=strlen(numbuffer);
for(int i=encadrementBas;i<encadrementHaut-taillechaine+1;i++)
{
actualMessage[i]=0x20;
}
for(int i=encadrementHaut-taillechaine+1,j=0;i<encadrementHaut+1;i++,j++)
{
actualMessage[i]=numbuffer[j];
}
return encadrementHaut;
}