aboutsummaryrefslogtreecommitdiff
path: root/src/librc/librc.c
diff options
context:
space:
mode:
authorWilliam Hubbs <w.d.hubbs@gmail.com>2021-08-13 10:28:44 -0500
committerWilliam Hubbs <w.d.hubbs@gmail.com>2021-08-13 10:28:44 -0500
commit0a97bad6c9ba77285477aef8713e088eea4ab106 (patch)
treea8290c12297326f6bf6ab0aeb88db8ac95630799 /src/librc/librc.c
parentdec9ef200b0d7e96993e2725792a9e7abe9c5f1f (diff)
librc: fix rc_runlevel_exists return for empty string
This function should return false if the runlevel is an empty string. X-Gentoo-Bug: 803536 X-Gentoo-Bug-URL: https://bugs.gentoo.org/803536 Closes: https://github.com/OpenRC/openrc/pull/431
Diffstat (limited to 'src/librc/librc.c')
-rw-r--r--src/librc/librc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/librc/librc.c b/src/librc/librc.c
index 9da1757f..f9bf5082 100644
--- a/src/librc/librc.c
+++ b/src/librc/librc.c
@@ -481,7 +481,8 @@ rc_runlevel_exists(const char *runlevel)
char path[PATH_MAX];
struct stat buf;
- if (!runlevel || strcmp(runlevel, ".") == 0 || strcmp(runlevel, "..") == 0)
+ if (!runlevel || strcmp(runlevel, "") == 0 || strcmp(runlevel, ".") == 0 ||
+ strcmp(runlevel, "..") == 0)
return false;
snprintf(path, sizeof(path), "%s/%s", RC_RUNLEVELDIR, runlevel);
if (stat(path, &buf) == 0 && S_ISDIR(buf.st_mode))