1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329
|
IPMIUTIL PROJECT TODO LIST:
Add subcommand to consolidate user functions
. enable, disable, list, set(priv/username/psw)
Add support for openssl-1.1.0 for fedora
. detect new vs. old, handle both
IPV6 for IPMI LAN on Windows:
Currently support IPV6 on Linux, but need to implement for Windows also
. implement IPV6 for Windows (#ifdef WIN32 case)
Test SuperMicro DIMM event logic (pending bad DIMM)
PARTIAL in ipmiutil-2.9.9, revised code implemented
Add OEM Lenovo sensor decoding
COMPLETE in ipmiutil-3.0.1
Add OEM Lenovo SEL decoding
PARTIAL in ipmiutil-3.0.1
Thread-safe changes for IPMI LAN:
Change ipmicmd.c/ipmilan.c to be thread-safe if accessing multiple nodes.
Currently it is only conditionally safe, if threads access the same node.
Will require adding a context struct param to the ipmi_cmd*() funcs.
May need to add new thread-safe functions to retain back-compatibility.
PARTIAL in ipmiutil-2.9.0, multiple nodes in sequence is fixed
. need to change to context structure for ipmilan
Add an option/variant of canonical output for CSV (delimiter = ',')
The current delimiter for -c is '|'
SPD decoding:
. handle DDR4 SPD format
. expose SPD decoding from file/buffer, not just FRU
c handle DDR3 SPD 1.0 format
PARTIAL in ipmiutil-2.9.1
Add additional IPMI 2.0 commands from addendum:
c Get/Set System Info
. Get/Set SEL UTC Offset (requested 4/22/13)
. Forwarded Command
PARTIAL in ipmiutil-2.8.1, adding Get/Set System Info functions
Add DCMI 1.5 commands for NetFn 0x2C to ipmiutil
. Get/Set DCMI Configuration Parameters (DCMI 1.5)
. Get/Set Thermal Limit (DCMI 1.5)
Add support for MAC OSX AppleBMC.kext driver
Not yet implemented, pending some documentation from Apple.
Resolve MS ipmidrv.sys WBEM access memory leak:
This bug has been reported to Microsoft in Oct 2012 as shown below.
The workaround is to use the Intel imbdrv.sys driver instead.
See the ipmiutil UserGuide section 5.1 for details.
https://sourceforge.net/p/ipmiutil/support-requests/11/
https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/ca4df181-7fd4-4912-83a0-5896b030e3ca/latest-version-of-microsoft-ipmi-driver-ipmidrvsys?forum=wdk
OPEN - no update/fix from Microsoft
SuperMicro Users:
. implement an OEM cmd to set user privilege level (needs research)
More automated testing
Started this in ipmiutil-2.6.6 with testipmi.sh, but it could be
more extensive and be tested on more types of IPMI firmware.
PARTIAL in ipmiutil-2.6.6 with testipmi.sh
Remove assert() calls from lanplus code
Need to improve error handling and remove all assert() calls from
the lib/lanplus/ code: lanplus.c lanplus_crypt.c lanplus_crypt_impl.c
This requires test cases for the assert instances.
PARTIAL in ipmiutil-2.4.0, removed 2 asserts from lanplus.c
PARTIAL in ipmiutil-2.7.0, removed 1 more assert from lanplus.c
PARTIAL in ipmiutil-2.8.8, more from lanplus_crypt.c/lanplus_crypt_impl.c
Add a function to send ctl-alt-del through SOL console
Although this is seldom used in a serial console environment, it
could be useful. To do this, the one-character escape sequence
would need to be changed to a 2 character escape sequence.
Also need a method to insert the key sequence in the console.
PARTIAL in ipmiutil-2.5.0 includes the 2-character escape sequence
and a send_break function.
------------------------------------------------------------------------------
IPMIUTIL COMPLETED TODO TASKS:
stdout/stderr debug messages mixed
. have a variable for stderr and if -x debug, set it to stdout.
. implemented in util/subs.c lprintf() based on log level
COMPLETE in ipmiutil-2.9.7
Add pkg-config support
COMPLETE in ipmiutil-2.9.5 (in configure.ac)
Add support for a MAC OSX client
It should work with minor compile-time adjustments.
We need a system running OSX on which to build and test this.
Changes to compile on MACOS submitted to SVN on 04/12/2013
Support for AppleBMC.kext not yet implemented, pending documentation.
COMPLETE in ipmiutil-2.9.1
Add snmptrap functionality to getevent -r example script
COMPLETE in ipmiutil-2.9.1
Add DCMI 1.1 commands for NetFn 0x2C to ipmiutil
(0xDC defines the body code)
The command codes under this NetFn are:
c Get DCMI Capabilities Info
c Get/Set Management Controller Identifier String
c Get/Set Asset Tag
c Get DCMI Sensor Info
c Get Temperature Readings
c Get Power Reading
c Get/Set Power Limit
The remainder DCMI specified commands are from the IPMI specification
IMPLEMENTED in ipmiutil-2.8.1
COMPLETE (power options tested) in ipmiutil-2.8.4
Perform retries on retries for some get/set lan parameters
COMPLETE in ipmiutil-2.8.1 by using set_max_kcs_loops()
Add an oem_hp.c module with decode_sensor_hp() to
interpret HP discrete sensors with analog readings
COMPLETE in ipmiutil-2.8.2
Add systemd scripts for ipmi_port, ipmiutil_evt, etc.
COMPLETE in ipmiutil-2.7.8, not default but installed in /usr/share/ipmiutil
ipmi_port.service, ipmiutil_evt.service,
ipmiutil_asy.service, ipmiutil_wdt.service
Add IPv6 support
There is at least one IPMI BMC that has added IPv6 support, so
it would be nice to include support for it in ipmiutil.
Need access to a BMC that supports IPv6 for testing, or
someone to help test it whose BMC supports IPv6.
COMPLETE in ipmiutil-2.7.8, with contribution from Rajaganesh87
Add an option to 'ipmiutil fru' that discovers every child MC FRU also,
like the isensor.c code does for fchild.
COMPLETE in ipmiutil-2.7.5 (ifru -e)
Pass event severities to syslog, instead of just writing them as 'info'.
COMPLETE in ipmiutil-2.7.5
Add OEM code for ekanalyzer
COMPLETE in ipmiutil-2.7.0
Add code for FRU multi-record area decoding and FRU PICMG records
COMPLETE in ipmiutil-2.7.0
Add OEM code for Sun
COMPLETE in ipmiutil-2.7.0
Add OEM code for Fujitsu
PARTIAL in ipmiutil-2.6.9 with iRMC S2 SEL decoding
COMPLETE in ipmiutil-2.7.0 with iRMC S2 LED routines
Add SHA256 and Cipher Suite 17 support
Current max Cipher Suite ID is 14, but IPMI 2.0 Errata 4 and DCMI 1.1
add these.
COMPLETE in ipmiutil-2.6.9
Add OEM code for fwum, hpm, and oem_kontron features.
COMPLETE in ipmiutil-2.6.9
Add more ATCA/picmg functionality.
Currently have std IPMI functions, plus fru and sensor and blue LED
capability for ATCA/picmg bladed systems.
Need to add some additional picmg-specific functionality, like:
properties - get PICMG properties
addrinfo - get address information
activate - activate a FRU
deactivate - deactivate a FRU
policy get - get the FRU activation policy
policy set - set the FRU activation policy
portstate get - get port state
portstate set - set port state
led prop - get led properties
led cap - get led color capabilities
led state get - get led state
led state set - set led state
power get - get power level info
power set - set power level
and firmware firewall functions
COMPLETE: added ipicmg.c and ifirewall.c in ipmiutil-2.6.5
Add older 1.5 SOL protocol capability
For ipmiutil sol with IPMI 1.5, the older (Intel-only) 1.5 SOL protocol
is implemented and will connect, but the 1.5 SOL data packets are not
right yet. This is in progress. Note that the standard IPMI 2.0 SOL
protocol is entirely separate and still works fine.
Lower priority right now. If you want to use this feature, email
ipmiutil-developers(at)lists.sourceforge.net
CANCELLED - Intel 1.5 SOL is too old to matter any more. It was
only supported on SE7501WV2 motherboards from <=2003.
Fix the API interface to /dev/ipmi0 on FreeBSD
This FreeBSD ipmi driver is different than Linux.
We have support for ipmiutil driverless mode on FreeBSD.
COMPLETE in ipmiutil-2.5.2, support ipmi driver and driverless w FreeBSD 7.x
Add a delimeted-output option for all utilities
Would make parsing the output in scripts easier.
08/25/08 added ':' delimiters to lan/serial config output in 2.2.0
PARTIAL in ipmiutil-2.2.0 - added 'ipmiutil config'
DONE in ipmiutil-2.4.1 for sensor and lan canonical output with -c
COMPLETE in ipmiutil-2.5.0 added -c to bmchealth, fruconfig
Add support for a DOS build
CANCELLED - use Linux boot media instead, DOS is not as good.
Add detection for Windows SOL when Command Prompt window is >25 rows.
DONE with AnsiTerm.cpp in ipmiutil-2.5.0
Build a bootable Linux CD with ipmiutil for use with other random OSs.
Note that with ipmiutil-1.7.5, any bootable Linux CD will do, since
the direct I/Os no longer require an IPMI driver.
We may still want to build and supply an example (like TRB or SLAX).
2/06/07 Built an initial SLAX CD as http://ipmiutil.sf.net/ipmiutil.iso.
This ISO is too big to remain posted on sourceforge.net, however.
Need documentation on how to build an ISO to finish this.
11/21/08 posted SLAX ISO as http://ipmiutil.sf.net/FILES/newgrab.iso
COMPLETE
Add Solaris support
Needed because configuring IPMI LAN and PEF with ipmitool is too
complicated.
COMPLETE in ipmiutil-2.3.0 for Solaris 10 bmc driver
Add output logging to ipmiutil sol
This is easy with stdio in Linux, but not possible in Windows without
adding a logging option in the code, since Windows uses the video
console buffer instead of stdio.
COMPLETE in ipmiutil-2.2.2
Add support for Microsoft Windows IPMI driver
Currently only support Intel Windows imbdrv.sys driver.
Requires adding WMI infrastructure.
COMPLETED 09/12/08 in ipmiutil-2.2.1 for 32-bit Win2003R2
Add support for remote soft reset via OpenIPMI driver
Currently 'ipmiutil reset -o -N' requires 'getevent -a' and the imb driver.
Requires adding async callback for OpenIPMI driver to getevent.c
COMPLETED 09/12/08 in ipmiutil-2.2.1
Add a function to save/restore BMC IPMI settings
This would combine lan, serial, and fru parameters in a key-value-pair
file that could be restored automatically.
COMPLETED 08/25/08 in ipmiutil-2.2.0
Eliminate duplication in binaries
Build only one Meta-command for ipmiutil, with static libs if possible.
Existing other commands would be sym-links or shortcuts, e.g.
showsel [args] => ipmiutil sel [args]
COMPLETED 03/31/08 in ipmiutil-2.1.0 for Linux
Handle Windows command prompt terminal emulation for SOL
The Windows isolconsole.exe works, but the terminal emulation logic is
not finished. It works ok to Linux command-line and vi, but looks
bad for BIOS/POST. This is in progress. There are other (non-open)
tools available for Windows (e.g. Intel dpccli) in the interim.
The Linux isolconsole works fine, since the terminal emulation is
handled by the Linux termio.
COMPLETE in ipmiutil-2.0.0, no known issues
Do an OS Agent for hwreset to do BMC LAN remote soft-shutdown.
Perhaps using an xinetd socket to not have a service always resident,
or sending a kill signal to init from the driver level would work.
i.e. kill(1,SIGINT); /*SIGINT==2*/
COMPLETE in ipmiutil-2.0.0 with hwreset & "getevent -a" for IMB driver.
Do a configure option with/without lanplus support, since this adds so
much size to the binary object code.
COMPLETE in ipmiutil-1.8.2
Include IPMI v2.0 RMCP+ LAN protocol also.
(IPMI 2.0 commands were previously supported, however.)
COMPLETE in ipmiutil-1.8.0
Add more boot parameters to hwreset, for things like:
. hwreset: Set which device to boot from (CD, Disk, LAN/PXE, etc.)
COMPLETE in ipmiutil-1.7.0
. Forcing the boot to continue (i.e. no POST pause) - BIOS setting
REJECTED - too platform specific for this project, see platform vendor
. Set which OS/Software version/target to be downloaded for PXE (?)
REJECTED - too platform specific for this project, see platform vendor
Make a real-time sensor monitoring tool to monitor a specified SDR for
sensor readings every second.
. partially complete with sensor -i option
. sensor 1.39 has -L option for looping
COMPLETE in ipmiutil-1.7.3 (sensor 1.39)
Add encrypt/decrypt options to pefconfig & tmconfig, using RSA or DSA public
keys, perhaps with the gnupg.org library.
There is some concern about increasing the size of the utilities for
encryption, when this functionality can be scripted instead.
POSTPONED - perhaps someone else would like to help?
COMPLETE - using -E to get password from IPMI_PASSWORD environment
variable works, and does not put the password in the
command line or script.
ADDED -Y option to allow user to enter password at prompt w ipmiutil-1.9.0
Improve BMC LAN functionality and diagnosis with some custom IPMI LAN logic.
The built-in IPMI LAN also makes the Windows version able to use it.
COMPLETE in ipmiutil-1.7.0 with ipmilan.c
pefconfig: Fix fSOL20 logic to work on supported platforms, currently
returns completion code 0x80.
COMPLETE in ipmiutil-1.6.5
Update hpiutil source for 1.1.9 changes
COMPLETE in ipmiutil-1.6.3
Add pre-built Windows *.exe files to the ipmiutil.sf.net home page.
COMPLETE in ipmiutil-1.6.3
sensor: Add an option to display timestamp for this run. Write it on each SDR line if -w is also specified.
COMPLETE in ipmiutil-1.5.6
fruconfig: Get FRU data from all FRU devices, not just baseboard.
COMPLETE in ipmiutil-1.5.6
Add User settings, like tmconfig has, to pefconfig
- added more Get User Access messages to pefconfig v1.30 in ipmiutil 1.4.9
- added -u option with ipmiutil 1.5.3
COMPLETE
|