Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

AFS (File format): Difference between revisions

No edit summary
No edit summary
Line 24: Line 24:
#* 2 octets : minute
#* 2 octets : minute
#* 2 octets : seconde
#* 2 octets : seconde
#* 4 octets : taille du fichier dans certains AFS, dans d'autres on retrouve une suite de file_offset, file_len, file_offset, file_len ... à chaque entrée de fichier en prenant le début du TOC dans l'ordre.
#* 4 octets : taille du fichier dans certains AFS, dans d'autres on retrouve une suite de file_offset, file_len, file_offset, file_len ... pour chaque entrée du FD, prenant le début du TOC dans l'ordre.


Le FD n'est pas obligatoirement présent dans le fichier AFS. Quand le FD est présent, on retrouve des fichiers portant un même nom et partageant des zones mémoires différentes.
Le FD n'est pas obligatoirement présent dans le fichier AFS. Quand le FD est présent, on retrouve des fichiers portant un même nom et partageant des zones mémoires différentes.

Revision as of 11:21, 28 January 2022

Le format de fichier AFS permet de packer un ensemble de fichier dans un seul et unique fichier. Il n'y a pas de compression. Tous les éléments (fichiers, et parties relatives au fonctionnement de l'afs) sont alignés sur des blocks de 0x800 octets. En dehors des fichiers, l'afs est en little endian.

Un AFS se compose de 4 parties :

  1. Le header
    • 4 octets : magic number = "AFS\x00" ou "AFS\x20"
    • 4 octets : nombre total de fichiers
  2. La Table Of Content (TOC) :
    • un tableau avec pour chaque fichier :
      • 4 octets : offset fichier
      • 4 octets : taille fichier
    • A la suite de ce tableau, 3 cas sont alors possibles :
      • On trouve l'offset du filename directory (4 octets) et sa taille (4 octets).
      • On trouve un padding (NULL bytes) puis l'offset du filename directory (4 octets) et sa taille (4 octets).
      • On a tout simplement pas de filename directory (ni offset ni taille).
  3. La partie qui contient l'ensemble des fichiers
  4. Le Filename Directory (FD) qui se constitue, pour chaque fichier, de :
    • 32 octets : nom du fichier paddé avec des NULL bytes
    • 2 octets : année
    • 2 octets : mois
    • 2 octets : jour
    • 2 octets : heure
    • 2 octets : minute
    • 2 octets : seconde
    • 4 octets : taille du fichier dans certains AFS, dans d'autres on retrouve une suite de file_offset, file_len, file_offset, file_len ... pour chaque entrée du FD, prenant le début du TOC dans l'ordre.

Le FD n'est pas obligatoirement présent dans le fichier AFS. Quand le FD est présent, on retrouve des fichiers portant un même nom et partageant des zones mémoires différentes.

Catégorie:Format de fichier Catégorie:Gotcha Force