From eba574856eb841f2d2af49262c679f7cdf564f3b Mon Sep 17 00:00:00 2001 From: obarun <eric@obarun.org> Date: Sat, 28 Jan 2023 20:52:26 +1100 Subject: [PATCH] prevent user error --- src/lib66/exec/ssexec_parse.c | 34 ++++++---------------------------- 1 file changed, 6 insertions(+), 28 deletions(-) diff --git a/src/lib66/exec/ssexec_parse.c b/src/lib66/exec/ssexec_parse.c index db1a6849..7cacac78 100644 --- a/src/lib66/exec/ssexec_parse.c +++ b/src/lib66/exec/ssexec_parse.c @@ -26,33 +26,7 @@ #include <66/parser.h> #include <66/ssexec.h> #include <66/utils.h> -/* -static void check_dir(char const *dir, uint8_t force, int main) -{ - log_flow() ; - - int r ; - - r = scan_mode(dir, S_IFDIR) ; - if (r < 0) { - errno = ENOTDIR ; - log_diesys(LOG_EXIT_SYS,"conflicting format of: ",dir) ; - } - - if (r && force && main) { - - if ((dir_rm_rf(dir) < 0) || !r ) - log_dieusys(LOG_EXIT_SYS,"sanitize directory: ",dir) ; - r = 0 ; - } else if (r && !force && main) - log_die(LOG_EXIT_SYS,"destination: ",dir," already exist") ; - - if (!r) - if (!dir_create_parent(dir, 0755)) - log_dieusys(LOG_EXIT_SYS,"create: ",dir) ; -} -*/ int ssexec_parse(int argc, char const *const *argv, ssexec_t *info) { log_flow() ; @@ -65,7 +39,7 @@ int ssexec_parse(int argc, char const *const *argv, ssexec_t *info) for (;;) { - int opt = subgetopt_r(argc,argv, OPTS_PARSE, &l) ; + int opt = subgetopt_r(argc, argv, OPTS_PARSE, &l) ; if (opt == -1) break ; switch (opt) @@ -73,12 +47,16 @@ int ssexec_parse(int argc, char const *const *argv, ssexec_t *info) case 'f' : /** only rewrite the service itself */ + if (force) + log_usage(usage_enable) ; force = 1 ; break ; case 'F' : - /** force to rewrite it dependencies */ + /** force to rewrite it dependencies */ + if (force) + log_usage(usage_enable) ; force = 2 ; break ; -- GitLab