2004-12-29 Corey Minyard <cminyard@mvista.com> 

	* ui/ui.c: Added printing of if the sensor/control should be
	ignored if the entity is not present.

	* lib/control.c: Default nonstandard controls to be ignored if the
	entity is not present.

	* lib/sensor.c: Default nonstandard sensors to be ignored if the
	entity is not present.

	* lib/entity.c: Use controls for presence detection, and clean
	up the presence code to properly handle presence sensor removal.
	Also modify the presence detection to be 100% compliant with
	the spec, including messaging FRU devices as the last step.
	
	* lib/chassis.c: Remove the dummy presence sensor since the
	controls can be used for presence now.

	* lib/oem_motorola_mxp.c, lib/oem_atca.c: Cleanup up all the
	ignore if no entity setup for all the sensors and controls.

	* configure.in: Move to version 1.3.16.

2004-12-28 Corey Minyard <cminyard@mvista.com> 

	* ui/ui.c: Changes the sensor event handlers to use the add
	versions instead of the old set versions.

	* lib/entity.c: Fixed presence detection to not use sensors for
	entity presence that are there if the entity is not present.

2004-12-14 Corey Minyard <cminyard@mvista.com> 

	* lib/ipmi_smi.c: Return the entry when registering commands
	to watch.

2004-12-13 Corey Minyard <cminyard@mvista.com> 

	* lib/sel.c: Modify the SEL fetching to only fetch records at
	the end of the SEL unless the SEL has been erased.  This
	should speed things up a lot.

2004-12-07 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmiif.h.in: Added support for a managed
	  hot-swap call so the user can know if the entities hot-swap
	  states can be managed.
	* include/OpenIPMI/ipmi_entity.h: ditto
	* lib/entity.c: ditto
	* lib/oem_atca.c: ditto

	* configure.in: Move to version 1.3.14.

2004-12-03 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_atca.c: Reworked the fixups for broken entity ids to
	be more general.

2004-12-01 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Ignore sensors for presence if they use the
	generic reading type codes.

	* lib/chassis.c: Added a dummy presence sensor for the chassis
	entity so it will be reported as present.

2004-11-09 Corey Minyard <cminyard@mvista.com> 

	* OpenIPMI.spec.in: Clean up the spec file.

	* doc/OpenIPMI.texi: Add stuff to make it go into the info directory.

	* configure.in: Move to version 1.3.13

2004-11-09 Andrew Cress <andrew.r.cress@intel.com>

	* lib/oem_intel.c: Minor fixups for the alarm control.

2004-11-09 Kevin Gao <kevin.gao@intel.com>

	* sample/ipmicmd.c: Don't segv when given bad parms.
	
2004-10-22 Corey Minyard <cminyard@mvista.com> 

	* lib/ipmi_lan.c: Fix problems with connection failure during
	startup of the connection.  This fixes problems with the
	connections getting stuck and never coming up.

	* unix/posix_os_hnd.c: Fixed a problem with the return value of
	getting the random data.
	* unix/posix_thread_os_hnd.c: ditto
	* ui/ui_os.c: ditto

2004-10-18 Corey Minyard <cminyard@mvista.com> 

	* oem_intel.c: Move the alarm control to the 0.20 MC, handle
	automatic scanning of the 0.c0 MC when the system power is
	applied.

	* configure.in: Move to version 1.3.12

2004-10-07 Corey Minyard <cminyard@mvista.com> 

	* lib/strings.c: backport some fixes from 1.4.
	* lib/sdrs.c: ditto
	* lib/domain.c: ditto
	* lib/event.c: ditto
	* lib/sel.c: ditto
	* lib/pef.c: ditto
	* lib/lanparm.c: ditto
	* lib/ipmi_utils.c: ditto

2004-09-30 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.3.11

2004-09-25 Chetan Hiremath <chetan.hiremath@intel.com> 

	* lib/ipmi_smi.c: Use the proper address on received commands and
	async events.

2004-09-09 Corey Minyard <cminyard@mvista.com> 

	* lib/mc.c: Return the proper callback data for the sel_reread
	function.

2004-09-02 Corey Minyard <cminyard@mvista.com> 

	* ui/ui.c: Add a little more information about MCs.

	* sample/sample3.c, sample/Makefile.am: Added another sample file.

	* lib/oem_atca.c: Modify the address control numbers to just be
	assigned sequentially; you cannot use the IPMB address since
	multiple functions may be at the same IPMB.

	* configure.in: Move to version 1.3.10

	* utils/ipmi_mem_alloc.c: Fixed a bug handling the head and
	tail elements of the debug malloc list.

        * lib/ipmi_lan.c: Fixed a problem where the wrong LUN was being
        looked at in LAN reponses.

2004-09-01 Corey Minyard <cminyard@mvista.com> 

	* lib/chassis.c: Fixed a problem where the wrong error was being
	passed to a callback.

	* lib/opq.c: Initialize the opq data.

2004-08-20 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_intel.c: Fixed some problems with the alarm panel,
	modified to add the controls and entities at the right time and
	to handle removal of the MC properly.

2004-08-19 Andrew Cress <andrew.r.cress@intel.com>

	* lib/oem_intel.c: Handle different bus ids for alarm panel.

2004-08-11 Erwan Velu <erwan@mandrakesoft.com>

	* lanserv/lanserv_config.c: Print the line number of errors.

2004-07-13 Corey Minyard <cminyard@mvista.com> 

	* Makefile.am, configure.in, OpenIPMI.spec.in: Added support
	for building RPMs for OpenIPMI.

	* bootstrap: Added a helper shell script for starting up a
	raw CVS checkout.

	* lib/entity.c: Fix a problem with entity presence detection,
	entities were not being detected not-present in some cases
	when they went from non-present to present.

2004-06-29 Corey Minyard <cminyard@mvista.com> 

	* unix/posix_thread_os_handler.c: Fixed a problem in write_unlock
	with a bogus error check.

2004-06-28 Corey Minyard <cminyard@mvista.com> 

	* lib/domain.c: Fixed a theoretical race condition in fetching
	the system SELs.
	
2004-06-24 Corey Minyard <cminyard@mvista.com> 

	* sample/sample.c: Added event handling for sensors to the sample.

2004-06-23 Michael McMaster <Michael_McMaster@Xiotech.com>

	* lib/mc.c: Initialize info->err in ipmi_mc_reread_sel().

2004-06-22 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_atca.c: Fix a race with deleting an MC.

2004-06-18 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_atca.c: Add setting the entity id string into the entity
	fixup callback.

	* configure.in: Move to version 1.3.9.

2004-06-17 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_atca.c: Added a control for getting the address
	information of an ATCA FRU.

	* lib/entity.c: Check for null entities when scanning SDRs.

2004-06-03 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.3.8.

2004-05-21 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Add a callback for fetching FRU information even
	if the FRU information is bad.

2004-05-17 Corey Minyard <cminyard@mvista.com> 

	* lib/posix_os_hnd.c, lib/posix_threaded_os_hnd.c: Fix the os
	handlers to call posix_vlog() properly.

2004-05-14 Louis Zhuang  <louis.zhuang@linux.intel.com>

	* lib/oem_intel.c: Added support for the alarm panel on an Intel
	server box.

2004-05-12 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.3.7

2004-04-30 Corey Minyard <cminyard@mvista.com> 

	* lib/sel.c, include/OpenIPMI/ipmi_sel.c: Added a way to get the
	number of entries and free bytes in the SEL.
	* lib/mc.c, include/OpenIPMI/ipmi_mc.c: ditto

2004-04-29 Corey Minyard <cminyard@mvista.com> 

	* lib/sel.c: Fixed a bug in the sel get where the info allocated
	can go away before the operation returns, but the info is used
	after the operation returns.

	* lib/sensor.c: Fix the hysteresis setting to send a message that
	is the right size.

2004-04-22 Corey Minyard <cminyard@mvista.com> 

	* lib/domain.c: Fix a connection problem where connection ups were
	being reported during the connection process.

	* configure.in: Move to version 1.3.6

	* ui/ui.c, ui/basic_ui.c: Add support for multiple domain
	connections.

2004-04-21 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_atca.c: Added another OEM handler.

	* lib/ipmi_lan.c: Remove an extract free_timer for LAN messages
	that get send errors.

	* lib/ipmi_lan.c: Make sure the dev id and such goes on the right
	channels when a connection is coming up.

2004-04-15 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_intel.c: More work on getting the various Intel servers
	supported better.

	* include/OpenIPMI/ipmiif.h.in: Modified the hot-swap state
	machine slightly to support the ability to move to activation
	requested state from inactive state.

	* include/OpenIPMI/ipmi_entity.h, lib/entity.c: Added the calls
	for ipmi_entity_set_activation_requested() to the hot-swap
	variables.  The normal state machine will not support it.

	* lib/oem_atca.c: Added support for setting the FRU activation
	policy with ipmi_entity_set_activation_requested().

	* configure.in: Move to version 1.3.5

	* include/OpenIPMI/ipmi_mc.h, lib/mc.c: Added callbacks for
	knowing when the MC has finished reading its SDRs and reading the
	SEL for the first time.

2004-04-14 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Scan MCs from MCDLRs even if the information is
	not used for anything else.

	* doc/OpenIPMI.texi: Add information about callbacks.

	* lib/oem_intel.c, lib/ipmi.c, lib/Makefile.am: Added an Intel
	server-specific file for handling special things about Intel's
	servers.

	* configure.in: Move to version 1.3.4.
	
2004-04-13 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Prefer to keep the MCDLR information for an entity
	that has FRU information, and don't try any FRU detection work if
	the MCDLR has FRU turned off.

	* lib/oem_atca.c: Turn off setting the event reciever for the ATCA
	chassis (for now), since it seems to cause all kinds of bad things
	to happen.

	* lib/entity.c, lib/sensor.c: Some minor changes to entity
	presence detection.

2004-04-12 Corey Minyard <cminyard@mvista.com> 

	* lib/control.c, lib/sensor.c, lib/entity.c: Reworked the internal
	naming of these to make them consistent.

	* lib/domain.c: Fixed a nasty bug about MC deletion, basically
	don't delete MCs from the domain list while processing, because
	they can be the "next" item in the list and corrupt the list
	traversal.  Add a delayed delete operation.

	* lib/domain.c: Do the OEM startup check after fetching the MC
	information for the connection.

	* lib/oem_atca.c: Fix a bunch of problems, add hacks for broken
	hardware.

	* lib/sensor.c: Destroy the handler list of a sensor on a
	duplicate sensor entry.

	* include/OpenIPMI/ipmi_conn.h: Added hacks to some of the
	interfaces to support wierd things.
	* lib/domain.c: ditto
	* lib/ipmi_lan.c: ditto
	* lib/ipmi_smi.c: ditto
	* lib/oem_atca.c: ditto
	* lib/oem_force_conn.c: ditto
	* lib/oem_motorola_mxp.c: ditto
	* lib/oem_motorola_mxp_intf.c: ditto

	* lib/domain.c: Added sending message straight to an interface if
	it matches the address of an interface.

	* lib/ipmi_lan.c: Added support for a wierd hack where the first
	IPMI address in a LAN message is 0x20, and the other one is the
	internal address.

	* lib/oem_atca_conn.c, lib/oem_atca.c: Added some hacks for the
	current bugs in the Intel ATCA box.

	* lib/oem_atca.c: Reworked the handling of MCs and entity addition
	to happen after the user is informed of the domain.

	* include/OpenIPMI/ipmi_domain.h, lib/domain.c: Added a way for OEM
	code to call the MC scan done handler.

	* lib/oem_atca.c: Fixed some SEL handling and report MC scan done
	when it is done.

	* lib/oem_atca.c: Added hacks for broken SDRs.

	* configure.in: Move to version 1.3.3.
	
2004-04-09 Corey Minyard <cminyard@mvista.com> 

	* lanserv/emu.c, lanserv/emu.h, lanserv/emu_cmd.c: Added
	capabilities to disable, enable, and remove MCs, also added a
	sleep command.

	* lanserv/lanserv_emu.c: Added support for the sleep command.

2004-04-08 Corey Minyard <cminyard@mvista.com> 

	* lib/ipmi_smi.c, lib/ipmi_lan.c, lib/domain.c: Remove the broken
	broadcast handling from the domain code and put it into the
	lower-level code, so the lower level code knows how to time it
	better.

	* lib/domain.c: Add a scan of IPMB 0x20 as the first thing.

	* lib/domain.c: Destroy locks last in a domain.

	* lib/mc.c, lib/entity.c, include/OpenIPMI/ipmi_mc.h: Rework the
	active_handlers dependency between entitys and MCs by using a
	refcount instead of seeing if something is in the active handlers
	list.  Using the list didn't work because external (user) entities
	in the list would keep the MC from being destroyed.

	* lib/oem_atca.c: Added a check_hot_swap_state handler.  Fixed
	some problems with getting the hot-swap state.

	* lib/domain.c, include/OpenIPMI/ipmi_domain.h: Added a callback
	to be called when a domain starts shutting down.

	* lanserv/atca.emu: Added a new board.

	* lanserv/emu.c: Fixed problems with event timestamps.

	* lib/domain.c, lib/entity.c, lib/mc.c, lib/oem_atca.c: Fixed a
	host of problems with shutdown order.  It still needs some work
	because of the backwards dependency from entities to MCs created
	by the requirement for active MCs to contribute to entity
	presence.

	* lib/oem_atca.c: Create the entities for the items in the shelf
	address table at startup and keep them around.

