From 87597357116dffd4e1136c16aab431844877a247 Mon Sep 17 00:00:00 2001 From: Roy Marples Date: Tue, 8 Apr 2008 22:57:42 +0000 Subject: Give an error when running zap as a generic user. --- src/librc/librc.c | 7 +++++-- src/rc/runscript.c | 3 ++- 2 files changed, 7 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/librc/librc.c b/src/librc/librc.c index afd20d5..c94c7a4 100644 --- a/src/librc/librc.c +++ b/src/librc/librc.c @@ -501,7 +501,7 @@ bool rc_service_mark(const char *service, const RC_SERVICE state) base = basename_c(service); if (state != RC_SERVICE_STOPPED) { - if (! exists(init)) { + if (!exists(init)) { free(init); return false; } @@ -547,7 +547,10 @@ bool rc_service_mark(const char *service, const RC_SERVICE state) symlink(init, was); skip_wasinactive = true; } - unlink(file); + if (unlink(file) == -1) { + free(init); + return false; + } } } } diff --git a/src/rc/runscript.c b/src/rc/runscript.c index c2cef71..2f96d7a 100644 --- a/src/rc/runscript.c +++ b/src/rc/runscript.c @@ -1306,7 +1306,8 @@ int runscript(int argc, char **argv) } } else if (strcmp(optarg, "zap") == 0) { einfo("Manually resetting %s to stopped state", applet); - rc_service_mark(applet, RC_SERVICE_STOPPED); + if (!rc_service_mark(applet, RC_SERVICE_STOPPED)) + eerrorx("rc_service_mark: %s", strerror(errno)); uncoldplug(); } else svc_exec(optarg, NULL); -- cgit v1.2.3