summaryrefslogtreecommitdiffstats
path: root/afb-client/bower_components/jszip/docs/ZIP spec.txt
blob: bb1485e32b159c8f109d71926ef0138e17e7a44c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
Here are the notes I made while working through the ZIP file specification.

For each file:

        local file header signature     4 bytes  (0x04034b50)
        version needed to extract       2 bytes
        general purpose bit flag        2 bytes
        compression method              2 bytes
        last mod file time              2 bytes
        last mod file date              2 bytes
        crc-32                          4 bytes
        compressed size                 4 bytes
        uncompressed size               4 bytes
        file name length                2 bytes
        extra field length              2 bytes

|sig |v |g |c |t |d |crc |csz |usz |n |x |
 PK.. ## 00 00 ?? ?? xxxx ???? ???? ?? 00
<file name><file data>

Central directory:

        central file header signature   4 bytes  (0x02014b50)
        version made by                 2 bytes
        version needed to extract       2 bytes  *
        general purpose bit flag        2 bytes  *
        compression method              2 bytes  *
        last mod file time              2 bytes  *
        last mod file date              2 bytes  *
        crc-32                          4 bytes  *
        compressed size                 4 bytes  *
        uncompressed size               4 bytes  *
        file name length                2 bytes  *
        extra field length              2 bytes  *
        file comment length             2 bytes
        disk number start               2 bytes
        internal file attributes        2 bytes
        external file attributes        4 bytes
        relative offset of local header 4 bytes

        file name (variable size)
        extra field (variable size)
        file comment (variable size)

|sig |vm|vx|g |c |d |t |crc |csz |usz |n |x |cm|dn|ia|xa  |roff|
 PK.. ## ## 00 00 ?? ?? xxxx ???? ???? ?? 00 00 00 00 xxxx ????

End of central directory:

        end of central dir signature    4 bytes  (0x06054b50)
        number of this disk             2 bytes
        number of the disk with the
        start of the central directory  2 bytes
        total number of entries in the
        central directory on this disk  2 bytes
        total number of entries in
        the central directory           2 bytes
        size of the central directory   4 bytes
        offset of start of central
        directory with respect to
        the starting disk number        4 bytes
        .ZIP file comment length        2 bytes
        .ZIP file comment       (variable size)

|sig |n1|n2|e |ne|size|off |cm|
 PK.. 00 00 ?? ?? ???? ???? 00
oper commit message> ``` 1. All repos have .gitreview files already, so now it is just ```bash git review ``` 1. (optional, but highly recommended!) Reset to gerrit/master ```bash git checkout master git reset --hard gerrit/master ``` It helps during the review process as gerrit would otherwise enforce the whole series of patches to be reviewed/merged together (2nd depends on 1st patch). 1. Rinse (=6) and repeat (=2-5) ## Using git review to review/test-build a specific change in gerrit 'git review' is also useful if you want to review a change. Example for meta-agl: ```bash repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo repo sync cd meta-agl/ git review -d 8233 ``` This will pull-down change 8233. Now we can build with it applied: ```bash cd .. source ... bitbake ... ``` ## Using gerrit to amend a changeset while in review The same workflow applies if you want to _amend_ a changeset while it is in review (not merged, yet): ```bash cd meta-agl/ git review -d 8233 ``` This will pull-down change 8233. You can now edit a file: ```bash vi meta-xyz/recipes-foo/bar/baz.bb git commit -s --amend ``` Don't forget a test build ```bash cd .. source meta-agl/scripts/aglsetup.sh ..... agl-all-features bitbake ... # e.g. agl-demo-platform ``` Finally call git review to upload the change ```bash git review ```