2004-04-07 Corey Minyard <cminyard@mvista.com> 

	* ui/ui.c: Added an MC active callback to the UI.

	* configure.in: Move to version 1.3.2.

	* lib/oem_motorola_mxp.c: Added a slot GA sensor to the AMC.

2004-04-02 Corey Minyard <cminyard@mvista.com> 

	* lib/sensor.c, lib/control.c: Make sure that calls that send
	messages cannot be done on destroyed sensors.

2004-04-02 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c, lib/sensor.c, lib/control.c: Fixed a rather nasty
	race condition.  Sensors and control may go away after the MC goes
	away underneath them if the sensor or control has an operation
	pending.  The entity routine to remove the sensor and control
	calls ipmi_xxx_convert_to_id(), which requires the MC to exist.
	These were converted to use the pointer itself.

2004-04-02 Corey Minyard <cminyard@mvista.com> 

	* lanserv/emu.c, lanserv/emu_cmd.c, lanserv/emu.h: Reworked LED
	support to better handle ATCA.  Added hot-swap support.

	* lanserv/README.emulator: Added.

	* lanserv/atca.emu: Added.

	* lib/oem_atca.c: Worked on hot-swap support.

	* configure.in: Move to version 1.3.1.

	* doc/OpenIPMI.texi: Added some docs on ATCA.

	* lib/entity.c: Added a check for duplicate FRU entries in the SDR
	DLRs, in case there is one.

	* lib/mc.c: Fixed connection up info to be freed for MCs that
	never go active.

	* lib/entity.c, include/OpenIPMI/ipmi_entity.c: Added support for
	checking the current hot-swap state (as in an audit).
	
	* include/OpenIPMI/ipmiif.h.in: Added functions for the above
	call.

	* lib/domain.c: Fix the ordering of OEM handling and reporting
	things so the MC is ready for commands at that time.

	* lib/entity.c: Add checking of hot-swap state along with
	presence.

	* lib/oem_motorola_mxp.c: Added an event for the power control.

	* lib/control.c, include/OpenIPMI/ipmi_control.h: Added a way to
	do noseq callbacks to controls.

2004-04-01 Corey Minyard <cminyard@mvista.com> 

	* lanserv/emu.c, lanserv/emu_cmd.c, lanserv/emu.h: Added a start
	at ATCA support.

	* lanserv/atca.emu: Emulator file for ATCA support started.

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h: Added support for watching
	when an MC goes active or inactive.

	* lib/entity.c: For entities with FRU data, use the fru device
	(whether the MC is active or not)) to know if the entity is
	present.

	* include/OpenIPMI/ipmi_msgbits.h: Add some netfns for the group
	extensions.

	* lanserv/ipmi_checksum.c, lanserv/Makefile.am: Added a small
	program for calculating checksums, useful when working with
	emulator files and FRU info.

	* lib/domain.c: Moved the OEM domain info destroyer callback to
	the end of the domain destruction so that the OEM data is
	available through the destructino process.

	* lib/mc.c, lib/domain.c: Newly created MCs come up inactive by
	default and are set active.

	* lib/oem_atca.c: Lots of little bug fixes, finally getting to
	test it.

	* ui/ui.c: Added multi-record dumping for FRU info.

	* ui/ui.c: Added support for settings-based lights.

	* lib/entity.c: A rework of the entity handling so that entities
	cannot be destroyed while callback handlers are using them.

	* lanserv/emu_cmd.c, lanserv/emu.h: Made command reading halt
	on the first error.

2004-03-31 Corey Minyard <cminyard@mvista.com> 

	* lanserv/emu.c, lanserv/emu_cmd.c: Added power control, fixed
	some problems with getting the event state.

	* lanserv/emu.c: Added the hot-swap LED control.

	* lib/oem_test.c, lib/ipmi.c: Added some test code for testing
	things inside OpenIPMI.

	* lib/chassis.c: Added tests to make sure the response is
	long enough in power controls.

	* lib/entity.c: More work on the hot-swap state machine.

	* lib/sdr.c: Fix a memory leak when the SDRs are replaced.

2004-03-30 Corey Minyard <cminyard@mvista.com> 

	* lib/sensor.c: Fix a problem checking the event capabilities
	on setting the event enables.

	* lanserv/emu.c, lanserv/emu.h, lanserv/emu_cmd.c: Started
	actually working on a useful simulator.  Added SDR, FRU data, and
	sensor support.

2004-03-26 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Added calling the entity update handler when the
	hot-swap capabilities change.

	* lib/strings.c, include/OpenIPMI/ipmiif.h: Added strings for the
	hot-swap states.

	* ui/ui.c: Added hot-swap support.

 	* ui/ui.c: Turn off nonblocking mode on the write fd.

	* lib/entity.c: Some hot-swap fixes.

	* lib/oem_motorola_mxp.c: Turned on the hot-swap indicator and
	hot-swap requester.

	* lib/sensor.c: Alloc a handler_list for each sensor for type 2
	sensors records.

	* lib/entity.c: Added a slot sensor as one that has a bit presence
	detector.

	* lib/entity.c: Don't require event support for a presence sensor.

	* lib/entity.c: Don't fetch FRU information for an entity until
	it is present.

2004-03-25 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Always rescan FRU info on an entity presence change
	for an entity that has FRU info.

2004-03-23 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Call _ipmi_find_or_create_mc_by_slave_addr() on new
	mcdlrs.

	* lib/domain.c: Scan MCs that are added from SDR sources.

	* lib/oem_atca.c: Turn off SEL support for everything but the BMC.

	* lib/oem_atca.c: Rework the handling of new MCs and entities to handle
	things added before the FRU information is read.

	* lib/entity.c: Use certain sensors that have presence bits as
	presence sensors.

2004-03-20 Corey Minyard <cminyard@mvista.com> 

	* everything: Massive rework of the code structure.

2004-03-19 Corey Minyard <cminyard@mvista.com> 

	* configure.in, include/OpenIPMI/ipmiif.h.in: Completele rework
	the version handling so that major, minor, release, and extra
	version information are separately available for #ifdeff-ing.

	* lib/ipmi.c, ui/ui.c: Use OPENIPMI_VERSION for the version
	string.

	* Makefile.am, configure.in, OpenIPMI.pc.in, OpenIPMIui.pc.in:
	Added pkg-config info for OpenIPMI libraries.

	* lib/posix_thread_os_hnd.c, lib/Makefile.am: Add a first shot
	at a threaded POSIX OS handler, libOpenIPMIpthread.
	* OpenIPMIpthread.pc.in, Makefile.am, configure.in: ditto

2004-03-15 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/selector.h, lib/selector.c: Unfortunately,
	there were some race conditions in the freeing up of file
	descriptors.  Cleanups were done for this.

	* include/OpenIPMI/os_handler.h: Unfortunately, there were some
	race conditions in the freeing up of file descriptors.  Cleanups
	were done for this.

	* ui/ui_os.c: Adjusted for the selector and os_handler changes.
	* lib/ipmi_smi.c: ditto
	* lib/ipmi_lan.c: ditto
	* lib/oem_motorola_mxp_intf.c: ditto

2004-03-11 Corey Minyard <cminyard@mvista.com> 

	* lib/mc.c: Fix the set_time routine to pass in the info to the
	message send.

2004-03-09 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_motorola_mxp.c: Don't create the "healthy" sensor for
	AMC boards.

	* lib/oem_motorola_mxp.c: Clear our the right variable after the
	allocation of info->con_ch_info.

2004-03-04 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmi_int.h, lib/sel.c, lib/mc.c: Fix broken
	time calculations for events.
	* lib/ipmi_lan.c: ditto
	* lib/ipmi_smi.c: ditto

	* include/OpenIPMI/ipmiif.h.in, lib/event.c, lib/domain.c: Created
	a new event delete function that does not take a domain.

	* doc/OpenIPMI.texi: Added some more documentation and cleaned
	things up a little.

2004-03-02 Corey Minyard <cminyard@mvista.com> 

	* lib/ipmi_lan.c: Fixed a bug where incoming SNMP traps were
	compared against the wrong IP address.

	* lib/oem_atca.c: Added the cold reset control.

	* lib/sensor.c: Fixed the range check in ipmi_sensor_pointer_cb().

	* lib/control.c: Fixed the range check in ipmi_control_pointer_cb().

2004-03-01 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_atca_conn.c: Set broadcast_broken all the time.

	* lib/ipmi.c: Added raw debug tracing for incoming SNMP traps.

	* include/OpenIPMI/ipmi_conn.h, lib/ipmi.c, ui/basic_ui.c: Added
	a source address length to the SNMP trap reporting handler.

2004-02-26 Corey Minyard <cminyard@mvista.com> 

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h: Added a way to check if an
	ID is invalid.
	* include/OpenIPMI/ipmiif.h.in: ditto for domains, sensors,
	controls, and entities.
	* lib/domain.c: ditto
	* lib/sensor.c: ditto
	* lib/control.c: ditto
	* lib/entity.c: ditto

	* lib/entity.c: Do a changed callback on the parent and child when
	a parent-child relationshi<p is created or destroyed.

	* include/OpenIPMI/ipmi_entity.h, lib/entity.c: Added an operation
	queue and handling functions for entities.

	* include/OpenIPMI/ipmi_entity.h, lib/entity.c: Added OEM
	information for entities.

	* include/OpenIPMI/ipmi_entity.h, lib/entity.c: Modified the
	hot-swap get state routine to take a more sensible callback.

	* include/OpenIPMI/ipmi_fru.h, lib/fru.h: Added a way to get the
	offset of a multi-record so it may be written.

	* lib/oem_motorola_mxp.c: Change the entity id selection to use
	the slot, if it's a switch slot then use the switch entity id,
	otherwise use the processing blade entity id.

	* ipmi_conn.h: Modified the event reporting to actually send
	an event, not the event message.
	* lib/ipmi_lan.c: ditto
	* lib/ipmi_smi.c: ditto
	* lib/domain.c: ditto
	* sample/ipmicmd.c: ditto

	* include/OpenIPMI/ipmi_types.h: Added ipmi_time_t

	* include/OpenIPMI/ipmi_mc.c: Modified the SEL time to be
	ipmi_time_t.
	* lib/oem_motorola_mxp.c: ditto.

	* include/OpenIPMI/ipmi_event.h, lib/event.c: Added these files
	and reworked the events to be opaque and easier to use.
	* lib/Makefile.am, include/OpenIPMI/Makefile.am: ditto
	* include/OpenIPMI/ipmi_sel.h, lib/sel.c: ditto
	* include/OpenIPMI/ipmi_mc.h, lib/mc.c: ditto
	* include/OpenIPMI/ipmiif.h.in, lib/domain.c: ditto
	* include/OpenIPMI/ipmi_types.h: ditto
	* lib/sensors.c: ditto
	* lib/oem_motorola_mxp.c: ditto

	* ui/ui.c: Adjusted for all the event rework.

	* doc/OpenIPMI.texi: Reworked docs to add info on the event
	rework.

	* lib/Makefile.am: Upped the library revision.

	* configure.in: Move to version 1.3.0.

2004-02-25 Corey Minyard <cminyard@mvista.com> 

	* lib/domain.c: Fixed a few problems were callbacks can receive
	NULL values that were not being handled.

	* configure.in: Move to version 1.2.16.

	* lib/oem_motorola_mxp.c: Added zeroing all data structures after
	they are allocated.

	* lib/entity.c, include/OpenIPMI/ipmiif.h: Added a way to have
	multiple callback handlers on control, sensor, and fru updates.

	* ui/ui.c: Converted over to the multi-callback handlers.

2004-02-24 Corey Minyard <cminyard@mvista.com> 

	* lib/control.c: Added an option for light controls to be able to
	set their color, on, and off times directly.
	* include/OpenIPMI/ipmiif.h: ditto
	* include/OpenIPMI/ipmi_control.h: ditto

	* include/OpenIPMI/ipmi_bits.h, lib/strings.h: Added an "orange"
	light color.

	* lib/oem_atca.c: Started serious work into handling for ATCA
	LEDs.

	* lib/oem_motorola_mxp.c: Added handling for newer Zynx switch
	boards.

	* utils/Makefile.am: Removed the md2 and md5 tests since they
	contain marginally free code.

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h: Added a way to enable and
	disable the event generation on an MC.

	* ui.c, man/ipmi_ui.1: Added commands for mc event enable
	settings.

	* lib/entity.c, include/OpenIPMI/ipmi_entity.h: Added a way to
	have multiple callback handlers called when an entity is added to
	a domain.
	* lib/domain.c, include/OpenIPMI/ipmiif.h: ditto

	* lib/domain.c: Modified finding the event reciever to use the
	event receiver bit (not the SEL bit) and to ignore BMC channels,
	since their addresses would be bogus.

	* lib/ipmi_lan.c: Removed scanning the system address for general
	LAN connections.  It will do wierd things, and is only necessary
	if specific support is required.

	* lib/oem_motorola_mxp.c: Re-added scanning the system address
	for MXP chassis.

	* lib/domain.c, include/OpenIPMI/ipmi_domain.c, lib/sensor.c:
	Changed _ipmi_find_or_create_mc_by_slave_addr() to take a channel
	as part of the address.

