summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/api.rst3
-rw-r--r--doc/changelog.rst9
-rw-r--r--doc/files_and_dirs.rst9
3 files changed, 19 insertions, 2 deletions
diff --git a/doc/api.rst b/doc/api.rst
index 84feaa6..73aa968 100644
--- a/doc/api.rst
+++ b/doc/api.rst
@@ -9,7 +9,8 @@ Function reference
====== ====== ====== ========================================
RMV MinVer FirstA Name
====== ====== ====== ========================================
-4.18 4.18 4.18 HX_getopt5
+4.24 4.24 4.24 HX_getcwd
+4.19 4.18 4.18 HX_getopt5
4.16 4.16 4.16 HX_strtoull_nsec
4.15 4.15 4.15 HX_flpr
4.15 4.15 4.15 HX_flprf
diff --git a/doc/changelog.rst b/doc/changelog.rst
index f4bf0f1..63380ff 100644
--- a/doc/changelog.rst
+++ b/doc/changelog.rst
@@ -1,3 +1,12 @@
+v4.24 (2024-07-17)
+==================
+
+Fixes:
+
+* io: resolve use-after-free and out-of-bounds writes in conjunction
+ with HX_realpath
+
+
v4.23 (2024-02-15)
==================
diff --git a/doc/files_and_dirs.rst b/doc/files_and_dirs.rst
index a18b5a4..a1d7090 100644
--- a/doc/files_and_dirs.rst
+++ b/doc/files_and_dirs.rst
@@ -57,9 +57,15 @@ Operation on directory entries
#include <libHX/io.h>
+ int HX_getcwd(hxmc_t **buf);
int HX_readlink(hxmc_t **buf, const char *path);
int HX_realpath(hxmc_t **buf, const char *path, unsigned int flags);
+``HX_getcwd`` is a length-agnostic version of getcwd. On error, a negative
+integer is returned indicating the errno; the contents of ``*buf`` are
+unspecified if that happens. On success, a non-zero positive integer is
+returned.
+
``HX_readlink`` calls through to readlink to read the target of a symbolic
link, and stores the result in the memory container referenced by ``*buf``
(similar to ``HX_getl`` semantics). If ``*buf`` is ``NULL``, a new container
@@ -91,7 +97,8 @@ actions:
The result is stored in a memory container whose pointer is returned through
``*buf``. The return value of the function will be negative to indicate a
-possible system error, or be positive non-zero for success.
+possible system error, or be positive non-zero for success. The contents of the
+buffer are unspecified in case HX_realpath returns an error.
Operations on directories