One Hat Cyber Team
Your IP :
3.21.46.73
Server IP :
192.145.235.60
Server :
Linux ngx365.inmotionhosting.com 5.14.0-427.33.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Aug 30 09:45:56 EDT 2024 x86_64
Server Software :
Apache
PHP Version :
8.2.27
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
opt
/
dell
/
srvadmin
/
sbin
/
View File Name :
dataeng-helper
#!/usr/bin/env bash ############################################################################### # # Dell Inc. PROPRIETARY INFORMATION # This software is supplied under the terms of a license agreement or # nondisclosure agreement with Dell Inc. and may not # be copied or disclosed except in accordance with the terms of that # agreement. # # Copyright (c) 2000-2018 Dell Inc. All Rights Reserved. # # Module Name: # # dataeng-helper # # Abstract/Purpose: # # Systems Management Data Engine helper script # # Environment: # # Ubuntu/Debian # ############################################################################### DENG_PROD_NAME="Systems Management Data Engine" DENG_SCRIPT_NAME="dataeng" DENG_DEFAULT_INSTALL_DIR="/opt/dell/srvadmin" # Make sure HOSTTYPE is set [ -z "${HOSTTYPE}" ] && HOSTTYPE=$(uname -m) # OS information OM_INITSCRIPT_DIR="/etc/init.d" OS_INITSCRIPT_DIR="/etc/init.d" OS_SUBSYS_LOCK_DIR="/var/lock/subsys/" OS_SCRIPT_FUNCTIONS_LSB="/lib/lsb/init-functions" OS_SCRIPT_FUNCTIONS_RH="/etc/init.d/functions" OS_SCRIPT_FUNCTIONS_NONE="none" OS_SNMP_SVCNAME="snmpd" OS_SNMP_SCRIPT="${OS_INITSCRIPT_DIR}/${OS_SNMP_SVCNAME}" # Check for supported OS script functions if [ -f ${OS_SCRIPT_FUNCTIONS_RH} ]; then OS_SCRIPT_FUNCTIONS=${OS_SCRIPT_FUNCTIONS_RH} elif [ -f ${OS_SCRIPT_FUNCTIONS_LSB} ]; then OS_SCRIPT_FUNCTIONS=${OS_SCRIPT_FUNCTIONS_LSB} else OS_SCRIPT_FUNCTIONS=${OS_SCRIPT_FUNCTIONS_NONE} fi # Include OS script functions if available if [ ${OS_SCRIPT_FUNCTIONS} != ${OS_SCRIPT_FUNCTIONS_NONE} ]; then . ${OS_SCRIPT_FUNCTIONS} fi # omreg config file variables OM_INSTALL_FILE="/opt/dell/srvadmin/etc/srvadmin-omilcore/install.ini" OM_REG_FILE="/opt/dell/srvadmin/etc/omreg.cfg" OMDATAENG_INSTALLPATH_KEY="OMDataEngine.installpath" OMDATAENG_STARTSNMPD_KEY="OMDataEngine.startsnmpd" OMDATAENG_SHOULDSTART_SVCLIST_KEY="OMDataEngine.shouldstart.servicelist" DENG_DAEMON_DIR="/opt/dell/srvadmin/sbin" DENG_FWSNMP_SCRIPT="/opt/dell/srvadmin/lib64/srvadmin-deng/dcfwsnmp.sh" DENG_FWSNMP_OFF_FILE="/opt/dell/srvadmin/var/lib/srvadmin-deng/dcfwsnmp.off" DENG_DCSNMP_OFF_FILE="/opt/dell/srvadmin/var/lib/srvadmin-deng/dcsnmp.off" DENG_LD_LIBRARY_PATH_SET=0 # Script messages DENG_MSG_DE_SNMP_ENABLED="Data Engine SNMP enabled" DENG_MSG_DE_SNMP_DISABLED="Data Engine SNMP disabled" DENG_MSG_DE_SNMP_NOTINSTALLED="Data Engine SNMP not installed" DENG_MSG_OS_FIREWALL_SNMP_1="WARNING: The SNMP port appears to be closed by the firewall." DENG_MSG_OS_FIREWALL_SNMP_2="You may not be able to manage this system remotely using SNMP." DENG_MSG_OS_FIREWALL_SNMP_3="See Firewall Configuration in the product user's guide." DENG_MSG_OS_SNMP_NOTINSTALLED="OS SNMP support not installed" DENG_MSG_OS_SNMP_NOTSTARTED_1="warning: ${OS_SNMP_SVCNAME} not started." DENG_MSG_OS_SNMP_NOTSTARTED_2="${OS_SNMP_SVCNAME} must be started to manage this system using SNMP." # Default DENG_DCSNMP_INSTALLED=1 # Standard status codes for commands other than "status" STATUS_NO_ERROR=0 STATUS_GENERIC_ERROR=1 STATUS_INVALID_ARG=2 STATUS_NOT_IMPLEMENTED=3 # Data Engine status codes for commands other than "status" STATUS_OS_SNMP_NOT_FOUND=250 STATUS_DE_SNMP_NOT_FOUND=251 STATUS_SYSTEM_NOT_SUPPORTED=252 # Standard status codes for "status" command STATUS_RUNNING=0 STATUS_DEAD_PIDFILE_EXISTS=1 STATUS_DEAD_LOCKFILE_EXISTS=2 STATUS_NOT_RUNNING=3 STATUS_UNKNOWN=4 # If DE SNMP is not installed we should not try to start snmp service and report error # First clean up rm -f $DENG_DCSNMP_OFF_FILE grep -q "^SNMP=disable" $OM_INSTALL_FILE if [ $? = ${STATUS_RUNNING} ]; then #touch the off file touch $DENG_DCSNMP_OFF_FILE fi ############################################################################### # Begin Functions ############################################################################### ############################################################################### # Function: dataeng_supt_logmessage <message> # Description: Log message to OS log # Returns: none ############################################################################### dataeng_supt_logmessage() { MSG="$1" # Log message to OS log logger -t "${DENG_SCRIPT_NAME}" "${MSG}" } # dataeng_supt_logmessage ############################################################################### # Function: dataeng_check_fwsnmp # Description: Check status of SNMP port in OS firewall configuration # Returns: 0 = SNMP port is open, non-zero = SNMP port is closed ############################################################################### dataeng_check_fwsnmp() { # See if check has been disabled by the user if [ -f ${DENG_FWSNMP_OFF_FILE} ]; then return 0 fi # Check SNMP port in firewall ${DENG_FWSNMP_SCRIPT} FWSNMP_STATUS=$? if [ ${FWSNMP_STATUS} != 0 ]; then # It looks like the SNMP port is closed. Warn the user. echo "" echo ${DENG_MSG_OS_FIREWALL_SNMP_1} echo ${DENG_MSG_OS_FIREWALL_SNMP_2} echo ${DENG_MSG_OS_FIREWALL_SNMP_3} dataeng_supt_logmessage "${DENG_MSG_OS_FIREWALL_SNMP_1} ${DENG_MSG_OS_FIREWALL_SNMP_2} ${DENG_MSG_OS_FIREWALL_SNMP_3}" fi return ${FWSNMP_STATUS} } # dataeng_check_fwsnmp ############################################################################### # Function: dataeng_set_os_snmp_conf_vars # Description: Set variables needed to update OS SNMP configuration file # Returns: none ############################################################################### dataeng_set_os_snmp_conf_vars() { OS_SNMP_CONF_FILE_1="/etc/snmp/snmpd.conf" OS_SNMP_CONF_FILE_2="/etc/snmpd.conf" OS_SNMP_CONF_FILE_3="/etc/ucdsnmpd.conf" OS_SNMP_CONF_VIEW_SYS_CHK_1="^view.*systemview.*included.*system$" OS_SNMP_CONF_VIEW_SYS_CHK_2="^view.*systemview.*included[ ]*\.1.3.6.1.2.1.1$" OS_SNMP_CONF_VIEW_ALL_CHK="^view.*all.*included.*\.1" OS_SNMP_CONF_VIEW_ALL_ADD="view all included .1" OS_SNMP_CONF_ACCESS_SYS_CHK="^access.*notConfigGroup.*any.*noauth.*exact.*systemview.*none.*none$" OS_SNMP_CONF_ACCESS_ALL_CHK="^access.*notConfigGroup.*any.*noauth.*exact.*all" OS_SNMP_CONF_ACCESS_ALL_ADD="access notConfigGroup \"\" any noauth exact all none none" OS_SNMP_CONF_COMMENT_OLD_1="# Allow Dell OpenManage Server Agent to connect to ucd-snmp using SMUX" OS_SNMP_CONF_COMMENT_OLD_2="# Allow Server Administrator to connect to ucd-snmp using SMUX" OS_SNMP_CONF_COMMENT_DENG="# Allow Systems Management Data Engine SNMP to connect to snmpd using SMUX" OS_SNMP_CONF_SMUXPEER_DENG_CHK="smuxpeer.*\.1\.3\.6\.1\.4\.1\.674\.10892\.1" OS_SNMP_CONF_SMUXPEER_DENG_ADD="smuxpeer .1.3.6.1.4.1.674.10892.1" # check for OS SNMP configuration file # (different Linux distros put file in different locations) if [ -f ${OS_SNMP_CONF_FILE_1} ]; then OS_SNMP_CONF_FILE=${OS_SNMP_CONF_FILE_1} elif [ -f ${OS_SNMP_CONF_FILE_2} ]; then OS_SNMP_CONF_FILE=${OS_SNMP_CONF_FILE_2} elif [ -f ${OS_SNMP_CONF_FILE_3} ]; then OS_SNMP_CONF_FILE=${OS_SNMP_CONF_FILE_3} else OS_SNMP_CONF_FILE="" fi } # dataeng_set_os_snmp_conf_vars ############################################################################### # Function: dataeng_supt_daemonstatus <daemon> # Description: Get current status of a daemon # Returns: LSB status code ############################################################################### dataeng_supt_daemonstatus() { DAEMON="$1" # Check for daemon name if [ -z ${DAEMON} ]; then return ${STATUS_UNKNOWN} fi # Get list of pids using pidof PIDLIST=`pidof -o $$ -o ${PPID} -o %PPID -x ${DAEMON}` if [ -n "${PIDLIST}" ]; then echo "${DAEMON} (pid ${PIDLIST}) is running" return ${STATUS_RUNNING} fi # Check for pid file in standard location PIDFILE="/opt/dell/srvadmin/var/run/${DAEMON}.pid" if [ -f ${PIDFILE} ]; then echo "${DAEMON} is dead and /opt/dell/srvadmin/var/run pid file exists" return ${STATUS_DEAD_PIDFILE_EXISTS} fi # Check for lock file in standard location LOCKFILE="${OS_SUBSYS_LOCK_DIR}/${daemon}" if [ -f ${LOCKFILE} ]; then echo "${DAEMON} is dead and /opt/dell/srvadmin/var/lock lock file exists" return ${STATUS_DEAD_LOCKFILE_EXISTS} fi echo "${DAEMON} is stopped" return ${STATUS_NOT_RUNNING} } # dataeng_supt_daemonstatus ############################################################################### # Function: dataeng_enablesnmp # Description: enable Data Engine SNMP # Returns: STATUS_NO_ERROR = Data Engine SNMP installed and enabled # STATUS_OS_SNMP_NOT_FOUND = OS SNMP support not installed # STATUS_DE_SNMP_NOT_FOUND = Data Engine SNMP not installed ############################################################################### dataeng_enablesnmp() { # check for OS SNMP agent and set configuration variables dataeng_set_os_snmp_conf_vars # check if OS SNMP support is installed if [ -z ${OS_SNMP_CONF_FILE} ]; then # OS SNMP support not installed echo ${DENG_MSG_OS_SNMP_NOTINSTALLED} dataeng_supt_logmessage "NOTE: ${DENG_MSG_OS_SNMP_NOTINSTALLED}" # mark Data Engine SNMP disabled touch ${DENG_DCSNMP_OFF_FILE} return ${STATUS_OS_SNMP_NOT_FOUND} fi # check if Data Engine SNMP is installed if [ ${DENG_DCSNMP_INSTALLED} = 0 ]; then # Data Engine SNMP not installed echo ${DENG_MSG_DE_SNMP_NOTINSTALLED} dataeng_supt_logmessage "NOTE: ${DENG_MSG_DE_SNMP_NOTINSTALLED}" # mark Data Engine SNMP disabled touch ${DENG_DCSNMP_OFF_FILE} return ${STATUS_DE_SNMP_NOT_FOUND} fi # OS SNMP and Data Engine SNMP installed; # make needed updates to OS SNMP configuration NEW_CONF_FILE="${OS_SNMP_CONF_FILE}.${DENG_SCRIPT_NAME}" SNMP_CONF_FILE_UPDATED=0 # check for "view" for whole MIB tree egrep -i "${OS_SNMP_CONF_VIEW_ALL_CHK}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? != 0 ]; then # determine line to add new "view" after # by looking for existing well-known "view" egrep -i "${OS_SNMP_CONF_VIEW_SYS_CHK_1}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then VIEW_CHK="${OS_SNMP_CONF_VIEW_SYS_CHK_1}" else egrep -i "${OS_SNMP_CONF_VIEW_SYS_CHK_2}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then VIEW_CHK="${OS_SNMP_CONF_VIEW_SYS_CHK_2}" else VIEW_CHK="" fi fi # check if well-known "view" was found if [ ! -z "${VIEW_CHK}" ]; then # create sed script to add "view" for whole MIB tree TMP_FILE=$(mktemp ${TMP:-/tmp}/${DENG_SCRIPT_NAME}.XXXXXXX) if [ $? = 0 ]; then echo "/${VIEW_CHK}/i\\" >>${TMP_FILE} echo "${OS_SNMP_CONF_VIEW_ALL_ADD}" >>${TMP_FILE} # add "view" for whole MIB tree sed -f ${TMP_FILE} ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} rm -f ${TMP_FILE} SNMP_CONF_FILE_UPDATED=1 else echo "${DENG_SCRIPT_NAME}: mktemp failed to make filename" fi fi fi # check for "access" to whole MIB tree for default group egrep -i "${OS_SNMP_CONF_ACCESS_ALL_CHK}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? != 0 ]; then # check for default "access" configuration egrep -i "${OS_SNMP_CONF_ACCESS_SYS_CHK}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then # change default "access" configuration to allow # access to whole MIB tree for default group sed "s/${OS_SNMP_CONF_ACCESS_SYS_CHK}/${OS_SNMP_CONF_ACCESS_ALL_ADD}/" ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} SNMP_CONF_FILE_UPDATED=1 fi fi # check for Data Engine SNMP "smuxpeer" entry egrep -i "${OS_SNMP_CONF_SMUXPEER_DENG_CHK}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? != 0 ]; then # add blank line if needed LAST_LINE="" while read LINE; do LAST_LINE="${LINE}" done < ${OS_SNMP_CONF_FILE} if [ "${LAST_LINE}" != "" ]; then echo "" >>${OS_SNMP_CONF_FILE} fi # add Data Engine SNMP "smuxpeer" entry echo "${OS_SNMP_CONF_COMMENT_DENG}" >>${OS_SNMP_CONF_FILE} echo "${OS_SNMP_CONF_SMUXPEER_DENG_ADD}" >>${OS_SNMP_CONF_FILE} SNMP_CONF_FILE_UPDATED=1 else # check if "smuxpeer" comment needs to be updated egrep -i "${OS_SNMP_CONF_COMMENT_OLD_1}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then # update "smuxpeer" comment sed "s/${OS_SNMP_CONF_COMMENT_OLD_1}/${OS_SNMP_CONF_COMMENT_DENG}/" ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} else egrep -i "${OS_SNMP_CONF_COMMENT_OLD_2}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then # update "smuxpeer" comment sed "s/${OS_SNMP_CONF_COMMENT_OLD_2}/${OS_SNMP_CONF_COMMENT_DENG}/" ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} fi fi fi # check for simple access control configuration; # if simple access control configuration found; # try to determine if SNMP access is restricted to localhost SIMPLE_ACCESS_CONTROL=0 LOCALHOST_ONLY=1 TMP_FILE=$(mktemp ${TMP:-/tmp}/${DENG_SCRIPT_NAME}.XXXXXXX) if [ $? = 0 ]; then egrep -i "^r[ow]community6*[[:blank:]]" ${OS_SNMP_CONF_FILE} >>${TMP_FILE} 2>&1 while read LINE; do SIMPLE_ACCESS_CONTROL=1 SOURCE=`echo ${LINE} | awk '{print $3}'` if [ "${SOURCE}" != "127.0.0.1" ] && [ "${SOURCE}" != "localhost" ]; then LOCALHOST_ONLY=0 break fi done < ${TMP_FILE} rm -f ${TMP_FILE} else echo "${DENG_SCRIPT_NAME}: mktemp failed to make filename" fi # check if simple access control configuration used and # if SNMP access appears to be restricted to localhost if [ ${SIMPLE_ACCESS_CONTROL} = 1 ] && [ ${LOCALHOST_ONLY} = 1 ]; then # SNMP access appears to be restricted to localhost DENG_MSG_OS_SNMP_ACCESS="NOTE: SNMP access appears to be restricted to localhost in ${OS_SNMP_CONF_FILE}" echo ${DENG_MSG_OS_SNMP_ACCESS} dataeng_supt_logmessage "${DENG_MSG_OS_SNMP_ACCESS}" fi # check if SNMP config file updated if [ ${SNMP_CONF_FILE_UPDATED} = 1 ]; then # check if SNMP agent started dataeng_supt_daemonstatus ${OS_SNMP_SVCNAME} >/dev/null if [ $? = ${STATUS_RUNNING} ]; then # SNMP agent needs to be restarted DENG_MSG_OS_SNMP_RESTART="NOTE: ${OS_SNMP_SVCNAME} must be restarted to activate changes to ${OS_SNMP_CONF_FILE}" echo ${DENG_MSG_OS_SNMP_RESTART} dataeng_supt_logmessage "${DENG_MSG_OS_SNMP_RESTART}" fi fi # check SNMP port in firewall dataeng_check_fwsnmp # mark Data Engine SNMP enabled rm -f ${DENG_DCSNMP_OFF_FILE} echo ${DENG_MSG_DE_SNMP_ENABLED} return ${STATUS_NO_ERROR} } # dataeng_enablesnmp ############################################################################### # Function: dataeng_disablesnmp # Description: Disable Data Engine SNMP # Returns: STATUS_NO_ERROR = Data Engine SNMP installed and disabled # STATUS_OS_SNMP_NOT_FOUND = OS SNMP support not installed # STATUS_DE_SNMP_NOT_FOUND = Data Engine SNMP not installed ############################################################################### dataeng_disablesnmp() { # check for OS SNMP agent and set configuration variables dataeng_set_os_snmp_conf_vars # always mark Data Engine SNMP disabled touch ${DENG_DCSNMP_OFF_FILE} # check if OS SNMP support is installed if [ -z ${OS_SNMP_CONF_FILE} ]; then # OS SNMP support not installed echo ${DENG_MSG_OS_SNMP_NOTINSTALLED} return ${STATUS_OS_SNMP_NOT_FOUND} fi # check if Data Engine SNMP is installed if [ ${DENG_DCSNMP_INSTALLED} = 0 ]; then # Data Engine SNMP not installed echo ${DENG_MSG_DE_SNMP_NOTINSTALLED} return ${STATUS_DE_SNMP_NOT_FOUND} fi # OS SNMP and Data Engine SNMP are installed; # make needed updates to OS SNMP configuration NEW_CONF_FILE="${OS_SNMP_CONF_FILE}.${DENG_SCRIPT_NAME}" # check for Data Engine SNMP "smuxpeer" entry egrep -i "${OS_SNMP_CONF_SMUXPEER_DENG_CHK}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then # remove Data Engine SNMP "smuxpeer" entry egrep -iv "${OS_SNMP_CONF_SMUXPEER_DENG_CHK}" ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} fi # check for Data Engine SNMP "smuxpeer" comment egrep -i "${OS_SNMP_CONF_COMMENT_DENG}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then # remove Data Engine SNMP "smuxpeer" comment egrep -iv "${OS_SNMP_CONF_COMMENT_DENG}" ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} fi # check for old "smuxpeer" comment egrep -i "${OS_SNMP_CONF_COMMENT_OLD_1}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then # remove old SNMP "smuxpeer" comment egrep -iv "${OS_SNMP_CONF_COMMENT_OLD_1}" ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} fi # check for old "smuxpeer" comment egrep -i "${OS_SNMP_CONF_COMMENT_OLD_2}" ${OS_SNMP_CONF_FILE} >/dev/null if [ $? = 0 ]; then # remove old SNMP "smuxpeer" comment egrep -iv "${OS_SNMP_CONF_COMMENT_OLD_2}" ${OS_SNMP_CONF_FILE} >${NEW_CONF_FILE} mv -f ${NEW_CONF_FILE} ${OS_SNMP_CONF_FILE} fi # stop Data Engine SNMP if started dataeng_supt_daemonstatus ${DENG_DCSNMP} >/dev/null if [ $? = 0 ]; then dataeng_supt_daemonstop ${DENG_DCSNMP} fi echo ${DENG_MSG_DE_SNMP_DISABLED} return ${STATUS_NO_ERROR} } # dataeng_disablesnmp ############################################################################### # Function: dataeng_getsnmpstatus # Description: Get Data Engine SNMP status # Returns: STATUS_NO_ERROR = Data Engine SNMP installed # STATUS_OS_SNMP_NOT_FOUND = OS SNMP support not installed # STATUS_DE_SNMP_NOT_FOUND = Data Engine SNMP not installed ############################################################################### dataeng_getsnmpstatus() { # check for OS SNMP agent and set configuration variables dataeng_set_os_snmp_conf_vars # check if OS SNMP support is installed if [ -z ${OS_SNMP_CONF_FILE} ]; then # OS SNMP support not installed echo ${DENG_MSG_OS_SNMP_NOTINSTALLED} return ${STATUS_OS_SNMP_NOT_FOUND} fi # check if Data Engine SNMP is installed if [ ${DENG_DCSNMP_INSTALLED} = 0 ]; then # Data Engine SNMP not installed echo ${DENG_MSG_DE_SNMP_NOTINSTALLED} return ${STATUS_DE_SNMP_NOT_FOUND} fi # OS SNMP and Data Engine SNMP are installed; # get Data Engine SNMP status if [ ! -f ${DENG_DCSNMP_OFF_FILE} ]; then echo ${DENG_MSG_DE_SNMP_ENABLED} else echo ${DENG_MSG_DE_SNMP_DISABLED} fi return ${STATUS_NO_ERROR} } # dataeng_getsnmpstatus ############################################################################### # End Functions ############################################################################### ############################################################################### # Check command line parameter for action to perform ############################################################################### case "$1" in enablesnmp) # enable Data Engine SNMP dataeng_enablesnmp EXIT_STATUS=$? ;; disablesnmp) # disable Data Engine SNMP dataeng_disablesnmp EXIT_STATUS=$? ;; getsnmpstatus) # get Data Engine SNMP enable/disable status dataeng_getsnmpstatus EXIT_STATUS=$? ;; *) echo "${DENG_SCRIPT_NAME}: Invalid argument" echo "Usage: ${DENG_SCRIPT_NAME} {enablesnmp|disablesnmp|getsnmpstatus}" EXIT_STATUS=${STATUS_INVALID_ARG} esac exit ${EXIT_STATUS} ############################################################################### # End Script ###############################################################################