2004-02-23 Corey Minyard <cminyard@mvista.com> 

	* lib/mc.c: Fixed a race condition dealing with an MC going away
	while the SDRs were being fetched.  I wasn't following my own
	rules about pointers and callbacks.

	* lib/oem_motorola_mxp.c: Added a read handler for the I2C Isolate
	control.

	* lib/oem_motorola_mxp.c: Used the minor firmware version, not the
	major version,to tell if an MXP board has SDRs on-board.

	* configure.in: Move to version 1.2.15.

	* lib/domain.c, lib/mc.c, lib/oem_motorola_mxp.c: Fix some
	problems handling things being destroyed at startup.

	* lib/oem_motorola_mxp.c: Changed the number of boards on the
	half-pint chassis to 9.  Fixed the detection of board versions.

2004-02-22 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_motorola_mxp.c: Added reading the reset control for
	boards.  Don't create the I2C Isolate controls on the half-pint
	chassis.

	* man/ipmi_ui.1: Fixed the explanation of connecting using
	multiple connections and LAN addresses.

	* configure.in: Move to version 1.2.14.

	* sensor.c: Added a missing command length setting.
	
2004-02-20 Corey Minyard <cminyard@mvista.com> 

	* lib/fru.c, include/OpenIPMI/ipmi_fru.h: Added multi-record
	FRU handling.

	* lib/entity.c, include/OpenIPMI/ipmiif.h: Added multi-record
	FRU handling.

	* lib/domain.c, include/OpenIPMI/ipmi_domain.h: Added OEM
	information for a domain.

	* lib/oem_atca.c: More ATCA work.

2004-02-19 Corey Minyard <cminyard@mvista.com> 

	* lib/lanparm.c: Initialize the callback data when cleaning
	the lan parm lock.

	* man/ipmicmd.1, man/ipmi_ui.1: Update to make current.

	* include/OpenIPMI/ipmiif.h, lib/entity.c: Added an entity id
	comparison function.

	* include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_types.h: Added
	invalid id's for all the various object id's.
	* include/OpenIPMI/ipmi_mc.h: ditto
	* lib/entity.c: ditto
	* lib/mc.c: ditto
	* lib/sensor.c: ditto
	* lib/control.c: ditto
	* lib/domain.c: ditto

	* doc/OpenIPMI.texi: Added some more information about locking.

	* lib/oem_atca.c, lib/ipmi.c: Started work on the ATCA code.

2004-02-18 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Reworked SNMP library configuration to check
	for the include files first, then the libraries.

	* README: Improved quite a bit.

	* lib/oem_motorola_mxp.c: Modified the power supply sensor to only
	set the power feed failure bits on DC power supplies.

	* doc/OpenIPMI.texi: Revised the Motorola MXP documentation.

	* lib/oem_motorola_mxp.c: Discovered that the "power good" bit in
	the power supply status event is really a "power fail" bit.

	* configure.in: Move to version 1.2.12.

	* lib/oem_motorola_mxp.c: Renumbered the sensors so that five
	power supplies and fans could fit.  Also split out the fan info
	from the power supply info to allow different counts of fans and
	power supplies.  Fixed the fan IPMB for half-pint to be 0x30-0x34.

	* lib/entity.c, include/OpenIPMI/ipmiif.h: Added the ability to
	get the channel and address for a device-relative entity.

	* configure.in: Move to version 1.2.13.

	* lib/oem_motorola_mxp.c: Add fan speed raw/cooked conversion
	function.

	* lib/domain.c: Fixed a problem with handling old messages
	on a failover.  Changed so that old messages will certainly
	be ignored.

2004-02-17 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmi_conn.h: Added a "broadcast broken" flag
	to the interface data.

	* include/OpenIPMI/ipmi_domain.h, lib/domain.c: Removed the ability
	to set broadcast broken directly for the domain, instead we get
	it from the interface data.

	* lib/oem_motorola_mxp.c: Add setting broadcast broken on the
	interface to an MXP, removed the domain setting of the same.

	* configure.in: Move to version 1.2.11.

2004-02-12 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmiif.h, lib/entity.c: Added entity-id based
	versions of some hot-swap functions and the function to get the
	current entity presence.

	* include/OpenIPMI/ipmiif.h, doc/OpenIMPI.texi: Added some text
	about how the object pointer callbacks are always called
	immediately.

	* lib/sel.c: Initialize the return value in
	ipmi_sel_add_event_to_sel().

	* lib/sel.c, ui/ui.c: Fix some problem with adding events to the
	SEL.

	* configure.in: Move to version 1.2.10.

	* lib/OpenIPMI/ipmi_addr.h, lib/ipmi_utils.c: Added a privilege
	field to the IPMI LAN address.
	
2004-02-11 Corey Minyard <cminyard@mvista.com> 

	* lib/sensor.c: Reworked sensor naming to include the entity
	id and instance.

	* lib/oem_atca_conn.c: Made ATCA connections always active.

	* lib/entity.c, include/OpenIPMI/ipmi_entity.h: Revised the
	entity addition function to take the mc channel and address, not
	an MC pointer, since the MC pointer is not always available.
	* lib/oem_motorola_mxp.c: adjusted for the previous change
	* lib/chassis.c: adjusted for the previous change
	* lib/sensor.c: adjusted for the previous change

	* lib/control.c, lib/sensor.c: Fixed some problems dealing with
	non-standard device-relative entities that are actually not on the
	device we are dealing with.

	* lib/oem_motorola_mxp.c: Added a CPCI board healthy sensor.

	* ui/basic_ui: Added a '-drawmsg' parameter to start raw message
	tracing at startup.

	* include/OpenIPMI/ipmi_addr.h: Added updates to the lan address
	stuff.
	* ui/ipmicmd.c: ditto

	* lib/ipmi_utils.c: Added handling of the LAN address type.

	* lib/oem_motorola_mxp.c: Removed the ability to set the chassis
	type control, as it is really not settable.

	* configure.in: Move to version 1.2.9.

2004-02-10 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmi_mc.h, lib/mc.c: Added a way to send events
	to the SEL of an MC.
	* include/OpenIPMI/ipmi_sel.h, lib/sel.c: ditto

	* ui/ui.c: Added a way to add events using the above calls.

	* lib/oem_motorola_mxp.c: Make the entities for boards on the MXP
	V2 chassis device-relative.

2004-02-09 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.2.7.

	* lib/oem_motorola_mxp.c: Add support for MXP half-pint chassis.

	* include/OpenIPMI/ipmiif.h: removed
	* include/OpenIPMI/ipmiif.h.in: added, with version info
	* configure.in: Added setting the version info of ipmiif.h

	* include/OpenIPMI/ipmiif.h.in, lib/ipmi.c: Added a version
	function.

	* include/OpenIPMI/ipmi_addr.h: Added a LAN address type.

	* lib/domain.c: Modified the bus scanning to put a second delay
	between attempts when checking for an MC that has been removed,
	just in case of a transitional failure.

	* sample/ipmicmd.c: Added support for LAN addresses.

	* configure.in: Move to version 1.2.8.

2004-02-08 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Don't subtract 0x60 from device-relative entity
	instances in the id, just leave it.

	* lib/entity.c: Fix some bugs extracting DLRs from the SDRs.

	* ui/ui.c: Subtract 0x60 from device-relative entity instances on
	display/input.

2004-02-02 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.2.6.

	* everything: Massive rework of the logging to get more
	information in there so the logs can be correlated to specific
	domains, sensors, MCs, etc.

2004-01-31 Corey Minyard <cminyard@mvista.com> 

	* domain.c: Cleaned up logs, made them include the file and
	function name.
	* ipmi_lan.c: Ditto

	* ipmi_lan.c: Modified message logging to separate the raw
	and normla message logging.

2004-01-29 Corey Minyard <cminyard@mvista.com> 

	* lib/oem_motorola_mxp.c: Move the AMC chassis id and temp cool
	LED to the main chassis entity, since only the active AMC handles
	it.

2004-01-28 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.2.5.

	* lib/oem_motorola_mxp.c: Removed the hot-swap status from the
	blue leds and ejector switches, until I figure out a good way to
	handle the power.

	* lib/entity.c: Fixed an extraneous unlock in the hot swap code.

	* lib/domain.c: Only scan the IPMB on an address change if not in
	startup mode to avoid scanning an MC before the user is informed
	of the domain being up.

2004-01-27 Corey Minyard <cminyard@mvista.com> 

	* lib/entity.c: Finished implementing the hot-swap state machine.

2004-01-26 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmiif.h, lib/sensor.c, lib/control.c,
	lib/entity.c: Added some routines for dealing more directly with
	ids.

	* configure.in: Move to version 1.2.4.

	* lib/domain.c, lib/sensor.c, lib/mc.c: Fixed some domain shutdown
	problems.

	* lib/oem_motorola_mxp.c: Reworked the control and sensor creation
	so the object is fully correct and available when reported.

2004-01-25 Corey Minyard <cminyard@mvista.com> 

	* lib/sensor.c: Lots of cleanups and error handling consolidation.

2004-01-24 Corey Minyard <cminyard@mvista.com> 

	* lib/sensor.c, include/OpenIPMI/ipmi_sensor.c: Reworked the
	default threshold handling, I misread the spec on this.  These are
	only valid for setting the threshold at init time.

	* lib/oem_motorola_mxp.c: Removed all the SDR hacks, since it is
	now all correct in the SDRs.

	* configure.in: Move to version 1.2.3.

2004-01-23 Corey Minyard <cminyard@mvista.com> 

	* lib/ilist.c, include/OpenIPMI/ilist.h: Added a
	ilist_twoitem_destroy() call.

	* include/OpenIPMI/ipmi_control.h, lib/control.c: Allow controls
	to generate update events.

	* lib/conn.c: Fixed some memory leaks.

	* include/OpenIPMI/ipmi_bits.h: Added a return value for the event
	handlers to tell if the handler will manage the event or if it
	should be passed on.
	* include/OpenIPMI/ipmi_control.h, lib/control.c: ditto
	* include/OpenIPMI/ipmi_sensor.h, lib/sensor.c: ditto

	* include/OpenIPMI/ipmi_control.h, lib/control.c: Added lots of
	info to the hot-swap indicator.

	* include/OpenIPMI/entity.h: Added lots of info to the hot-swap
	state machine description.

	* include/OpenIPMI/ipmiif.h, lib/entity.c: Started work on the
	hot-swap state machine.

	* lib/oem_motorola_mxp.c: Went back to the old presence state
	machine, except the healthy and reset events cause a presence
	check, they don't directly drive the state machine, since then are
	not 100% dependable.

	* lib/oem_motorola_mxp.c: Modified the code to register all
	product ids from 0x01 to 0x40 as MXP products.

2004-01-22 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_control.h:
	Added a way for standard value controls to generate events.
	* lib/control.c: ditto

2004-01-21 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmiif.h, lib/sensor.c: Added a way to register
	multiple handlers on a sensor event.

2004-01-20 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmiif.h: Added hot-swap state machine and
	function definitions.

	* include/OpenIPMI/ipmi_entity.h, lib/entity.c: Added hot-swap
	polymorphic routines.

	* include/OpenIPMI/ilist.h, lib/ilist.c: Added two item list code,
	primarily for handling callback lists.

	* lib/conn.c: Converted OEM connection callback list to the
	two item list, and call all the OEM connection callbacks at once.

2004-01-19 Corey Minyard <cminyard@mvista.com> 

	* lib/conn.c, include/OpenIPMI/ipmi_conn.h: Added a connection
	handler for testing new connections types (primiarily for ATCA).

	* lib/oem_atca_conn.c, lib/ipmi.c: Added, new code for ATCA
	connection handler, for getting the IPMB address.

	* lib/domain.c: Fixed a problem in domain OEM callbacks; the
	iterator used may become invalid during the process of handling
	the OEM callbacks.

	* lib/ipmi_lan.c: Return NULL for the IPMI in a handler when the
	connection is shut down.

	* lib/ipmi_lan.c, lib/ipmi_smi.c: Added calls to the OEM
	connection handler code.

	* lib/ipmi_smi.c: Have the shutdown code call the handler on all
	outstanding messages.

2004-01-14 Corey Minyard <cminyard@mvista.com> 

	* configure.in, ui/basic_ui.c: Added support for net snmp.

	* configure.in: Move to version 1.2.2

	* ui/ui.c: Added handling for controls going away when displayed.

	* README.MotorolaMXP: Added.

	* lib/oem_motorola_mxp.c: Modified the handling for custom AMC
	sensors to only be created if it's an old AMC.  Also added support
	for handling the sensors from the AMC properly, setting the entity
	ID properly.

	* lib/domain.c: Have the domain code call the OEM handler for the
	SI MC.

	* lib/mc.c: Added a way to have an MC's main device repository
	treated as a device SDR repository.

	* lib/oem_motorola_mxp.c, doc/OpenIPMI.texi: Removed the fan speed
	control (it no longer works) and added the fan speed reading.

2004-01-14 Corey Minyard <cminyard@mvista.com> 

	* doc/OpenIPMI.texi: Added some MXP-specific information.

	* lib/oem_motorola_mxp.c: Fixed a few problems, the Chassis ID
	sensor was on the wrong entity, some boards were missing, and a
	few other little glitches.

	* lib/domain.c: Added scanning the system interface when a
	connection goes up or down.

