Bonjour a toutes et a tous,
Je vous expose un petit probleme auquel je n'arrive pas a trouver de solutions.
Voici le contexte :
J'ai deux processus qui communiquent par FIFO. J'espionne la FIFO et je me retrouve avec un flux compresse. J'ai besoin de decompresser ce flux afin de verifier que le message a bien ete envoye et que les valeurs sont correctes, savoir les valeurs additionnelles que le processus emetteur ajoute. Je n'ai pas acces aux sources des deux process (puisqu'il faut les refaire).
Voici un flux que je recupere au format hexa :
78 9c fb c7 c0 c8 c0 68 c6 00 24 19 18 04 80 38 cd a6 d1 f3 ca 0a 56 86 cd 40 36 0b 10 33 fd ff bb 7f 02 13 03 03 00 8d 25 08 3b
J'ai remarque que ce flux a ete compresse avec zlib. D'ailleurs 789C correspond bien a ce que decrit la spec : RFC 1950, 1951, 1952. Cette chaine n'est pas au format gzip car celui-ci ajoute des entetes (date, nom du fichier...etc. avant 789C).
J'ai essaye (avec du PHP car rapide pour tester) de reconstituer les entetes gzip et le calcul CRC (car je pars de l'hypothese que mon flux c'est que la partie donnees compressee sans les entetes ni le CRC Adler) afin de convertir cette chaine en un fichier gzip et utiliser gzip des lors pour decompresser.
Questions :
Comment savoir si mon flux comporte deja le Cheksum ? Autrement dit est-ce que cette chaine a ete produite a partir de la RFC 1950, 51 ou 52 ?
Comment decompresser ce flux ?
Si vous avez quelques pistes...
Par avance Merci.
Partager