summaryrefslogtreecommitdiff
path: root/service/instance.c
diff options
context:
space:
mode:
Diffstat (limited to 'service/instance.c')
-rw-r--r--service/instance.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/service/instance.c b/service/instance.c
index 8cabedb..748c1e5 100644
--- a/service/instance.c
+++ b/service/instance.c
@@ -1387,22 +1387,6 @@ instance_config_parse(struct service_instance *in)
if (tb[INSTANCE_ATTR_RELOADSIG])
in->reload_signal = blobmsg_get_u32(tb[INSTANCE_ATTR_RELOADSIG]);
- if (!in->trace && tb[INSTANCE_ATTR_JAIL])
- in->has_jail = instance_jail_parse(in, tb[INSTANCE_ATTR_JAIL]);
-
- if (in->has_jail) {
- r = stat(UJAIL_BIN_PATH, &s);
- if (r < 0) {
- if (in->require_jail) {
- ERROR("Cannot jail service %s::%s. %s: %m (%d)\n",
- in->srv->name, in->name, UJAIL_BIN_PATH, r);
- return false;
- }
- DEBUG(2, "unable to find %s: %m (%d)\n", UJAIL_BIN_PATH, r);
- in->has_jail = false;
- }
- }
-
if (tb[INSTANCE_ATTR_STDOUT] && blobmsg_get_bool(tb[INSTANCE_ATTR_STDOUT]))
in->_stdout.fd.fd = -1;
@@ -1464,6 +1448,22 @@ instance_config_parse(struct service_instance *in)
}
}
+ if (!in->trace && tb[INSTANCE_ATTR_JAIL])
+ in->has_jail = instance_jail_parse(in, tb[INSTANCE_ATTR_JAIL]);
+
+ if (in->has_jail) {
+ r = stat(UJAIL_BIN_PATH, &s);
+ if (r < 0) {
+ if (in->require_jail) {
+ ERROR("Cannot jail service %s::%s. %s: %m (%d)\n",
+ in->srv->name, in->name, UJAIL_BIN_PATH, r);
+ return false;
+ }
+ DEBUG(2, "unable to find %s: %m (%d)\n", UJAIL_BIN_PATH, r);
+ in->has_jail = false;
+ }
+ }
+
return true;
}