]> git.ipfire.org Git - people/ms/ipfire-2.x.git/commitdiff
Add IPMI utilities ipmi
authorMichael Tremer <michael.tremer@ipfire.org>
Thu, 19 Mar 2015 16:28:25 +0000 (17:28 +0100)
committerMichael Tremer <michael.tremer@ipfire.org>
Thu, 19 Mar 2015 16:28:25 +0000 (17:28 +0100)
config/OpenIPMI/ipmi.init [new file with mode: 0644]
config/OpenIPMI/openipmi.modalias [new file with mode: 0644]
config/OpenIPMI/openipmi.sysconf [new file with mode: 0644]
config/rootfiles/common/OpenIPMI [new file with mode: 0644]
config/rootfiles/common/freeipmi [new file with mode: 0644]
config/rootfiles/common/ipmitool [new file with mode: 0644]
lfs/OpenIPMI [new file with mode: 0644]
lfs/freeipmi [new file with mode: 0644]
lfs/ipmitool [new file with mode: 0644]
make.sh

diff --git a/config/OpenIPMI/ipmi.init b/config/OpenIPMI/ipmi.init
new file mode 100644 (file)
index 0000000..4cebfb9
--- /dev/null
@@ -0,0 +1,512 @@
+#!/bin/sh
+#############################################################################
+#
+# ipmi:                OpenIPMI Driver helper script
+#
+# Authors:     Jan Safranek <jsafrane@redhat.com>
+#
+# Based on IPMI init script by:
+#               Matt Domsch <Matt_Domsch@dell.com>
+#               Chris Poblete <Chris_Poblete@dell.com>
+#
+# Status return code bits
+# no bits set = no errors
+# bit 0 set = minimum modules aren't loaded
+# bit 1 set = requested feature module isn't loaded
+# bit 2 set = /dev/ipmi0 (or /dev/imb if using that instead) doesn't exist
+# bit 3 set = /dev/watchdog doesn't exist
+# bit 4 set = lockfile doesn't exist
+# bit 5 set = modules are loaded even when asked to be unloaded
+
+CONFIGFILE=/etc/sysconfig/ipmi
+# source config info
+[ -r ${CONFIGFILE} ] && . ${CONFIGFILE}
+
+#############################################################################
+# GLOBALS
+#############################################################################
+MODULE_NAME="ipmi"
+INTF_NUM=0
+
+IPMI_SMB_MODULE_NAME="ipmi_smb"
+IPMI_SI_MODULE_NAME="ipmi_si"
+kernel=`uname -r | cut -d. -f1-2`
+if [ "${kernel}" == "2.4" ]; then
+    IPMI_SMB_MODULE_NAME="ipmi_smb_intf"
+    IPMI_SI_MODULE_NAME="ipmi_si_drv"
+fi
+
+MODULES_INTERFACES=""
+[ "${DEV_IPMI}" = "yes" ] && MODULES_INTERFACES="${MODULES_INTERFACES} ipmi_devintf"
+[ "${IPMI_IMB}" = "yes" ] && MODULES_INTERFACES="${MODULES_INTERFACES} ipmi_imb"
+
+MODULES_FEATURES=""
+[ "${IPMI_WATCHDOG}" = "yes" ] && MODULES_FEATURES="${MODULES_FEATURES} ipmi_watchdog"
+[ "${IPMI_POWEROFF}" = "yes" ] && MODULES_FEATURES="${MODULES_FEATURES} ipmi_poweroff"
+
+MODULES_HW=""
+[ "${IPMI_SI}"  = "yes" ] && MODULES_HW="${MODULES_HW} ${IPMI_SI_MODULE_NAME}"
+[ "${IPMI_SMB}" = "yes" ] && MODULES_HW="${MODULES_HW} ${IPMI_SMB_MODULE_NAME}"
+
+MODULES_BASE="ipmi_msghandler"
+MODULES="${MODULES_INTERFACES} ${MODULES_FEATURES} ${MODULES_HW} ${MODULES_BASE}"
+
+RETVAL=0
+LOCKFILE=/var/lock/subsys/ipmi
+DEV_IPMI_TIMEOUT=150
+
+UDEV_EXISTS=0
+if [ -e /sbin/udev -o -e /sbin/udevd ]; then
+    UDEV_EXISTS=1
+fi
+
+#############################################################################
+# NOTES:
+# * /dev/ipmi0 is unconditionally deleted here on ipmi_devintf unload,
+#   because SLES9 and RHEL4 kernels don't send a message for udev to delete
+#   it for us.
+# 
+#############################################################################
+
+modules_loaded_verbose()
+{
+       OnePlusLoaded=0
+       OnePlusUnloaded=0
+       for m in $@; do
+               if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then
+                       echo "$m module loaded."
+                       OnePlusLoaded=1
+               else
+                       echo "$m module not loaded."
+                       OnePlusUnloaded=1
+               fi
+       done
+}
+
+modules_loaded()
+{
+       OnePlusLoaded=0
+       OnePlusUnloaded=0
+       for m in $@; do
+               if /sbin/lsmod | grep $m >/dev/null 2>&1 ; then
+                       OnePlusLoaded=1
+               else
+                       OnePlusUnloaded=1
+               fi
+       done
+}
+
+device_node_exists ()
+{
+       if [ -e "$1" ]; then
+               echo "$1 exists."
+               return 1
+       fi
+       echo "$1 does not exist."
+       return 0
+}
+
+minimum_modules_loaded()
+{
+        rc_base=1
+       rc_hw=1
+        modules_loaded_verbose "${MODULES_BASE}"
+       [ ${OnePlusLoaded} -eq 0 ] && rc_base=0
+           
+       modules_loaded_verbose "${MODULES_HW}"
+       [ ${OnePlusLoaded} -eq 0 ] && rc_hw=0
+       
+       return $((rc_base && rc_hw))
+}
+
+#############################################################################
+
+load_si()
+{
+       if [ "${IPMI_SI}" = "yes" ]; then
+               modprobe ${IPMI_SI_MODULE_NAME} > /dev/null 2>&1
+               modules_loaded ${IPMI_SI_MODULE_NAME}
+               [ ${OnePlusLoaded} -ne 1 ] && RETVAL=$((RETVAL | 1))
+       fi
+}
+
+load_smb()
+{
+       if [ "${IPMI_SMB}" = "yes" ]; then
+               modprobe ${IPMI_SMB_MODULE_NAME} > /dev/null 2>&1
+               modules_loaded ${IPMI_SMB_MODULE_NAME}
+               [ ${OnePlusLoaded} -ne 1 ] && RETVAL=$((RETVAL | 1))
+       fi
+}
+
+load_hw_modules()
+{
+       load_si
+       load_smb
+}
+
+start_watchdog_common()
+{
+       load_hw_modules
+       modprobe ipmi_watchdog ${IPMI_WATCHDOG_OPTIONS} > /dev/null 2>&1
+       modules_loaded ipmi_watchdog
+       [ ${OnePlusUnloaded} -ne 0 ] &&
+               RETVAL=$((RETVAL | 2)) &&
+               echo "Watchdog startup failed: cannot load ipmi_watchdog module" &&
+               return
+       if [ ${UDEV_EXISTS} -eq 0 -a ! -e /dev/watchdog ]; then
+               mknod -m 0600 /dev/watchdog c 10 130
+               [ $? -ne 0 ] &&
+                       RETVAL=$((RETVAL | 8)) &&
+                       echo "Watchdog startup failed: cannot create /dev/watchdog" &&
+                       return
+       fi
+}
+
+start_watchdog_quiet()
+{
+       [ "${IPMI_WATCHDOG}" != "yes" ] &&
+               return
+       start_watchdog_common
+}
+
+start_watchdog()
+{
+       [ "${IPMI_WATCHDOG}" != "yes" ] &&
+               RETVAL=$((RETVAL | 2)) &&
+               echo "Watchdog not configured" &&
+               return
+       start_watchdog_common
+}
+
+stop_watchdog()
+{
+       modprobe -q -r ipmi_watchdog > /dev/null 2>&1
+       modules_loaded ipmi_watchdog
+       if [ ${OnePlusLoaded} -ne 0 ]; then
+           RETVAL=$((RETVAL | 32))
+           echo "Watchog shutdown failed: cannot unload ipmi_watchdog module"
+       else
+           if [ "${IPMI_WATCHDOG}" = "yes" ]; then
+               [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog
+           fi
+       fi
+}
+
+stop_watchdog_quiet()
+{
+       modprobe -q -r ipmi_watchdog > /dev/null 2>&1
+       modules_loaded ipmi_watchdog
+       if [ ${OnePlusLoaded} -ne 0 ]; then
+           RETVAL=$((RETVAL | 32))
+       else
+           if [ "${IPMI_WATCHDOG}" = "yes" ]; then
+               [ ${UDEV_EXISTS} -eq 0 ] && rm -f /dev/watchdog
+           fi
+       fi
+}
+
+start_powercontrol_common()
+{
+       local poweroff_opts=""
+       load_hw_modules
+       if [ "${IPMI_POWERCYCLE}" == "yes" ]; then
+           modinfo ipmi_poweroff 2>/dev/null | grep poweroff_control > /dev/null 2>&1 && \
+               poweroff_opts="poweroff_control=2"
+           modinfo ipmi_poweroff 2>/dev/null | grep poweroff_powercycle > /dev/null 2>&1 && \
+               poweroff_opts="poweroff_powercycle=1"
+       fi
+       modprobe ipmi_poweroff "${poweroff_opts}" > /dev/null 2>&1
+       modules_loaded ipmi_poweroff
+       [ ${OnePlusUnloaded} -ne 0 ] &&
+               RETVAL=$((RETVAL | 2)) &&
+               echo "Powercontroll startup failed: cannot load ipmi_poweroff module" &&
+               return
+}
+
+start_powercontrol_quiet()
+{
+       [ "${IPMI_POWEROFF}" != "yes" ] &&
+               return
+       start_powercontrol_common
+}
+
+start_powercontrol()
+{
+       [ "${IPMI_POWEROFF}" != "yes" ] &&
+               RETVAL=$((RETVAL | 2)) &&
+               echo "Powercontroll not configured" &&
+               return
+       start_powercontrol_common
+}
+
+stop_powercontrol()
+{
+       modprobe -q -r ipmi_poweroff > /dev/null 2>&1
+       modules_loaded ipmi_poweroff
+       if [ ${OnePlusLoaded} -ne 0 ]; then
+           RETVAL=$((RETVAL | 32))
+           echo "Powercontroll shutdown failed: cannot unload ipmi_poweroff module"
+       fi
+}
+
+stop_powercontrol_quiet()
+{
+       modprobe -q -r ipmi_poweroff > /dev/null 2>&1
+       modules_loaded ipmi_poweroff
+       [ ${OnePlusLoaded} -ne 0 ] && RETVAL=$((RETVAL | 32))
+}
+
+#############################################################################
+unload_all_ipmi_modules()
+{
+       stop_watchdog_quiet
+       stop_powercontrol_quiet
+       for m in ${MODULES}; do
+               modprobe -q -r ${m} > /dev/null 2>&1
+       done
+        # delete interface node ONLY if ipmi_devintf is unloaded
+        [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] &&
+               rm -f "/dev/ipmi${INTF_NUM}"
+}
+
+unload_ipmi_modules_leave_features()
+{
+       for m in ${MODULES_INTERFACES}; do
+               modprobe -q -r ${m} > /dev/null 2>&1
+       done
+        # delete interface node ONLY if ipmi_devintf is unloaded
+        [ `lsmod | grep -c "ipmi_devintf"` -eq 0 ] &&
+               rm -f "/dev/ipmi${INTF_NUM}"
+       lsmod | egrep -q "ipmi_(poweroff|watchdog)" > /dev/null 2>&1
+       if [ "$?" -ne "0" ]; then
+               stop_watchdog_quiet
+               stop_powercontrol_quiet
+               for m in ${MODULES}; do
+                       modprobe -q -r ${m} > /dev/null 2>&1
+               done
+       fi
+}
+
+#############################################################################
+load_ipmi_modules ()
+{
+       local locdelay
+       modprobe ipmi_msghandler > /dev/null 2>&1
+       modules_loaded ipmi_msghandler
+       [ ${OnePlusLoaded} -ne 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return
+       load_hw_modules
+       [ $((RETVAL & 1)) -eq 1 ] && unload_all_ipmi_modules && RETVAL=$((RETVAL | 1)) && return
+
+       if [ "${DEV_IPMI}" = "yes" ]; then
+               modprobe ipmi_devintf > /dev/null 2>&1
+               modules_loaded ipmi_devintf
+               RETVAL=$((RETVAL & ~2))
+               [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+               if [ ${OnePlusLoaded} -eq 1 ]; then
+                       if [ ${UDEV_EXISTS} -eq 0 ]; then
+                               DEVMAJOR=`cat /proc/devices | awk '/ipmidev/{print $1}'`
+                               rm -f /dev/ipmi${INTF_NUM}
+                               mknod -m 0600 /dev/ipmi${INTF_NUM} c ${DEVMAJOR} 0 || RETVAL=$((RETVAL | 4))
+                       fi
+
+                       # udev can take several seconds to create /dev/ipmi0, 
+                       # but it happens asynchronously, so delay here
+                       locdelay=${DEV_IPMI_TIMEOUT}
+                       while [ ! -e /dev/ipmi${INTF_NUM} -a ${locdelay} -gt 0 ]; do
+                               locdelay=$((locdelay - 1))
+                               sleep 0.1
+                       done
+               fi
+       fi
+
+       if [ "${IPMI_IMB}" = "yes" ]; then
+               modprobe ipmi_imb > /dev/null 2>&1
+               modules_loaded ipmi_imb
+               RETVAL=$((RETVAL & ~2))
+               [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+               if [ ${OnePlusLoaded} -eq 1 ]; then
+                       DEVMAJOR=`cat /proc/devices | awk '/imb/{print $1}'`
+                       rm -f /dev/imb
+                       mknod -m 0600 /dev/imb c ${DEVMAJOR} 0 || RETVAL=$((RETVAL | 4))
+               fi
+       fi
+
+       # Per Corey Minyard, essentially no one uses ipmi_radisys
+       # and we don't want to encourage its further use
+       # so it won't be handled here.
+       return
+}
+
+#############################################################################
+start()
+{
+       load_ipmi_modules
+       if [ ${RETVAL} -eq 0 ]; then
+               touch ${LOCKFILE}
+       else
+               if [ $((RETVAL & 1)) -eq 1 ]; then
+                       echo "Startup failed."
+               else
+                       touch ${LOCKFILE} && echo "Warning!?"
+               fi
+       fi
+       start_watchdog_quiet
+       start_powercontrol_quiet
+}
+
+#############################################################################
+stop()
+{
+       unload_ipmi_modules_leave_features
+       modules_loaded ${MODULES_INTERFACES}
+       if [ ${OnePlusLoaded} -ne 0 ]; then
+               RETVAL=$((RETVAL | 32))
+               echo "Shutdown failed, something may be in use"
+       else
+               rm -f ${LOCKFILE}
+       fi
+}
+
+stop_all()
+{
+       unload_all_ipmi_modules
+       modules_loaded ${MODULES}
+       if [ ${OnePlusLoaded} -ne 0 ]; then
+               RETVAL=$((RETVAL | 32))
+               echo "Shutdown failed, something may be in use"
+       else
+               rm -f ${LOCKFILE}
+       fi
+}
+
+#############################################################################
+restart()
+{
+       stop_all
+       RETVAL=0
+       start
+}
+
+#############################################################################
+
+reload()
+{
+       stop_all
+       RETVAL=0
+       start
+}
+
+#############################################################################
+
+status_all()
+{
+       minimum_modules_loaded
+       [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+       
+       modules_loaded_verbose ${MODULES_FEATURES} ${MODULES_INTERFACES}
+       [ ${OnePlusUnloaded} -ne 0 ] && RETVAL=$((RETVAL | 2))
+
+       if [ "${DEV_IPMI}" = "yes" ]; then 
+           device_node_exists /dev/ipmi${INTF_NUM}
+           [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+       fi
+
+       if [ "${IPMI_IMB}" = "yes" ]; then
+           device_node_exists /dev/imb
+           [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+       fi
+
+       if [ "${IPMI_WATCHDOG}" = "yes" ]; then
+           device_node_exists /dev/watchdog
+           [ $? -eq 0 ] && RETVAL=$((RETVAL | 8))
+       fi
+
+       [ ! -e ${LOCKFILE} ] && RETVAL=$((RETVAL | 16))
+}
+
+status()
+{
+       minimum_modules_loaded
+       [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+       
+       if [ "${DEV_IPMI}" = "yes" ]; then 
+           modules_loaded_verbose ipmi_devintf
+           [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+
+           device_node_exists /dev/ipmi${INTF_NUM}
+           [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+       fi
+
+       if [ "${IPMI_IMB}" = "yes" ]; then
+           device_node_exists /dev/imb
+           [ $? -eq 0 ] && RETVAL=$((RETVAL | 4))
+       fi
+}
+
+status_watchdog()
+{
+       minimum_modules_loaded
+       [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+
+       modules_loaded_verbose ipmi_watchdog
+       [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+
+       device_node_exists /dev/watchdog
+       [ $? -eq 0 ] && RETVAL=$((RETVAL | 8))
+}
+
+status_powercontrol()
+{
+       minimum_modules_loaded
+       [ $? -eq 0 ] && RETVAL=$((RETVAL | 1))
+
+       modules_loaded_verbose ipmi_powercontrol
+       [ ${OnePlusLoaded} -eq 0 ] && RETVAL=$((RETVAL | 2))
+}
+
+#############################################################################
+usage ()
+{
+       echo $"Usage: $0 {start|stop|status" 1>&2
+       echo $"          restart|condrestart|try-restart|reload|force-reload" 1>&2
+       echo $"          start-watchdog|stop-watchdog|status-watchdog" 1>&2
+       echo $"          start-powercontrol|stop-powercontrol|status-powercontrol" 1>&2
+       echo $"          stop-all|status-all}" 1>&2
+       RETVAL=2
+}
+
+condrestart ()
+{
+       [ -e ${LOCKFILE} ] && restart
+}
+
+#############################################################################
+# MAIN
+#############################################################################
+case "$1" in
+       start) start ;;
+       stop)  stop ;;
+       restart) restart ;;
+       force-reload) reload ;;
+       reload) reload ;;
+       status) status ;;
+       status-all) status_all ;;
+       condrestart) condrestart ;;
+       try-restart) condrestart ;;
+       start-watchdog) start_watchdog ;;
+       stop-watchdog) stop_watchdog ;;
+       status-watchdog) status_watchdog ;;
+       start-powercontrol) start_powercontrol ;;
+       stop-powercontrol) stop_powercontrol ;;
+       status-powercontrol) status_powercontrol ;;
+       stop-all) stop_all ;;
+       *) usage ;;
+esac
+
+exit ${RETVAL}
+
+#############################################################################
+# end of file
+#############################################################################
+
diff --git a/config/OpenIPMI/openipmi.modalias b/config/OpenIPMI/openipmi.modalias
new file mode 100644 (file)
index 0000000..58950a4
--- /dev/null
@@ -0,0 +1,10 @@
+#
+# This configuration file was provided
+# by OpenIPMI-modalias package.
+# Feel free to update as needed.
+#
+
+alias acpi:IPI000*:* ipmi_si
+alias acpi:IPI000*:* ipmi_devintf
+alias acpi:IPI000*:* ipmi_msghandler
+
diff --git a/config/OpenIPMI/openipmi.sysconf b/config/OpenIPMI/openipmi.sysconf
new file mode 100644 (file)
index 0000000..715c6e4
--- /dev/null
@@ -0,0 +1,68 @@
+## Path:        Hardware/IPMI
+## Description: Enable standard hardware interfaces (KCS, BT, SMIC)
+## Type:        yesno
+## Default:     "yes"
+## Config:      ipmi
+# Enable standard hardware interfaces (KCS, BT, SMIC)
+# You probably want this enabled.
+IPMI_SI=yes
+
+## Path:        Hardware/IPMI
+## Description: Enable /dev/ipmi0 interface, used by ipmitool, ipmicmd,
+## Type:        yesno
+## Default:     "yes"
+## Config:      ipmi
+# Enable /dev/ipmi0 interface, used by ipmitool, ipmicmd,
+# and other userspace IPMI-using applications.
+# You probably want this enabled.
+DEV_IPMI=yes
+
+## Path:        Hardware/IPMI
+## Description: Enable IPMI_WATCHDOG if you want the IPMI watchdog
+## Type:        yesno
+## Default:     "no"
+## Config:      ipmi
+# Enable IPMI_WATCHDOG if you want the IPMI watchdog
+# to reboot the system if it hangs
+IPMI_WATCHDOG=no
+
+## Path:        Hardware/IPMI
+## Description: Watchdog options - modinfo ipmi_watchdog for details
+## Type:        string
+## Default:     "timeout=60"
+## Config:      ipmi
+# Watchdog options - modinfo ipmi_watchdog for details
+# watchdog timeout value in seconds
+# as there is no userspace ping application that runs during shutdown,
+# be sure to give it enough time for any device drivers to
+# do their cleanup (e.g. megaraid cache flushes)
+# without the watchdog triggering prematurely
+IPMI_WATCHDOG_OPTIONS="timeout=60"
+
+## Path:        Hardware/IPMI
+## Description: Enable IPMI_POWEROFF if you want the IPMI poweroff module to be loaded.
+## Type:        yesno
+## Default:     "no"
+## Config:      ipmi
+# Enable IPMI_POWEROFF if you want the IPMI
+# poweroff module to be loaded.
+IPMI_POWEROFF=no
+
+## Path:        Hardware/IPMI
+## Description: Enable IPMI_POWERCYCLE if you want the system to be power-cycled on reboot
+## Type:        yesno
+## Default:     "no"
+## Config:      ipmi
+# Enable IPMI_POWERCYCLE if you want the system to be power-cycled (power
+# down, delay briefly, power on) rather than power off, on systems
+# that support such.  IPMI_POWEROFF=yes is also required.
+IPMI_POWERCYCLE=no
+
+## Path:        Hardware/IPMI
+## Description: Enable "legacy" interfaces for applications
+## Type:        yesno
+## Default:     "no"
+## Config:      ipmi
+# Enable "legacy" interfaces for applications
+# Intel IMB driver interface
+IPMI_IMB=no
diff --git a/config/rootfiles/common/OpenIPMI b/config/rootfiles/common/OpenIPMI
new file mode 100644 (file)
index 0000000..fc58c1e
--- /dev/null
@@ -0,0 +1,133 @@
+etc/ipmi
+etc/ipmi/ipmisim1.emu
+etc/ipmi/lan.conf
+etc/modprobe.d/openipmi.conf
+etc/rc.d/init.d/ipmi
+etc/sysconfig/ipmi
+usr/bin/ipmi_sim
+usr/bin/ipmi_ui
+usr/bin/ipmicmd
+usr/bin/ipmilan
+usr/bin/ipmish
+usr/bin/openipmicmd
+usr/bin/openipmish
+usr/bin/rmcp_ping
+usr/bin/sdrcomp
+usr/bin/solterm
+#usr/include/OpenIPMI
+#usr/include/OpenIPMI/extcmd.h
+#usr/include/OpenIPMI/internal
+#usr/include/OpenIPMI/internal/ilist.h
+#usr/include/OpenIPMI/internal/ipmi_control.h
+#usr/include/OpenIPMI/internal/ipmi_domain.h
+#usr/include/OpenIPMI/internal/ipmi_entity.h
+#usr/include/OpenIPMI/internal/ipmi_event.h
+#usr/include/OpenIPMI/internal/ipmi_fru.h
+#usr/include/OpenIPMI/internal/ipmi_int.h
+#usr/include/OpenIPMI/internal/ipmi_locks.h
+#usr/include/OpenIPMI/internal/ipmi_malloc.h
+#usr/include/OpenIPMI/internal/ipmi_mc.h
+#usr/include/OpenIPMI/internal/ipmi_oem.h
+#usr/include/OpenIPMI/internal/ipmi_sel.h
+#usr/include/OpenIPMI/internal/ipmi_sensor.h
+#usr/include/OpenIPMI/internal/ipmi_utils.h
+#usr/include/OpenIPMI/internal/locked_list.h
+#usr/include/OpenIPMI/internal/md2.h
+#usr/include/OpenIPMI/internal/md5.h
+#usr/include/OpenIPMI/internal/opq.h
+#usr/include/OpenIPMI/ipmi_addr.h
+#usr/include/OpenIPMI/ipmi_auth.h
+#usr/include/OpenIPMI/ipmi_bits.h
+#usr/include/OpenIPMI/ipmi_cmdlang.h
+#usr/include/OpenIPMI/ipmi_conn.h
+#usr/include/OpenIPMI/ipmi_debug.h
+#usr/include/OpenIPMI/ipmi_err.h
+#usr/include/OpenIPMI/ipmi_fru.h
+#usr/include/OpenIPMI/ipmi_glib.h
+#usr/include/OpenIPMI/ipmi_lan.h
+#usr/include/OpenIPMI/ipmi_lanparm.h
+#usr/include/OpenIPMI/ipmi_log.h
+#usr/include/OpenIPMI/ipmi_mc.h
+#usr/include/OpenIPMI/ipmi_msgbits.h
+#usr/include/OpenIPMI/ipmi_pef.h
+#usr/include/OpenIPMI/ipmi_pet.h
+#usr/include/OpenIPMI/ipmi_picmg.h
+#usr/include/OpenIPMI/ipmi_posix.h
+#usr/include/OpenIPMI/ipmi_sdr.h
+#usr/include/OpenIPMI/ipmi_smi.h
+#usr/include/OpenIPMI/ipmi_sol.h
+#usr/include/OpenIPMI/ipmi_solparm.h
+#usr/include/OpenIPMI/ipmi_string.h
+#usr/include/OpenIPMI/ipmi_tcl.h
+#usr/include/OpenIPMI/ipmi_types.h
+#usr/include/OpenIPMI/ipmi_ui.h
+#usr/include/OpenIPMI/ipmi_user.h
+#usr/include/OpenIPMI/ipmiif.h
+#usr/include/OpenIPMI/lanserv.h
+#usr/include/OpenIPMI/mcserv.h
+#usr/include/OpenIPMI/msg.h
+#usr/include/OpenIPMI/mxp.h
+#usr/include/OpenIPMI/os_handler.h
+#usr/include/OpenIPMI/persist.h
+#usr/include/OpenIPMI/selector.h
+#usr/include/OpenIPMI/serserv.h
+#usr/include/OpenIPMI/serv.h
+#usr/lib/libIPMIlanserv.la
+#usr/lib/libIPMIlanserv.so
+usr/lib/libIPMIlanserv.so.0
+usr/lib/libIPMIlanserv.so.0.0.1
+#usr/lib/libOpenIPMI.la
+#usr/lib/libOpenIPMI.so
+usr/lib/libOpenIPMI.so.0
+usr/lib/libOpenIPMI.so.0.0.5
+#usr/lib/libOpenIPMIcmdlang.la
+#usr/lib/libOpenIPMIcmdlang.so
+usr/lib/libOpenIPMIcmdlang.so.0
+usr/lib/libOpenIPMIcmdlang.so.0.0.5
+#usr/lib/libOpenIPMIglib.la
+#usr/lib/libOpenIPMIglib.so
+usr/lib/libOpenIPMIglib.so.0
+usr/lib/libOpenIPMIglib.so.0.0.1
+#usr/lib/libOpenIPMIposix.la
+#usr/lib/libOpenIPMIposix.so
+usr/lib/libOpenIPMIposix.so.0
+usr/lib/libOpenIPMIposix.so.0.0.1
+#usr/lib/libOpenIPMIpthread.la
+#usr/lib/libOpenIPMIpthread.so
+usr/lib/libOpenIPMIpthread.so.0
+usr/lib/libOpenIPMIpthread.so.0.0.1
+#usr/lib/libOpenIPMIui.la
+#usr/lib/libOpenIPMIui.so
+usr/lib/libOpenIPMIui.so.1
+usr/lib/libOpenIPMIui.so.1.0.1
+#usr/lib/libOpenIPMIutils.la
+#usr/lib/libOpenIPMIutils.so
+usr/lib/libOpenIPMIutils.so.0
+usr/lib/libOpenIPMIutils.so.0.0.1
+usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/OpenIPMI.pm
+usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/OpenIPMI
+usr/lib/perl5/site_perl/5.12.3/i586-linux-thread-multi/auto/OpenIPMI/OpenIPMI.so
+#usr/lib/pkgconfig/OpenIPMI.pc
+#usr/lib/pkgconfig/OpenIPMIcmdlang.pc
+#usr/lib/pkgconfig/OpenIPMIglib.pc
+#usr/lib/pkgconfig/OpenIPMIposix.pc
+#usr/lib/pkgconfig/OpenIPMIpthread.pc
+#usr/lib/pkgconfig/OpenIPMIui.pc
+#usr/lib/pkgconfig/OpenIPMIutils.pc
+#usr/lib/python2.7/site-packages/OpenIPMI.py
+#usr/lib/python2.7/site-packages/OpenIPMI.pyc
+#usr/lib/python2.7/site-packages/OpenIPMI.pyo
+#usr/lib/python2.7/site-packages/_OpenIPMI.la
+#usr/lib/python2.7/site-packages/_OpenIPMI.so
+#usr/share/man/man1/ipmi_sim.1
+#usr/share/man/man1/ipmi_ui.1
+#usr/share/man/man1/openipmicmd.1
+#usr/share/man/man1/openipmigui.1
+#usr/share/man/man1/openipmish.1
+#usr/share/man/man1/rmcp_ping.1
+#usr/share/man/man1/solterm.1
+#usr/share/man/man5/ipmi_lan.5
+#usr/share/man/man5/ipmi_sim_cmd.5
+#usr/share/man/man7/ipmi_cmdlang.7
+#usr/share/man/man7/openipmi_conparms.7
+#usr/share/man/man8/ipmilan.8
diff --git a/config/rootfiles/common/freeipmi b/config/rootfiles/common/freeipmi
new file mode 100644 (file)
index 0000000..6c5b953
--- /dev/null
@@ -0,0 +1,369 @@
+etc/freeipmi
+etc/freeipmi/freeipmi.conf
+etc/freeipmi/freeipmi_interpret_sel.conf
+etc/freeipmi/freeipmi_interpret_sensor.conf
+etc/freeipmi/ipmidetect.conf
+etc/freeipmi/ipmidetectd.conf
+etc/freeipmi/ipmiseld.conf
+etc/freeipmi/libipmiconsole.conf
+etc/init.d
+etc/init.d/bmc-watchdog
+etc/init.d/ipmidetectd
+etc/init.d/ipmiseld
+etc/sysconfig
+etc/sysconfig/bmc-watchdog
+#usr/include/freeipmi
+#usr/include/freeipmi/api
+#usr/include/freeipmi/api/ipmi-api.h
+#usr/include/freeipmi/api/ipmi-chassis-cmds-api.h
+#usr/include/freeipmi/api/ipmi-dcmi-cmds-api.h
+#usr/include/freeipmi/api/ipmi-device-global-cmds-api.h
+#usr/include/freeipmi/api/ipmi-event-cmds-api.h
+#usr/include/freeipmi/api/ipmi-firmware-firewall-command-discovery-cmds-api.h
+#usr/include/freeipmi/api/ipmi-fru-inventory-device-cmds-api.h
+#usr/include/freeipmi/api/ipmi-lan-cmds-api.h
+#usr/include/freeipmi/api/ipmi-messaging-support-cmds-api.h
+#usr/include/freeipmi/api/ipmi-oem-intel-node-manager-cmds-api.h
+#usr/include/freeipmi/api/ipmi-pef-and-alerting-cmds-api.h
+#usr/include/freeipmi/api/ipmi-rmcpplus-support-and-payload-cmds-api.h
+#usr/include/freeipmi/api/ipmi-sdr-repository-cmds-api.h
+#usr/include/freeipmi/api/ipmi-sel-cmds-api.h
+#usr/include/freeipmi/api/ipmi-sensor-cmds-api.h
+#usr/include/freeipmi/api/ipmi-serial-modem-cmds-api.h
+#usr/include/freeipmi/api/ipmi-sol-cmds-api.h
+#usr/include/freeipmi/cmds
+#usr/include/freeipmi/cmds/ipmi-bmc-watchdog-timer-cmds.h
+#usr/include/freeipmi/cmds/ipmi-chassis-cmds.h
+#usr/include/freeipmi/cmds/ipmi-dcmi-cmds.h
+#usr/include/freeipmi/cmds/ipmi-dcmi-oem-cmds.h
+#usr/include/freeipmi/cmds/ipmi-device-global-cmds.h
+#usr/include/freeipmi/cmds/ipmi-event-cmds.h
+#usr/include/freeipmi/cmds/ipmi-firmware-firewall-command-discovery-cmds.h
+#usr/include/freeipmi/cmds/ipmi-fru-inventory-device-cmds.h
+#usr/include/freeipmi/cmds/ipmi-lan-cmds.h
+#usr/include/freeipmi/cmds/ipmi-messaging-support-cmds.h
+#usr/include/freeipmi/cmds/ipmi-oem-intel-node-manager-cmds.h
+#usr/include/freeipmi/cmds/ipmi-pef-and-alerting-cmds.h
+#usr/include/freeipmi/cmds/ipmi-rmcpplus-support-and-payload-cmds.h
+#usr/include/freeipmi/cmds/ipmi-sdr-repository-cmds.h
+#usr/include/freeipmi/cmds/ipmi-sel-cmds.h
+#usr/include/freeipmi/cmds/ipmi-sensor-cmds.h
+#usr/include/freeipmi/cmds/ipmi-serial-modem-cmds.h
+#usr/include/freeipmi/cmds/ipmi-sol-cmds.h
+#usr/include/freeipmi/cmds/rmcp-cmds.h
+#usr/include/freeipmi/debug
+#usr/include/freeipmi/debug/ipmi-debug.h
+#usr/include/freeipmi/driver
+#usr/include/freeipmi/driver/ipmi-inteldcmi-driver.h
+#usr/include/freeipmi/driver/ipmi-kcs-driver.h
+#usr/include/freeipmi/driver/ipmi-openipmi-driver.h
+#usr/include/freeipmi/driver/ipmi-ssif-driver.h
+#usr/include/freeipmi/driver/ipmi-sunbmc-driver.h
+#usr/include/freeipmi/fiid
+#usr/include/freeipmi/fiid/fiid.h
+#usr/include/freeipmi/freeipmi.h
+#usr/include/freeipmi/fru
+#usr/include/freeipmi/fru/ipmi-fru.h
+#usr/include/freeipmi/interface
+#usr/include/freeipmi/interface/ipmi-interface.h
+#usr/include/freeipmi/interface/ipmi-ipmb-interface.h
+#usr/include/freeipmi/interface/ipmi-kcs-interface.h
+#usr/include/freeipmi/interface/ipmi-lan-interface.h
+#usr/include/freeipmi/interface/ipmi-rmcpplus-interface.h
+#usr/include/freeipmi/interface/rmcp-interface.h
+#usr/include/freeipmi/interpret
+#usr/include/freeipmi/interpret/ipmi-interpret.h
+#usr/include/freeipmi/locate
+#usr/include/freeipmi/locate/ipmi-locate.h
+#usr/include/freeipmi/payload
+#usr/include/freeipmi/payload/ipmi-sol-payload.h
+#usr/include/freeipmi/record-format
+#usr/include/freeipmi/record-format/ipmi-cipher-suite-record-format.h
+#usr/include/freeipmi/record-format/ipmi-fru-dimmspd-record-format.h
+#usr/include/freeipmi/record-format/ipmi-fru-information-record-format.h
+#usr/include/freeipmi/record-format/ipmi-fru-oem-record-format.h
+#usr/include/freeipmi/record-format/ipmi-platform-event-trap-record-format.h
+#usr/include/freeipmi/record-format/ipmi-sdr-oem-record-format.h
+#usr/include/freeipmi/record-format/ipmi-sdr-record-format.h
+#usr/include/freeipmi/record-format/ipmi-sel-oem-record-format.h
+#usr/include/freeipmi/record-format/ipmi-sel-record-format.h
+#usr/include/freeipmi/sdr
+#usr/include/freeipmi/sdr/ipmi-sdr-oem.h
+#usr/include/freeipmi/sdr/ipmi-sdr.h
+#usr/include/freeipmi/sel
+#usr/include/freeipmi/sel/ipmi-sel.h
+#usr/include/freeipmi/sensor-read
+#usr/include/freeipmi/sensor-read/ipmi-sensor-read.h
+#usr/include/freeipmi/spec
+#usr/include/freeipmi/spec/ipmi-authentication-type-spec.h
+#usr/include/freeipmi/spec/ipmi-channel-spec.h
+#usr/include/freeipmi/spec/ipmi-cmd-dcmi-spec.h
+#usr/include/freeipmi/spec/ipmi-cmd-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-cmd-spec.h
+#usr/include/freeipmi/spec/ipmi-comp-code-dcmi-spec.h
+#usr/include/freeipmi/spec/ipmi-comp-code-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-comp-code-spec.h
+#usr/include/freeipmi/spec/ipmi-device-types-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-device-types-spec.h
+#usr/include/freeipmi/spec/ipmi-entity-ids-spec.h
+#usr/include/freeipmi/spec/ipmi-event-reading-type-code-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-event-reading-type-code-spec.h
+#usr/include/freeipmi/spec/ipmi-fru-chassis-types-spec.h
+#usr/include/freeipmi/spec/ipmi-fru-language-codes-spec.h
+#usr/include/freeipmi/spec/ipmi-iana-enterprise-numbers-spec.h
+#usr/include/freeipmi/spec/ipmi-ipmb-lun-spec.h
+#usr/include/freeipmi/spec/ipmi-jedec-manufacturer-identification-code-spec.h
+#usr/include/freeipmi/spec/ipmi-lan-configuration-parameters-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-lan-configuration-parameters-spec.h
+#usr/include/freeipmi/spec/ipmi-netfn-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-netfn-spec.h
+#usr/include/freeipmi/spec/ipmi-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-pef-configuration-parameters-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-pef-configuration-parameters-spec.h
+#usr/include/freeipmi/spec/ipmi-privilege-level-spec.h
+#usr/include/freeipmi/spec/ipmi-product-id-spec.h
+#usr/include/freeipmi/spec/ipmi-rmcpplus-status-spec.h
+#usr/include/freeipmi/spec/ipmi-sensor-and-event-code-tables-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-sensor-and-event-code-tables-spec.h
+#usr/include/freeipmi/spec/ipmi-sensor-numbers-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-sensor-types-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-sensor-types-spec.h
+#usr/include/freeipmi/spec/ipmi-sensor-units-spec.h
+#usr/include/freeipmi/spec/ipmi-serial-modem-configuration-parameters-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-serial-modem-configuration-parameters-spec.h
+#usr/include/freeipmi/spec/ipmi-slave-address-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-slave-address-spec.h
+#usr/include/freeipmi/spec/ipmi-sol-configuration-parameters-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-sol-configuration-parameters-spec.h
+#usr/include/freeipmi/spec/ipmi-system-boot-option-parameters-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-system-boot-option-parameters-spec.h
+#usr/include/freeipmi/spec/ipmi-system-info-parameters-oem-spec.h
+#usr/include/freeipmi/spec/ipmi-system-info-parameters-spec.h
+#usr/include/freeipmi/spec/ipmi-system-software-id-spec.h
+#usr/include/freeipmi/spec/ipmi-timestamp-spec.h
+#usr/include/freeipmi/templates
+#usr/include/freeipmi/templates/ipmi-bmc-watchdog-timer-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-chassis-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-cipher-suite-record-format-templates.h
+#usr/include/freeipmi/templates/ipmi-dcmi-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-device-global-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-event-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-firmware-firewall-command-discovery-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-fru-dimmspd-record-format-templates.h
+#usr/include/freeipmi/templates/ipmi-fru-information-record-format-templates.h
+#usr/include/freeipmi/templates/ipmi-fru-inventory-device-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-ipmb-interface-templates.h
+#usr/include/freeipmi/templates/ipmi-kcs-interface-templates.h
+#usr/include/freeipmi/templates/ipmi-lan-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-lan-interface-templates.h
+#usr/include/freeipmi/templates/ipmi-messaging-support-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-oem-intel-node-manager-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-pef-and-alerting-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-rmcpplus-interface-templates.h
+#usr/include/freeipmi/templates/ipmi-rmcpplus-support-and-payload-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-sdr-oem-record-format-templates.h
+#usr/include/freeipmi/templates/ipmi-sdr-record-format-templates.h
+#usr/include/freeipmi/templates/ipmi-sdr-repository-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-sel-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-sel-record-format-templates.h
+#usr/include/freeipmi/templates/ipmi-sensor-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-serial-modem-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-sol-cmds-templates.h
+#usr/include/freeipmi/templates/ipmi-sol-payload-templates.h
+#usr/include/freeipmi/templates/rmcp-cmds-templates.h
+#usr/include/freeipmi/templates/rmcp-interface-templates.h
+#usr/include/freeipmi/util
+#usr/include/freeipmi/util/ipmi-channel-util.h
+#usr/include/freeipmi/util/ipmi-cipher-suite-util.h
+#usr/include/freeipmi/util/ipmi-dcmi-util.h
+#usr/include/freeipmi/util/ipmi-device-types-util.h
+#usr/include/freeipmi/util/ipmi-entity-ids-util.h
+#usr/include/freeipmi/util/ipmi-error-dcmi-util.h
+#usr/include/freeipmi/util/ipmi-error-util.h
+#usr/include/freeipmi/util/ipmi-iana-enterprise-numbers-util.h
+#usr/include/freeipmi/util/ipmi-ipmb-util.h
+#usr/include/freeipmi/util/ipmi-jedec-manufacturer-identification-code-util.h
+#usr/include/freeipmi/util/ipmi-lan-util.h
+#usr/include/freeipmi/util/ipmi-outofband-util.h
+#usr/include/freeipmi/util/ipmi-rmcpplus-util.h
+#usr/include/freeipmi/util/ipmi-sensor-and-event-code-tables-util.h
+#usr/include/freeipmi/util/ipmi-sensor-util.h
+#usr/include/freeipmi/util/ipmi-timestamp-util.h
+#usr/include/freeipmi/util/ipmi-util.h
+#usr/include/freeipmi/util/rmcp-util.h
+#usr/include/ipmi_monitoring.h
+#usr/include/ipmi_monitoring_bitmasks.h
+#usr/include/ipmi_monitoring_offsets.h
+#usr/include/ipmiconsole.h
+#usr/include/ipmidetect.h
+#usr/lib/libfreeipmi.la
+#usr/lib/libfreeipmi.so
+usr/lib/libfreeipmi.so.16
+usr/lib/libfreeipmi.so.16.0.5
+#usr/lib/libipmiconsole.la
+#usr/lib/libipmiconsole.so
+usr/lib/libipmiconsole.so.2
+usr/lib/libipmiconsole.so.2.3.3
+#usr/lib/libipmidetect.la
+#usr/lib/libipmidetect.so
+usr/lib/libipmidetect.so.0
+usr/lib/libipmidetect.so.0.0.0
+#usr/lib/libipmimonitoring.la
+#usr/lib/libipmimonitoring.so
+usr/lib/libipmimonitoring.so.5
+usr/lib/libipmimonitoring.so.5.0.6
+#usr/lib/pkgconfig/libfreeipmi.pc
+#usr/lib/pkgconfig/libipmiconsole.pc
+#usr/lib/pkgconfig/libipmidetect.pc
+#usr/lib/pkgconfig/libipmimonitoring.pc
+usr/sbin/bmc-config
+usr/sbin/bmc-device
+usr/sbin/bmc-info
+usr/sbin/bmc-watchdog
+usr/sbin/ipmi-chassis
+usr/sbin/ipmi-chassis-config
+usr/sbin/ipmi-config
+usr/sbin/ipmi-console
+usr/sbin/ipmi-dcmi
+usr/sbin/ipmi-detect
+usr/sbin/ipmi-fru
+usr/sbin/ipmi-locate
+usr/sbin/ipmi-oem
+usr/sbin/ipmi-pef-config
+usr/sbin/ipmi-pet
+usr/sbin/ipmi-ping
+usr/sbin/ipmi-power
+usr/sbin/ipmi-raw
+usr/sbin/ipmi-sel
+usr/sbin/ipmi-sensors
+usr/sbin/ipmi-sensors-config
+usr/sbin/ipmiconsole
+usr/sbin/ipmidetect
+usr/sbin/ipmidetectd
+usr/sbin/ipmimonitoring
+usr/sbin/ipmiping
+usr/sbin/ipmipower
+usr/sbin/ipmiseld
+usr/sbin/pef-config
+usr/sbin/rmcp-ping
+usr/sbin/rmcpping
+#usr/share/doc/freeipmi
+#usr/share/doc/freeipmi/AUTHORS
+#usr/share/doc/freeipmi/COPYING
+#usr/share/doc/freeipmi/COPYING.ZRESEARCH
+#usr/share/doc/freeipmi/COPYING.bmc-watchdog
+#usr/share/doc/freeipmi/COPYING.ipmi-dcmi
+#usr/share/doc/freeipmi/COPYING.ipmi-fru
+#usr/share/doc/freeipmi/COPYING.ipmiconsole
+#usr/share/doc/freeipmi/COPYING.ipmidetect
+#usr/share/doc/freeipmi/COPYING.ipmimonitoring
+#usr/share/doc/freeipmi/COPYING.ipmiping
+#usr/share/doc/freeipmi/COPYING.ipmipower
+#usr/share/doc/freeipmi/COPYING.ipmiseld
+#usr/share/doc/freeipmi/COPYING.pstdout
+#usr/share/doc/freeipmi/COPYING.sunbmc
+#usr/share/doc/freeipmi/ChangeLog
+#usr/share/doc/freeipmi/ChangeLog.0
+#usr/share/doc/freeipmi/DISCLAIMER.bmc-watchdog
+#usr/share/doc/freeipmi/DISCLAIMER.bmc-watchdog.UC
+#usr/share/doc/freeipmi/DISCLAIMER.ipmi-dcmi
+#usr/share/doc/freeipmi/DISCLAIMER.ipmi-fru
+#usr/share/doc/freeipmi/DISCLAIMER.ipmi-fru.UC
+#usr/share/doc/freeipmi/DISCLAIMER.ipmiconsole
+#usr/share/doc/freeipmi/DISCLAIMER.ipmiconsole.UC
+#usr/share/doc/freeipmi/DISCLAIMER.ipmidetect
+#usr/share/doc/freeipmi/DISCLAIMER.ipmidetect.UC
+#usr/share/doc/freeipmi/DISCLAIMER.ipmimonitoring
+#usr/share/doc/freeipmi/DISCLAIMER.ipmimonitoring.UC
+#usr/share/doc/freeipmi/DISCLAIMER.ipmiping
+#usr/share/doc/freeipmi/DISCLAIMER.ipmiping.UC
+#usr/share/doc/freeipmi/DISCLAIMER.ipmipower
+#usr/share/doc/freeipmi/DISCLAIMER.ipmipower.UC
+#usr/share/doc/freeipmi/DISCLAIMER.ipmiseld
+#usr/share/doc/freeipmi/DISCLAIMER.pstdout
+#usr/share/doc/freeipmi/DISCLAIMER.pstdout.UC
+#usr/share/doc/freeipmi/INSTALL
+#usr/share/doc/freeipmi/NEWS
+#usr/share/doc/freeipmi/README
+#usr/share/doc/freeipmi/README.argp
+#usr/share/doc/freeipmi/README.build
+#usr/share/doc/freeipmi/README.openipmi
+#usr/share/doc/freeipmi/TODO
+#usr/share/doc/freeipmi/contrib
+#usr/share/doc/freeipmi/contrib/ganglia
+#usr/share/doc/freeipmi/contrib/ganglia/README
+#usr/share/doc/freeipmi/contrib/ganglia/ganglia_ipmi_sensors.pl
+#usr/share/doc/freeipmi/contrib/libipmimonitoring
+#usr/share/doc/freeipmi/contrib/libipmimonitoring/ipmimonitoring-sel.c
+#usr/share/doc/freeipmi/contrib/libipmimonitoring/ipmimonitoring-sensors.c
+#usr/share/doc/freeipmi/contrib/nagios
+#usr/share/doc/freeipmi/contrib/nagios/README
+#usr/share/doc/freeipmi/contrib/nagios/nagios_ipmi_sensors.pl
+#usr/share/doc/freeipmi/contrib/pet
+#usr/share/doc/freeipmi/contrib/pet/README
+#usr/share/doc/freeipmi/contrib/pet/check_rmcpping
+#usr/share/doc/freeipmi/contrib/pet/ipminodes.cfg
+#usr/share/doc/freeipmi/contrib/pet/petalert.pl
+#usr/share/doc/freeipmi/freeipmi-bugs-issues-and-workarounds.txt
+#usr/share/doc/freeipmi/freeipmi-coding.txt
+#usr/share/doc/freeipmi/freeipmi-design.txt
+#usr/share/doc/freeipmi/freeipmi-hostrange.txt
+#usr/share/doc/freeipmi/freeipmi-libraries.txt
+#usr/share/doc/freeipmi/freeipmi-oem-documentation-requirements.txt
+#usr/share/doc/freeipmi/freeipmi-testing.txt
+#usr/share/info/freeipmi-faq.info
+#usr/share/man/man3/libfreeipmi.3
+#usr/share/man/man3/libipmiconsole.3
+#usr/share/man/man3/libipmidetect.3
+#usr/share/man/man3/libipmimonitoring.3
+#usr/share/man/man5/bmc-config.conf.5
+#usr/share/man/man5/freeipmi.conf.5
+#usr/share/man/man5/freeipmi_interpret_sel.conf.5
+#usr/share/man/man5/freeipmi_interpret_sensor.conf.5
+#usr/share/man/man5/ipmi-config.conf.5
+#usr/share/man/man5/ipmi_monitoring_sensors.conf.5
+#usr/share/man/man5/ipmiconsole.conf.5
+#usr/share/man/man5/ipmidetect.conf.5
+#usr/share/man/man5/ipmidetectd.conf.5
+#usr/share/man/man5/ipmimonitoring.conf.5
+#usr/share/man/man5/ipmimonitoring_sensors.conf.5
+#usr/share/man/man5/ipmipower.conf.5
+#usr/share/man/man5/ipmiseld.conf.5
+#usr/share/man/man5/libipmiconsole.conf.5
+#usr/share/man/man5/libipmimonitoring.conf.5
+#usr/share/man/man7/freeipmi.7
+#usr/share/man/man8/bmc-config.8
+#usr/share/man/man8/bmc-device.8
+#usr/share/man/man8/bmc-info.8
+#usr/share/man/man8/bmc-watchdog.8
+#usr/share/man/man8/ipmi-chassis-config.8
+#usr/share/man/man8/ipmi-chassis.8
+#usr/share/man/man8/ipmi-config.8
+#usr/share/man/man8/ipmi-console.8
+#usr/share/man/man8/ipmi-dcmi.8
+#usr/share/man/man8/ipmi-detect.8
+#usr/share/man/man8/ipmi-fru.8
+#usr/share/man/man8/ipmi-locate.8
+#usr/share/man/man8/ipmi-oem.8
+#usr/share/man/man8/ipmi-pef-config.8
+#usr/share/man/man8/ipmi-pet.8
+#usr/share/man/man8/ipmi-ping.8
+#usr/share/man/man8/ipmi-power.8
+#usr/share/man/man8/ipmi-raw.8
+#usr/share/man/man8/ipmi-sel.8
+#usr/share/man/man8/ipmi-sensors-config.8
+#usr/share/man/man8/ipmi-sensors.8
+#usr/share/man/man8/ipmiconsole.8
+#usr/share/man/man8/ipmidetect.8
+#usr/share/man/man8/ipmidetectd.8
+#usr/share/man/man8/ipmimonitoring.8
+#usr/share/man/man8/ipmiping.8
+#usr/share/man/man8/ipmipower.8
+#usr/share/man/man8/ipmiseld.8
+#usr/share/man/man8/pef-config.8
+#usr/share/man/man8/rmcp-ping.8
+#usr/share/man/man8/rmcpping.8
+var/cache/ipmimonitoringsdrcache
+var/cache/ipmiseld
+var/lib/freeipmi
+var/lib/freeipmi/ipckey
diff --git a/config/rootfiles/common/ipmitool b/config/rootfiles/common/ipmitool
new file mode 100644 (file)
index 0000000..36142d4
--- /dev/null
@@ -0,0 +1,11 @@
+usr/bin/ipmitool
+#usr/sbin/ipmievd
+#usr/share/doc/ipmitool
+#usr/share/doc/ipmitool/AUTHORS
+#usr/share/doc/ipmitool/COPYING
+#usr/share/doc/ipmitool/ChangeLog
+#usr/share/doc/ipmitool/README
+#usr/share/ipmitool
+usr/share/ipmitool/oem_ibm_sel_map
+#usr/share/man/man1/ipmitool.1
+#usr/share/man/man8/ipmievd.8
diff --git a/lfs/OpenIPMI b/lfs/OpenIPMI
new file mode 100644 (file)
index 0000000..b13c07f
--- /dev/null
@@ -0,0 +1,97 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2014  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 2.0.21
+
+THISAPP    = OpenIPMI-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = dc0b42ae40b3f1d0db2a94b75b95fae1
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure \
+               --prefix=/usr \
+               --sysconfdir=/etc \
+               --with-pythoninstall=/usr/lib/python2.7/site-packages \
+               --disable-dependency-tracking \
+               --with-tcl=no \
+               --with-tkinter=no \
+               --disable-static
+       cd $(DIR_APP) && make LDFLAGS="-lrt" #$(MAKETUNING)
+       cd $(DIR_APP) && make install
+
+       -mkdir -pv /etc/modprobe.d
+       install -v -m 644 $(DIR_SRC)/config/OpenIPMI/openipmi.modalias \
+               /etc/modprobe.d/openipmi.conf
+
+       -mkdir -pv /etc/rc.d/init.d
+       install -v -m 754 $(DIR_SRC)/config/OpenIPMI/ipmi.init \
+               /etc/rc.d/init.d/ipmi
+
+       -mkdir -pv /etc/sysconfig
+       install -v -m 644 $(DIR_SRC)/config/OpenIPMI/openipmi.sysconf \
+               /etc/sysconfig/ipmi
+
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/freeipmi b/lfs/freeipmi
new file mode 100644 (file)
index 0000000..4061d27
--- /dev/null
@@ -0,0 +1,80 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2014  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 1.4.8
+
+THISAPP    = freeipmi-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+CFLAGS    += -D_GNU_SOURCE
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = df800f7553d6a7d55e2a928abc65dadb
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc \
+               --localstatedir=/var --disable-static
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/lfs/ipmitool b/lfs/ipmitool
new file mode 100644 (file)
index 0000000..ff09ca8
--- /dev/null
@@ -0,0 +1,78 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2014  Michael Tremer & Christian Schmidt                      #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 1.8.15
+
+THISAPP    = ipmitool-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_MD5 = 770797da74a72afa45dea2c6114880e6
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+md5 : $(subst %,%_MD5,$(objects))
+
+###############################################################################
+# Downloading, checking, md5sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_MD5,$(objects)) :
+       @$(MD5)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && ./configure --prefix=/usr \
+               --enable-file-security --disable-intf-free
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/make.sh b/make.sh
index d0498881558a0e5859150bb25e2a7fd4d0c799b8..c452057d2a291472d1f6ba1fc00ec7d44908793e 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -812,6 +812,9 @@ buildipfire() {
   ipfiremake tmux
   ipfiremake swconfig
   ipfiremake haproxy
+  ipfiremake ipmitool
+  ipfiremake freeipmi
+  ipfiremake OpenIPMI
 }
 
 buildinstaller() {