mirror of
https://github.com/yoboujon/tsock.git
synced 2025-06-08 14:00:50 +02:00
Merge pull request #9 from yoboujon/simon
Ajout de gestionOffset(), formatText(), convertion() dans tsock.
This commit is contained in:
commit
4225cfd363
6 changed files with 67 additions and 47 deletions
|
@ -25,5 +25,6 @@ struct elementMessage * initElementMessage(void);
|
|||
struct listeMessage initListeMessage(void);
|
||||
void ajoutListe(struct listeMessage * listeActuel,messageBAL * leMessage);
|
||||
void afficheListeMessage(struct listeMessage listeActuel);
|
||||
int bal(void);
|
||||
|
||||
#endif
|
|
@ -20,4 +20,10 @@ void getNonOtpArgs(char ** argv, int argc, int * portNumber, char * ipAddress[])
|
|||
void formatText(char * actualMessage, int num, int tailleMessage, char messageChar);
|
||||
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
|
|
@ -1,6 +1,6 @@
|
|||
#include "../header/bal.h"
|
||||
|
||||
int main(void){
|
||||
int bal(void){
|
||||
struct listeMessage l = initListeMessage();
|
||||
messageBAL * messageBAL = creeMessage("Renvoi moi mon pdf asap. -Simon",1);
|
||||
ajoutListe(&l,messageBAL);
|
||||
|
|
|
@ -1,46 +0,0 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
struct message{
|
||||
char *data;
|
||||
int tailleData;
|
||||
int idEmeteur;
|
||||
struct message *messageSuiv;
|
||||
struct message *messageFin;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
|
||||
int idRecept;
|
||||
struct BAL *BALSuiv;
|
||||
struct BAL *BALFin;
|
||||
struct message *message;
|
||||
}BAL;
|
||||
|
||||
|
||||
struct message creeMessage(char *dataPara,int idEmeteurPara);
|
||||
|
||||
int main(void){
|
||||
char * txt="simon";
|
||||
struct message *listeMessage =malloc(sizeof(struct message));
|
||||
*listeMessage=creeMessage(txt,12);
|
||||
printf("idEmeteur = %d\n",listeMessage->idEmeteur);
|
||||
printf("data=%s\n",listeMessage->data);
|
||||
printf("taille data=%d\n",listeMessage->tailleData);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
struct message creeMessage(char *dataPara,int idEmeteurPara){
|
||||
int tailleDataPara =strlen(dataPara);
|
||||
struct message * elementMessage =(struct message *)malloc(sizeof(struct message));
|
||||
|
||||
elementMessage->idEmeteur=idEmeteurPara;
|
||||
elementMessage->tailleData=tailleDataPara;
|
||||
elementMessage->data=(char*)malloc(sizeof(char)*tailleDataPara);
|
||||
strcpy(elementMessage->data,(dataPara));
|
||||
return *elementMessage;
|
||||
}
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
int main (int argc, char **argv)
|
||||
{
|
||||
testProtocol();
|
||||
char usageChar[30]="usage: cmd [-p|-s][-n ##]\n";
|
||||
char *ipAddress;
|
||||
extern char *optarg;
|
||||
|
|
58
src/tsock.c
58
src/tsock.c
|
@ -80,3 +80,61 @@ int exitMax(int var,int tailleMax){
|
|||
}
|
||||
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;
|
||||
}
|
Loading…
Add table
Reference in a new issue