summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--man/sd_path_lookup.xml8
-rw-r--r--src/test/test-sd-path.c16
2 files changed, 20 insertions, 4 deletions
diff --git a/man/sd_path_lookup.xml b/man/sd_path_lookup.xml
index 35a1109af3..68c6812ab1 100644
--- a/man/sd_path_lookup.xml
+++ b/man/sd_path_lookup.xml
@@ -173,6 +173,14 @@
</varlistentry>
<varlistentry>
+ <term><constant>-ENXIO</constant></term>
+
+ <listitem><para>Query failed because of an undefined environment variable (e.g. for
+ <constant>SD_PATH_USER_RUNTIME</constant> when <varname>$XDG_RUNTIME_DIR</varname> is not
+ defined).</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
<term><constant>-ENOMEM</constant></term>
<listitem><para>Memory allocation failed.</para></listitem>
diff --git a/src/test/test-sd-path.c b/src/test/test-sd-path.c
index 5888d3b9f9..9260db5ace 100644
--- a/src/test/test-sd-path.c
+++ b/src/test/test-sd-path.c
@@ -11,9 +11,13 @@ static void test_sd_path_lookup(void) {
log_info("/* %s */", __func__);
for (uint64_t i = 0; i < _SD_PATH_MAX; i++) {
- _cleanup_free_ char *t, *s;
+ _cleanup_free_ char *t = NULL, *s = NULL;
+ int r;
- assert_se(sd_path_lookup(i, NULL, &t) == 0);
+ r = sd_path_lookup(i, NULL, &t);
+ if (i == SD_PATH_USER_RUNTIME && r == -ENXIO)
+ continue;
+ assert_se(r == 0);
assert_se(t);
log_info("%02"PRIu64": \"%s\"", i, t);
@@ -31,10 +35,14 @@ static void test_sd_path_lookup_strv(void) {
log_info("/* %s */", __func__);
for (uint64_t i = 0; i < _SD_PATH_MAX; i++) {
- _cleanup_strv_free_ char **t, **s;
+ _cleanup_strv_free_ char **t = NULL, **s = NULL;
char **item;
+ int r;
- assert_se(sd_path_lookup_strv(i, NULL, &t) == 0);
+ r = sd_path_lookup_strv(i, NULL, &t);
+ if (i == SD_PATH_USER_RUNTIME && r == -ENXIO)
+ continue;
+ assert_se(r == 0);
assert_se(t);
log_info("%02"PRIu64":", i);
STRV_FOREACH(item, t)