2004-01-13 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.2.1

	* configure.in, ui/Makefile.am, ui/basic_ui.c: Make the SNMP stack
	optional.

	* man/ipmi_ui.1: Add docs for the -snmp option

	* doc/OpenIPMI.texi: Added docs for the SNMP trap handling.

	* include/OpenIPMI/ipmi_conn.h, lib/ipmi.c: Added an external SNMP
	trap handler.

	* include/OpenIPMI/ipmi_lan.h, lib/ipmi_lan.c: Added an external
	trap handler.

	* include/OpenIPMI/ipmi_mc.h, lib/mc.c: Added a return code from
	adding an event to know if the event was a duplicate.
	* include/OpenIPMI/ipmi_sel.h, lib/sel.c: Ditto

	* lib/domain.c: Modified the incoming event handler so that if it
	gets a NUL event message, to rescan the SEL from the source MC.

	* lib/ipmi_lan.c: Modified the sequence number handling to not use
	a zero sequence number, and to ignore zero sequence numbers.  This
	allows things to send messages with ignored responses by setting
	the sequence to zero.

	* ui/basic_ui.c: Added support for SNMP traps.

2004-01-12 Corey Minyard <cminyard@mvista.com> 

	* lib/pet.c, include/OpenIPMI/ipmi_pet.h: Modified the PET code to
	only handle a single channel, and to specify the channel and
	connection explicitly.  It's really impossible for this code to
	know automatically what channels to configure and what IP
	addresses to use for each.

	* configure.in: Update version to 1.2.0.

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h, include/OpenIPMI/ipm_oem.h:
	Added a mechanisms to fixup a sensor before anything is done with
	it (to fix broken values).

	* lib/oem_motorola_mxp.c: Added a fixup handler for AMC sensors to
	set the entity instance properly.

	* lib/oem_motorola_mxp.c: Converted over handling of semi-standard
	sensors to use the standard sensor fetch mechanism, if possible.
	Also added the AMC temperature sensor.

	* doc/OpenIPMI.texi - Added a bunch of info on the new MXP
	version.

	* lib/oem_motorola_mxp_intf.c: Modified to startup up a standard
	LAN connection if on a newer AMC.

	* lib/sensor.c, include/OpenIPMI/ipmi_sensor.c: Added a send_lun
	to the OEM sensors so they can use the normal sensor code for
	things that are standard.

2004-01-09 Corey Minyard <cminyard@mvista.com> 
	* include/OpenIPMI/ipmi_bits.h, ui/ui.c, lib/strings.c: Added
	one-shot reset, general output, and one-shot ouput controls.

	* lib/oem_motorola_mxp.c: Added a bunch of controls for various
	things in the chassis and boards.

	* lib/ipmi_lan.c: Fixed a problem when receiving messages, need to
	compare the netfn as well as the command when looking for sendmsg
	and event msg buffer commands.

	* lib/oem_motorola_mxp.c: Modified the presence sensor for normal
	boards to use the CPCI healthy signal instead of the wierd thing
	it was doing.

	* lib/mc.c: Don't delete the MC removed handlers unless the MC is
	really deleted.

2004-01-08 Corey Minyard <cminyard@mvista.com> 

	* lib/fru.c: Added error info logs to tell why a FRU was bad.

	* doc/OpenIPMI.texi: Added documenataion for the new PEF, PET, and
	LAN configuration items.

	* lib/domain.c, include/OpenIPMI/ipmi_domain.h: Added code to
	check if a specific connection is active and to activate a
	connection explicitly.
	
	* ui/ui.c: Added support for the connection activation.

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h: Added a mc reset command
	for sending MC cold and warm resets.

	* lib/chassis.c: Added a one-shot reset control.

	* lib/oem_motorola_mxp.c: Added controls for the version AMC
	version.

2003-01-08 Jeff Zheng <jeff.zheng@intel.com>

	* lib/pef.c: Various fixes for PEF handling.

2004-01-07 Corey Minyard <cminyard@mvista.com> 

	* ui/ui.c: Added LAN and PEF lock clearing.

	* lib/pet.c, include/OpenIPMI/ipmi_pet.h: Reworked the PET to
	support proper locking and to support the proper setup of the
	policy number.

	* ui/ui.c: Added support for the PET.

	* lib/domain.c, include/OpenIPMI/ipmi_domain.h: Added a "broadcast
	broken" field so systems that have non-working broadcasting can
	set this.  Then bus scanning wll use normal messages, not
	broadcasts.

	* lib/oem_motorola_mxp.c: Set the broadcast broken flag.

2004-01-06 Corey Minyard <cminyard@mvista.com> 

	* lib/pef.c, include/OpenIPMI/ipmi_pef.h: Reworked this to handle
	locking properly, the lock is claimed on a PEF config read and the
	lock is cleared on a write.  Also added a specific clear lock
	operation.

	* lib/lanparm.c, include/OpenIPMI/ipmi_lanparm.h: Reworked this to
	handle locking properly, the lock is claimed on a LAN config read
	and the lock is cleared on a write.  Also added a specific clear
	lock operation.

2004-01-05 Corey Minyard <cminyard@mvista.com> 

	* ui/ui.c, ui/basic_ui.c: Added a way to free things allocated in
	the main routine.

	* lib/ipmi.c, include/OpenIPMI/ipmi_int.h: Added an IPMI rwlock.

	* lib/pet.c: Converted the main pet lock to a rwlock.

	* ui/ui.c: Consolidate MC reading.

	* lib/domain.c: Fixed the system interface address handling to be
	correct for the individual interfaces.

	* lib/ipmi_lan.c: Removed the bind code, as if you don't bind an
	address one will be auto-assigned.

	* ui/ui.c: Added the ability to set the LAN and PEF parameters.

2004-01-05 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmi_int.h, lib/ipmi.c: Added a way for
	internal code to fetch the global OS handler.

	* lib/pef.c, include/OpenIPMI/ipmi_pef.h: Added a way to get the
	MC for a PEF.

	* lib/impi_lan.c: Added system address scanning for all LAN
	connections.

	* lib/ipmi.c: Added PET init and shutdown functions.

	* lib/ipmi.c, include/OpenIPMI/ipmi_int.h: Added a method to get
	the main OS handler.

	* include/OpenIPMI/ipmi_addr.h: Added a define for the "self"
	channel.

	* lib/pet.c, include/OpenIPMI/ipmi_pet.c, lib/Makefile.am: Added a
	way to easily set up the platform event trap stuff for just
	getting all events.

	* ui/ui.c: Added support for the LAN parameter display.

2004-01-02 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmi_int.h: Added ipmi_strdup for use by
	everyone.

	* include/OpenIPMI/ipmi_pef.h, lib/pef.c: Added and mostly rewrote
	some PEF code from Jeff Zheng.  Still not quite done.

	* include/OpenIPMI/ipmi_lanparm.h, lib/lanparm.h: Added code for
	handling LAN configuration parameters.

	* ui/ui.c: Added some code for fetching and writing PEFs.
	
2003-12-26 Corey Minyard <cminyard@mvista.com> 

	* configure.in: Move to version 1.1.8

2003-12-26 Corey Minyard <cminyard@mvista.com> 

	* include/OpenIPMI/ipmi_domain.h, lib/domain.c: Added a domain OEM
	handler for detecting and setting up special types of domains,
	mainly in preparation for ATCA.

	* lib/ipmi_lan.c: IPMIv1_5_rev1_1_0926 markup, section 6.12.4,
	didn't clear things up at all.  Some manufacturers have
	interpreted a certain way that this added code handles, but IMHO
	it is incorrect.
	
2003-12-09  Louis Zhuang  <louis.zhuang@linux.intel.com>

	* lib/ilist.c: Fix a bug in the routine to go to the previous
	item.

2003-12-05 Corey Minyard <cminyard@mvista.com> 

	* lanserv/emu.c: Work on SDR emulation.

2003-12-04  Louis Zhuang  <louis.zhuang@linux.intel.com>

	* include/OpenIPMI/ipmi_mc.h, lib/mc.h: Add a new function
	'ipmi_mc_sel_get_last_addition_timestamp' for OpenHPI to use.

	* include/OpenIPMI/ipmi_sel.h, lib/sel.h: Add a new function
	'ipmi_sel_get_last_addition_timestamp'.

2003-12-04 Jeff Zheng <jeff.zheng@intel.com>, Corey Minyard <cminyard@mvista.com>

	* sample/ipmicmd.c: Actually close the IPMI connection at quit.

2003-12-04 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/ipmiif.h: Use "const" properly to get rid of
	warnings.
	* lib/ipmi.c: ditto
	* sample/ipmicmd.c: ditto
	* sample/sample.c: ditto
	* ui/basic_ui.c: ditto

2003-12-03 Corey Minyard <cminyard@mvista.com>

	* lib/sensor.c: Allow settable hysteresis values to be read, too.

	* include/OpenIPMI/ipmi_bits.h: Added some docs on the confusing
	names of the hysteresis values.

2003-12-03 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.7

	* lib/ipmi_lan.c: Updated the response format where the send
	message is include with the response to include the destination
	IPMB as part of the header.

	* lanserv/emu.c lanserv/lanserv.c lanserv/lanserv_emu.c: Adjustments
	for the previous change.

	* utils/md5.c: Fixed this to work on big and little endian without
	special defines.

2003-12-02 Corey Minyard <cminyard@mvista.com>

	* lanserv/emu_cmd.c, lanserv/Makefile.am, lanserv/lanserv_emu.c:
	Added a command processor for handling control commands to the
	emulator.

	* lanserv/emu.c, lanserv/emu.h, lanserv/lanser_emu.c: Massive
	restructure to clean this up and support various commands and get
	IPMB working.

	* lanserv/lanserv.c: Check for proper message length in broadcasts.

2003-12-02  Louis Zhuang  <louis.zhuang@linux.intel.com>

	* include/OpenIPMI/ipmi_mc.h, lib/mc.h: Add a new function
	'ipmi_mc_event_by_recid' for OpenHPI to use.

	* include/OpenIPMI/ipmi_sel.h, lib/sel.h: Add a new function
	'ipmi_sel_get_event_by_recid'.

2003-12-01 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/ipmi_mc.h, lib/mc.c: Renamed some functions to
	remove the leading "_".  This opens them up for OpenHPI to use.

	* lib/domain.c: Updates for the above changes.
	* lib/sel.c: ditto
	* lib/sdr.c: ditto
	* lib/sensor.c: ditto
	* lib/control.c: ditto
	* lib/oem_motorola_mxp.c: ditto
	* ui/ui.c: ditto
	
2003-11-30 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/ipmi_control.h, lib/control.c: Added a way to
	get the source MC for the control.
	
	* include/OpenIPMI/ipmi_sensor.h, lib/sensor.c: Added a way to
	get the source MC for the sensor.

	* lib/chassis.c, lib/mxp_oem_motorola_mxp.c: Side effects from the
	above changes.

	* include/ipmi_domain.h, lib/domain.c: Reworked the MC update
	handler to be more standard.

	* ui/ui.c, ui/basic_ui.c: Fix problems with the reconnect code.

	* ui/ui.c: Added MC update handler registration so new MCs are
	reported.
	
2003-11-28 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/ipmiif.h, lib/ipmi.h: Added parameter parsing
	code for parsing the various types of connections from argv-type
	strings (really taken from ui/basic_ui.c).

	* ui/basic_ui.c, sample/sample.c, sample/ipmicmd.c: Converted over
	to use the new parameter parsing code.

2003-11-21  Louis Zhuang  <louis.zhuang@linux.intel.com>

	* lib/domain.c, include/OpenIPMI/ipmi_domain.h: Add function
	'ipmi_domain_set_bus_scan_handler' to indicate bus scan
	is done
	* sample/sample.c: Add some code to demostrate usage of
	'ipmi_domain_set_bus_scan_handler'

2003-11-21  Louis Zhuang  <louis.zhuang@linux.intel.com>

	* lib/domain.c: Fix a bug in ipmi_domain_reread_sels

2003-11-17 Corey Minyard <cminyard@mvista.com>

	* lib/mc.c, lib/domain.c: Added support for detection old and
	newer IPMI versions and issuing appropriate logs.

2003-11-11 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.6.

2003-11-11 Jeff Zheng <jeff.zheng@intel.com>

	* configure.in: Add checking for getaddrinfo().

	* include/OpenIPMI/ipmi_lan.h, lib/ipmi_lan.c: Added support for a
	IPv6 capable interface.

	* lanserv/lanserv.c, lanserv/lanserv_config.c, lanserv.h: Add
	support for IPv6 addresses.

	* sample/sample.c, ui/basic_ui.c, sample/ipmicmd.c: Reworked to
	use the new IPv6 capable interfaces.
	
2003-11-10 Corey Minyard <cminyard@mvista.com>

	* lib/domain.c: Fixed MC scanning to handle a single address
	properly and fixed some error handling cases.
	
2003-10-30 Corey Minyard <cminyard@mvista.com>

	* lib/domain.c: Fixed MC scanning to skip addresses properly at
	the beginning of a scan.

	* lib/domain.c, include/OpenIPMI/ipmi_domain.h: Modified the MC
	scanning ignoring to use ranges.

	* lib/domain.c: The previous fix to handle an MC-less case by just
	allowing scanning the BMC at 0x20, not scanning the sysaddr.  The
	sysaddr stuff was just too tied to the redundant BMC case.

	* lib/ipmi_smi.c: Send messages with the proper size.

2003-10-31  Louis Zhuang  <louis.zhuang@linux.intel.com>

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h: Add const qualifier into function

2003-10-30 Corey Minyard <cminyard@mvista.com>

	* lib/ipmi_smi.c: Handle data portion of a socket message correctly.

	* sample/ipmicmd.c: Fix error handling.

2003-10-30 Louis Zhuang <louis.zhuang@intel.com>, Corey Minyard <cminyard@mvista.com>

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h: Add a function to set the
	SEL time for an MC.

