<feed xmlns='http://www.w3.org/2005/Atom'>
<title>squashfs-tools-ng.git/lib/fstree, branch v1.1.0</title>
<subtitle>A new set of tools and libraries for working with SquashFS images</subtitle>
<id>https://git.infraroot.at/squashfs-tools-ng.git/atom?h=v1.1.0</id>
<link rel='self' href='https://git.infraroot.at/squashfs-tools-ng.git/atom?h=v1.1.0'/>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/'/>
<updated>2021-03-25T15:37:41+00:00</updated>
<entry>
<title>libfstree: allow the glob path to be empty</title>
<updated>2021-03-25T15:37:41+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-03-25T15:33:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=7d2b3b077d7e204e64a1c57845524250c5b4a142'/>
<id>urn:sha1:7d2b3b077d7e204e64a1c57845524250c5b4a142</id>
<content type='text'>
Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>libfstree: add an assertion that root is not NULL</title>
<updated>2021-03-25T13:49:52+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-03-25T13:49:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=b0f6ab7ff26c1152ee4894a86f69b183cfabe94f'/>
<id>urn:sha1:b0f6ab7ff26c1152ee4894a86f69b183cfabe94f</id>
<content type='text'>
If the path argument is "", we assume that referes to root and set
the *existing* target node to the root node and skip ahead across
the tree search. This leaves "name" uninitialized, which makes
coverity panic, because fs-&gt;root could be NULL, going down the wrong
path.

Obviously, this should never, *ever* happen and there is no reasonable
recovery strategy if it suddenly does, so simply add an assertion.

Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>libfstree: Allow / as argument for "glob" and "dir" commands</title>
<updated>2021-03-25T13:35:39+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-03-25T13:23:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=b0b88d26c9df6d336167f87ce926bba9b56f6af0'/>
<id>urn:sha1:b0b88d26c9df6d336167f87ce926bba9b56f6af0</id>
<content type='text'>
This allows putting globbed files &amp; directories into the filesystem
root, as well as explicitly setting attributes of the root directory
from the file lisiting.

Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>libfstree: implement directory scanning code for Windows</title>
<updated>2021-03-24T08:59:07+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-03-20T22:42:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=42214e1bd028f68b6194d3588d09899015ea163c'/>
<id>urn:sha1:42214e1bd028f68b6194d3588d09899015ea163c</id>
<content type='text'>
It's rather simplistic and doesn't account for junction/reparse
points, which is the closest thing Windows has to symlinks, hard
links and mount points, but it's consistent with the unpacking code
that assumes Windows only has files and directories.

Using the 32 bit mingw toolchain, this seems to satisfy the unit
tests on wine.

Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>Add libcompat fallback implementation for fnmatch</title>
<updated>2021-03-20T16:46:14+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-03-20T16:35:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=e678bd4b4289e536e998057bf9a9cf415f21b74c'/>
<id>urn:sha1:e678bd4b4289e536e998057bf9a9cf415f21b74c</id>
<content type='text'>
This has basically been copied over from Musl and slightly modifed.

Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>Fix: libfstree: add an assert the canonicalize_name return value</title>
<updated>2021-02-19T18:51:58+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-02-19T18:51:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=711650ee7c0799c56c177dd363fe43dc9492c3aa'/>
<id>urn:sha1:711650ee7c0799c56c177dd363fe43dc9492c3aa</id>
<content type='text'>
Since the canonicalize_name function only fails if the path
contains ".." and the one we are constructing from the scanned
fstree (built using canonicalized names), it should NEVER fail.

However, coverity does get concerned, because we are checking the
return value elesewhere. So do what we do at other, similar locations
and add an assert().

Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>Fix: canonicalize path names in glob pattern matching</title>
<updated>2021-02-19T18:36:37+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-02-19T18:36:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=e4b94b1f7ca0cdfdbc3bebcbbc2ef14e85ede065'/>
<id>urn:sha1:e4b94b1f7ca0cdfdbc3bebcbbc2ef14e85ede065</id>
<content type='text'>
Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>libfstree: reject unknown glob options to allow future expansions</title>
<updated>2021-02-19T17:24:38+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-02-19T17:24:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=573edeb13b5b71f90fc1d819af6748cb93d5604e'/>
<id>urn:sha1:573edeb13b5b71f90fc1d819af6748cb93d5604e</id>
<content type='text'>
Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>fstree_from_file: Add fnmatch() pattern matching to file globbing</title>
<updated>2021-02-19T16:35:07+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-02-19T16:08:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=5b32051eb638ba0560146576c4e8d2d0ec75553d'/>
<id>urn:sha1:5b32051eb638ba0560146576c4e8d2d0ec75553d</id>
<content type='text'>
Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
<entry>
<title>fstree_from_file: Implement basic file globbing</title>
<updated>2021-02-19T16:35:07+00:00</updated>
<author>
<name>David Oberhollenzer</name>
<email>david.oberhollenzer@sigma-star.at</email>
</author>
<published>2021-02-18T10:38:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.infraroot.at/squashfs-tools-ng.git/commit/?id=d7409bbc5e24267b275692b48116254d842d3821'/>
<id>urn:sha1:d7409bbc5e24267b275692b48116254d842d3821</id>
<content type='text'>
The base path is passed to the fstree_from_file function and in turn
to the individual callbacks.

The line parsing function is modified to allow '*' as mode, uid and gid
for specifically marked callbacks.

A glob callback is added that internally uses the fstree_from_dir scanning
functions in combination with a filter callback.

Directory scanning flags are parsed from the extra arguments before
interpreting it as a path fragment.

Signed-off-by: David Oberhollenzer &lt;david.oberhollenzer@sigma-star.at&gt;
</content>
</entry>
</feed>
