diff --git a/src/exec.c b/src/exec.c
index 8719201ea956fe3129561889191fddab3f047a35..acc6cf6f12aa93ea7fc743e78cc378acaf78c29a 100644 (file)
--- a/src/exec.c
+++ b/src/exec.c
return (0);
} /* int exec_config }}} */
+static void set_environment (void) /* {{{ */
+{
+ char buffer[1024];
+
+ ssnprintf (buffer, sizeof (buffer), "%i", interval_g);
+ setenv ("COLLECTD_INTERVAL", buffer, /* overwrite = */ 1);
+
+ ssnprintf (buffer, sizeof (buffer), "%s", hostname_g);
+ setenv ("COLLECTD_HOSTNAME", buffer, /* overwrite = */ 1);
+} /* }}} void set_environment */
+
static void exec_child (program_list_t *pl) /* {{{ */
{
int status;
@@ -477,6 +488,8 @@ static int fork_child (program_list_t *pl, int *fd_in, int *fd_out, int *fd_err)
close (fd_pipe_err[1]);
}
+ set_environment ();
+
/* Unblock all signals */
reset_signal_mask ();