2003-10-30 Corey Minyard <cminyard@mvista.com>

	* lib/selector.c: Allow a NULL send_sig handler.

2003-10-30 Jarrod Johnson <jbj-taway@ura.dnsalias.org>

	* sample/ipmicmd.c: Close the connection when done.

2003-10-29 Corey Minyard <cminyard@mvista.com>

	* lib/mc.c, include/OpenIPMI/ipmi_mc.h: Added a way to force
	rereading the SEL.

	* lib/domain.c, include/OpenIPMI/ipmiif.h: Added a way to force
	rereading all the SELs in a domain.

2003-10-23 Corey Minyard <cminyard@mvista.com>

	* lib/sdr.c: Fixed a bug in the random backof of SDR reading.  On
	a random backoff, it would also start one immediately, too.  This
	was bad because it didn't avoid the contention and it was possible
	to have two SDR readings going on at the same time in the same SDR
	structure.
	
2003-10-23 Corey Minyard <cminyard@mvista.com>

	* lib/domain.c: If a BMC reports through its channels that is does
	not have an IPMB bus, then force scanning the system address so we
	will find something useful.

2003-10-20 Corey Minyard <cminyard@mvista.com>

	* ui/ui.c: Added some code to print the number of SEL entries on
	an mc (when dumping the MC) and the total number of SEL entries
	when listing the SEL.

	* lanserv/lanserv.c, lanserv/lanserv_config.c: Restructured the
	LAN code to make it more flexible and split out more generic
	functions.
	* lanserver/lanserv_emu.c, lanserv/emu.c, lanserv/emu.h: Ditto
	* include/OpenIPMI/lanserv.h: Ditto
	
2003-10-17 Tony Griffiths <tonyg@agile.tv>

	* lib/ipmi_smi.c: Added some enhanced debugging info.

2003-10-17 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.5.
	
2003-10-16 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/ipmi_mc.h, lib/mc.c: Added a way to get the
	current SEL time.

2003-10-16 Louis Zhuang <louis.zhuang@intel.com>
	
	* include/OpenIPMI/ipmi_mc.h, lib/mc.c: add a bundle of mc wapper 
	functions for SEL operation 

2003-10-15 Corey Minyard <cminyard@mvista.com>

	* ipmi_lan: Fix the send to the system address to be correct,
	and handle incoming messages properly.

	* lib/sdr.c: Null a message data (to keep valgrind happy).

	* ui/ui_os.c: Fixed a problem valgrind found, timer data may be
	freed in the user's handler, but we still used it in the timer
	handler after the call to the user's handler.

2003-10-15 Jeff Zheng <jeff.zheng@intel.com>

	* lib/mc.c: Null out some values on removal.

	* lib/fru.c: Calculate the end of the FRU data correctly.

2003-10-09 Thomas Kanngieser <Thomas.Kanngieser@fci.com>

	* lanserv/lanserv_asf.c: Send the right data for an RMCP ping.

2003-10-09 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.4.

	* lanserv/priv_table.c: Fixed the permissions checking code, ADMIN
	privilege was specified incorrectly for unknown messages and magic
	numbers were replaced with defined names.

2003-10-08 Livio Pugliese <lpugliese@uxcomm.com>

	* lib/sensor.c: Added the missing log2() conversion function to
	the array of conversion values.

2003-10-07 Tony Griffiths <tonyg@agile.tv>

	* lib/domain.c: Fix getting the vendor id from the channel info
	response.

2003-10-02 Corey Minyard <cminyard@mvista.com>

	* lib/ipmi_lan.c: Changed the max outstanding message default
	to two.

	* lib/mc.c: Removed setting the event receiver for SEL devices
	that are not event generators.

	* ui/ui.c: Fixed problems printing entities.

2003-10-07 Tony Griffiths <tonyg@agile.tv>

	* lib/domain.c: Fixed channel scanning to go on if it gets an
	error from the channel.  That way if channels are not present, it
	will still find channels beyond the errored channel.

	* lib/strings.c, include/OpenIPMI/ipmi_msgbits.h: Add strings for
	the netfns, commands, and errors.
	* include/OpenIPMI/ipmi_err.h: ditto

	* lib/ipmi_lan.c: Convert debugging to clean up the formatting and
	use the new strings.

2003-10-05 Thomas Kanngieser <Thomas.Kanngieser@fci.com>

	* lib/sensor.c: The binary search converting from float to raw
	values had the compare backwards.

2003-10-02 Corey Minyard <cminyard@mvista.com>

	* ui/entity.c: Fixed the custom info get function names.

	* ui/ui.c: Fixed a few FRU output problems.

	* sample/sample.c: Fixed the FRU output.

	* ui/entity.c, ui/fru.c: Added board manufacture time function.
	* include/OpenIPMI/ipmi_fru.h: ditto
	* include/OpenIPMI/ipmiif.h: ditto

	* ui/ui.c: Converted over all display of entities to do the
	relative and absolute entity names.

	* lib/sdr.c: The Get Device SDR command stupidly only returns the
	number of sensors, not the number of SDR entries.  For device
	SDRs, the SDR array will expand up to 512 entries if it runs
	out of SDR entries.  256 is the max number of sensors, so this
	should be safe.

2003-10-02 Thomas Kanngieser <Thomas.Kanngieser@fci.com>

	* lib/sensor.c: The bit shifts for getting the hysteresis and
	threshold support from the SDR were incorrect.

2003-10-01 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.3

	* lib/ui.c: Added support for device-relative entities.

	* include/OpenIPMI/ipmi_types.h: The bit assigns for
	entity_instance and channel were switched in the entity id type.
	
	* include/OpenIPMI/ipmi_control.h: Added an include for
	ipmi_addr.h since it is used in this include file.

	* include/OpenIPMI/ipmi_oem.h, lib/mc.c: Allow multiple OEM removal
	handlers to be registered against an MC.
	
	* include/OpenIPMI/ipmi_mc.h, lib/Makefile.am, lib/mc.c, lib/chassis.c:
	Added converting chassis control commands to a power control.

2003-09-30 Corey Minyard <cminyard@mvista.com>

	* lib/sdr.c: Don't refetch SDRs if the population is not dynamic.

	* lib/mc.c, lib/domain.c, include/OpenIPMI/ipmi_mc.h: Added an
	audit to check the SDRs for an MC and for the main SDR repository.

	* lib/mc.c: Was reading the device SDRs twice.  That's why it was
	so slow at startup.

	* lib/domain.c: Call the connection change function as soon
	as the connection is up, don't wait to read the SDRs, etc.

	* ui/ui.c, include/OpenIPMI/ipmi_ui.h: Add a function to set
	the domain at startup.

	* lib/entity.c: Make sure to free the entity SDR info when it is
	destroyed.

	* lib/domain.c: Initialize the running field of the
	activate_timer_info data.

	* ui/ui.c: Added TCSADRAIN to the tcsetattr() calls so that the
	output wouldn't get chopped off on shutdown of the program.  Also
	properly restored the flags for the output terminal.

	* ui/ui.c: Fixed a possible overrun in normal_char, it was using
	strcpy but the string wasn't necessarily nil terminated.  Change
	to use memcpy with a length.

2003-09-29 Corey Minyard <cminyard@mvista.com>

	* lib/ipmi.c: The length bits of an IPMI string are the bottom 6
	bits, no the bottom 5 bits.

2003-09-28 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.2.

	* lib/domain.c: Added handling of system ids in events.

	* lib/domain.c: Don't allow messages to be sent on a shutdown
	domain.  This avoids an infinite loop in some cases.

	* lib/domain.c: In cleanup_domain(), pass the error response in
	as the response, not the original message.

	* lib/entity.c, include/OpenIPMI/ipmiif.h: Added entity functions
	to get FRU information so the user doesn't have to deal directly
	with the FRU type.

	* include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_fru.h:
	Moved all the FRU functions and types into ipmi_fru.h.

	* include/OpenIPMI/ipmi_fru.h, include/OpenIPMI/ipmi_bits.h: Moved
	the chassis types into the public bits.

2003-09-26 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.1.

	* Lib/ipmi_malloc.c: Fill debug malloced memory with junk to help
	catch usage before initialization.  Also cleaned up some error
	messages.

	* lib/entity.c: Fixed a problem where some data was being used
	before initialization.

2003-09-25 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.1.0.

	* doc/OpenIPMI.texi: Added a little information about FRUs.

	* include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_entity: Moved
	entity type definitions to the public part and renamed them, and
	allow getting and setting the type
	* lib/entity.c: ditto

	* include/OpenIPMI/entity.h, lib/entity.c: Reworked the FRU
	handling to be more flexible.

	* include/OpenIPMI/ipmiif.h: Reworked the entity information to
	make it more understandable.

	* lib/entity.c: Lots of little cleanups for FRU handling and
	handling of SDR records.

	* lib/fru.c: Fixed handling of some data type to find some types
	of errors.

	* lib/ipmi_lan.c: Modified the handling of tunnelling IPMB over
	LAN to work with Intel boxes.  It seems their interpretation of
	the spec is different than mine, but the code should now work with
	both interpretations.

	* lib/ipmi_malloc.c: Don't print some data that we don't have.

	* lib/oem_motorola_mxp.c: Updated for FRU handling.

	* ui/ui.c: Added better entity output and FRU change handling.
	
2003-09-24 Corey Minyard <cminyard@mvista.com>

	* ui/ui.c: Added some FRU handling commands.

	* lib/mc.c: Added entity scanning to device SDRs.
	
	* lib/entity.c: Reworked the entity SDR handling code so that it
	tracks the old values, detects when values change, and does the
	appropriate thing.
	
	* lib/fru.c, include/OpenIPMI/ipmi_fru.h: Added FRU handling code.
	* include/OpenIPMI/ipmiif.h: ditto
	* lib/Makefile.am, include/OpenIPMI/Makefile.am: ditto
	* lib/entity.c: ditto

	* lib/mc.c, include/OpenIPMI/ipmi_mc.c: Allow the entity code to
	store MC-specific SDR information in the MC.

	* lib/domain.c, include/OpenIPMI/ipmi_domain.c: ditto, but for the
	main SDR repository.

	* include/OpenIPMI/ipmi_bits.h: Added unicode support.
	* include/OpenIPMI/ipmi_control.h: ditto
	* include/OpenIPMI/ipmi_entity.h: ditto
	* include/OpenIPMI/ipmi_int.h: ditto
	* include/OpenIPMI/ipmi_sensor.h: ditto
	* include/OpenIPMI/ipmiif.h: ditto
	* lib/control.c: ditto
	* lib/entity.c: ditto
	* lib/ipmi.c: ditto
	* lib/oem_motorola_mxp.c: ditto
	* lib/sensor.c: ditto

	* include/OpenIPMI/ipmi_sensor.h, include/OpenIPMI/ipmi_mc.h:
	Moved the sdr fetching code to the MC code where it belonged, but
	had to export the sensors waitq to do this.
	* lib/mc.c, lib/sensor.c: ditto

	* include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_int.h: Moved
	the string decoding and data decoding functions into the internal
	functions.
	

2003-09-24 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.0.4.

	* lib/selector.c: Allow the selector code to be called from
	multiple threads, and fix a race condition on waking up waiting
	selectors.

2003-09-23 Corey Minyard <cminyard@mvista.com>

	* lib/sel.c, lib/sdr.c: Fixed setting the minor version, thanks
	Livio Pugliese for pointing this out.

2003-09-19 Corey Minyard <cminyard@mvista.com>

	* lib/selector.c, include/OpenIPMI/selector.h: Change
	sel_select_loop() to return an error if select fails(), instead of
	calling exit().

2003-09-02 Corey Minyard <cminyard@mvista.com>

	* lib/oem_motorola_mxp_intf.c: Changed the timer for MXP messages
	to 20ms and added a 20ms delay between checking for the message
	lock.  Added a 20ms delay after sending 8 messages to let other
	boxes have access.

	* lib/oem_motorola_mxp.c: Fixed the -12V voltage sensor on the
	5365 card to be 10% tolerance.

	* lib/mc.c: Fixed process to continue when the SDR fetch
	fails.

	* lib/entity.c, include/OpenIPMI/ipmiif.h: Added a way to force
	entity presence detection.

2003-08-27 Corey Minyard <cminyard@mvista.com>

	* lib/ipmi_lan.c: Fixed reconnection problems. 

	* lib/oem_motorola_mxp_intf: Removed connection loss detection from
	the MXP-specific queue fetch, because it is unreliable.  Just use
	the main LAN connection for failure detection.

	* lib/mc.c: Don't cleanup the MC if the SDR read fails.

2003-08-13 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.0.3.

	* doc/OpenIPMI.texi: Minor doc updates.

	* lib/domain.c, include/OpenIPIM/ipmiif.h: Added a way for the
	user to know when all the main SDRs have been read.

2003-08-13  Louis Zhuang  <louis.zhuang@linux.intel.com>

	* lib/selector.c: Fixed a trivial bug in process_timers

2003-08-12 Corey Minyard <cminyard@mvista.com>

	* lib/sdr.c: Added code to the SDR so that it will wait until
	everything outstanding is clear before restarting the fetch
	operation.  Also added a random timer to restart SDR operations
	when the reservation was lost.

	* lib/domain.c: Reworked the code to not start the connection up
	process on an inactive connection.

2003-08-11 Corey Minyard <cminyard@mvista.com>

	* lib/sdr.c: Fixed a locking bug in the SDR code.

	* lib/domain.c: Modified the set timer code that processes a new
	working connection to wait a while until activating the
	connection.  This allows other connections that may already be
	active to come up.

