diff --git a/src/lib66/exec/ssexec_resolve.c b/src/lib66/exec/ssexec_resolve.c index 1fa83425dc21687eb99036963c5232b97c9a9f27..41aab5c965d03f6620d8d847999bab22232bbcf9 100644 --- a/src/lib66/exec/ssexec_resolve.c +++ b/src/lib66/exec/ssexec_resolve.c @@ -186,7 +186,7 @@ int ssexec_resolve(int argc, char const *const *argv, ssexec_t *info) "owner", "treename", "user" , - "inmodule", + "inns", "enabled", "home", diff --git a/src/lib66/exec/ssexec_tree_signal.c b/src/lib66/exec/ssexec_tree_signal.c index e3f5f9c8694689aca7fa9eb3991b009562d48725..a7643914f366f785e77534868537da9112f35a33 100644 --- a/src/lib66/exec/ssexec_tree_signal.c +++ b/src/lib66/exec/ssexec_tree_signal.c @@ -456,7 +456,7 @@ static int ssexec_callback(stralloc *sa, ssexec_t *info, unsigned int what) if (!what ? res.enabled : ste.issupervised == STATE_FLAGS_TRUE && !res.earlier) { - if (get_rstrlen_until(name, SS_LOG_SUFFIX) < 0 && !res.inmodule) + if (get_rstrlen_until(name, SS_LOG_SUFFIX) < 0 && !res.inns) if (!sastr_add_string(sa, name)) log_dieu(LOG_EXIT_SYS, "add string") ; } diff --git a/src/lib66/parse/parse_compute_resolve.c b/src/lib66/parse/parse_compute_resolve.c index e13580bfb024b05672e5c6a6b1f623b14fd45ca2..f5192dd4735ddd8b5e2653a018109f4146e0045d 100644 --- a/src/lib66/parse/parse_compute_resolve.c +++ b/src/lib66/parse/parse_compute_resolve.c @@ -393,8 +393,8 @@ static void compute_log(resolve_service_t *res, resolve_service_t *ares, unsigne lres.owner = res->owner ; lres.treename = resolve_add_string(wres, str + res->treename) ; lres.user = resolve_add_string(wres, str + res->user) ; - if (res->inmodule) - lres.inmodule = resolve_add_string(wres, str + res->inmodule) ; + if (res->inns) + lres.inns = resolve_add_string(wres, str + res->inns) ; lres.path.home = resolve_add_string(wres, str + res->path.home) ; lres.path.frontend = resolve_add_string(wres, str + res->path.frontend) ; diff --git a/src/lib66/parse/parse_frontend.c b/src/lib66/parse/parse_frontend.c index 01fae33b5ef322594ac6163d552cc6410b4cf308..d8a9c66e22c6c06acb41365b7cf835886820fad1 100644 --- a/src/lib66/parse/parse_frontend.c +++ b/src/lib66/parse/parse_frontend.c @@ -15,6 +15,7 @@ #include <stdint.h> #include <string.h> #include <stdlib.h> //free +#include <sys/stat.h> #include <oblibs/log.h> #include <oblibs/sastr.h> @@ -84,7 +85,7 @@ static void parse_service_instance(stralloc *frontend, char const *svsrc, char c * @Die on fail * @Return 1 on success * @Return 2 -> already parsed */ -int parse_frontend(char const *sv, resolve_service_t *ares, unsigned int *areslen, ssexec_t *info, uint8_t force, uint8_t conf, char const *forced_directory, char const *main, char const *inmodule) +int parse_frontend(char const *sv, resolve_service_t *ares, unsigned int *areslen, ssexec_t *info, uint8_t force, uint8_t conf, char const *forced_directory, char const *main, char const *inns) { log_flow() ; @@ -100,13 +101,13 @@ int parse_frontend(char const *sv, resolve_service_t *ares, unsigned int *aresle if (!ob_dirname(svsrc, sv)) log_dieu(LOG_EXIT_SYS, "get dirname of: ", sv) ; - if (inmodule) { + if (inns) { if (service_resolve_array_search(ares, *areslen, svname) >= 0) log_warn_return(2, "ignoring: ", svname, " service -- already appended to the selection") ; - char n[strlen(inmodule) + 1 + strlen(svname) + 1] ; - auto_strings(n, inmodule, ":", svname) ; + char n[strlen(inns) + 1 + strlen(svname) + 1] ; + auto_strings(n, inns, ":", svname) ; if (service_resolve_array_search(ares, *areslen, n) >= 0) log_warn_return(2, "ignoring: ", n, " service -- already appended to the selection") ; @@ -189,13 +190,13 @@ int parse_frontend(char const *sv, resolve_service_t *ares, unsigned int *aresle } } - if (inmodule) { + if (inns) { - char n[strlen(inmodule) + 1 + strlen(svname) + 1] ; - auto_strings(n, inmodule,":",svname) ; + char n[strlen(inns) + 1 + strlen(svname) + 1] ; + auto_strings(n, inns,":",svname) ; res.name = resolve_add_string(wres, n) ; - res.inmodule = resolve_add_string(wres, inmodule) ; + res.inns = resolve_add_string(wres, inns) ; } else { @@ -217,8 +218,11 @@ int parse_frontend(char const *sv, resolve_service_t *ares, unsigned int *aresle /** contents of directory should be listed by service_frontend_path * except for module type */ - if (scan_mode(sv, S_IFDIR) == 1 && res.type != TYPE_MODULE) - goto freed ; + if (scan_mode(sv, S_IFDIR) == 1 && res.type != TYPE_MODULE) { + stralloc_free(&sa) ; + resolve_free(wres) ; + return 1 ; + } if (!parse_contents(wres, file, svname)) log_dieu(LOG_EXIT_SYS, "parse file of service: ", svname) ; @@ -254,24 +258,23 @@ int parse_frontend(char const *sv, resolve_service_t *ares, unsigned int *aresle /** parse interdependences if the service was never parsed */ if (isparsed == STATE_FLAGS_FALSE) { - if (!parse_interdependences(svname, res.sa.s + res.dependencies.depends, res.dependencies.ndepends, ares, areslen, info, force, conf, forced_directory, main, inmodule)) + if (!parse_interdependences(svname, res.sa.s + res.dependencies.depends, res.dependencies.ndepends, ares, areslen, info, force, conf, forced_directory, main, inns)) log_dieu(LOG_EXIT_SYS, "parse dependencies of service: ", svname) ; } if (res.type == TYPE_MODULE) parse_module(&res, ares, areslen, info, force) ; - if (service_resolve_array_search(ares, *areslen, svname) < 0) { + if (service_resolve_array_search(ares, *areslen, res.sa.s + res.name) < 0) { - log_trace("add service ", svname, " to the selection") ; + log_trace("add service ", res.sa.s + res.name, " to the selection") ; if (*areslen > SS_MAX_SERVICE) log_die(LOG_EXIT_SYS, "too many services to parse -- compile again 66 changing the --max-service options") ; ares[(*areslen)++] = res ; } - freed: - stralloc_free(&sa) ; - free(wres) ; - return 1 ; + stralloc_free(&sa) ; + free(wres) ; + return 1 ; } diff --git a/src/lib66/parse/parse_interdependences.c b/src/lib66/parse/parse_interdependences.c index 7a17d0d31e6f522941e5f37a4054990c6f41a453..6dc126a062cd5d043339aa89b8369d79011da76f 100644 --- a/src/lib66/parse/parse_interdependences.c +++ b/src/lib66/parse/parse_interdependences.c @@ -30,7 +30,7 @@ #include <66/instance.h> #include <66/module.h> -int parse_interdependences(char const *service, char const *list, unsigned int listlen, resolve_service_t *ares, unsigned int *areslen, ssexec_t *info, uint8_t force, uint8_t conf, char const *forced_directory, char const *main, char const *inmodule) +int parse_interdependences(char const *service, char const *list, unsigned int listlen, resolve_service_t *ares, unsigned int *areslen, ssexec_t *info, uint8_t force, uint8_t conf, char const *forced_directory, char const *main, char const *inns) { log_flow() ; @@ -89,11 +89,9 @@ int parse_interdependences(char const *service, char const *list, unsigned int l * forced_directory == 0 means that the service * comes from an external directory of the module. * In this case don't associated it at the module. */ - parse_frontend(sa.s, ares, areslen, info, force, conf, forced_directory, main, !forced_directory ? 0 : inmodule) ; - + parse_frontend(sa.s, ares, areslen, info, force, conf, forced_directory, main, !forced_directory ? 0 : inns) ; } - } else log_trace("no interdependences found for service: ", service) ; diff --git a/src/lib66/parse/parse_rename_interdependences.c b/src/lib66/parse/parse_rename_interdependences.c index 279d045c2ae7761966d817e41169a515f8e287ea..df349abbabeb3ffeae5a06d21d817cc576f4844b 100644 --- a/src/lib66/parse/parse_rename_interdependences.c +++ b/src/lib66/parse/parse_rename_interdependences.c @@ -52,7 +52,7 @@ static void parse_prefix(char *result, stack *stk, resolve_service_t *ares, unsi /** check if the dependencies is a external one. In this * case, the service is not considered as part of the prefix */ - if (ares[aresid].inmodule && (!strcmp(ares[aresid].sa.s + ares[aresid].inmodule, prefix))) + if (ares[aresid].inns && (!strcmp(ares[aresid].sa.s + ares[aresid].inns, prefix))) auto_strings(result + strlen(result), prefix, ":", stk->s + pos, " ") ; else auto_strings(result + strlen(result), stk->s + pos, " ") ; diff --git a/src/lib66/service/service_enable_disable.c b/src/lib66/service/service_enable_disable.c index 6e67d68522d1876635e64e55e530a6c505255d98..3a1edbd059462ca090e19bc126f5a2ff0f00c744 100644 --- a/src/lib66/service/service_enable_disable.c +++ b/src/lib66/service/service_enable_disable.c @@ -76,7 +76,7 @@ void service_enable_disable(graph_t *g, unsigned int idx, resolve_service_t *are /** the logger must be disabled to avoid to start it * with the 66 tree start <tree> command */ - if (res->logger.want && !action && res->type == TYPE_CLASSIC && !res->inmodule) { + if (res->logger.want && !action && res->type == TYPE_CLASSIC && !res->inns) { char *name = res->sa.s + res->logger.name ; diff --git a/src/lib66/service/service_resolve_copy.c b/src/lib66/service/service_resolve_copy.c index a92b38129d532715b17730aa62990a417b46f373..a34a08d60d40c646a09a00a859e32f23b89fa109 100644 --- a/src/lib66/service/service_resolve_copy.c +++ b/src/lib66/service/service_resolve_copy.c @@ -48,7 +48,7 @@ int service_resolve_copy(resolve_service_t *dst, resolve_service_t *res) dst->owner = res->owner ; dst->treename = res->treename ; dst->user = res->user ; - dst->inmodule = res->inmodule ; + dst->inns = res->inns ; dst->enabled = res->enabled ; // path diff --git a/src/lib66/service/service_resolve_get_field_tosa.c b/src/lib66/service/service_resolve_get_field_tosa.c index 3fb6dbe54f55ebb4747ec3e6423a47ff0f77dd6d..c0480758464454cc2dffc4db00bab665547a6fc1 100644 --- a/src/lib66/service/service_resolve_get_field_tosa.c +++ b/src/lib66/service/service_resolve_get_field_tosa.c @@ -92,8 +92,8 @@ int service_resolve_get_field_tosa(stralloc *sa, resolve_service_t *res, resolve str = res->sa.s + res->user ; break ; - case E_RESOLVE_SERVICE_INMODULE: - str = res->sa.s + res->inmodule ; + case E_RESOLVE_SERVICE_INNS: + str = res->sa.s + res->inns ; break ; case E_RESOLVE_SERVICE_ENABLED: diff --git a/src/lib66/service/service_resolve_modify_field.c b/src/lib66/service/service_resolve_modify_field.c index abf5e686eff6a9ba754d8bd084ee430b9bf22b0a..bbe51703ef90d67bc3dd84bea0de7441acb6d7f7 100644 --- a/src/lib66/service/service_resolve_modify_field.c +++ b/src/lib66/service/service_resolve_modify_field.c @@ -35,7 +35,7 @@ resolve_field_table_t resolve_service_field_table[] = { [E_RESOLVE_SERVICE_OWNER] = { .field = "owner" }, [E_RESOLVE_SERVICE_TREENAME] = { .field = "treename" }, [E_RESOLVE_SERVICE_USER] = { .field = "user" }, - [E_RESOLVE_SERVICE_INMODULE] = { .field = "inmodule" }, + [E_RESOLVE_SERVICE_INNS] = { .field = "inns" }, [E_RESOLVE_SERVICE_ENABLED] = { .field = "enabled" }, // path @@ -188,12 +188,12 @@ int service_resolve_modify_field(resolve_service_t *res, resolve_service_enum_t res->user = resolve_add_string(wres, data) ; break ; - case E_RESOLVE_SERVICE_INMODULE: - res->inmodule = resolve_add_string(wres, data) ; + case E_RESOLVE_SERVICE_INNS: + res->inns = resolve_add_string(wres, data) ; break ; case E_RESOLVE_SERVICE_ENABLED: - res->enabled = resolve_add_uint(data) ; ; + res->enabled = resolve_add_uint(data) ; break ; diff --git a/src/lib66/service/service_resolve_read_cdb.c b/src/lib66/service/service_resolve_read_cdb.c index c41705f6c2f2b3cca5464d0852773e430d4ff5b1..5b482c4f675177f4fc958ff3704f6b5072e89e92 100644 --- a/src/lib66/service/service_resolve_read_cdb.c +++ b/src/lib66/service/service_resolve_read_cdb.c @@ -60,8 +60,8 @@ int service_resolve_read_cdb(cdb *c, resolve_service_t *res) res->treename = tmp.len ? resolve_add_string(wres,tmp.s) : 0 ; resolve_find_cdb(&tmp,c,"user") ; res->user = tmp.len ? resolve_add_string(wres,tmp.s) : 0 ; - resolve_find_cdb(&tmp,c,"inmodule") ; - res->inmodule = tmp.len ? resolve_add_string(wres,tmp.s) : 0 ; + resolve_find_cdb(&tmp,c,"inns") ; + res->inns = tmp.len ? resolve_add_string(wres,tmp.s) : 0 ; x = resolve_find_cdb(&tmp,c,"enabled") ; res->enabled = x ; diff --git a/src/lib66/service/service_resolve_write_cdb.c b/src/lib66/service/service_resolve_write_cdb.c index 8e9e92ffbe5f4b7b85dc03a87d4e59a63a8afd63..c6f742ce96f421ecbae2184f85e57e87c82d7c50 100644 --- a/src/lib66/service/service_resolve_write_cdb.c +++ b/src/lib66/service/service_resolve_write_cdb.c @@ -40,7 +40,7 @@ int service_resolve_write_cdb(cdbmaker *c, resolve_service_t *sres) !resolve_add_cdb_uint(c, "owner", sres->owner) || !resolve_add_cdb(c, "treename", str, sres->treename, 1) || !resolve_add_cdb(c, "user", str, sres->user, 1) || - !resolve_add_cdb(c, "inmodule", str, sres->inmodule, 1) || + !resolve_add_cdb(c, "inns", str, sres->inns, 1) || !resolve_add_cdb_uint(c, "enabled", sres->enabled) || // path