diff options
author | William Hubbs <w.d.hubbs@gmail.com> | 2013-10-21 14:21:22 -0500 |
---|---|---|
committer | William Hubbs <w.d.hubbs@gmail.com> | 2013-10-21 14:21:22 -0500 |
commit | aeb670f4e8f56bae72511b08f8b3b5fa732ce7fc (patch) | |
tree | cdc6fecec3230bdd532b64c550926d10170a706f /src/librc | |
parent | 48981be8a872c7a0191d2519793205276fdc423a (diff) |
librc: do not allow "." and ".." as runlevel names
The rc_runlevel_exists function was attempting to treat "." and ".." as
valid runlevels; however, this should not be allowed.
X-Gentoo-Bug: 488710
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=488710
Diffstat (limited to 'src/librc')
-rw-r--r-- | src/librc/librc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/librc/librc.c b/src/librc/librc.c index cb4ce63e..d7a4849a 100644 --- a/src/librc/librc.c +++ b/src/librc/librc.c @@ -425,7 +425,7 @@ rc_runlevel_exists(const char *runlevel) char path[PATH_MAX]; struct stat buf; - if (!runlevel) + if (!runlevel || 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)) |