2003-08-01 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 1.0.2.

	* lib/sensor.c, lib/control.c: Handle NULL controls and sensors in
	opq done.  If a sensor is destroyed during an operation, this can
	be called with NULL.

	* lib/oem_motorola_mxp.c: Removed some debugging cruft.

	* lib/oem_motorola_mxp_intf.c: Cleaned up the debug dump output.

2003-07-31 Corey Minyard <cminyard@mvista.com>

	* lib/domain.c, include/OpenIPMI/ipmi_domain.h: Added a way to
	monitor management controllers as they are added and deleted.

	* lib/domain.c: Minor cleanups for handling the new MXP style of
	addressing.

	* lib/oem_motorola_mxp.c: Added monitoring for the AMC card.

	* lib/oem_motorola_mxp.c: Split the AMC card handling up to
	completely rework the way the AMCs are handled.  The 0x20 address
	points to the current AMC.  Addresses (f 0) and (f 1) point to the
	individual AMCs.
	* lib/oem_motorola_mxp_intf.c: ditto

	* lib/oem_motorola_mxp.c: Made the board entity instances
	one-based instead of zero based.

2003-07-30 Corey Minyard <cminyard@mvista.com>

	* lib/oem_motorola_mxp.c: Made entity instances start at one
	for all entities instead of the random smattering that was there.

	* lib/oem_motorola_mxp.c: Fixed power supply events to not use the
	slave address of the power supply when translating events.

	* lib/ipmi_lan.c, lib/oem_motorola_mxp_intf.c: Modified the lan
	connections to make a connection for each IP address instead of
	sharing a connection between IP addresses.  Not all boxes support
	sharing a connection between IP addresses.

	* lib/domain.c: Fixed a problem handling 
	
	* lib/ipmi_lan.c, lib/oem_motorola_mxp_intf.c: Fixed a problem
	where the connection state wouldn't change if only the active
	value changed and not the IPMB address.

2003-07-29 Corey Minyard <cminyard@mvista.com>

	* lib/oem_motorola_mxp.c: Fixed a few little things required
	for the new firmware.

	* lib/oem_motorola_mxp_intf.c: Modified messages directly to the
	system interface to use the sequence number queue from the
	standard IPMI LAN code.  You couldn't use the standard message
	queue because those are one-at-a-time and the messages get gummed
	up in there.

2003-07-25 Corey Minyard <cminyard@mvista.com>

	* doc/OpenIPMI.texi: Minor doc updates about authentication.

2003-07-24 Corey Minyard <cminyard@mvista.com>

	* lib/mc.c: Delayed the start of fetching events for an MC's SEL
	until the domain connection is up.

2003-07-23 Corey Minyard <cminyard@mvista.com>

	* lib/entity.c: Fixed searching for the next presence sensor when
	one is deleted.

	* lib/entity.c: Don't set the device num for an entity if the
	instance is not device-relative.  Also, don't add an mcdlr if no
	entity id is specified.

	* lib/entity.c: Fix removal of controls from entities to compare
	properly.

	* lib/ipmi_oem_force_conn.c, lib/oem_force_conn.c: Renamed this
	file to make it more consistent.
	* lib/Makefile.am: ditto

	* lib/oem_motorola_mxp.c, lib.oem_motorola_mxp_intf.c:  Added
	support for the Motorola MXP chassis.
	* include/OpenIPMI/mxp.h: ditto
	* lib/Makefile.am: ditto
	* lib/ipmi.c: ditto
	* ui/basic_ui.c: ditto

2003-07-22 Corey Minyard <cminyard@mvista.com>

	* configure.in: Moved to version 1.0.1.

	* utils/test_md5.c, utils/test_md2.c: Make the tests run
	standalone.
	
	* lanserv/Makefile.am: Make dependencies for libraries be in
	the build directory, not the source directory.  This way it will
	build in a separate object directory.
	* lib/Makefile.am: ditto
	* sample/Makefile.am: ditto
	* ui/Makefile.am: ditto

	* configure.in: Moved to version 1.0.0.

	* everything: Restructured the entire tree and split up everyting
	into subdirectories.  Hopefully the code is much better structured
	now.

2003-07-21 Corey Minyard <cminyard@mvista.com>

	* ipmi_smi.c: Added socket interface handling for the SMI
	connection.

2003-07-16 Corey Minyard <cminyard@mvista.com>

	* OpenIPMI.texi, sensors.c, include/OpenIPMI/ipmiif.h: Added
	support for just enabling or disabling sensor event (instead of
	directly setting them), added a bunch of error checking to the
	enabling and disabling of sensors to make sure the sensor supports
	the requested capability.
	* include/OpenIPMI/ipmi_sensor.c: ditto

	* entity.c: Reworked the presence sensor code to take into account
	the sensor capabilities.

2003-07-11 Louis Zhuang <louis.zhuang@linux.co.intel.com>

	* ipmi_lan.c, lanserv_asf.c, lanserv_ipmi.c: Cleanups to
	remove some warnings.

2003-07-03 Corey Minyard <cminyard@mvista.com>

	* sdr.c: When handling SDR data, be sure to check that the MC is
	valid in responses, so that this properly handles MCs going away.

2003-06-11 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.4.3

	* include/net/af_ipmi.h: Added include file for IPMI socket.
	* Makefile.am: ditto
	* configure.in: ditto
	* include/net/Makefile.am: ditto

	* lanserv.c: Modified to use IPMI socket if available.

2003-06-07 Corey Minyard <cminyard@mvista.com>

	* Makefile.am: Clean up so that every '.c' is only listed once.
	When used in multiple programs, create a '.o' in all but one
	instance.  Still need to figure out how to correctly refer to
	.a libraries created by a '.la'.

	* all: License updates.

2003-06-06 Corey Minyard <cminyard@mvista.com>

	* sel.c: Modified to not use the state to tell if something is
	going on, but to use the opq.  Deletes don't modify the state, but
	they may still be in process at deletion.

	* mc.c: Fixed a memory leak.

2003-06-05 Corey Minyard <cminyard@mvista.com>

	* sel.c: Fixed a SEL destruction race condition.

2003-06-04 Corey Minyard <cminyard@mvista.com>

	* OpenIPMI.tex, README.Force: Minor updates to make some things
	clearer.

	* basic_ui.c: Fixed a problem with SMI connections.

	* ilist.c, ilist.h: Added some helper functions.

	* ui_os.c: Switch from /dev/random to /dev/urandom to avoid
	blocking for lack of entropy.

	* ui.c: Added a total bytes in SDR count.

	* sdr.c: Added a pipeline to the SDR fetch, to speed it up for
	high-latency links.

2003-06-03 Corey Minyard <cminyard@mvista.com>

	* ipmicmd.c: Added the latency testing code back in.

2003-06-02 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.4.2.

	* sensor.c: Moved the removal of the sensor from the entity to the
	place of its final destruction, so the entity will exist during
	callbacks related to destruction of the sensor.

	* ipmi_lan.c: Send a close session command when the connection is
	closed.

2003-05-30 Corey Minyard <cminyard@mvista.com>

	* OpenIPMI.texi: Updated docs for handling multiple MCs.

	* domain.c: Add a timer to wait for a while after detecting that
	everyone is inactive before acting.  This should solve race
	conditions where something deactivates one and activates another,
	to avoid an activation war between software devices.

	* domain.c: Reworked some timers so that the handle shutdowns
	correctly.

	* ipmi_lan.c: Changed the failure timeout to 3 seconds.

	* lanserv.c: Send all output to stdout in non-daemon mode.

2003-05-29 Corey Minyard <cminyard@mvista.com>

	* domain.c: More fixes for supporting multiple connections.

	* entity.c: Fixed the presence handling to use an entity id
	instead of an entity pointer since the entity can go away.

	* ipmi_lan.c: Modified broadcasts to not retry.

	* ipmi_lan.c: Added timer frees in a few places that needed them.

	* ipmi_oem_force_conn.c: Changed the broadcast of the deactivate
	to a normal message so it gets retried.

	* include/linux/ipmi.h: Added changes for setting the timing
	parameters.

	* lanserv.c: Added changes for setting the timing parameters.

	* sdr.c: Fetch sdr 0 to verify the reservation, not the current
	record.  Also fixed some completion stuff.

	* sensor.c: Fixed a shutdown case.

2003-05-28 Corey Minyard <cminyard@mvista.com>

	* sel.c: Fixed a shutdown double-free.

	* sdr.c: Fixed some shutdown free problems.

	* mc.c: Fixed some MC shutdown problems.

	* ilist.c, ilist.h: Set the malloced variable for the supplied
	entry automatically.

	* sdr.c: Removed some bogus frees.

	* mc.c: Set the MC active when it is handled as a new MC.

	* ipmiif.h: Removed ipmi_domain_get_user_data, since it doesn't
	make sense any more.

	* domain.c: Added support for multiple connections to a single
	IPMB box.

	* ipmi_oem_force_conn.c: Added handling for active and inactive
	connections.

2003-05-26 Corey Minyard <cminyard@mvista.com>

	* lanserv.c: Fixed the address reading code to increment the
	address count when it sees an address in the configuration file.

2003-05-19 Corey Minyard <cminyard@mvista.com>

	* mc.c: Modified the event receiver setting code to not modify the
	event receiver unless it is pointing to a nonexistant MC or an MC
	that does not have an event receiver.

2003-05-16 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.4.1
	
	* lanserv_oem_force.c, ipmi_oem_force.c: The permission from
	Force Computers(tm) came much faster than I expected.  This
	included some OEM handling for the various Force cards, for
	switching the cards to/from BMC mode and for fetching the IPMB
	address.  Thanks to Force for their help.
	
	* ipmi.c, lanserv.c, ipmicmd.c: Added calls to initialize the
	Force OEM code.

2003-05-15 Corey Minyard <cminyard@mvista.com>

	* lanserv.h: Moved to include/OpenIPMI
	
	* lanserv.c: Handled move of lanserv.h
	* lanserv_asf.c: ditto
	* lanserv_ipmi.c: ditto
	* lanserv_emu.c: ditto

	* configure.in: Move to version 0.4.0
	
	* ipmicmd.c: Changed the order of the lun and netfn to make it
	consistent with ipmi_ui.

	* ipmicmd.1: Wrote some docs for ipmicmd.

	* include/OpenIPMI/ipmi_conn.h: Reworked the connection reporting,
	changed "fail" to "change" everywhere to make it more accurate,
	and report all connection changes through the same interface.
	* domain.c: ditto
	* ipmi_lan.c: ditto
	* ipmi_smi.c: ditto
	* ipmicmd.c: ditto
	* sample.c: ditto
	* ui.c: ditto
	* include/OpenIPMI/ipmi_lan.h: ditto
	* include/OpenIPMI/ipmi_ui.h: ditto
	* include/OpenIPMI/ipmiif.h: ditto

	* include/OpenIPMI/ipmiif.h, domain.c: Modified the domain
	interface to support more than one connection (although the code
	still only supports one).

2003-05-14 Corey Minyard <cminyard@mvista.com>

	* ipmi.c, conn.c: Moved some connection handling stuff into a
	new file.
	* include/OpenIPMI/ipmi_int.h: ditto
	* include/OpenIPMI/ipmi_conn.h: ditto

	* include/OpenIPMI/ipmi_conn.h: Added a lot of connection handling
	changes for handling different and dynamic IPMB addresses, and for
	supporting the concept of a connection being "active".
	* ipmi.c: ditto
	* ipmi_lan.c: ditto
	* ipmicmd.c: ditto
	* ipmi_smi.c: ditto
	* domain.c: ditto
	* ipmi.c: ditto
	* ipmi.c: ditto

	* lanserv.h, lanserv.c, lanserv_ipmi.c: Added a lot of OEM
	handling.

	* sensor.c: Fixed a missing return.

2003-05-13 Corey Minyard <cminyard@mvista.com>

	* ipmi.c, ipmi_lan.c, ipmi_smi.c: Added infrastructure so that
	OEMs can see connections by device id when the connection is
	first established.
	* include/OpenIPMI/ipmi_oem.h: ditto
	* include/OpenIPMI/ipmi_int.h: ditto
	
	* ipmicmd.c: Reworked this so it sits on top of an IPMI
	connection.  This means you can make LAN connection now.

	* ipmi_utils.c: Split out some generic IPMI things that don't
	depend on anything else.
	
	* everything: Added the concept of an IPMI domain, and replaced
	the "BMC" with the "domain".  This was not a huge change from a
	usage point of view, but was a big restructure internally.  This
	way, we can support multiple BMC connections into a domain.

2003-05-05 Corey Minyard <cminyard@mvista.com>

	* ui.c: Added connection retrying.

2003-05-04 Corey Minyard <cminyard@mvista.com>

	* ipmi_lan.c: Got IPMI LAN stuff working again.

	* ui.c: Updates for the new id handling.

2003-05-02 Corey Minyard <cminyard@mvista.com>

	* lanserv_emu.c: Added an emulator for testing.

	* include/OpenIPMI/ipmi_conn.h: Added a way for the interface code
	to provide the IPMB address.
	* mc.c, ipmi_lan.c, ipmi_smi.c: ditto

	* mc.c: Added a valid field to the MC, right now just for BMCs, to
	handle shutdown races.

