Note: There has been one GUI change that will affect people who have
used the GUI previously. The GUI created the .openipmi.startup and
.openipmi.history files with the wrong permissions. The GUI will now
refuse to run if those files are group/world readable or writable. Just
change the permissions and the problem will go away. It will now create
them with proper permissions.
This release has three major functional changes:
* You can now edit and write FRU inventory data
symbolically.
Yes, in the GUI, you can pull up some FRU data,
right-click on it, change it, and write the
changes out. You can add entries to FRU arrays
by right-clicking on the array to append, or on
items to insert before. You can delete entries
from FRU arrays by right clicking on them and
selecting "delete". It's pretty cool, and I
worked way too much on it.
* I added quite a bit of support for ATCA ECN002,
including monitoring all the IP addresses of an
ATCA shelf, safe writing of FRU shelf data, power
feed controls, and full support of all the FRU
inventory tables.
* Scroll wheels on mice now work in most of the GUI.
Hurray!
As well, I have tested this fairly extensively and shook out a few bugs
in the process.
Also, if you have your own custom OEM FRU multirecords, I added
substantial support for making it easy to define those records.
Note that multi-record data and the raw data are not kept in sync; if
you change on the other will not automatically update. If you want to
see your changes, there is now a "refresh" button to re-interpret the
changes.
The main thing left from ATCA ECN002 is handling of the fans and fan
overrides, but I'm not sure exactly what to do about that.
Here's the changelog:
2006-11-16 Corey Minyard <[EMAIL PROTECTED]>
* lib/entity.c: ipmi_entity_fetch_frus_cb() violated the rule of
returning an error and still calling the done handler (and it
didn't check the done handler for NULL). Fix this problem.
* swig/python/openipmigui/_saveprefs.py: Make sure that the
startup file is only accessible by the user and refuse to start up
if it is world orgroup accessible.
* swig/python/openipmigui/_gui_cmdwin.py: Ditto for the history file.
* configure.in: Move to version 2.0.9
2006-11-15 Corey Minyard <[EMAIL PROTECTED]>
* lib/domain: Fix a problem with active/standby connections; now
force command rerouting when a connection goes inactive, as well
as when a connection goes active.
* lib/domain.c: Modified command rerouting a little more. The
send sequences are now per-connection instead of per-domain and
the routing is only done when a connection goes inactive or down.
This is more reliable and will make multiple active connections
work better.
2006-11-14 Corey Minyard <[EMAIL PROTECTED]>
* swig/python/openipmigui/gui.py: Rework the mouse wheel stuff so
it works on older version of tk.
* swig/python/openipmigui/gui_list.py: ditto
* swig/python/openipmigui/gui_treelist.py: ditto
* Makefile.am, swig/python/Makefile.am: "make rungui" wouldn't
work on systems that could dynamically choose the glib library.
Add an LD_LIBRARY_PATH back in for that directory only.
* lib/fru.c, include/OpenIPMI/internal/ipmi_fru.h: Exported a
function to reference the FRU structure without claiming the lock.
* lib/normal_fru.c: Removed a deadlock where a FRU was referenced
while the lock was held.
* lib/fru.c: If the FRU fetch start fails, return an error.
* lib/mc.c: Fixed a deadlock in certain error cases.
* lib/oem_atca.c: Make sure the entity is gotten before creating
the FRU controls with it.
* cmdlang/os_debug.c: Can't use ipmi_mem_alloc any more to
allocate a lock, the locks are claimed too early.
* lib/ipmi_lan.c: Fixed a missing shutdown check that could cause
a race at shutdown and a possible segv.
* lib/oem_atca.c: Fixed a possible memory leak in the LEDs if an
ATCA domain is shut down while it is coming up.
* lib/sdr.c: Fix a problem with the fetch retry count being reset
to zero sometimes on a restart.
* lib/sdr.c, lib/mc.c: Added a way to stop the SDR timer
operations during cleanup of an MC.
2006-11-13 Corey Minyard <[EMAIL PROTECTED]>
* lib/control.c, lib/sensor.c: Change the shutdown order of OEM
controls so the OEM data is freed last, after the control is
removed from the entity.
* lib/control.c, lib/sensor.c: Don't fail freeing an OEM control
or sensor if the index is reused. The control is still valid to
free.
* lib/oem_atca.c: Free all the FRUs for an entity when the entity
is freed at domain shutdown.
* lib/sdr.c: Fix a race where if the SDR data is asked for the
first time and then again immediately after, the DB will be
fetched twice and the second time will overwrite the first data.
Only fetch DB data if the SDR fetch state is idle. Also, when
fetching from the DB, free the SDR data if it is allocated.
* lib/control.c, lib/sensor.c: Modified the addition of
nonstandard sensor and controls so that the next unused number is
picked instead of having to supply the number.
* lib/oem_atca.c: Modified the controls for the IPMCs to let the
control code pick the control number. This handles a problem
controls not being handled correctly for ATCA blades with multiple
FRUs.
2006-11-10 Corey Minyard <[EMAIL PROTECTED]>
* lib/domain.c: Don't set a connection inactive if it goes down,
let the active-reporting interface handle that. Otherwise systems
without inactive links will report inactive if the connection goes
down.
2006-11-09 Corey Minyard <[EMAIL PROTECTED]>
* swig/python/openipmigui/gui_list.py: Added a way to set the
style of a column entry.
* swig/python/openipmigui/gui.py: Added a "watch list" to the GUI.
You can put controls, entities, and sensors you want to watch into
this list and monitor them.
* swig/python/openipmigui/_sensor.py: Add support for the watch list.
* swig/python/openipmigui/_control.py: ditto
* swig/python/openipmigui/_entity.py: ditto
2006-11-08 Corey Minyard <[EMAIL PROTECTED]>
* Makefile.am, configure.in: Rework the setting up of the library
environment for Perl and Python. The code would, by default, pick
up the libraries from the installed directory instead of the local
directories. For lack of a better option, the modifications
LD_PRELOAD the libraries that are required. Also make the setting
of the libs required by swig cleaner and put it in a common place.
* swig/perl/Makefile.am: ditto
* swig/python/Makefile.am: ditto
* swig/python/openipmigui/Makefile.am: ditto
2006-11-07 Corey Minyard <[EMAIL PROTECTED]>
* swig/python/openipmigui/_fru.py: Added a refresh button to
re-read the whole FRU contents. This allows you to change
multi-record data and see what happens.
* swig/python/openipmigui/gui.py: Got wheel mouse scrolling working.
* swig/python/openipmigui/gui_list.py: ditto
* swig/python/openipmigui/gui_treelist.py: ditto
* swig/python/openipmigui/gui_setdialog.py: Added an option to
allow using a Text widget for multi-line input (for multi-record
data).
* swig/python/openipmigui/_fru.py: Use the long option to
gui_setdialog for binary or unicode data.
* include/OpenIPMI/ipmi_fru.c, lib/fru.c, include/OpenIPMI/ipmi_fru.h:
Added infrastructure for getting enumeration values from FRU nodes.
* lib/normal_fru.c: Added enumeration support for multirecord FRU
nodes.
* lib/oem_atca_fru.c: Added enumeration stuff for the few items
that need it.
* swig/OpenIPMI.i: Added the enumeration interface.
* swig/python/openipmigui/_fru.py: Added support for the new FRU
enumerations.
2006-11-06 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/internal/ipmi_fru.h, lib/normal_fru.c: Redid
the adjustment of offsets and lengths to work properly with nested
arrays.
* swig/python/openipmigui/gui_cmdwin.py: Fixed some problems
dealing with backspace and delete.
2006-11-05 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/internal/ipmi_fru.h, lib/normal_fru.c: Reworked
the way writing to arrays is done so it is cleaner and allows
insertion at arbitrary points and elements that are other arrays
or basic items.
* include/OpenIPMI/ipmi_fru.h: Worked on docs for the changes.
* swig/python/openipmigui/_fru.py, lib/oem_atca_fru.c: Adjusted
for the previous changes.
* swig/OpenIPMI.i: Make sure the string on an empty binary array
is terminated.
2006-11-03 Corey Minyard <[EMAIL PROTECTED]>
* lib/oem_atca_fru.c: Massive rewrite to make this table-driven and
add setting capability.
* swig/python/openipmigui/gui_treelist.py: Add the ability to insert
items before a list element.
* swig/python/openipmigui/_fru.py: Add the ability to insert items
before an array element. Fix boolean handling.
* lib/normal_fru.c, include/OpenIPMI/internal/ipmi_fru.h: Move the
FRU decoding from the ATCA code into here and make it generic.
Convert the standard FRU multirecord handling to the new code.
* lib/oem_atca_fru.c: Convert multirecord handling over to the
generic version.
* configure.in: Move to version 2.0.9-rc1
2006-11-01 Corey Minyard <[EMAIL PROTECTED]>
* lib/entity.c: Fixed a problem with scanning entity association
records.
* include/OpenIPMI/ipmi_fru.h, lib/normal_fru.c: Added
multi-record helper functions for modifying multirecord data.
* lib/normal_fru.c: Fixed some problems dealing with multirecord
lengths.
* lib/oem_atca_fru.c: Added writing FRU data for the address
table.
* swig/python/openipmigui/_fru.py: Adjustment to improve the way
this works.
2006-10-31 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/ipmi_fru.h, lib/normal_fru.c: Added some better
handling of multirecord modification.
* lib/fru.c: Warn and recover on zero-length FRU writes.
* lib/normal_fru.c: Added better setup handling for new FRU areas.
* lib/normal_fru.c: Added FRU area data to the FRU information.
* swig/python/openipmigui/_fru.py: Added support for re-displaying
the FRU data if FRU area offset data changes.
* swig/python/openipmigui/gui_treelist.py: Added support for
clearing all the data in the list.
2006-10-30 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/ipmi_fru.h, include/OpenIPMI/internal/ipmi_fru.h:
Added functions for getting a FRU array's subtype.
* lib/fru.c: ditto
* swig/OpenIPMI.i: ditto
* swig/OpenIPMI.i: Modify fetching a subtype to return the array
length (or -1 for non-arrays) in the value of get_field() on sub
nodes.
* lib/normal_fru.c: Added subtype handling for custom string
arrays.
* lib/normal_fru.c: Fixed reporting of arrays in custom strings so
that it is possible to tell an empty array from a non-existent
field.
* swig/python/openipmigui/gui_treelist.py: Added the ability to
remove items from the tree and added better cleanup facilities.
* swig/python/openipmigui/_fru.py: Added the ability to remove
array items.
2006-10-28 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/ipmi_fru.h, include/OpenIPMI/internal/ipmi_fru.h:
Added basic function interfaces for setting values in FRU nodes.
* lib/fru.c: Added infrastructure for setting FRU nodes.
* lib/normal_fru.c: Added support for setting the basic FRU item
through the FRU nodes.
* lib/oem_atca.c, lib/oem_atca_fru.c: Modified for new multirecord
handling for setting, though no set support yet.
* swig/OpenIPMI.i: Added support for the new FRU node set field
and settable functions.
* swig/python/openipmigui/_fru.py: Added support for setting FRU
items.
2006-10-27 Corey Minyard <[EMAIL PROTECTED]>
* lib/oem_atca.c, doc/IPMI.ltx: Created a power feed control for
ATCA shelfs.
2006-10-26 Corey Minyard <[EMAIL PROTECTED]>
* lib/entity.c, include/OpenIPMI/internal/ipmi_entity.h: Added a
function to refetch entity FRU information and report when it is
done.
* lib/entity.c, include/OpenIPMI/ipmiif.h.in: Added a way to know
when an entity that is reported present has all its data (FRU
information) fetched.
* cmdlang/cmd_entity.c: Added reporting of entities being fully
up.
2006-10-25 Corey Minyard <[EMAIL PROTECTED]>
* lib/oem_atca_fru.c: Added all the current ATCA-defined FRU
information multirecord descriptors.
* cmdlang/out_fru.c: Only parse the given number of array
elements, don't rely an an error return to finish the array.
* lib/entity.c: Fix a small problem where there was a remote
chance that a FRU fetch would occur before the entity was reported
present.
* lib/normal_fru.c: Fix a memory leak with multirecords that don't
have decoders.
* swig/python/openipmigui/_domain.py: Added a way to dump
arbitrary FRU info in a domain.
* swig/python/openipmigui/gui_treelist.py: Added a way to expand
the entire tree.
* swig/python/openipmigui/_fru.py: Expand the entire tree when
displaying FRU information.
2006-10-24 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/ipmi_domain.h, lib/fru.c: More work on the
special FRU handling.
* lanserv/emu.c, lanserv/emu.h, lanserv/lanserv_emu.c: Added
support for ATCA FRU locking.
* lib/oem_atca.c: Added FRU data handling for reading/writing FRU
inventory device 254 on the shelf manager.
* swig/python/openipmigui/_fru.py: Make sure FRU data gets freed.
2006-10-23 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/ipmi_bits.h, lib/strings.c: Add some new sensor
types from IPMI 2.0.
* lib/oem_atca.c: Added support for detecting version changes with
a version change sensor event.
* include/OpenIPMI/ipmi_domain.h, lib/domain.c, lib/fru.c: Added
infrastructure for handling special FRU characteristics for a
domain.
2006-10-22 Corey Minyard <[EMAIL PROTECTED]>
* lib/oem_atca_conn.c: Fixed a few glitches with the new ATCA
auxiliary connection facility.
* doc/IPMI.ltx: Added info on the new ATCA capabilities.
2006-10-21 Corey Minyard <[EMAIL PROTECTED]>
* lanserv/emu.c, lanserv/emu.h, lanserv/lanserv_emu.c: Added
support for the PICMG get IP addresses and get FRU control
capabilities commands.
* lib/domain.c: Interpret ENOENT from a low-level connection
change to mean the connection no longer exists.
* lib/oem_atca.c: Free the new FRU control capabilities controls.
* lib/oem_atca_conn.c: Clean up the ATCA IP address pinging stuff
to work properly.
* sample/rmcp_ping.c: Fix a problem with specifying the port.
* swig/python/openipmigui/gui.py: Add a port removal function.
* swig/python/openipmigui/_domain.py: Pass some more parameters
to the port up function.
* swig/python/openipmigui/_conn.py: Allow dynamic changes to the
ports.
2006-10-20 Corey Minyard <[EMAIL PROTECTED]>
* include/OpenIPMI/ipmiif.h.in, lib/domain.c: Added a function to
get port information.
* include/OpenIPMI/ipmi_conn.h, lib/ipmi_lan.c: ditto
* cmdlang/cmd_conn.c, man/ipmi_cmdlang.7: Added support for the
new port information.
* swig/OpenIPMI.i: ditto
* swig/python/openipmi/_conn.py: ditto
* include/OpenIPMI/ipmi_lan.h, lib/ipmi_lan.c: Exposed some
internals for use by the OEM ATCA handler dealing with RMCP ping
sockets.
* include/OpenIPMI/ipmi_picmg.h: Added the new PICMG messages from
the new ATCA spec.
* lib/oem_atca_conn.c: Added support for ATCA RMCP ping sockets so
that the auxiliary IP connections on ATCA chassis can be
monitored.
2006-10-16 Corey Minyard <[EMAIL PROTECTED]>
* doc/IPMI.ltx: Added some docs on redundant connections and on
ATCA.
* man/openipmicmd.1: Added information about the proper handling
of response messages.
* swig/python/openipmigui/gui.py: Fix a problem where sensor
settings would get greyed
2006-10-12 Philipp Hahn
* man/ipmi_cmdlang.7: Various cleanups
* man/openipmi_conparms.7: ditto
* man/openipmigui.1: ditto
* man/openipmish.1 ditto
* man/rmcp_ping.1 ditto
2006-10-13 Corey Minyard <[EMAIL PROTECTED]>
* swig/python/openipmigui/_mc_lanparm.py: Fix a problem in a
pulldown.
2006-10-11 Corey Minyard <[EMAIL PROTECTED]>
* swig/python/openipmigui/_misc.py: Added an int array to hex
string converter.
* swig/python/gui_cmdwin.py: Print command output in hex.
* swig/python/_sel.py: Print event data in hex.
2006-10-06 Corey Minyard <[EMAIL PROTECTED]>
* lib/ipmi_smi.c: Fix the IPMB address setting code to only set
the channels that are reported to it.
* lib/oem_atca_conn.c: Properly initialize the ipmb array that is
passed to the other code.
2006-10-05 Corey Minyard <[EMAIL PROTECTED]>
* sample/ipmi_serial_bmc_emu.c, sample/Makefile.am: Added a serial
BMC emulator.
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Openipmi-developer mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openipmi-developer