<feed xmlns='http://www.w3.org/2005/Atom'>
<title>xavi/slcl/crealpath.c, branch test-multiform</title>
<subtitle>Small and lightweight cloud storage written in C99 and POSIX.1-2008.
</subtitle>
<id>https://gitea.privatedns.org/xavi/slcl/atom?h=test-multiform</id>
<link rel='self' href='https://gitea.privatedns.org/xavi/slcl/atom?h=test-multiform'/>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/slcl/'/>
<updated>2023-11-24T00:54:11+00:00</updated>
<entry>
<title>Introduce crealpath</title>
<updated>2023-11-24T00:54:11+00:00</updated>
<author>
<name>Xavier Del Campo Romero</name>
<email>xavi.dcr@tutanota.com</email>
</author>
<published>2023-07-24T21:17:48+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/slcl/commit/?id=58c383dd918635ba648b9f8532f15e357b162c77'/>
<id>urn:sha1:58c383dd918635ba648b9f8532f15e357b162c77</id>
<content type='text'>
crealpath (for "custom realpath") is a custom implementation of
realpath(3) that aims to work similarly to GNU's realpath(1). This
implementation is provided due to the following reasons:

- Future commits will require extracting an absolute path from a
  relative path, and/or process relative components from a path, such as
".." or ".".
- realpath(3) is defined by POSIX.1-2008 as a XSI extension, and
  extensions are generally avoided in this repository whenever possible.
- Additionally, realpath(3) requires the file or directory pointed to by
the path to exist, which might not always be the case for slcl.
- auth.c uses its own implementation to extract a dynamically allocated
string by repeatedly calling getcwd(3). Future commits will also
require this future, so it makes sense to keep it on a separate
component.
</content>
</entry>
</feed>