2003-05-01 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/ipmi_types.h: A restructure of the id's was
	done to remove the MC validation calls from the rest of the code
	and use the standard MC callbacks.  It also added sequence
	numbers to MCs and MC ids so that if an MC is freed and the same
	memory is re-allocated, the MC still won't compare with an old
	id.
	* include/OpenIPMI/ipmi_mc.h: ditto
	* include/OpenIPMI/ipmi_sensor.h: ditto
	* control.c: ditto
	* entity.c: ditto
	* sensor.c: ditto
	* mc.c: ditto
	* sdr.c: ditto
	* sel.c: ditto

	* include/OpenIPMI/ipmi_int.h, ipmi.c: Added a sequence number
	allocator.

2003-04-30 Corey Minyard <cminyard@mvista.com>

	* lanserv.c: Modified the server to support two LAN connections
	specified in the config file, and modified it to always return the
	message from the file descriptor that received the message.

	* mc.c: Modified the SEL time code to set the time on the SEL,
	not get the time, so the SEL time will be correct.

2003-04-29 Corey Minyard <cminyard@mvista.com>

	* ipmi_lan.c, include/OpenIPMI/ipmi_lan.h: Added multiple IP
	addresses for a BMC.

	* include/OpenIPMI/ipmi_conn.h: Started restructuring the
	connection code so that the user allocates the connection and
	passed it into the main IPMI code.  This decouples the main IPMI
	code from the connection code, and readies support for having more
	than one BMC connection into a box.
	* include/OpenIPMI/ipmi_lan.h: ditto
	* include/OpenIPMI/ipmi_smi.h: ditto
	* include/OpenIPMI/ipmi_ui.h: ditto
	* include/OpenIPMI/ipmiif.h: ditto
	* mc.c: ditto
	* ipmi_lan.c: ditto
	* ipmi_smi.c: ditto
	* basic_ui.c: ditto
	* sample.c: ditto
	* ui.c: ditto

	* include/OpenIPMI/ipmi_types.h: Moved ipmi_con_t as an opaque
	type into here, so the user can access it.
	
2003-04-28 Corey Minyard <cminyard@mvista.com>

	* lanserv.c, lanserv.h, lanserv_ipmi.c: Added logs for error and
	notification handling.

	* lanserv.c, lanserv.h, lanserv_ipmi.c: Added an OEM message
	handler.

2003-04-27 Corey Minyard <cminyard@mvista.com>

	* lanserv.c, lanserv.h, lanserv_ipmi.c: Added timeout handling
	for sessions.

2003-04-26 Corey Minyard <cminyard@mvista.com>

	* lanserv_ipmi.c: Added incoming session sequence number
	checking.

2003-04-25 Corey Minyard <cminyard@mvista.com>

	* lanserv.c, lanserv_ipmi.c, lanserv_asf.c, lanserv.h: Added a LAN
	to SI interface.

	* include/OpenIPMI/ipmi_auth.h: Abstracted the memory allocation
	so the auth routines don't depend on OpenIPMI.
	* ipmi_lan.c: ditto
	* ipmi_auth.c: ditto
	* md2.c, md2.h: ditto
	* md5.c, md5.h: ditto
	* ipmi_lan.c: ditto

	* ipmi_malloc.c, include/OpenIPMI/ipmi_int.h: Made ipmi_mem_alloc
	take an int size, not a size_t size.

2003-04-24 Corey Minyard <cminyard@mvista.com>

	* strings.c: Fixed a bug in getting the sensor reading name.

	* priv_table.c, include/OpenIPMI/ipmi_auth.h: Added a table and
	handling for figuring out if a message is permitted for a certain
	priviledge level.
	
	* include/OpenIPMI/ipmi_msgbits.h: Added all the message ids from
	table G-1 from the IPMI 1.5 spec.

2003-04-23 Corey Minyard <cminyard@mvista.com>

	* ipmi.c, ipmi_auth.c: Created ipmi_auth.c from some stuff in
	ipmi.c

	* include/OpenIPMI/ipmi_msgbits.h: Added a bunch of message ids.

2003-04-22 Corey Minyard <cminyard@mvista.com>

	* ipmicmd.c, include/linux/ipmi.h: Added a debug interface to
	ipmicmd.

	* ui.c: Added a way to dump all an mc's information.

2003-04-17 Corey Minyard <cminyard@mvista.com>

	* ui.c: Fixed a double free on set_control error conditions.

	* mc.c: Added set functions for all the specific MC capabilities.

	* configure.in: Move to version 0.3.1.

	* mc.c: Added a mechanism to ignore IPMB addresses.

	* configure.in: Move to version 0.3.0b.

	* ui.c: Ignore control values when an error is reported from
	reading a control.

2003-04-16 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.3.0.

	* mc.c: During shutdown, delete entities after sensors and
	controls because sensors and controls may refer to entities.

2003-04-15 Corey Minyard <cminyard@mvista.com>

	* ipmi_lan.c: Implemented a max outstanding message count to
	avoid killing a LAN BMC, and implemented a queue to hold extra
	messages.

2003-04-15 Duncan Laurie <duncan@sun.com>

	* ipmi_lan.c: Fix a couple of bits when the Send Message variant
	in lan_send is used.  Fix a double-unlock condition that
	happens with LAN response timeouts.

	* ipmi_lan.c: add a Set Session Privilege Level command to the end
	of the session setup sequence.  It is required because despite
	what you use the in the "privilege level" field in Activate
	Session command it opens in User level.

2003-04-15 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.2.7.

	* include/OpenIPMI/ipmi_mc.h, OpenIPMI.texi:  Change the name
	of ipmi_bmc_get_startup_SEL_time() to ipmi_mc_get_startup_SEL_time(),
	in the docs and includes, since it had already changed in the code.

2003-04-14 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.2.6.

2003-04-10 Louis Zhuang <louis.zhuang@linux.co.intel.com>, Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/selector.h: Added sel_select() to the include
	file.

	* sample.c: Added an example of using sel_select().

	* selector.c: Some cleanups.

2003-04-03 Duncan Laurie <duncan@sun.com>

	* ipmi_lan.c: Fixups trying to the the lan code working.

2003-04-01 Corey Minyard <cminyard@mvista.com>

	* mc.c: Changed the event receiver setting so that it is always
	done for new MCs, and it is done after the SDRs are read.  That
	way, any pending conditions for a new MC will be generated
	immediately with a valid sensor to handle it.

	* mc.c: Modified event handling so that events from the BMC get
	delivered properly.  It was not converting events from the system
	interface properly.

2003-03-31 Corey Minyard <cminyard@mvista.com>

	* all: Really release verion 0.2.5.

	* ui.c: Reset the termios on an error exit, too.

	* sdr.c: Fixed the SDR fetch to only fetch the exact amount of
	data left, instead of trying to get as much as possible, when at
	the end of the SDR.  Apparently some hardware doesn't handle this
	properly.

2003-03-27 Corey Minyard <cminyard@mvista.com>

	* ipmi_smi.c: Removed the timing of commands, because the
	low-level driver does it, and it introduced some race conditions.
	Specifically, if OpenIPMI timed out the command and the memory
	address got reused before the message came back in, then the
	message would be delivered to the wrong place.  It generally only
	happened when sitting for a long time in the debugger (so a whole
	slew of things happened at once).

	* example_oem.c, Makefile.am, OpenIPMI.texi: Added an example OEM
	plugin file for others to use to build their plugins.

2003-03-26 Corey Minyard <cminyard@mvista.com>

	* mc.c: Fixed some problems with non-BMC SELs.

	* ui.c: Added a log at startup to tell you to wait until startup
	is complete.

	* ui.c: Added a quit command.

2003-03-25 Corey Minyard <cminyard@mvista.com>

	* ui.c: The UI will no longer attempt to read unreadable
	controls.

2003-03-19 Corey Minyard <cminyard@mvista.com>

	* sdr.c: Modified the reservation support handling for device
	SDRs.  Start out assuming that it is supported, and if it returns
	an invalid command then assume it is not supported.  There is no
	clear way to determine if reservation is supported on device SDRs.

	* sdr.c: Check the proper MC flag if it is a sensor SDR to see if
	it supports device SDRs.

	* configure.in: Updated version to 0.2.5.

2003-03-14 Corey Minyard <cminyard@mvista.com>

	* sensor.c: Yet one more cleanup for compact sensor records,
	increment the source index properly.

	* sensor.c: Removed handle_deleted_sensor() and always use
	ipmi_sensor_destroy() to clean up a sensor.

	* control.c, include/OpenIPMI/ipmi_control.h: Added a count
	for the number of controls in a control repository.

	* sensor.c, include/OpenIPMI/ipmi_sensor.h: Added a count
	for the number of sensors in a sensor repository.

	* mc.c, include/OpenIPMI/ipmi_mc.h: Added the concept of an
	MC being active or inactive.  Active MCs are present in the
	system.  Inactive MCs are not present but referenced by SDRs, so
	they cannot be deleted.

2003-03-13 Jeff Zheng <Jeff.Zheng@Intel.com>

	* sample.c: Added a simple sample application.

2003-03-12 Corey Minyard <cminyard@mvista.com>

	* mc.c: Fixed a cleanup case in the routine that finds or creates
	an MC.

	* sensor.c: Minor sensor cleanup additions.

	* sensor.c: Fixed compact sensor records to copy the data contents
	instead of the pointer.

2003-03-06 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.2.4.

	* mc.c: Cleaned up some naming (use bmc when it is a bmc).

	* ui.c, basic_ui.c: Added a "reconnect" command to disconnect and
	reconnect to the BMC.

	* configure.in: Move to version 0.2.3.

	* mc.c: Added rescanning the entities when a connection comes
	back.

2003-03-05 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/ipmiif.h: Fixed the description of the
	ipmi_bmc_add_con_fail_handler() call to be accurate and complete.

	* mc.c: Added starting a rescan of the IPMB bus when a connection
	comes back.

2003-02-27 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.2.2.

	* entity.c: Cleaned up entity presence detection so it works
	properly with an entity presence sensor.

	* sdr.c: Fixed a bug where the SDR fetch would go into an infinite
	loop if the last SDR was not a sensor.

	* ui.c: Fixed things so the "-c" option (not full screen) works
	ok.

2003-02-26 Corey Minyard <cminyard@mvista.com>

	* include/OpenIPMI/os_handler.h: Added thread functions and moved
	all the function OpenIPMI does not use to the end.

2003-02-25 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.2.1.

2003-02-25 Todd David <todd.c.davis@intel.com>

	* ipmi.c: Added a check for the lock actually being allocated in
	ipmi_check_lock().

2003-02-24 Corey Minyard <cminyard@mvista.com>

	* test1.c, Makefile.am: Removed this bogus file.

	* sensor.c: Handle the same sensor received multiple times from
	the same SDR.  This actually moves the sdr_sensors source array
	into the sensor itself so it can be deleted regardless of where it
	came from.

	* sdr.c: The Get Device SDR Info command is optional (even if the
	device has device SDRs, for some strange reason), so default the
	information if it's not implemented but the device supports device
	SDRs.

	* mc.c: Ignore device SDRs if we get an error back from querying
	them.

2003-02-21 Corey Minyard <cminyard@mvista.com>

	* configure.in: Moved to version 0.2.0.

	* include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_sensor.h
	Added rearm support for sensors.
	* sensor.c: ditto
	* ui.c: ditto

	* include/OpenIPMI/ipmiif.h: The spec was very confusing in
	section 29.11 and 29.14 (1.5 spec) about the event messages and
	scanning enable/disable.  After studying the spec more, I'm pretty
	sure that 1 means enabled and 0 means disabled.  I think the spec
	is saying that 0 means disabled in the way it presents this.
	* include/OpenIPMI/ipmi_int.h: ditto
	* sensor.c: ditto
	* entity.c: ditto
	* ipmi.c: ditto
	* mc.c: ditto
	* ui.c: ditto

	* mc.c: Changed setting the event receiver for an MC to only do it
	if the event receiver was set incorrectly.

	* sel.c: Fixed a missing unlock.

	* sel.c: Modified the way individual record deletes occur and
	fetches occur to use an opq.  This way, reservations won't get
	mixed up.  Also modified individual deletes to check the value of
	the event before they actually delete it, to make 100% sure they
	are deleting the right event.

	* include/linux/ipmi.h, include/linux/ipmi_msgdefs.h: Converted to
	the new versions of the kernel headers.
	* include/OpenIPMI/ipmi_addr.h: ditto
	* include/OpenIPMI/ipmi_types.h: ditto
	* ipmi_smi.c: ditto

	* ipmicmd.c, Makefile.am: Added ipmicmd to this code.

2003-02-20 Corey Minyard <cminyard@mvista.com>

	* ui.c: Fixed a memory leak with controls.

	* sel.c: Make sure to report that a sel delete completed, even if
	we can only clear the whole SEL when all are done.

	* include/OpenIPMI/ipmi_msgbits.h: Added event receiver commands.

	* mc.c: Fixed a memory leak deleting logs.

	* ui.c: Added a command to scan an IPMB address.

	* mc.c: Added code to set the event receiver for MCs to whatever
	the current event receiver device is.

	* ipmi.c, include/OpenIPMI/ipmi_addr.h: Added a way to get the
	slave address for an address.

	* mc.c: Since the OEM code can change the values from get device
	id, the comparison code (to tell if an MC has changed) was changed
	to used a real copy of the values from the get device id, instead
	of the used values.

	* Makefile.am, ipmi.c, ipmi_malloc.c: Split off the memory
	debugging stuff into a separate file.

	* Makefile.am: Added heap.h to the file.

	* mc.c, include/OpenIPMI/ipmi_oem.h: Changed the name of the
	MC removal callback to reflect it's function better (since it's
	not BMC-related).

	* entity.c: Fixed a memory leak with presence sensors.

