<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apk-tools/src/gunzip.c, branch v2.3.2</title>
<subtitle>Alpine Package Keeper, the 2.x tree
</subtitle>
<id>https://git-old.alpinelinux.org/apk-tools/atom?h=v2.3.2</id>
<link rel='self' href='https://git-old.alpinelinux.org/apk-tools/atom?h=v2.3.2'/>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/'/>
<updated>2011-09-13T08:53:01Z</updated>
<entry>
<title>all: update copyright year statement</title>
<updated>2011-09-13T08:53:01Z</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2011-09-13T08:53:01Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=1817b0a3c3ebd57e5332a80c15c70c46ec3eb8c0'/>
<id>urn:sha1:1817b0a3c3ebd57e5332a80c15c70c46ec3eb8c0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>gunzip: fix ordering of boundary callbacks</title>
<updated>2010-12-17T07:47:24Z</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2010-12-17T07:36:19Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=f126316c791371bd3dfd7c348b10e93e49f5e2d4'/>
<id>urn:sha1:f126316c791371bd3dfd7c348b10e93e49f5e2d4</id>
<content type='text'>
The boundary callback should not happen until all the uncompressed
data has been consumed. This previously seems to have worked
because normally gzip library returns "no error" instead of the
"stream end" if we extract exactly the amount of bytes remaining
in the archive. (Perhaps this was changed in new zlib.) In any
case, verification was broken with some apks due to this callback
ordering issue.
</content>
</entry>
<entry>
<title>io: enhance istream/bstreams with pipe to forked child</title>
<updated>2010-12-09T08:47:09Z</updated>
<author>
<name>Timo Teräs</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2010-12-09T08:47:09Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=d92df520790dffbc114cd17c4cd1d45a09c118f9'/>
<id>urn:sha1:d92df520790dffbc114cd17c4cd1d45a09c118f9</id>
<content type='text'>
 * prunes the child pid to avoid zombies
 * handles the errors so e.g. file-not-found is reported properly
</content>
</entry>
<entry>
<title>io: better error handling when writing stuff out</title>
<updated>2009-08-12T08:05:09Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-08-12T08:05:09Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=dee6ffa492c2efee982dcd0b4724213317eceb37'/>
<id>urn:sha1:dee6ffa492c2efee982dcd0b4724213317eceb37</id>
<content type='text'>
also have the output stream support writing to temporary file
and do renameat/unlinkat on close depending on if all writes
succeeded or not.
</content>
</entry>
<entry>
<title>pkg: cleanup the signing code</title>
<updated>2009-07-22T16:56:13Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-22T16:56:13Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=9b77c053e8fd03348ed04ba09ceaaf7ba99ca6f6'/>
<id>urn:sha1:9b77c053e8fd03348ed04ba09ceaaf7ba99ca6f6</id>
<content type='text'>
smaller callback and less cases to check. also reintroduce the
oneshot digest flag, hopefully correct this time.
</content>
</entry>
<entry>
<title>various: more informative error messages</title>
<updated>2009-07-22T11:56:27Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-22T11:56:27Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=93f0b3524c1263b99a1a4bf718c27e6ad7b6aea8'/>
<id>urn:sha1:93f0b3524c1263b99a1a4bf718c27e6ad7b6aea8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>various: installation fixes</title>
<updated>2009-07-22T08:36:55Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-22T08:36:55Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=680a3015114ce0375604a389139831f242769f60'/>
<id>urn:sha1:680a3015114ce0375604a389139831f242769f60</id>
<content type='text'>
- extract everything as .apk-new and overwrite only after data
  has been checksummed
- url construction fixes (to work with simple http servers)
- end of gunzip stream fixed
- remove oneshot digesting flag for now as it's usage was broken
</content>
</entry>
<entry>
<title>pkg: fix indexing of multi-part apks</title>
<updated>2009-07-21T14:37:44Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-21T14:37:44Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=812483515ad95c84de9c49de28fbd5ee769facfc'/>
<id>urn:sha1:812483515ad95c84de9c49de28fbd5ee769facfc</id>
<content type='text'>
</content>
</entry>
<entry>
<title>db: fixes to package checksumming while installing it</title>
<updated>2009-07-21T10:49:35Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-21T10:49:35Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=84e3786e05bb8cda52548b8d98efe87f2a1b64ac'/>
<id>urn:sha1:84e3786e05bb8cda52548b8d98efe87f2a1b64ac</id>
<content type='text'>
</content>
</entry>
<entry>
<title>gzip: fix finalization of compressed output</title>
<updated>2009-07-20T12:20:37Z</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-20T12:20:37Z</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/apk-tools/commit/?id=be8b59dbe1525a5885bbe3737aa696a01004d633'/>
<id>urn:sha1:be8b59dbe1525a5885bbe3737aa696a01004d633</id>
<content type='text'>
the unflushed data when closing file can be several thousand kiloes,
loop until all is written out.
</content>
</entry>
</feed>
