From da5fbe9626b7c0994a33152021e1a2d1563d4cc0 Mon Sep 17 00:00:00 2001 From: Danny Auble <da@schedmd.com> Date: Fri, 17 May 2013 11:38:30 -0700 Subject: [PATCH] EXT_SENSORS - Checks for required variables needed for certain requests. --- src/plugins/ext_sensors/rrd/ext_sensors_rrd.c | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/src/plugins/ext_sensors/rrd/ext_sensors_rrd.c b/src/plugins/ext_sensors/rrd/ext_sensors_rrd.c index 1a3880bf60b..7cac474dd77 100644 --- a/src/plugins/ext_sensors/rrd/ext_sensors_rrd.c +++ b/src/plugins/ext_sensors/rrd/ext_sensors_rrd.c @@ -595,18 +595,36 @@ extern int _ext_sensors_read_conf(void) |= EXT_SENSORS_OPT_COLDDOOR_TEMP; } xfree(temp_str); + + s_p_get_uint32(&ext_sensors_cnf->min_watt,"MinWatt", tbl); s_p_get_uint32(&ext_sensors_cnf->max_watt,"MaxWatt", tbl); s_p_get_uint32(&ext_sensors_cnf->min_temp,"MinTemp", tbl); s_p_get_uint32(&ext_sensors_cnf->max_temp,"MaxTemp", tbl); - s_p_get_string(&ext_sensors_cnf->energy_rra_name, - "EnergyRRA", tbl); - s_p_get_string(&ext_sensors_cnf->temp_rra_name, - "TempRRA", tbl); + if (!s_p_get_string(&ext_sensors_cnf->energy_rra_name, + "EnergyRRA", tbl)) { + if (ext_sensors_cnf->dataopts + & EXT_SENSORS_OPT_JOB_ENERGY) + fatal("ext_sensors/rrd: EnergyRRA " + "must be set to gather JobData=energy. " + "Please set this value in your " + "ext_sensors.conf file."); + } + + if (!s_p_get_string(&ext_sensors_cnf->temp_rra_name, + "TempRRA", tbl)) { + if (ext_sensors_cnf->dataopts + & EXT_SENSORS_OPT_NODE_TEMP) + fatal("ext_sensors/rrd: TempRRA " + "must be set to gather NodeData=temp. " + "Please set this value in your " + "ext_sensors.conf file."); + } s_p_get_string(&ext_sensors_cnf->energy_rrd_file, "EnergyPathRRD", tbl); s_p_get_string(&ext_sensors_cnf->temp_rrd_file, "TempPathRRD", tbl); + s_p_hashtbl_destroy(tbl); } xfree(conf_path); -- GitLab