<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aports/src/io.c, branch v2.0_rc7</title>
<subtitle>Main aports tree
</subtitle>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/'/>
<entry>
<title>db: fix migration and pruning of symlinks to dirs</title>
<updated>2009-10-26T07:46:09+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-10-26T07:46:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=a7360395ea963334e80fb49d3fc36789d6f40685'/>
<id>a7360395ea963334e80fb49d3fc36789d6f40685</id>
<content type='text'>
the old code treated a symlink to directory as file; it tried
to calculate regular has of it. fix this by: 1) using no follow
on migration and pruning stats, and 2) the helper function to
check if it's point to directory and not calculate hash in that
case. fixes #188.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
the old code treated a symlink to directory as file; it tried
to calculate regular has of it. fix this by: 1) using no follow
on migration and pruning stats, and 2) the helper function to
check if it's point to directory and not calculate hash in that
case. fixes #188.
</pre>
</div>
</content>
</entry>
<entry>
<title>io: better error handling when writing stuff out</title>
<updated>2009-08-12T08:05:09+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-08-12T08:05:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=dee6ffa492c2efee982dcd0b4724213317eceb37'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
also have the output stream support writing to temporary file
and do renameat/unlinkat on close depending on if all writes
succeeded or not.
</pre>
</div>
</content>
</entry>
<entry>
<title>db, audit: audit symlinks (by hash of the link target)</title>
<updated>2009-08-11T16:02:22+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-08-11T16:02:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=addae04c266401cf049f1188917bf3432873933c'/>
<id>addae04c266401cf049f1188917bf3432873933c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>io: flag for following symlinks on fstat</title>
<updated>2009-08-05T10:13:52+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-08-05T10:13:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=46e93295688385af6b4b5d17f97675087a90aba4'/>
<id>46e93295688385af6b4b5d17f97675087a90aba4</id>
<content type='text'>
usually we are interested on the actual file's length. but
audit is interested about the link. so add a flag for this and
use it in audit.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
usually we are interested on the actual file's length. but
audit is interested about the link. so add a flag for this and
use it in audit.
</pre>
</div>
</content>
</entry>
<entry>
<title>apk: use *at instead of chdir+normal file syscall</title>
<updated>2009-07-31T13:08:09+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-31T13:08:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=ea901526648c43ef8e961b3d7e051b9ca14b65ca'/>
<id>ea901526648c43ef8e961b3d7e051b9ca14b65ca</id>
<content type='text'>
this way we never change cwd, and relative filenames are always
parsed consistently. this also helps filename construction in many
places. this patch also changes '--root' to override location of
all configuration to be in the new root. previously it depended
on the file which one was used.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
this way we never change cwd, and relative filenames are always
parsed consistently. this also helps filename construction in many
places. this patch also changes '--root' to override location of
all configuration to be in the new root. previously it depended
on the file which one was used.
</pre>
</div>
</content>
</entry>
<entry>
<title>io: fix corruption of big files on mmap write</title>
<updated>2009-07-31T07:50:55+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-31T07:50:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=67108bf07a67811ea91fc965f3f1592a4a70044e'/>
<id>67108bf07a67811ea91fc965f3f1592a4a70044e</id>
<content type='text'>
remember to increment destination pointer; and munmap the proper
base address.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
remember to increment destination pointer; and munmap the proper
base address.
</pre>
</div>
</content>
</entry>
<entry>
<title>audit: protection mask for "symlinks only"</title>
<updated>2009-07-30T07:42:20+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-30T07:42:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=5b48b855600aa316e3c9385e998c68ad757794a2'/>
<id>5b48b855600aa316e3c9385e998c68ad757794a2</id>
<content type='text'>
and use it for /etc/init.d by default. fixes #99.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
and use it for /etc/init.d by default. fixes #99.
</pre>
</div>
</content>
</entry>
<entry>
<title>io: keep static pointer to copying buffer</title>
<updated>2009-07-30T06:11:14+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-30T06:11:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=60c668f1dccc77800548ec54587724ee9e61f4e3'/>
<id>60c668f1dccc77800548ec54587724ee9e61f4e3</id>
<content type='text'>
so we avoid some malloc/free calls.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
so we avoid some malloc/free calls.
</pre>
</div>
</content>
</entry>
<entry>
<title>io: fix mmap writing to actually work</title>
<updated>2009-07-30T06:07:35+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-30T06:07:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=8e4075e6b1911679ae3da837b5f13fb85c8f01f5'/>
<id>8e4075e6b1911679ae3da837b5f13fb85c8f01f5</id>
<content type='text'>
apparently it needs to have both PROT_READ and PROT_WRITE. and
it needs to be MAP_SHARED for the writing to be effective. oh,
and the data needs to be preallocated with ftruncate; otherwise,
one gets SIGBUS.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
apparently it needs to have both PROT_READ and PROT_WRITE. and
it needs to be MAP_SHARED for the writing to be effective. oh,
and the data needs to be preallocated with ftruncate; otherwise,
one gets SIGBUS.
</pre>
</div>
</content>
</entry>
<entry>
<title>io: use mmap to write archive entries to disk</title>
<updated>2009-07-29T16:33:52+00:00</updated>
<author>
<name>Timo Teras</name>
<email>timo.teras@iki.fi</email>
</author>
<published>2009-07-29T16:33:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git-old.alpinelinux.org/aports/commit/?id=2ff4059b9a4073459cb75406df1a6f2d7717e72e'/>
<id>2ff4059b9a4073459cb75406df1a6f2d7717e72e</id>
<content type='text'>
avoids some copying and system calls.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
avoids some copying and system calls.
</pre>
</div>
</content>
</entry>
</feed>