2003-02-19 Corey Minyard <cminyard@mvista.com>

	* mc.c, include/OpenIPMI/ipmi_conn.h: Modified the ipmi_init_con()
	call to take the slave address.
	
	* ipmi_lan.c, ipmi_smi.c: Now pass in the slave address to
	ipmi_init_con().

	* OpenIPMI.texi: Updated docs for changes.

	* ui.c: Various cleanups for the SMI address and the new SEL
	setup.
	
	* ilist.c, ilist.h: Added a way to traverse the list backwards.

	* ipmi_smi.c: Converted the BMC to use an SMI address.

	* mc.c, include/OpenIPMI/ipmi_mc.h: Added a way for the OEM code
	to add a way to fetch the SMI slave address.

	* mc.c, include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_mc.h, sel.c:
	Changed SEL support to be per-MC (as it should be) and not on the
	BMC.  This will allow support for SELs not on the MC, and for
	multiple SEL devices in a system.  It required the removal of
	ipmi_bmc_del_event_by_recid(), and a modification to the event
	structure, since the system now has to know what MC the event came
	from.

	* include/OpenIPMI/ipmi_types.h: Added an MC to the event so we
	know which MC it came from.

2003-02-18 Corey Minyard <cminyard@mvista.com>

	* ui.c: Added a way to set the event enables.

	* sdr.c: Made some of the err info logs unique.

	* mc.c, entity.c: memory leak removals
	
	* ilist.c, ilist.h, ipmi.c: Added separate allocation routines
	for the ilist code.
	
	* mc.c, include/OpenIPMI/ipmi_oem.h: Added a shutdown callback to
	the OEM registeration.

	* mc.c, include/OpenIPMI/ipmi_mc.h: Added global shutdown code for
	the mc.

	* ipmi.c, include/OpenIPMI/ipmiif.h: Added global shutdown code.
	
	* ipmi.c, include/OpenIPMI/ipmi_int.h: Added memory debugging
	code.
	
	* basic_ui.c: Converted over to the new memory debugging code.
	* control.c: ditto
	* entity.c: ditto
	* ipmi.c: ditto
	* ipmi_lan.c: ditto
	* ipmi_smi.c: ditto
	* mc.c: ditto
	* md2.c: ditto
	* md5.c: ditto
	* opq.c: ditto
	* sdr.c: ditto
	* sel.c: ditto
	* selector.c: ditto
	* sensor.c: ditto
	* ui.c: ditto
	* ui_command.c: ditto
	* ui_keypad.c: ditto
	* ui_os.c: ditto

	* selector.c, heap.h: Split out the heap code into a generic.

	* test_btree.c: Added a test for the heap code.

2003-02-13 Corey Minyard <cminyard@mvista.com>

	* configure.in: Moved to version 0.1.4.

2003-02-12 Corey Minyard <cminyard@mvista.com>

	* mc.c, sdr.c, sel.c: Changed all 1-bit integers to unsigned so
	that comparisons work properly.
	
2003-02-09 Corey Minyard <cminyard@mvista.com>

	* configure.in: Moved to version 0.1.3.

	* Makefile.am: Fixed include of "include" dir to be based on
	srcdir, removed -Werror.

	* src.c, selector.c, sel.c, ui.c: Fixed some deprecated
	operations to avoid warnings in gcc3.x.

2003-02-03 Corey Minyard <cminyard@mvista.com>

	* mc.c, include/OpenIPMI/ipmiif.h, sel.c, include/OpenIPMI/ipmi_sel.h:
	Modified the previous change to report the number of entries in
	the SEL, since the number of total entries available in the SEL
	may not be available.
	
	* mc.c, include/OpenIPMI/ipmiif.h, sel.c, include/OpenIPMI/ipmi_sel.h:
	Added a way to get the estimated number of entries left for new
	events in the SEL.

2003-01-30 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move to version 0.1.2.

	* include/OpenIPMI/ipmi_msgbits.h: Added the master read/write
	command.

2003-01-29 Corey Minyard <cminyard@mvista.com>

	* mc.c, include/OpenIPMI/ipmiif.h: Added a mechanism for changing
	the SEL rescan timers and the bus rescan timers.

2003-01-28 Corey Minyard <cminyard@mvista.com>

	* ui.c: Fixed problems with the previous va_arg problem.

2003-01-27 Corey Minyard <cminyard@mvista.com>

	* entity.c: Lots of little cleanup for parent-child relationships
	and shutdown.

	* sensor.c: Lots of little cleanups for handling new SDRs.

	* ui.c: Fixed some problems with threshold display, and added
	the current value of the threshold (out of range).
	
	* ui.c: Fixes some va_arg problems.

	* sensor.c: Fixed problems with sensor allocation.

2003-01-24 Corey Minyard <cminyard@mvista.com>

	* ui.c: Changed shutdown code to close the connection first.
	
	* mc.c: Modified the close connection code to avoid locking
	problems.

	* include/OpenIPMI/ipmiif.h: Changed the format of the close done
	callback to remove the BMC (since it will be gone).
	
	* selector.c, include/OpenIPMI/selector.h: Modified the selector
	code to be reentrant
	
	* ipmi.c, include/OpenIPMI/ipmi_int.h: Added a way to allocate a
	lock using the global IPMI selector.

	* basic_ui.c, test1.c: Changed to account for the selector
	changes.

2003-01-22 Corey Minyard <cminyard@mvista.com>

	* basic_ui.c, ui.c, include/OpenIPMI/ipmi_ui.h: Start working on a
	command-line only version of the ui.

	* ui.c: Rework to abstract the output, getting ready for doing
	command-line only.

	* mc.c, include/OpenIPMI/ipmi_mc.h: Added support for setting more
	device support bits.

	* ui.c: Added a command to dump the SDRs.
	
	* sdr.c: Reworked the fetching of SDRs to get the SDR info first,
	then to do the reservation if it is required.

	* sensor.c: Fixed the sensor calculation values to be the right
	signedness.
	
	* mc.c: Modified SEL fetch to restart the timer after the previous
	SEL fetch completes.

2003-01-21 Corey Minyard <cminyard@mvista.com>

	* configure.in: Went to version 0.1.1

2003-01-20 Corey Minyard <cminyard@mvista.com>

	* ui.c: Added a list_sel command.

	* ui.c: Modified the clear sel command to go through all the
	events and delete them, instead of clearing the SEL with a
	command.

	* sel.c: Fixed the next, previous, first, last, and get all
	operations to take into account deleted events.  Also fixed a bug
	where re-adding an event that was deleted would cause the count to
	be wrong.

2003-01-17 Corey Minyard <cminyard@mvista.com>

	* ui.c, include/OpenIPMI/ipmi_int.h: Added a debug flag to disable
	LAN connections.

2003-01-16 Corey Minyard <cminyard@mvista.com>

	* mc.c, include/OpenIPMI/ipmiif.h, include/OpenIPMI/ipmi_conn.h:
	Added a mechanism to report failures of the lower-level
	connection, and added code to ignore periodic events (bus scan,
	SEL scan) while the connection is down.
	* ipmi_lan.c: ditto
	* ipmi_smi.c: ditto
	
	* OpenIPMI.texi: Documented the changes to the SEL code.
	
	* mc.c, include/OpenIPMI/ipmi_oem.h: Added an OEM callback for MC
	removal.

	* mc.c: Added detection of when an MC goes away or changes.

	* mc.c: Cleaned up the MC cleanup code to consolidate it.

	* entity.c: Modified entity sensor/control deletion so that if all
	the entities and sensors are gone, and the entity was
	auto-created, that the entity itself would be destroyed.

	* sel.c: Reworked the event deletion code so that it works even
	without the ability to delete individual entries.  If all the
	entries in the local database are deleted, it will clear out the
	database (if the reservation hasn't been lost).

2003-01-15 Corey Minyard <cminyard@mvista.com>

	* sel.c: Fixed a locking problem with SEL operations.
	
	* mc.c, include/OpenIPMI/ipmi_mc.h: Added a hook for event
	deletion handling, so OEM code can do its own event deletion.

	* mc.c, include/OpenIPMI/ipmi_mc.h: Added handling for ignoring
	events (only sending to the unhandled interface) for events that
	were already in the SEL at startup.

2003-01-14 Corey Minyard <cminyard@mvista.com>

	* ui.c: Added a fix for handling local interface BMCs.

2003-01-13 Corey Minyard <cminyard@mvista.com>

	* configure.in: Move version to 0.1.0.

	* OpenIPMI.texi: More work on docs.
	
	* sel.c, mc.c: Minor cleanups.

	* ipmi_smi.c: Modified the timeout to be a much larger value.
	The device drivers have their own timers, we just need to make
	sure something doesn't go wrong here.

2003-01-09 Corey Minyard <cminyard@mvista.com>

	* mc.c: Added a periodic rescan of the presence sensors
	periodically (with the bus scan).
	
	* ui.c: Added rescanning of entities when displaying them.
	
	* mc.c, include/OpenIPMI/mc.h, entity.c: Added support for
	handling unhandled (not delivered to the user) events, so the user
	can delete them if they like.

	* ui.c: The info wasn't being passed into the id-to-pointer
	converted for the mccmd command.
	
	* OpenIPMI.texi: More work on docs.

	* control.c: Fixed the calculation size for the non-standard entry
	array size.

2003-01-09 Corey Minyard <cminyard@mvista.com>

	* OpenIPMI.texi: More work on docs.
	* include/OpenIPMI/ipmi_control.h: ditto
	* include/OpenIPMI/ipmi_sensor.h: ditto

	* include/OpenIPMI/ipmi_control.h, control.c: Added a missing
	ipmi_control_send_command_addr() function.

	* include/OpenIPMI/ipmi_control.h, control.c: Added a cleanup
	handler for the OEM info.
	* include/OpenIPMI/ipmi_sensor.h, sensor.c: ditto

	* entity.c, mc.c: Added an entity-specific lock, and used it where
	entities were specifically being locked.

	* ipmi_sensor.c, sensor.c: Made the sensor callbacks const.
	

2003-01-08 Corey Minyard <cminyard@mvista.com>

	* OpenIPMI.texi: More work on docs.

	* include/OpenIPMI/ipmi_int.h, mc.c, ui.c: Added an event debug
	level.
	
2003-01-07 Corey Minyard <cminyard@mvista.com>

	* OpenIPMI.texi: More work on docs.

	* Makefile.am: Turned on lock checking code generation.
	
	* include/OpenIPMI/ipmi_int.h: Cleaned up the debugging flags.

	* include/OpenIPMI/ipmi_sel.h: Changed the name "log" to "event".
	* include/OpenIPMI/ipmi_oem.h: ditto
	* include/OpenIPMI/ipmi_sensor.h: ditto
	* include/OpenIPMI/ipmi_types.h: ditto
	* include/OpenIPMI/ipmiif.h: ditto
	* entity.c: ditto
	* ipmi.c: ditto
	* mc.c: ditto
	* sel.c: ditto
	* sensor.c: ditto
	* test1.c: ditto
	* ui.c: ditto
	
	* sel.c: Cleaned up the rather broken locking.
	
	* sdr.c, include/OpenIPMI/ipmi_sdr.h: Cleaned up the names and
	cleaned up the rather broken locking.
	
	* control.c: Added IPMI logging information.
	* sdr.c: ditto
	* sel.c: ditto
	* sensor.c: ditto
	
	* configure.in: Changed to version 0.0.3.
	
	* include/OpenIPMI/log.h: Reworked log handling to add a log type.
	* include/OpenIPMI/os_handler.h: ditto
	* ipmi.c: ditto
	* ipmi_lan.c: ditto
	* ipmi_smi.c: ditto
	* mc.c: ditto
	* sel.c: ditto
	* ui.c: ditto
	* ui_os.c: ditto

	* include/OpenIPMI/log.h, include/OpenIPMI/ipmiif.h: moved log
	information from ipmiif.h to log.h.

2003-01-06 Corey Minyard <cminyard@mvista.com>

	* ui.c: Converted the bmc pointer to a bmc id.
	
	* ipmi_smi.c: Fixed a double unlock.
	
	* ipmi.c, include/OpenIPMI/ipmi_int.h, ui_os.c: Added code for
	checking for locking errors, fixed locking errors
	* control.c: ditto
	* entity.c: ditto
	* mc.c: ditto
	* sensor.c: ditto

	* include/OpenIPMI/os_handler.h: Added callbacks for telling
	if a lock is held.
	* entity.c, include/OpenIPMI/ipmiif.h, ui.c:  Added IPMI_ in front
	of some enumeration values.

2003-01-03 Corey Minyard <cminyard@mvista.com>

	* sensor.c: Modified the way the reporting of the hot-swap sensor
	is done, so it can support being a single offset in a sensor (like
	a slot sensor).
	* include/OpenIPMI/ipmi_sensor.h: ditto
	* include/OpenIPMI/ipmiif.h: ditto
	
	* ipmi_lan.c: Modified the timers to be alloc/free/start/stop, so
	they can be allocated and reused at will.
	* ipmi_smi.c: ditto
	* mc.c: ditto
	* test1.c: ditto
	* ui_os.c: ditto
	* include/OpenIPMI/os_handler.h: ditto

2002-12-18 Corey Minyard <cminyard@mvista.com>

	* Release of the 0.0.2 version
