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);
|
struct listeMessage initListeMessage(void);
|
||||||
void ajoutListe(struct listeMessage * listeActuel,messageBAL * leMessage);
|
void ajoutListe(struct listeMessage * listeActuel,messageBAL * leMessage);
|
||||||
void afficheListeMessage(struct listeMessage listeActuel);
|
void afficheListeMessage(struct listeMessage listeActuel);
|
||||||
|
int bal(void);
|
||||||
|
|
||||||
#endif
|
#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);
|
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
|
|
@ -1,6 +1,6 @@
|
||||||
#include "../header/bal.h"
|
#include "../header/bal.h"
|
||||||
|
|
||||||
int main(void){
|
int bal(void){
|
||||||
struct listeMessage l = initListeMessage();
|
struct listeMessage l = initListeMessage();
|
||||||
messageBAL * messageBAL = creeMessage("Renvoi moi mon pdf asap. -Simon",1);
|
messageBAL * messageBAL = creeMessage("Renvoi moi mon pdf asap. -Simon",1);
|
||||||
ajoutListe(&l,messageBAL);
|
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)
|
int main (int argc, char **argv)
|
||||||
{
|
{
|
||||||
|
testProtocol();
|
||||||
char usageChar[30]="usage: cmd [-p|-s][-n ##]\n";
|
char usageChar[30]="usage: cmd [-p|-s][-n ##]\n";
|
||||||
char *ipAddress;
|
char *ipAddress;
|
||||||
extern char *optarg;
|
extern char *optarg;
|
||||||
|
|
58
src/tsock.c
58
src/tsock.c
|
@ -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;
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue