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
Openipmi-developer@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openipmi-developer

Reply via email to