<feed xmlns='http://www.w3.org/2005/Atom'>
<title>xavi/slcl/crealpath.h, branch libweb-configure</title>
<subtitle>Small and lightweight cloud storage written in C99 and POSIX.1-2008.
</subtitle>
<id>https://gitea.privatedns.org/xavi/slcl/atom?h=libweb-configure</id>
<link rel='self' href='https://gitea.privatedns.org/xavi/slcl/atom?h=libweb-configure'/>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/slcl/'/>
<updated>2025-09-24T09:03:39+00:00</updated>
<entry>
<title>Introduce crealpath</title>
<updated>2025-09-24T09:03:39+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=a74f4a72504d1c5923bd2b4e85941f34d9fce79f'/>
<id>urn:sha1:a74f4a72504d1c5923bd2b4e85941f34d9fce79f</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>
