From 87372e957d1669849a81ad762996746bd1485914 Mon Sep 17 00:00:00 2001 From: Tigerblue77 <37409593+tigerblue77@users.noreply.github.com> Date: Sun, 26 Jan 2025 12:35:59 +0000 Subject: [PATCH] Added convert_hexadecimal_value_to_decimal function --- Dell_iDRAC_fan_controller.sh | 4 ++-- functions.sh | 9 +++++++++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Dell_iDRAC_fan_controller.sh b/Dell_iDRAC_fan_controller.sh index 145eebd..7bf6f37 100644 --- a/Dell_iDRAC_fan_controller.sh +++ b/Dell_iDRAC_fan_controller.sh @@ -15,11 +15,11 @@ trap 'graceful_exit' SIGINT SIGQUIT SIGTERM # Check if FAN_SPEED variable is in hexadecimal format. If not, convert it to hexadecimal if [[ $FAN_SPEED == 0x* ]]; then - readonly DECIMAL_FAN_SPEED=$(printf '%d' $FAN_SPEED) + readonly DECIMAL_FAN_SPEED=$(convert_hexadecimal_value_to_decimal "$FAN_SPEED") readonly HEXADECIMAL_FAN_SPEED=$FAN_SPEED else readonly DECIMAL_FAN_SPEED=$FAN_SPEED - readonly HEXADECIMAL_FAN_SPEED=$(convert_decimal_value_to_hexadecimal $FAN_SPEED) + readonly HEXADECIMAL_FAN_SPEED=$(convert_decimal_value_to_hexadecimal "$FAN_SPEED") fi # Check if the iDRAC host is set to 'local' or not then set the IDRAC_LOGIN_STRING accordingly diff --git a/functions.sh b/functions.sh index 2e4c947..094d13d 100644 --- a/functions.sh +++ b/functions.sh @@ -23,6 +23,15 @@ function convert_decimal_value_to_hexadecimal() { echo $HEXADECIMAL_NUMBER } +# Convert first parameter given ($HEXADECIMAL_NUMBER) to decimal +# Usage : convert_hexadecimal_value_to_decimal "$HEXADECIMAL_NUMBER" +# Returns : decimal value of HEXADECIMAL_NUMBER +function convert_hexadecimal_value_to_decimal() { + local HEXADECIMAL_NUMBER=$1 + local DECIMAL_NUMBER=$(printf '%d' $HEXADECIMAL_NUMBER) + echo $DECIMAL_NUMBER +} + # Retrieve temperature sensors data using ipmitool # Usage : retrieve_temperatures $IS_EXHAUST_TEMPERATURE_SENSOR_PRESENT $IS_CPU2_TEMPERATURE_SENSOR_PRESENT function retrieve_temperatures() {