Revise file_format.md
All checks were successful
Run Unit Tests / build-and-run-unit-tests (push) Successful in 5s

Specify how symlink paths should be handled if they do not exist (path
size of 0).
This commit is contained in:
Stephen Seo 2024-07-07 14:43:32 +09:00
parent 58269d751c
commit e315ac5c33

View file

@ -50,10 +50,16 @@ Following the file-count bytes, the following bytes are added for each file:
4. The fourth byte. 4. The fourth byte.
1. Currently unused. 1. Currently unused.
4. If this file is a symbolic link: 4. If this file is a symbolic link:
1. 2 bytes is 16-bit unsigned integer "link target path" in big-endian. This 1. 2 bytes is 16-bit unsigned integer "link target absolute path" in
does not include the NULL at the end of the string. big-endian. This does not include the NULL at the end of the string.
2. X bytes of link-target-path (length defined by previous value). Is a 2. X bytes of link-target-absolute-path (length defined by previous value).
NULL-terminated string. Is a NULL-terminated string. If the previous "size" value is 0, then
this entry does not exist and should be skipped.
3. 2 bytes is 16-bit unsigned integer "link target relative path" in
big-endian. This does not include the NULL at the end of the string.
4. X bytes of link-target-relative-path (length defined by previous value).
Is a NULL-terminated string. If the previous "size" value is 0, then
this entry does not exist and should be skipped.
5. If this file is NOT a symbolic link: 5. If this file is NOT a symbolic link:
1. 8 bytes 64-bit unsigned integer "size of filename in this archive file". 1. 8 bytes 64-bit unsigned integer "size of filename in this archive file".
2. X bytes file data (length defined by previous value). 2. X bytes file data (length defined by previous value).