Fix regression introduced in 7ef25ab, global rlimits not initialized

Services that are instantiated by plugins, and thus don't have a .conf
file, tried to use uninitialized rlimits.  This caused the kernel to
immediately kill those services for violating their own rlimits.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg authored and Jacques de Laval committed 2021-02-26 10:32:54 +01:00
1 parent 9df5e7664d
commit 4e035f77f6
1 file changed
+8
+8
View File
@@ -902,6 +902,14 @@ int conf_init(uev_ctx_t *ctx)
/* default hostname */
hostname = strdup(DEFHOST);
/*
* Get current global limits, which may be overridden from both
* finit.conf, for Finit and its services like getty+watchdogd,
* and *.conf in finit.d/, for each service(s) listed there.
*/
for (int i = 0; i < RLIMIT_NLIMITS; i++)
getrlimit(i, &global_rlimit[i]);
/* prepare /etc watcher */
fd = iwatch_init(&iw_conf);
if (fd < 0)