Bonjour tout le monde,
Je suis actuellement en train d'écrire un petit soft qui doit se connecter a un petit serveur pour faire des petites choses ^^
J'ai écris ma structure à envoyer, la voici:
1 2 3 4 5 6 7 8 9
| typedef struct
{
char begin_trame;
char id_mess[3];
unsigned char stx; //0x02
Eligi_Header header;
Eligi_Parameters_68 parameters;
unsigned char etx; //0x03
} __attribute__ ((packed)) Eligi_68; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| typedef struct
{
char tm_smtp[14];
char v_hdr[2];
char typ_com;
char typ_ms;
char xxx[8];
char yyy[8];
char zzz[8];
char n_trans[8];
char id_mess[4];
char n_use[8]; // non utilisé
char lg_var[5];
} __attribute ((packed)) Eligi_Header; |
1 2 3 4 5 6 7
| typedef struct
{
char ind_id;
char id_a[8];
char id_m[14];
char id_src;
} __attribute ((packed)) Eligi_Parameters_68; |
Malheureusement, lorsque j'essayer d'envoyer à en TCP au serveur distant ma jolie petite structure avec ses jolies petites données grâce à la ligne:
write(soc, sc, sizeof(Eligi_68))
J'ai en retour une jolie petite érreure 84 correspondant à EILSEQ.
Sous ce terme barbare ce cache la chose suivante:
[EILSEQ]
Illegal byte sequence A wide-character code has been detected that does not correspond to a valid character, or a byte sequence does not form a valid wide-character code.
Quelqu'un aurai t il déjà rencontré ce genre de problème ? Ou tout bètement aura une astuce pour me mettre sur la voix de la résolution ?
Zigo ^^
Partager