============ VERSION 9.0.0-H35 (2010/11/08) ============ ######## BUG FIXES ######## * sie/class/hardware Fix Solaris SPARC discovery of CD/DVD to properly report speed on SCSI/ATA devs. ============ VERSION 9.0.0-H34 (2010/09/13) ============ ######## BUG FIXES ######## * sie/class/general Fix Primary User discovery on Solaris which sometimes may cause a seg fault or report incorrect data. Failure can occur when we directly read wtmp/wtmpx files. We have re-activated support for using getutent()/getutxent() but now we use utmpname()/utmpxname() to specify the wtmp/wtmpx file we want to read. Additional error checking/validation is also performed for all wtmp/wtmpx methods. * sie/class/netif Fix error in debug message statements in HPUX lanadmin parser which could result in core dump when debug is enabled. ============ VERSION 9.0.0-H33 (2010/08/24) ============ ######## BUG FIXES ######## * sie/class/general Fix "CPU Speed" discovery on HPUX 11i v3 IA64 to correctly parse new machinfo(1) output format. * sie/class/general Fix "CPU Count Socketed" on Solaris 9 SPARC to be correct on certain platforms. We previously ignored psrinfo on < Solaris 10 but the psrinfo now appears valid on Solaris 9 so we now use it on that OS version. * sie/class/netif Fix MAC address discovery on HPUX via lanadmin to insert leading '00' elements as necessary since the address displayed by lanadmin may ommit leading '00'. * sie/class/netif Improve validity checks of DLPI Mac Addr discovery to check for garbage content. * sie/class/netif Fix MACaddr discovery on HPUX to work when DLPI fails. The DLPI discovery was setting MACaddr but as a zero length string which prevented the lanadmin parser from setting the discovered MACaddr. The generic DLPI MACaddr discovery has been fixed to check for MACaddr strings which are < 11 chars. ============ VERSION 9.0.0-H32 (2010/07/29) ============ ######## BUG FIXES ######## * sie/class/general Fix how Boot Time and Up Time are discovered on Linux to use getutid() first and then fall back to /proc. Previously we used /proc only which could result in Boot Time values which changed by 1 second in between runs of SysInfo on the same host. ============ VERSION 9.0.0-H31 (2010/07/23) ============ ######## BUG FIXES ######## * sie/class/service Fix segfault during Service scan on Linux systems with certain /etc/init.d files. A NULL deref was occuring on certain line patterns. ============ VERSION 9.0.0-H30 (2010/07/13) ============ ######## BUG FIXES ######## * sie/class/partition Fix Usage reporting of "partition" data on Solaris to report partitions used by ZFS as "STORVOL" with Manager (new field) "ZFS". Previouisly ZFS partitions where reported as "UNUSED". ============ VERSION 9.0.0-H29 (2010/06/21) ============ ######## BUG FIXES ######## * sie/class/hardware Fix loop in Device class data reported on AIX. The DevAdd() function was auto-creating Parent devices with Name "" (empty). ============ VERSION 9.0.0-H28 (2010/05/10) ============ ######## BUG FIXES ######## * sie/class/hardware Fix missing "cpuX" Device class entries on Solaris SPARC. This was caused by not looking for Device Type in "devtype" and "dev_type" LDI properties. - Integrate 8-H66 into 9.0.0. * sie/class/hardware Add "SATABeast2" to CtlrBlockSize to support proper Capacity recognition. * sie/class/netif On Linux we know look in /sys/.../net/ to determine canonical netif name. This reflects new behavior in linux 2.6.30 and later. - Update PCI and CPUID databases. * sie/class/storvol Fix memory corruption issue on aixlvm on systems with 20 or more volume groups as listed by "lsvg". ============ VERSION 9.0.0-H26 (2010/03/17) ============ ######## BUG FIXES ######## * sie/class/general Fix segfault error on AIX during discovery of "boot time" and "up time". Error occured when /etc/utmp was corrupted. * sie/class/hardware Fix detection of CD + DVD drives on Linux. We now check the Vendor data from ATA probe for detection. ============ VERSION 9.0.0-H25 (2010/03/08) ============ ######## BUG FIXES ######## * sie/class/general Fix CPU Count - Socketed and Physical count on Solaris SPARC UltraSPARC-IV systems. ============ VERSION 9.0.0-H24 (2010/02/24) ============ ######## BUG FIXES ######## * sie/class/netif Fix bug causing wrong macaddr to be reported on AIX systems which have virtual netif's. * sie/class/storvol Fix missing vxvm support which was accidentially removed in a prior release on Solaris, HPUX, and AIX. - Update PCI and CPUID db. ============ VERSION 9.0.0-H23 (2010/02/19) ============ ######## NEW FEATURES ######## * sie/class/hardware Add new "Family" attribute for CpuInfo data. Currently supported on X86/X64 systems with SMBIOS. ######## BUG FIXES ######## * sie/class/core Fix bug in SID code which sometimes (rarely) caused invalid address corruption resulting in core dumps. * sie/class/device Fix possible NULL deref resulting in core dump during device discovery. This is a result of strdup(DevData->DevName) with no null check from a fix in 9.0.0-H22. * sie/class/hardware Improve CPU Model detection on Intel X86/X64 CPU's. We now include lookup in our CPUID db to include the CPU Family value. If not found, we revert to prior lookup without Family. This should improve detection of Xeon vs. Core Duo CPU's which often have the same fingerprint. ============ VERSION 9.0.0-H22 (2010/02/18) ============ ######## BUG FIXES ######## * sie/class/general Fix bug which caused "numcpuoffline" output for report and xml to be reported when the --show option was used but did not specify to report "numcpuoffline" (it was shown anyways). - Update PCI and CPUID db. * sie/class/hardware Fix free() of in-use Driver value used in DevInfo and NetIf classes. Result was occasinally a Driver value being reported with non-printable bytes. * sie/class/hardware Add ability for customer to configure exceptions to Device Ignore Alias via new "DevIgnoreAliasExcepts" CFG variable. When set to include "scsiclass,00" this restored the behavior of reporting sdX names on Solaris SPARC for DiskDrives. - Update sizestr.c to support better size units. * sie/class/siteinfo Fix core dump when siteinfo entry has empty/blank "value" field due to null deref. ============ VERSION 9.0.0-H21 (2010/01/30) ============ ######## BUG FIXES ######## * sie/class/general Add ability to not report System Serial if the true system serial is not known when the env var MCSYSINFO_TRUE_SYSSERIAL is set to "yes". This currently only pertains to Solaris SPARC. * sie/class/hardware Add PCI definition for Intel X520-SR2 ether10g. * sie/class/netif Fix Speed value for "79c970" and "VMware Virtual NIC" to be 1Gb. * sie/class/StorVol Remove "(MB)" from Descripton fields of various StorVol attributes. * sie/output/xml Fix XML output of StorVol to nest data within instead of as sibling data. * sie/output/xml Fix XML output of StorVol to add "name" attribute for each data type. ============ VERSION 9.0.0-H18 (2009/12/30) ============ ######## BUG FIXES ######## * sie/class/hardware Fix bug on Solaris hardware discovery which ceased reporting cpuX devices on Solaris 10 and later SPARC. Bug was introduced in 9-H12. ============ VERSION 9.0.0-H17 (2009/12/22) ============ ######## BUG FIXES ######## * sie/class/netif Fix problem with duplicate macaddr being reported on Solaris systems with eg0000X interface names as well as similar names with digits after alpha. ============ VERSION 9.0.0-H16 (2009/12/17) ============ ######## BUG FIXES ######## * sie/class/software Fix NULL deref core dump bug introduced in previous HF in debug messaging for creating new parent's of software nodes in some cases. * sie/class/software Fix bug in software discovery on AIX which can lead to infinite loop of discovered packages. This occurs when we auto create a package for a new pkg's parent without a Version for the parent and then later we re-add the parent with a Version. We now update the internal hashtables in this case. ============ VERSION 9.0.0-H15 (2009/12/04) ============ ######## BUG FIXES ######## * sie/class/device Rename Device Names to match the official system network interface name used by ifconfig and netstat. This previously resulted on HPUX reporting a Device name of 'igelan1' but HPUX only recognized this device as 'lan1'. * sie/class/general Fix "kernbits" on Solaris x64 to properly report "64". Previously this worked in most cases, but failed on VMware guest instances of Solaris. * sie/core Fix several NULL deref bugs in XML output code which resulted in seg faults. * sie/report Fix report output for wide data to print "name" field if the Name (narrow) data member is empty. We now correctly check NameW to see if it's set. ============ VERSION 9.0.0-H14 (2009/11/29) ============ ######## NEW FEATURES ######## * doc/ReleaseNotes Document support for MacOS 10.6 with 9-H14 and later. * mcsysinfod Add support for inetd mode to support use of launchctl on MacOS 10.6 and later. ######## BUG FIXES ######## * sie/class/general Fix "CPU Count Virtual" on HPUX to report single value in format output. In H56 we introduced a double output in format report. * sie/class/hardware Fix CPU Model on certain Solaris X86/X64 based systems to remove the CPU Mfg and generic words like "CPU". * sie/class/hardware Fix memory size on certain Solaris SPARC systems which support prtfru data to report correct values. In some cases the Capacity of memory devices were reported as Bytes instead of MB or GB. ============ VERSION 9.0.0-H13 (2009/11/29) ============ ######## BUG FIXES ######## * sie/class/general Fix "CPU Count Virtual" on HPUX to use mpsched as data source. Previosly no value was reported. * sie/class/hardware Fix issue on Solaris with certain RAID devices which have dev alias of "scsiclass,00" from having their Vendor, Model, and other attributes merged into real/raw disk drives. This fix causes SysInfo to not look for existing SysInfo discovered devices with name "scsiclass,00". * sie/core Fix possible NULL deref in xml output function OutputXmlProp() and OutputXmlPropW(). ============ VERSION 9.0.0-H12 (2009/11/11) ============ ######## BUG FIXES ######## * sie/class/bios Include BIOS characteristics in XML output. * sie/class/bios Report Bios characteristics in class Bios same as reported in Hardware for bios0. * sie/class/bios Report "Release Date" for SMBIOS based BIOS in class Bios in addition to class Hardware. * sie/class/software Avoid reporting duplicate software entries for packages/products which have no Version. In particular the "System/YaST" PRODUCT on SLED 11 was being reported multiple times. * sie/core Fix Seg Fault when --debug is used and a command run for debug purposes takes more than 10 seconds to complete on Solaris. ============ VERSION 9.0.0-H11 (2009/10/29) ============ ######## NEW FEATURES ######## * doc/ReleaseNotes Document support for SLED 11 and CentOS 3-5. ######## BUG FIXES ######## * doc/RefMan Update mcsysinfoperl to specify that $mcSysInfo->Program() is REQUIRED and not optional. * sie/class/hardware Fix null deref bug which can result in segv failure during hardware discovery on Linux 2.6 systems. Bug occurs in SysfsDevDataParse(). Reported on some SLED 11 x86 systems. * sie/class/hardware Fix bug resulting in incomplete CPU Cache data being reported on certain Linux systems. Bug was due to auto-generated cpuX devices overwriting SMBIOS CPU/Cache data. * sie/class/hardware Report Solaris Virtual Disk device "vdc" (aka "sun4-virtual-disk") as a DISKDRIVE with all appropriate discovery. Previously reported as a GENERIC device. - Integrate 8-H53 into 9-H10 ============ VERSION 9.0.0-H9 (2009/10/16) ============ ######## BUG FIXES ######## * sie/class/hardware Fix Capacity reporting for large (>2GB) RAID devices like Dell PERC 6/i again. This bug re-introduced by fix for detecting /sysfs disks with partition subdirs. * sie/class/hardware Fix incorrect auto-generated ethX names on Linux 2.6.18. This fix includes new MCSYSINFO_NETIF_AUTO_DEVNAME which if set to "no" will disable this behavior. * sie/class/hardware Fix definetion of "Q" to be "QLogic" and PCI 0x8000/0x8001 to be "QLE8142". ============ VERSION 9-GA (2009/03/27) ============ ######## NEW FEATURES ######## * class/hardware Update SMBIOS support to 2.6.0. * class/hardware Add new CpuInfo attributes CoreCount, CoreEnabledCount, and ThreadCount. Currently only supported via SMBIOS 2.5+. * doc/RefMan Document in more detail the device format. * doc/RefMan Document new Process class. * doc/ReleaseNotes Add support for SLES 11.0. - Fix build errors for emcclar. * doc/ReleaseNotes Re-write Supported System Matrix to make it easier to determine what Classes and features are supported on each platform. * doc/UserGuide Add doc on all supported data Classes. * sie/class/general Look for override values for "System Serial Number" and "Chassis Serial Number" in SiteInfo entries of "systemserial" and "chassisserial". * sie/class/general For "Primary User Login" and "Primary User Name" we now look for siteinfo keys "primaryuserlogin" and "primaryusername" and (if found) use as overrides. * sie/class/general Implement new "Chassis Serial Number" attribute for class General. This value is usually only reported on Blade systems. On Blade systems Chassis Serial is the serial of the enclosure and System Serial is the serial of the Blade card. On non Blade systems Chassis Serial is not reported. Currently Chassis Serial is only available on systems which support IPMI access to Baseboard Management Cards (BMC's). * sie/class/hardware Move the probe for monitor EDID data on Linux X86 from within the main SIE to be a seperate SysInfo driver process. This isolates SIE from any unexpected faults and bugs in the VBE code in the Linux kernel. * sie/class/hardware Enhance Monitor_t data with MinVerRefresh, MaxVerRefresh, MinHorRefresh, MaxHorRefresh, and MaxPixelClock values. These were previously reported as "DESC" data. * sie/class/hardware Look at CPUID Intel and AMD data to set CpuInfo CoreCount and ThreadCount. * sie/class/process Implement new class called Process to report all running processes on system. * sie/class/software Add Software discovery support via SDL scripts for: Apache Tomcat, CA BrightStor Server, HP OpenView Data Protector, IBM DB2, IBM Informix C-ASAM, IBM Informix Enterprise Gateway Manager, IBM Informix I-SPY, IBM Informix MaxConnect, IBM Informix Extended Parallel Server, IBM Tivoli App Dependency Discovery Manager, IBM Tivoli COmposite App Manager for WebSphere Data Collector, IBM Tivoli Configuration Discovery and Tracking, IBM Tivoli Configuration Manager, IBM Tivoli Enterprise Console, IBM Tivoli Netcool, IBM Tivoli Provisioning Manager for OS Deployments, Sun Java/JRE. * sie/class/vmguest Improve VmGuest detection of VMware software to support VMware Server 2.0. ######## BUG FIXES ######## * sie/class/device Fix bug in SMBIOS decoding of memory devices where MEMDEV and MEMMOD devices discovery could overwrite each other. This can result in some memory devices not reporting all possible properties such as "Speed". Under some circumstances extra memoryX devices could also be reported which are actually duplicates. This could occur if --class general,device are run together. It's also limited to a select number of SMBIOS configurations. * sie/class/general Fix primaryuserlogin and primaryusername on HPUX which has wtmpx but only updates wtmp. * sie/class/general Fix PrimaryUserLogin and PrimaryUserName on Solaris and other OS which use wtmpx. These attributes are not reported due to fix in 8-H35. * sie/class/general Fix PrimaryUserName and PrimaryUserLogin to work on Solaris and other systems which have wtmpx but not wtmp. * sie/class/general Fix primaryusername and primaryuserlogin on systems which have getutxent() and getutent() to not use these interfaces since they read utmp and not wtmp. * sie/class/general Fix "Kernel Version" on Linux to remove newline if present at end of string. * sie/class/hardware Avoid setting memory Vendor and similar attributes if the DIMM socket is determined to be empty. Applies to SMBIOS MEMARRAY devices. * sie/class/hardware Fix Report output for Monitor data to use R_PROP and have "monitor" token as SubClass. * sie/class/hardware Improve checks to insure canonical Device Name is set using our DevDefine DB. - Fix DeviceCreate() to use proper compare tests for Type and TypeClass. * sie/class/hardware Fix Hardware discovery problems which could result with incorrectly Parent devices and other strange results due to DevFind() looking for NodeID <= 0 instead of NodeID == 0. We also now enforce use of DevFindInit() in DevFind(). Fixes at least one issue with bad Parent reporting on Solaris SPARC. * sie/class/hardware Fix Serial on MacOS diskdrive devices to be copied from Parent if Parent is driver. * sie/class/hardware Fix CacheInfo for L1d and L2 on MacOS to not be a copy of L1i data due to typo. - Fix diffrpt to load our own PM modules at runtime. - Various fixes to port back to MacOS. * sie/class/hardware Fix SMBIOS handling of PORT devices to use SMBIOS Internal location as device name which provides much closer matching to previously discovered devices such as usbX devices. This results in greater attribute reporting for these devices as well. * sie/class/hardware Fix Unit values for SMBIOS device types BIOS, SYSBOARD, ENCLOSURE, MEMARRAY, MEMCTL, PROC, and SLOT to be consistant for each device Type. Previously a device's Unit could change depending on if how many internal functions searched SMBIOS devices each call incrementing the Unit value for the next scan of SMBIOS. * sie/class/network Do not report "(none)" as NisDomain value. - Checkpoint main. Auto-generate ShowInfo data. * sie/class/software Fix use of uninitialized variable in SDL intepretor in SdlDataTypeArrayStr(). Not tied to reports of any failures. * sie/class/storsys Fix bug reading data from NetApp filers via rsh resulting in no data being reported on certan platforms. Fixed result compare of fprintf() return value to account for newline. Fixed lack of data in tmp file by adding fflush() after rsh output read is complete. ============ VERSION 7.1.0-alpha0 (2007/01/01) ============ ######## NEW FEATURES ######## * class/general Add support for "CPU Count - Physical" on Windows systems with Intel CPUs. - Fix buildprep to do special Windows prep. ######## BUG FIXES ######## * build Add ifdef checks for linux .h files on Fedora 6. - Fix ParseOptions() so that multiple boolean options increase the variable being set by 1. - Add QueryListDestroy() function. - Checkpoint SDL. * platform/freebsd Update minimum supported FreeBSD version to be 5.2 due to bugs in vswprintf() in FreeBSD 5.0 and 5.1. These bugs caused segfaults in Software class retrieval. * sie/class/filesys On Windows do not run mntinfo driver with --debug as stdout is mixed with stderr. * sie/class/general Fix core dump issue on Solaris when retrieving Serial Number on systems with "oem-banner" in OBP. * sie/class/general Check boottime value to see if it's in the future and if so to not return data for it and related data like uptime. * sie/class/general Fix "CPU Count - Physical" on Linux to correct calculate value on hyper-thread systems. * sie/class/general Fix "CPU Count - Physical" Solaris method for using psrinfo to only attempt to run if on Solaris 10 or later. - Fix DoParentAutoCreate to be static. Also not set Category if DoParentAutoCreate is False. * sie/class/general Enhance method for "CPU Count - Physical" on Solaris to first try psrinfo which correctly returns count on multi-core SPARC systems like the T1000. * sie/class/hardware Fix bug which prevented canonical device names defined in .sid files from being set. Bug introduced in 7.0.0. * sie/class/hardware On Windows systems we now skip getting free disk space data on disk devices which have removable media. If we don't do this then Windows will popup a dialog box for the user if no media is loaded. When this happens SysInfo is forced to wait until the dialog is closed. * sie/class/hardware Add check for $MCSYSINFO_DDC_VBE in Linux BuildDDC() to allow user to disable DDC VBE probe. * sie/class/hardware Fix Linux setting of ATA disk drive Capacity values to use /proc data over disk geometry. This is what we previously did in 6.0 and earlier. We also now set DevInfo->CapacityNum in the ATA probe. * sie/class/hardware When run on Solaris check our Zone to see if it's "global" and if not warn about hardware data. * sie/class/software Enable support for multiple versions of the same package to be reported when discovered via SPS modules. * sie/class/software Implement $MCSYSINFO_SOFTWARE_CATEGORY_AIX support in AIX. * sie/class/software Fix SPS interface to support multiple packages per module. Also add per module runtime reporting via debug. * sie/class/software Fix AIX Software discovery to properly handle DiskUsage calculation for multiple version packages. * sie/class/software Fix AIX Software discovery to support $MCSYSINFO_SOFTWARE_SLINK_TARGET_SIZE env var to use target of symlinks for size calc instead of symlink itself. * sie/class/software Fix Software discovery on AIX to not overwrite BaseDir if pkg has multiple versions installed. * sie/core Fix CmdReadLine() to detect EOF and set State to CMD_EOF. - Minor cleanup of REG_OK values. - Checkpoint SDL. * sie/core Fix possible memory buffer overwrite in mchash. * sie/core " due to attempted write of non-writable memory. * sie/core Fix MchDestroy() to properly destroy everything. * sie/core Fix possible buffer overflow condition in calls to swprintf() all relating to Software class data. - Fix uninitialized variable. - Add missing freebsd-declare.h. - Update buildfinish for ia64. - Fix SunOS CPU functions to use new Status_t convention. - Fix casting/warning errors in ipmitool. - Fix buildprep file mode issues. - Fix SPS Oracle AS build on Windows. ######## OTHER CHANGES ######## * Misc x*alloc() debug support. Also add ability to build code with DUMA for debugging. ============ VERSION 7.0.0-H8 (2006/09/18) ============ ######## BUG FIXES ######## * sie/class/software Fix RPM software discovery to not terminate Desc (Summary) at first newline or period. * sie/class/software Fix Software rpm discovery to not truncate Desc (Summary) at first period, but instead to look for period + SPACE or period + NL. * sie/class/software When using $MCSYSINFO_SOFTWARE_BASEDIR_SUFFIX make sure we don't add it when it's not needed. * sie/class/software Fix Software Websphere discovery to be more consistant in naming and use EntryType of product. ============ VERSION 7.0.0-H6 (2006/09/13) ============ ######## NEW FEATURES ######## * sie/class/general Fix General class data on Man Long, Man Short, System Serial, System Model, and CPU Count - Socketed to use new SMBIOS data on x86 systems. This is available on Solaris 10 U2 06/06 and later X86. ######## BUG FIXES ######## * build/configure Need to set LdSysLibsLast=yes on Linux to get things to build with libexpat. * build/configure Fix bug in expat test that resulting in configure thinking expat was present when it was not. * build/configure Fix configure to properly detect when expat is not present. * sie/class/general Fix CPU Model Intel Family 15 Type 6 to be "Xeon" instead of P3. * sie/class/hardware Fix uninitialized DevFile variable in Linux hardware code. * sie/class/software Check for environ var MCSYSINFO_SOFTWARE_BASEDIR_SUFFIX and if found append to all BaseDir software entry values. * sie/class/software Fix AIX software discovery to calculate BaseDir to be directory with most disk usage if the MCSYSINFO_SOFTWARE_BASEDIR_BY_SIZE environment var is set to "yes". The default remains to calculate based on the highest level common dir. * sie/class/software Fix AIX software discovery to use lslpp(1) command to extract pkg file lists instead of directly extracting from ODM. The direct extract is not portable to newer AIX versions resulting in missing or incomplete file lists. * sie/class/software Fix Sybase ASE to correctly set Version and other data for ASE version 12 in addition to ASE version 15. * sie/class/software Fix AIX ODM software discovery to use lslpp(1) command to list file sets for packages for which we could not find file set data directly via ODM. * sie/class/software Fix Sybase SPS module to ensure that the Desc field is set. * sie/class/software Change "IBM" to "IBM Corporation" for SPS modules. * sie/class/software Fix SPS Oracle AS discovery to look for * sie/class/software Fix SPS Weblogic to properly associate weblogic-server and weblogic-platform. * sie/class/software Remove extra args appearing in Apache HTTPD Version such as "(Unix)". * sie/class/software Fix SPS module for Sybase ASE to not coredump while parsing VPD file when --widechar is used on Solaris. * sie/class/software Fix Sybase ASE SPS module to report ASE with a name of "sybase-ase" consistantly. * sie/class/software Fix missing software size data on AIX due to improper ODM environment initialization. * sie/class/software Fix Sybase ASE SPS module to report ASE with a name of "sybase-ase" consistantly. * sie/class/software Fix missing software size data on AIX due to improper ODM environment initialization. * sie/class/software Make SPS VendorName values consistant. * sie/core Fix core messaging Msg* functions to use proper wide printf functions on a file handle stream if wide mode is enabled for that stream. This fixes the problem where wide debug output on platforms like Linux were not displayed. ######## OTHER CHANGES ######## * Misc "/oracle/.*/java" process. ============ VERSION 7.0.0-H4 (2006/09/01) ============ ######## BUG FIXES ######## * sie/class/hardware Fix PCI device names on Linux 2.4 systems to once again be "pciX/X/X" instead of "pci/X/X". ============ VERSION 7.0.0-H3 (2006/08/30) ============ ######## NEW FEATURES ######## * sie/ui Add new options --sps, --spsignore, --spsemodules, and --spslist. ######## BUG FIXES ######## * sie/class/hardware Fix Linux hardware discovery to set Driver field for SCSI devices. * sie/class/hardware Fix Linux hardware discovery to properly discover ATA diskdrive devices on Linux 2.6.17 and newer kernels which use a modified /sysfs layout vs. the original 2.6.0 layout which previously worked. ============ VERSION 7.0.0-H2 (2006/08/28) ============ ######## NEW FEATURES ######## * doc/ReleaseNotes Update Release notes to document Discovery Process for Software SPS. ######## BUG FIXES ######## * sie/class/general Fix core dump on Solaris SPARC when retrieving serial number on systems without "SN" set in the OBP. * sie/core Re-arrange ShowPlatformDebug() such that debug output is displayed together. ============ VERSION 7.0.0-H1 (2006/08/24) ============ ######## BUG FIXES ######## * build Fix source tarball build to use same version command as used for prebuilt binary. This should result in more exact matching of names. * build/configure Fix --with-perl option to configure to once again work. Fix related perl build issues. * build/configure If expat package is missing then we now treat this as a fatal configure error. * sie/build Add missing Solaris files to source tarball. * sie/class/general Fix core dump on Solaris SPARC due to NULL deref in OBPgetSerial(). * sie/class/hardware Fix NULL deref core dump in DMI BOARD code resulting in reference to DevInfo variable which was not yet created. * sie/class/hardware Fix renaming of PCI "serial" controllers to be "USB..." devices on systems with DMI/SMBIOS. This resulted in occasional renaming and reclassifying serial FC disk controllers as USB devices resulting in the loss of disk devices. * sie/class/software Fix SPS Apache HTTPD discovery to set BaseDir based on dir name of httpd not two levels up. i.e. It's now "/usr/sbin" vs. "/usr" previously. * sie/class/software Fix rare core dump due to divide by zero bug in SoftFileBuildSet(). * sie/class/software Fix Solaris Software scanning to build the DiskUsage data from "contents" file prior to extracting PKG data so it can be set by the PkgExtract() function. * sie/class/software Automatically calculate DiskUsage in post processing stage if not set and BaseDir is available. Previously this was done only in specific cases. * sie/class/software Fix SPS Sybase ASE discovery to support the "vpd.properties" inventory found in ASE 15.0. * sie/class/software Fix SPS Oracle AS discovery to create a top level Product parent node which owns all the AS packages. * sie/class/software Fix SPS Oracle DB discovery to hardcode a VendorName value for Oracle. * sie/class/software Fix SPS discovery of IBM WebSphere AppServer to properly set BaseDir and DiskUsage. * sie/class/software Disable Tibco Rendezvous SPS discovery since it was causing rvd daemon to be run (if not already running). It is also deprecated because newer RV versions use the native OS software registry. * sie/class/software Fix HPUX VendorName handling to cache full name values so they are available for sub-packages. * sie/class/software Fix AIX Software discovery BaseDir to properly alloc memory instead of re-using previos buffer resulting in many bogus BaseDir values. This was a bug introduced by the previous AIX BaseDir fix. * sie/core Fix core dump in SIE during PrivsShow() due to NULL deref when a group cannot be looked up. ######## OTHER CHANGES ######## * Misc remove ".DSP*" and ".." which are commonly used by WebSphere packages. ============ VERSION 7-GA (2006/08/07) ============ ######## NEW FEATURES ######## * build Build Solaris SPARC using GCC instead of Sun Studio CC. * class/network Add new "IP Forwarding Enabled" value as part of Network class data. * doc/ReleaseNotes Update release notes to include root and running process requirements for software detection. * doc/ReleaseNotes Document "Out of Memory!" error on HP-UX. * doc/UserGuide Document General Data Class. * fix/build Fix compile issues for Fedora 5 / GCC 4.1 including use of packed attribute and LRMI assembly. * install Enhance .sh installers to check OS name and App Arch to make sure it's a match. * license Update LICENSE files. * sie/class/general Prefix "Serial Number" and all "Manufacturer" titles with "System". * sie/class/general Add support for providing the Sun recognized System Serial number on Sun X64 hardware running Solaris 10. We now obtain this data via IPMI from the BMC (required). * sie/class/general Output numeric values for General class items uptime, boottime, and currenttime in new field of REPORT output. * sie/class/general Overhaul CPU counting. Changed description "Number of CPUs (Physical)" to be " "CPU Count - Socketed", "Number of CPUs (Virtual)" to be "CPU Count - Virtual", "Number of CPUs (Online)" to be "CPU Count - Online", and "Number of CPUs (Offline)" to be "CPU Count - Offline". The report keys for all of these remain the same. Also added new "CPU Count - Physical" to provide count of each physical CPU including multi-core CPUs. * sie/class/hardware Add disk device Capacity support on Mac. Also improve disk drive and framebuffer device assimilation on Mac. * sie/class/hardware Add new DevInfo->CapacityNum value. Add new DT_PORT device type definetion. * sie/class/hardware Enhanced data on Sun X64 hardware is now provided for the top most system Hardware node. Enhanced data include the product part number and type. * sie/class/hardware On AIX we now check for Hitachi Dynamic Link Manager and use that to determine if a disk is multipathed or not. * sie/class/hardware Add new "Location" data as part of each "device" entry (where available). * sie/class/hardware Improve hardware details on Sun SPARC systems by augmenting data from prtfru(1m) which includes detailed part and serial number info for system boards, CPUs, etc. * sie/class/hardware Add new SATA class type. * sie/class/hardware Linux systems now correctly identify SATA devices instead of type SCSI. * sie/class/hardware Add check to see if disk device looks like a Seagate disk model and if Vendor is not set, set to Seagate. * sie/class/hardware Redesign Linux hardware discovery to use /sys (sysfs) on Linux 2.6 and later. This provides much improved consistancy in what devices are reported and also the device hierarchy. - When debug is enabled run lspci and lsusb on Linux. - Add new PathCanonical() and McDbg() functions. - Misc cleanup of device functions. * sie/class/hardware Add new database of USB vendors/devices IDs which are currently used for Linux hardware discovery. - Revamp PCI ID database generation to support USB db's as well. * sie/class/hardware Add Features flags to each DevInfo_t with initial support for removable, hotswap, and replacable. Values are reported consistantly as device properties. * sie/class/netif DHCP Client configuration for each interface in the NetIf class is not reported for Windows and Linux. * sie/class/network Add "WINS Proxy Enabled" to Network class. * sie/class/patch Create new "Patch" data class for software patches. Solaris is the first OS this is supported on. * sie/class/service Add new "Service" class for detailing System Services. - Fix StrSplit(). - Update TODO. * sie/class/software Add "Install Date" for Software packages on Windows. * sie/class/software Give "HelpLink" preference over "URLinfoAbout" on Windows for value of URL. - Add Windows Patch class support. * sie/class/storvol Added support for Linux LVM via linuxlvm driver. This was the hpuxlvm driver, but the 2 apparantly share very similiar roots. The hpuxlvm driver has thus been renamed the linuxlvm driver which is used on both Linux and HP-UX now. * sie/class/vmguest Add new VmGuest class for detailing VM Guest OSs installed on a system. * sie/class/vmhost Introduce new class "VmHost" for detailing Virtual Machine Host information. * sie/cli Add new --prefix option. * sie/core Updates for MacOS X 10.4 and Intel Mac. * sie/core Add platform debug info. * sie/core Include new "ClassTypeDesc" in report output. This provides the Device Class Type Description. * sie/core Move/migrate all SysInfo Database files * sie/core Move all config/mibs files into lib/mibs. * sie/core Revamp PSI calls to return new Status_t status and results via Query->Out exclusively. * sie/core More declaration cleanup and conversion to ANSI declarations. * sie/general Add support for CPU Model reporting on MacOS. * sie/hardware Improve MacOS hardware tree results by filtering out more driver/pseudo devices. * utilities Add new mcsysinfodeploy script for assisting with deployment of SysInfo to multiple UNIX based systems. ######## BUG FIXES ######## * api Fix Hardware class API code to detect and fix when a device has a Master name equal to it's own name. * build Include LIBS in linker options when linking libmcsysinfo and libmcsnmp in order to satisfy MacOS linker. * build Don't use our own DRIVER_INFO_6 type declare anymore as mingw now includes one. * build Don't cache configure vars relating to product version since we often update hotfix data in these vars. * build Fix nsis/GNUmakefile.in to use BuildDir instead of objdir for SaveVarFile. * build/installer Fix Windows installer to create the "SysInfo with Debugging" menu shortcut to place logfile on users Desktop. * class/filesys If an NFS mount is hung, SysInfo now times out instead of hanging. This is implemented via new "mntinfo" driver which performs all statvfs/statfs calls which are the calls which block when an NFS mount is hung. * class/storsys Fix rare core dump in nafiler due to NULL deref. - Add configure testing for ioctl() support. - Integration of 6.0 changes. * doc/ReleaseNotes Update release notes to doc Sun X64 serial number support. * gui Fix GUI's Report tool to work once again. It was previously trying to run ".mcsiwrapper" instead of "sysinfo". * install Fix installer to work on Fedora 5 and later. Newer OS which use the latest GNU coreutils don't accept "tail +N" by default. * install Fix UNIX installer to not fail with a Chown() error if not run as root with --override. * license If a FULL product license exists, do not auto-create any feature licenses such as for StorSys Pro. This reduces user confusion. * mcsysinfod Fix SysInfo Agent such that it fully divorces itself from the process (shell, init, setup, etc) which invoked it. This fixes a problem where SSH would hang if it was used to invoke the setup installer or if it ran /etc/init.d/mcsysinfo. * setup Fix setup meter progress bar to not reprint entire line to improve performance and reduce overhead. We also no longer use the meter bar if --debug is given. * setup Fix minor bug with extra "-" chars being displayed when showing the SUMMARY field. * sie/class/filesys Fix FileSys, PartInfo, and Hardware class to not hang if an NFS mount is hung. We have moved the statvfs()/statfs() calls which block on hung NFS mounts into a new driver program called mntinfo. SIE now calls mntinfo and parses it's output for all file system related data. If mntinfo hangs SIE will time-out and kill mntinfo then continue. This fix also contains fixes for Cmd_t time-outs to work when the child process blocks. * sie/class/general Fix CPU Type and Kernel/App Arch discovery on MacOS to use uname(1) command instead of utsname(2) function for portability between PowerMac and Intel Mac. * sie/class/general Fix system Memory discovery on MacOS to use hw.memsize for more accurate values, particuliarly on Intel Macs. * sie/class/general Fix system Serial discovery on MacOS to use IOPlatformSerialNumber instead of serial-number. The later is not present on Intel Macs. * sie/class/general Fix Primary User utmp code to build on MacOS 10.4.x. * sie/class/general Correctly report "1" as the value for "CPU Count Physical" on multi-core SPARC systems T1000 and T2000. We previously reported the core count as the Physical count. * sie/class/general Fix OS Dist Version discovery on Solaris to first use uname(2) and parse the "release" value. This works even when Solaris is run on a non-FCS release which may use a code-name for the Solaris version instead of a number. * sie/class/general Fix "OS Dist" discovery on Linux systems which do not have lsb_release to look for "LINUX" as well as "Linux" in /etc/issue. * sie/class/general Avoid possible hang on AIX when obtaining "OS Version" using the oslevel command by using Cmd_t interface without a 60 second timeout. * sie/class/general Fix core dump bug when obtaining OS Dist info from /etc/issue. If /etc/issue is not in the expected format, we were core dumping. * sie/class/general Add timeout handler for GNU libc discovery to prevent hangs on systems which may have other more serious problems. * sie/class/general Fix reporting of "Number of CPUs (Physical)" on AIX systems with LPAR (hardware partitioning) to use LPAR provided value. This means we now report the true physical CPU count. * sie/class/hardware Fix the BitSize reported for Intel CPUs to be based on the Kernel Bit Size rather than hardcoding "32" for most CPUs which is incorrect in lite of EM64T. * sie/class/hardware Fix MacOS hardware discovery code to build disklabel code only if available. This data is not available on MacOS 10.4 and later. * sie/class/hardware Edit DevInfo Model strings to remove quote at end of strings on Solaris systems when we use the DDB database. * sie/class/hardware Fix core dump on Solaris when --deub used and we probe SCSI disks. Debug output was triggering an alignment exception. * sie/class/hardware Add timers wrapped around ioctl() on Solaris systems to reduce chance of a hang during hardware discovery. * sie/class/hardware Fix bug in Sun hardware OBP code which results in random core dumps on newer platforms like the T1000. Problem was due to use of wrong probe function being set for OBPprobeCPU. * sie/class/hardware Fix bug in Sun hardware OBP code which results in random core dumps on newer platforms like the T1000. Problem was due to use of wrong probe function being set for OBPprobeCPU. * sie/class/hardware Fix bug in Solaris SPARC hardware code which resulted in SIE core dump due to a NULL deref of CpuInfo->ArchVer. * sie/class/hardware Detect and fix when a hardware entry lists itself as it's own master. This can cause the GUI to die in a loop if left untreated. * sie/class/hardware Fix crash bug due to NULL deref in DMI enclosure decoding code. * sie/class/hardware Fix hardware class bug on AIX resulting in incomplete device reporting. * sie/class/hardware Fix Monitor EDID decoding of VESA v2 Serial number to correctly treat Serial as an ASCII string instead of a numeric value. * sie/class/hardware If a device Model contains "CD-RW/DVD-ROM X1234" remove the full "CD-RW/DVD-ROM" instead of leaving "/DVD-ROM" in string. We also give preference to classify such devices as DVD instead of CD now. * sie/class/hardware Fix DMI handling of memory speed, mfg, serial, and part number such that these values are only used if the DMI header length is large enough to indicate these fields are present. * sie/class/hardware Fix incorrect speed of network interfaces on Windows by ignoring bogus values obtained via NDIS. * sie/class/hardware Fix memory devices found via SMBIOS to show "empty" in Status field instead of ModelDesc to be consistant. * sie/class/hardware Fix DMI device discovery to report newer memory, CPU, BIOS, and board types to support SMBIOS v2.4 spec. * sie/class/license Fix flexlm probe code to initialize MCSIquery_t structure prior to each use. * sie/class/network Report "Windows Workgroup Name" and "Windows AD Server Names". We were discoverying these values, but not reporting them. * sie/class/network Fix API to parse and report on Windows Domain Name and Windows PDC. Data was discovered, but not being reported. * sie/class/software On HPUX we now use the "title" field for VendorName if the "vendor" tag is set. This results in more consistant and full company names being reported. * sie/class/software Use new "SwMan" definetion from .cf files to set canonical VendorName for software. * sie/class/software Fix Software discovery on AIX to not count multiple versions of the same package when determining a package's DiskUsage. * sie/class/software Improve Oracle DB SPS discovery by doing find for sqlplus in $ORACLE_{BASE,HOME}. * sie/class/software Add MCSYSINFO_SWLIST_{PRODUCT,SUBPRODUCT} env options for HPUX software scanning. * sie/class/software Fix the Apache HTTPD SPS discovery code to provide BaseDir and DiskUsage values. * sie/class/software On HPUX during Software discovery the user can disable the "fileset" level of (full) data from swlist by setting the env var MCSYSINFO_SWLIST_FILESET=no. * sie/class/software Do not report on software packages that have zero length Name values. * sie/class/software Add /usr/apache to directories to search for apache httpd. * sie/class/software Fix bug with missing software packages on Solaris due to hash key calculation bug. * sie/class/software Fix bug in MemToWide() function which resulted in missing software packages being reported when --widechar was enabled and RPM was used as data source. * sie/class/software Fix Software data on HPUX to properly report software versions in the Version field and not the revision field. * sie/class/Software Fix bug in AIX Software discovery where by the BaseDir of each package was never reported due to lack of data from ODM. We now calculate BaseDir based on the most common directory of all files in a package. * sie/class/software Fix rpm software scanner to look for DIRNAMES tag if ROOT tag is not present, in order to determine the package's BaseDir value. * sie/class/software Fix core dump on Solaris when Software is being discovered. Bug was due to insufficient buffer for child (Slave) names in reportsoftinfo.c and insufficient buffer size detection. * sie/class/software Fix Software discovery on HPUX to properly allocate memory for Revision, BaseDir, and VendorName instead of using same memory. This caused problems if SoftwareDestroy() was called. * sie/class/software Fix NULL deref bug causing incomplete Software class data due to not checking for zero length SoftInfo->Name. * sie/class/software Fix bug in Software discovery on HPUX which caused infinite loop. Also fixed bug in same code for parsing quoted text. * sie/class/software Fix Windows bug causing fatal Exception when encountering certain strings from software products found via Registry. Problem was a NULL deref. * sie/class/software Fix Windows bug causing software versions such as "0.1.2" to be reported as ".1.2". * sie/class/software On Windows we now remove "(remove..." and similiar strings from software product names. * sie/class/storsys Fix problem with NetApps not being discoveried at all due to bug introduced in 6.0.2. * sie/class/storvol Add vol group name to VmVendor and VmProduct report lines for StorVolume. * sie/cli Fix possible core dump bug when "--list show" is used. * sie/core Fix several cases where we reset ptrs to alloced memory, yet did not re-alloc the memory resulting in double free's. * sie/core Update Device tree cleansing with new * sie/core When output report data we now search for occurances of the report seperator sequence (--repsep) in each data field. Any exact occurance of this sequence is edited to be all SPACE characters. * sie/core Update checks for "MacOS X" to include checks to support "MacOS X Server". * sie/core Fix NULL deref crash when debug is on and a CmdOpen() uses an env var to read data. * sie/wrapper Fix SetPrivs() to allow non-root setuid() to be permitted. * ui Fix UI handling of strings with '%' to avoid perl printf problems. * ui Remove '%' chars from debug and CLI output messages to avoid perl barfing on it when used in printf(). * ui Remove ",*" from vendor names when building a device summary. * ui Do not refer to ".." for "use lib" calls in sysinfoui as this can lead to a significant performance hit if we are run in $HOME and /home is automounted. * ui Fix Hardware summary line to include device Status. * ui/gui Fix Windows SysInfo icon to remove extraneous white noise around edges. * wrapper Fix wrapper to handle being invoked as a symlink as was possible with pre-6.0 versions. ######## OTHER CHANGES ######## * Misc DeviceRemove() and Pseudo*() functions. * Misc from config/*.cf to lib/sid/*.sid. Revamp * Misc internal CF*() API to new Sid*() API. ============ VERSION 6.0-GA (2006/01/25) ============ ######## NEW FEATURES ######## * api Update API layer to handle --logfile. * api/mcSysInfo Update mcPrinter object to use new 'name2' and 'prop' self-describing data formats. * build Move checks from drivers/* makefiles into top level * build Create new mf/PerlModule.mf where most perlmodules/* include. Use a copy instead of link to work on systems without symlink support (like Windows). * build After building Perl, the distribution is now placed in a single tar.bz2 file instead of left in a directory. This allows for easier handling and management with Perforce. * build Major update to Makefile's and configure to get "make install" to work on Windows. Also created more centralized variables in mf/configvars.mf, moved shell commands from make (mf/Vars.mf) into configure to greatly improve "make" runtime, * build Speed up build time by modifying buildinfo to use its own cache of externally generated variables. This greatly reduces wait time each time make(1) reads a Makefile. * build Move all driver source code into "drivers" subdir. - More fixes for combining everything back into libmcsysinfo. Break libmcsnmp back out as seperate lib. * build Move libmcsysinfo/std/dmi* into libmcsysinfo/dmi/dmi*. * build/config Add --with-strip and --without-strip to control whether we ran strip(1) during "make install". The default remains not to run strip(1). * build/configure Update configure to add new function and header file checks for certain files not present on Windows. * build/configure Add initial support for Windows configuration. * build/configure Automatically run autoconf to create ./configure in each subdir which has its own configure.in. * build/doc Update doc building so that "make mcd" can use prebuilt tar image of all doc files. * build/make Move buildinfo.c files from each executable into libmcsysinfo to satisfy linking on Windows. * build/make Update libmcsysinfo GNUmakefile for cleaner output. * class/printer Add V2 report output data for class Printer. * class/siteinfo A sample "siteinfo" file is now installed by default into $prefix/config/siteinfo during installation. * class/software Add Software Product Specific support for Oracle Application Server. * class/software Add Software Product Specific discovery of Tibco Rendezvous. * class/software Add Software Product Specific discovery of Tibco Enterprise Message Service. * class/software Add Software Product Specific discover of Sybase Adaptive Server Enterprise. * class/software Add Software Product Specific discovery of IBM WebSphere Platform Server. * config Change .cfg variable ExecPath and SysInfoPath to be comma seperated instead of colon seperated to allow for Windows/DOS pathnames. * doc/RefMan Document new "--logfile" option for mcsysinfo(1). * doc/RefMan Update mcsysinfod ref man to document new --service{add,delete,stop,start} options. * doc/ReleaseNotes Document MacOS 10.1 and 10.2 no longer being supported. * doc/ReleaseNotes Update Supported Systems list to add MacOS 10.4 as officially supported. * mcsysinfod Look for "DebugFlag=1" in mcsysinfod.cfg at runtime. - More cleanup of message logging. - Make mcsysinfod work under Windows SCM. * mcsysinfod Debugging messages now include process and thread ID (if any). * mcsysinfod Split BSD specific code out and add Win32 WinSock specific functions. * mcsysinfod Create new Log*() functions to allow use of proper OS facility - syslog() or ReportEvent() (Win32). * platform/windows Add OS name and version support for Windows. * sie/class/general Add new "Up Time" value in class General. * sie/class/hardware Devices are now listed in sorted (alpha) order instead of the ordered provided by the OS. This helps consistancy on OS where the order provided can vary between each run. * sie/class/hardware Improve device naming for PORT devices (keyboard, mouse, serial, etc) obtained from DMI. Names now are based on DMI provided data rather than our own. * sie/class/hardware Add new device type DT_SLOT to classify card slots in a system. * sie/class/hardware Hardware discovered by DMI is now under a new top level node called "dmi/0". * sie/class/hardware Improve summary descriptions for DMI devices. * sie/class/software Add Software Product Specific discovery for BEA WebLogic. * sie/class/software Add special software discovery of Apache HTTP Web Server. * sie/class/software Convert Software class in SIE to handle wide chars for I18N compliance. * sie/class/software Cleanup software related datatypes and consolidate into software specific header files. * sie/class/software Add new Software Product Specific discovery infrastructure with initial implementation to detect Oracle Database. * sie/class/software Add ability to report on multiple versions of the same software package. When report v2 format is enabled, a unique identifier is given for each software package. The identifier currently is name-version-rev. * sie/class/software Output report format V2 self-describing data for class Software. * sie/class/software Add new URLhelp, URLupdate, and InstSource members of class Software. - Add Software support to Windows. - Update Windows code to use LoadLibrary() instead of GetModuleHandle(). * sie/core Check for MCSYSINFO_HOME environment variable as the top level directory where SysInfo is installed. * sie/core Convert Siteinfo class functions to be I18N compliant. Build foundation for I18N functions. * sie/core Add new "Language Locale" reporting to class General. * sie/core Add support for --logfile to log messages to a file for "sie". * sie/core Use new PathStrChr() and PathStrRChr() in place of strchr() and strrchr() for pathnames. These functions handle both forward and reverse slashes. - Fix various @prefix@ to be @prefix_dir@. - BaseDebug() now is just a frontend for McDebug(). * sie/core Add new MakeTempFile() wrapper around mkstemp() or mktemp(). * sie/core Add support for "--repsep %p" being translated into "--repsep |" in order to support cases where "|" is intepreted by a shell. - Various Windows code updates for mcsysinfod, WinFuncGet(), etc. * sie/core Add "--format report" version 2 (self describing) format support for class Software. * sie/core Add new createtime, createtimenum, and sourcehost data to "--format report". * sie/core Document "--reportencvers" option (formerly undocumented as "--formatencvers"). * sie/core Improve debugging messages for CF*() functions. - Various fixes for Windows. * sie/core Update cpuid.c debugging statements for consistancy. * sie/core Add new GetCpuInfoDmi() function and support changes. - More Windows updates. * sie/core Replace cpuidasm.s with inline asm(). * sie/core Merge libmcl, libmcbase, libmcsidriver, and libmissing back into libmcsysinfo in order to support Windows DLLs. This is required since Windows DLL's cannot have any unresolved symbols which we required when we had seperate libraries. * sie/core Add initial Windows support. * sie/core Add Windows functions for directory retrieval. * sie/core Add new StrErr() function to replace SYSERR. Includes support for Windows version. * sie/core Fix various network functions to better handle missing structures. (Windows) * sie/doc/InstallGuide Break source installation into seperate chapter. Document Perl build on Windows. * sie/platform/windows Add "Host Addresses" support in class General for Windows. * sie/ui/GUI Add SysInfo to GNOME menu system during installation. * sie/wrapper Fix mcsiwrapper to not load in large config/*cf files like pci.cf. This noticably reduces runtime startup. * ui Add --licenselist option to list all SysInfo licenses found regardless of whether they apply to the local system or not. * ui/GUI Add support to GUI to install a MagniComp license file. * wrapper A new wrapper (mcsiwrapper) written in C replaces the previous sysinfowrap shell script. A binary wrapper program is required on Windows which does not have any native support for shell scripts. Execution time on UNIX/Linux/MacOSX systems is also sped up by this. ######## BUG FIXES ######## * api/mcSysInfo Fix parsing of hardware "data" lines to parse proper field number. We previously looked at wrong field order resulting in "data" lines being ignored. * api/mcSysInfo Add proper locking to cache files to avoid data clobber and other ugly possibilities. * build Remove whitespace from cksum values in .sh dist files. This avoids problems whereby the cksum command on the customer system inserts extra whitespace vs. the build system's cksum command. * build Enable standard GCC compiler warnings on Windows. * build Fix configure test for VxVM to correctly set "no" when VxVM is not available. * build Cleanup and centralize various *FLAGS make variables to come from ConfigVars.mf instead of being in each GNUmakefile.in. * build Fix mcdadd to not require "-d" option. - Make "mcd" targets work once again. * build Use new ${prefix_dir} instead of ${prefix} and other changes necessary to handle whitespaces and backslashes in file/dir names (needed for Windows). * build Update various GNUmakefile's to refer to $(WRAPPERNAME) instead of explicit ".sysinfowrap". * build Fix CpuArch/AppArch handling, $PATH, $CC, and others to support Solaris 10 AMD64 builds. * build/config Always run $plcmd as "/bin/sh $plcmd" since it is not executable by default. Also tidy up and consolidate handling of $plcmd tests. * build/configure Fix configure to properly set cc options when using Sun Studio 10 C Compiler on Solaris AMD64 systems for 64-bit compiles. * build/dist Fix bug in makeself which resulted in distribution files (*.sh) not being extractable with a "bad trap" error. This was due to changes to "trap" syntax in newer OS like RHEL 4. * build/make Fix most program GNUmakefile.in's to include @LDFLAGS@ and consistantly use @CFLAGS@ and link with $(LIBS) for .debug executables. * build/make Insure that $CPPFLAGS is set by @CPPFLAGS to insure that "gcc -E" tests for .h files work. * build/Perl Update "stage3" list of files to strip from perl to include Perl 5.8.7 locations. * class/software Improve performance of adding files to software objects by tracking Last ptr. - Add wchar_t support to McHash functions and modify softinfo functions to specify new MCH_TYPE_WIDESTR. - Fix CFLAGS/LDFLAGS to come from ConfigVars.mf in various remaining GNUmakefile.in's. - Fix misc declarations not be present due to .h issues. * core Various changes to internal function names which conflict with Windows API functions of the same name. * core/api Detect when SIE exists abnormally typically due to a core dump and report an error message. * core/config Config files with an empty value field are no longer reported as an error, but are reported with --debug. * core/hardware Update PCI device database with about 2K more entries. * core/libmcsysinfo Use McDebugFlag instead of DebugFlag in mcsidriver/* files. * core/platform/macos Update list of Mac system models. * doc/RefMan Fix the SYNOPSIS of mcsysinfocli to properly reflect options. * doc/RefMan Update mcsysinfod man page to document new --logfile option and fix OPTION summary section. * drivers/nafiler Fix incorrect mkstemp() usage, changes to compile on Windows. * install Fix uninstall via setup to properly remove mcsysinfod on MacOS X. The problem was we did not correctly determine that we were on MacOS during removal. * install/setup Fix check for available disk space to work once again. * mcsiwrapper Fix wrapper so it can launch mcsysinfod when used with the noui distribution. * mcSysInfoAPI Remove \r (^M) from SIE inputs. * mcsysinfod Fix bug in SysInfo Agent which can cause Agent to fail (core dump) whenever it calls mcsysinfo due to Cmd.Argc being one too many. * mcsysinfod Fix Service Add via SCM on Windows 2000 to work more reliably. * mcsysinfod Fix a core dump problem in mcsysinfod which can result in incomplete remote data sessions or excessive CPU consumption by mcsysinfod. * mcsysinfod Improve detection of client disconnects. - Fix McProgramName() reference. * mcsysinfod Fix SEGV do to double free of CacheFile. * mcsysinfod Convert to read/write raw socket instead of converting to a FILE handle. This is more portable and was done to support Win32. * mcsysinfod Fix bug resulting in the first set of requested class data being reported, but most of remaining classes not being reported. Bug appears mainly on Solaris 10. Problem was use of fclose() on a popen()'ed file handle. Changed to pclose(). * mcsysinfod Fix several possible problems with incomplete data being provided due to improper terminatation of SIE. No reported problems. * mcsysinfod Use /tmp/mcsysinfod.cache instead of /var/tmp/mcsysinfocache to be consistant with UI caching into /tmp/mcsysinfo.cache.$UID. * misc Fix mcsysinfomotd to use '%' instead of '@' to avoid autoconfigure substitution problems. We also now include the OS name and version in /etc/motd. * platform/Sun Fix "Kernel Bit Size" on Solaris x64 to correctly indicate "64" rather than "32". * setup Shell commands during setup (and potentially during sysinfo runtime) were falsely marked failed when setup was run by root (or any uid==0 user). The result was setup would abort for no apparant reason or indicate it was unable to check disk space. * sie/class/device Add "Speed (MHz)" numeric value for CPU's to report output as alternative to "Speed" for UI's. * sie/class/general Translate all "x86_64" to be "x64" for cross platform consistancy and to match industry standards. This affects CPU Type, App Arch, and Kern Arch. * sie/class/general Report "x86" as App Arch on "x64" systems which is more appropriate since x86 is the lowest common denominator arch. * sie/class/general Correctly report "x64" for App Arch and Kernel Arch on Windows x64 systems. * sie/class/general Report "Kernel bit size" on Windows systems. * sie/class/general Fix random core dump on AIX when retrieving system serial number due to Argc count being passed to CmdOpen() being 1 too many. * sie/class/general Fix bug in OS Distribution function on HPUX which results in SIE core dump due to not correctly terminating Cmd->Argv list in GetDistOE(). * sie/class/general Report "Current Time" in local timezone not UTC. - Need to include @CPPFLAGS@ in $CFLAGS in all GNUmakefile.in files. - Split out core of TimeToStr() into TimeToStrFromTm(). - Implement "Boot Time" and "Up Time" for Windows. * sie/class/hardware Fix problem with some "port" devices discovered by DMI not having a description and/or type. Also add DMI definetion for AGP8X and PCI-Express slot types. * sie/class/hardware Capture Revision for SCSI Disks on MacOS. * sie/class/hardware Add Opteron and Athlon 64 to CPU identification. * sie/class/hardware Fix Hardare data on cpu's on Sun's to say "Sun" instead of "SUNW" for Vendor. * sie/class/hardware Fix DMI code for class General and Hardware to work on Windows XP x64 and Windows 2003 by using official GetSystemFirmwareTable() Win32 API call. * sie/class/hardware Add Hitachi and HP "OPEN-E" SAN server to the list of devices to ignore serial numbers from when checking for duplicate disks. * sie/class/hardware Fix hardware detection to ignore serial numbers for disks Vendor="HITACHI" and * sie/class/hardware Identify framebuffer (graphics card) devices on AIX which where sometimes reported as generic "controller" devices. * sie/class/hardware Fix core dump problem on HPUX (and possibly others) due to free() DevInfo->Model which may not point to original location of allocated memory. * sie/class/hardware Check disk/CD/DVD devices for "DVD" in model and remove from model string. * sie/class/hardware If the Vendor name appears at start of Model, remove Vendor name from Model. * sie/class/hardware In DMI PROC decoding check for "Itanium" not "ia64" to avoid recursion. * sie/class/hardware Add PCI definetion for Fujitsu version of Broadcom BCM5703C. * sie/class/partition Fix reported partition and filesys sizes on AIX to be correct. We were reporting incorrect sizes for filesystems which used 512 byte blocksize vs. the AIX normal 4096 byte blocksize. * sie/class/software Fix RPM Software class queries to not fetch file data unless +swfiles is given. This is the documented behavior and saves signficant runtime CPU and memory. * sie/class/software Fix several memory leaks in Software reporting which caused mild excess memory usage. * sie/class/software Improve error handling in Software Add (SoftInfoAdd()) function. * sie/class/software Improve filtering and cleanup of software entries to weed out dups and remove versions and vendor names from product names. - Improve Windows software discovery by looking at "Uninstall" are of the Registry. * sie/class/software Remove SoftFileList_t and replace with NextByPkg and NextAll members of SoftFileData_t. * sie/class/storvol Fix HPUXLVM driver to properly report Volume Groups as StorVolGroup and Logical Volumes as StorVolume. * sie/class/storvol Fix AIX LVM (aixlvm) driver to correctly report Volume Groups as "StorVolGroup" and Logical Volumes as "StorVolume". * sie/class/storvol Update UI to report Storage Volume Groups. * sie/class/storvol Fix the Veritas Volume Manager (vxvm) driver to collect and report on Volume Groups (aka Veritas Disk Groups). * sie/class/storvol Fix AIX aixlvm driver to correctly report AIX Logical Volumes as StorVolPart and Volume Groups as StorVolume. Also fully report on Volume Groups including total size, free size, used sized, etc. * sie/cli Fix "--list class --msglevel terse" to only print the class names. * sie/cli Fix "--list class" to only list options which are supported on the runtime platform. * sie/core Fix sie to accept and do nothing with --installpost. * sie/core Fix build on HPUX to once again use +s flag to loader which tells HPUX to look at $SHLIB_PATH for shared library directories. This allows SysInfo to actually run and not give "dld.sl" errors about mcsysinfo.sl. * sie/core Fix bug in parsing of config/*.cf files which could sometimes result in spurious "Error parsing file" errors. * sie/core Only build rpm software discovery code on platforms which support it. * sie/core Fix GetHostNameCanonical() to check for hostname==localhost. * sie/core Fix SIE to always exit with 0 or a positive number instead of using negative numbers on error which caused rounding/decoding problems. SIE continues to exit 0 on success and now exits > 0 on error. * sie/core Only list/show classes which are at least supported by the runtime platform (if not the local system). We previously always attempted to check every possible class SysInfo supports instead of what's just supported on the runtime platform. This list is created during post installation updates. * sie/core Remove use of global "ProgramName" variable in libmcsysinfo. * sie/core Fix VersionGet(Terse) to not have newline at end of returned string. - More Windows logging and mcsysinfod fixes. * sie/core Replace McsiOpts->OutputFile with LogFile to more clearly reflect it's purpose. - Fix TmpDir on Windows to be C:\Temp. * sie/core Integrate system logger logging into libmcsysinfo from mcsysinfod. Cleanup message logging. * sie/core Fix all initialization of Cmd_t types from memset() to CmdInit(). * sie/core Change all use of fgets() of Cmd.FH to new CmdReadLine() for improved portability. - Implement CmdOpen() for Windows. - Fix $perlplatform for Windows. - Add define for EXEC_FILE_EXT. * sie/core Use SLASH_CHAR define in place of /. * sie/core Add new CmdRun() with support for both UNIX and Windows. Deprecates Execute(). * sie/core Use a configurable tmp directory instead of hardcoding /tmp in order to work on Windows. * sie/core Replace global vars McProgram{Name,Path} with functions. * sie/core Replace global use of ConfDir var with CFconfDirPath() function which now accepts setting ConfDir. - Fix misc port issues from Windows port so we build on Linux again. * sie/core Fix use of MsgClassFlags to be hidden and require use of mcSysInfo() to set. * sie/core Fix possible core dump when converting # sectors into # MB. Typically called by SCSI functions to decode SCSI CAPACITY query. * sie/core Add support for printf format "%I64d" and use in preference to "%lld". Also add new LtoaBuf() function to allow us to remove HAVE_PRINTF_XXX from most functions and use it in Ltoa() and LtoaBuf() only. * sie/core Revamp command line option parsing to support new mcsiwrapper need for passing back unparsed options. * sie/core Fix SEGFAULT bug when McDebug() is called with a "%s" in the arguments (not in format). * sie/core Update our DMI interfaces to use more portable "Open" and "GetTable" functions. - Add DMI support to Windows NT - XP (probably not later OS versions). * sie/core Add PrimaryUserName to PSI to allow for portability. * sie/core Convert GetHostName() and GetHostAddrs() to use PSI to allow for support of Windows API. * sie/core Fix StrErr() to work on Linux and other UNIX. * sie/license Fix "--license" option to show all licenses found regardless of whether they apply to the current system. Each license shown now indicates in the "Applies to this System" line whether the license is applicable to the current system. * sie/mcsysinfod Add new "--logfile" option to log messages to a file. * sie/mcsysinfod Add version to mcsysinfod cache directory path. * sie/mcsysinfod Use Cmd_t instead of popen() for better portability and increased ability to detect failure of "sie". * sie/platform/freebsd Fix build on FreeBSD to static link libm instead of leaving it dynamic. This is needed because FreeBSD 5.4 has a newer libm.so than previous 5.x which breaks backwards compat. * sie/platform/hpux Improve Software class extraction on HPUX to be faster. * sie/platform/HPUX Fix file descriptor leak in HPUX disk probe function which can result in incomplete hardware and partition data being reported. * sie/platform/HPUX Enable detection of duplicate serial numbers in hardware class data on HPUX. * sie/platform/hpux Fix core dump bug in class Software discovery on HPUX systems. Also fixes several problems interpreting quoted text as output by swlist(1m). * sie/platform/linux Improve "OS Dist Name" on Linux hosts which lack LSB support. We previously reported "Red" on Red Hat Linux 7.1 and we now correctly report "Red Hat Linux". * sie/platform/linux Fix "OS Dist" variables in class general to properly parse /etc/issue on Linux systems like SuSe 9.2. * sie/platform/sun Fix bug which resulted in missing CPU's on Sun Fire 6800 systems (and others) which have LDI node names of "cpu". * sie/platform/sun Fix bug resulting in incorrect "cpuX" device names being used. We were not looking for "cpu_id" and "portid" as LDI properties for the "X" value. * sie/platform/windows Fix various compile warnings on Windows. * sie/ui Improve runtime startup by having mcsiwrapper pass MCSYSINFO_* env vars containing OS Name, OS Version, etc. mcMiniSysInfo() uses these values if set. If not set, it falls back to running uname(1) and other commands. - Changes to get perl CLI running on Windows. * ui Fix bug causing Software entries to not be displayed under their parent products when using Tree format in the CLI and GUI. * ui/cli Add "--font" to "--help" output. * ui/cli Fix bug where "--show hostname,memory,..." would result in the "G E N E R A L ..." banner being displayed for each --show argument. * ui/core Fix problem with fatal error during startup if there is a copy of sysinfo installed as /opt/sysinfo and another installed elsewhere. The later copy will fail with perl errors because we were looking at the /opt/sysinfo copy when we shouldn't. * ui/GUI Re-arrange Report Create, Cancel, etc buttons to be more intuitive. * ui/GUI Fix bug preventing some errors from being displayed in popup error window. * ui/GUI Remove distracting "Nothing more to retrieve" messages from GUI message panel. * ui/GUI Remove unnecessary "print" option from GUI's Help -> Diag Info window. * ui/GUI Fix quoting of executed commands to handle whitespace. * ui/GUI Fix "Browse..." popup windows for Report and Diag to be a "Save as" diaglog instead of an "Open" dialog. Set initial starting directory and file types. * ui/GUI Set window icon for all popup window types. - Fix "--outfile " to work once again (broken post 5.1). ######## OTHER CHANGES ######## * Misc Model="OPEN*" since this is a SAN server. The result is disk devices from this type of system are now correctly reported. * Misc GNUmakefile.in and only call drivers/* targets which are buildable. * Misc - Tweaks to debug output in Cmd*() functions. ============ VERSION 5.1.3-GA (2005/03/10) ============ ######## NEW FEATURES ######## * build/doc Updates to automate the build of the CHANGES.txt file. Older entries are now archived in the CHANGES-Archive.txt file. * class/storvol Add driver for HPUX LVM. * doc/ReleaseNotes Update ReleaseNotes to document that we now support Red Hat Enterprise Linux 4 on x86_64 (AMD64/EM64T) and IA64. Also that we support Fedora Core 3. * sie/class/storvol Add driver to support Solaris Volume Manager and older Solstice DiskSuite. ######## BUG FIXES ######## * install If the user installs the "noui" product distribution and does not specify "--format report" print an error which spells out they need "--format report" or should install the "Full" product distribution. * sie " at the begging of each debug output line by default. * sie/class/partitions Fix bug in DOS Partition code which reports on parititioning on X86 systems to correctly report Start, Size, and End sectors for larger (~70GB) disks. * sie/core Fix incorrect handling of changing our real UID to 0 when executing some external OS commands. * sie/driver/all Nearly all drivers never properly based their ProgramName onto the message functions which resulted in no program name being displayed in some error and debug messages. * sie/license Improve DEMO license message for storsys-pro to state implicitly that the DEMO license is not for SysInfo base, but this optional feature. * sie/platform/hpux Fix device names for disk drives to be "cXtXdX" instead of "diskX". * sie/platform/linux Fix to make DMI retrieval of hardware info work on Linux 2.6.6 and later IA64 systems. * sie/platform/linux Fix bug which could result in "0 Bytes" being reported for "System Memory". This usually occurs on Linux 2.6 IA64 systems. * sie/platform/linux On Linux 2.6 systems we now query block devices such as /dev/sdX directly instead of using /dev/sgX since the later is deprecated as of 2.6 and not always present. Previous to this fix on many 2.6 systems we reported no SCSI disks. * sie/platform/linux Reduce size of PCI device data read from 256 to 64 bytes in order to avoid hanging poorly compliant devices such as the PCI bus on Dell 6650 servers. * sie/platform/mac Update system model definetions for Apple Mac's. * sie/platform/sun Add "FJSV,pgtb-fjgi" netif entry to sunos.cf. * sie/platform/sun Add support for Solaris 10 on SPARC and X86. * sie/platform/sun Use libdevinfo(3) to get "Cpu Model" on Solaris X86 systems (and SPARC). We previously reported no value for "Cpu Model" on Solaris X86. * sie/platform/sun Improve device identification by using new PCI VendorID and DeviceID data made available via libdevinfo with Solaris 10. * sie/platform/sun Fix core dump problem on Solaris 10 X86 systems when probing for hardware. Bug was in code trying to set CpuInfo->BitSize. * sie/wrapper If "--show" and "--format report" are both given call SIE directly since the UI layer cannot handle this combination. * ui/wrapper " label to beginning of all debug output lines. Also capture $0 as $ProgramName and re-use $ProgramName to avoid $0 changing. ============ VERSION 5.1.2-GA (2005/02/14) ============ ######## NEW FEATURES ######## * doc/UserGuide Add chapter on SiteInfo data. ######## BUG FIXES ######## * build Fix problem with configure getting wrong $objdir value on Linux systems. It was being set to "linux-X.X-x86" where it should be "$osdist-X-x86". * build Add missing libmcsysinfo/os/sunos/netif.c to source dist. * class/hardware Fix DMI decoding of CACHE size to work properly with larger cache size values (>= 1MB). * dist Fix build distribution procedure to run strip(1) on binary executables and libraries to reduce size of distribution. * doc/ReleaseNotes Update to state we now support HPUX 11.23 (11i v2) on PARISC. * sie/class/hardware Fix "Reliant CSB6" pci-id.cf entry from type "raid" to "ata" to properly identify connected disks. * sie/class/storsys Fix storsys drivers to directly check for "nodemo" option in .cfg files so that the option works when "--format report" is specified. * sie/core Fix sie "--license --nodemo --format report" to not report auto-generated demo licenses. * sie/core Fix rpm(1) command to be run as user in order to avoid rpm hangs common when rpm is run as root. This fix also fixes a common bug with running external commands with excessive privs. * sie/platform/sun Fix bug which resulted in some devices being incorrectly attached to the wrong parent device. Bug was in new libdevinfo(7) code introduced in 5.1. * sie/platform/sun Fix problem caused by Solaris 8 SPARC patch which results in internal disks on systems such as the Sun Fire V880 to no longer be discovered. Part of this fix also includes using device names obtained from libdevinfo(7) in preference to our own device name database. This will more align reported device names with the names used by the Solaris kernel. * sie/platform/sun Fix LDI code on Solaris to implement correct decoding of CPU speed values obtained via LDI. We were reporting significantly incorrect speed values on newer, higher speed CPU's. * ui Include the version status in the cache directory path. i.e. Use "5.1.1-H10" instead of "5.1.1". * ui Fix '--format report' cache bug which caused the cache file path under /tmp to not include the product version. * ui Fix caching so that '--format report --repsep X' uses the cache. To do so, we now store and compare the '--repsep X' values. * ui Fix bug where by '--format report' was previously not using the file cache. If '--format report --cache no' is given, then we bypass the cache as before. * ui/cli Add $cfdir as set by "configure --with-cfdir=..." (at build time) to the list of dirs to search for .cfg files. * ui/cli Fix things so that "--nodemo" actually works. The initial/previous patch only partially implemented this feature. * ui/html Fix HTML output of Software class data not to be mixed with other class data. * ui/html Don't display class title for classes which have no data to present. * ui/html Fix bug causing output to be mixed and repeated when reporting on multiple classes simultaneously encoded as html. * ui/html Fix title of reports to correctly contain hostname report refers to. * ui/html Fix bottom of report to correctly provide version of SysInfo which produced report. * ui/mcsysinfocfg When comparing mcsysinfo.cfg variables with command line option equivilents, ignore case. ######## NEW FEATURES ######## * api Update API layer to handle --logfile. * api/mcSysInfo Update mcPrinter object to use new 'name2' and 'prop' self-describing data formats. * build Build Solaris SPARC using GCC instead of Sun Studio CC. * build Move checks from drivers/* makefiles into top level * build Create new mf/PerlModule.mf where most perlmodules/* include. Use a copy instead of link to work on systems without symlink support (like Windows). * build After building Perl, the distribution is now placed in a single tar.bz2 file instead of left in a directory. This allows for easier handling and management with Perforce. * build Major update to Makefile's and configure to get "make install" to work on Windows. Also created more centralized variables in mf/configvars.mf, moved shell commands from make (mf/Vars.mf) into configure to greatly improve "make" runtime, * build Speed up build time by modifying buildinfo to use its own cache of externally generated variables. This greatly reduces wait time each time make(1) reads a Makefile. * build Move all driver source code into "drivers" subdir. - More fixes for combining everything back into libmcsysinfo. Break libmcsnmp back out as seperate lib. * build Move libmcsysinfo/std/dmi* into libmcsysinfo/dmi/dmi*. * build Use new "libshared" script for building our shared libraries. This is necessary because this process is getting more complex as we add new platforms like Windows. * build Modify buildinfo to call sysinfowrap.in to obtain bulk of platform variables instead of having duplicate code. * build Source distributions are now compressed with bzip2 instead of gzip. * build Use "include @VarsMF@" instead of reading in @VarsMF@ in GNUmakefile's to avoid having to rebuild GNUmakefile's whenever Vars.mf changes. * build/config Add --with-strip and --without-strip to control whether we ran strip(1) during "make install". The default remains not to run strip(1). * build/configure Update configure to add new function and header file checks for certain files not present on Windows. * build/configure Add initial support for Windows configuration. * build/configure Automatically run autoconf to create ./configure in each subdir which has its own configure.in. * build/doc Update doc building so that "make mcd" can use prebuilt tar image of all doc files. * build/doc Updates to automate the build of the CHANGES.txt file. Older entries are now archived in the CHANGES-Archive.txt file. * build/make Move buildinfo.c files from each executable into libmcsysinfo to satisfy linking on Windows. * build/make Update libmcsysinfo GNUmakefile for cleaner output. * class/general Add support for "CPU Count - Physical" on Windows systems with Intel CPUs. - Fix buildprep to do special Windows prep. * class/hardware Update SMBIOS support to 2.6.0. * class/hardware Add new CpuInfo attributes CoreCount, CoreEnabledCount, and ThreadCount. Currently only supported via SMBIOS 2.5+. * class/netif Add IPv6 support for Windows. * class/netif Add new attributes ID, Description, and AltDescription. - Updates to configure and code to work with Cygwin 1.7. Includes removal of MinGW. * class/netif Change the NetIf class to move all address related info like IP Addr from NetIf itself into NetIfAddr and link this list back to NetIf->Addresses. Report and XML output is still backwards compat. * class/network Add new "IP Forwarding Enabled" value as part of Network class data. * class/printer Add V2 report output data for class Printer. * class/siteinfo A sample "siteinfo" file is now installed by default into $prefix/config/siteinfo during installation. * class/software Add Software Product Specific support for Oracle Application Server. * class/software Add Software Product Specific discovery of Tibco Rendezvous. * class/software Add Software Product Specific discovery of Tibco Enterprise Message Service. * class/software Add Software Product Specific discover of Sybase Adaptive Server Enterprise. * class/software Add Software Product Specific discovery of IBM WebSphere Platform Server. * class/storvol Add driver for HPUX LVM. * class/vmguest Add support for reporting Xen based VM guests including Red Hat VM guests. * class/vmhost Add support for detecting if we are running inside Xen based VM such as Red Hat VM. - Fix several compile issues in accountpw.c under RHEL 5. - Update StrParseKeyValue() to have Flags and use to determine how to handle SepStr for 1 char seperators. * config Change .cfg variable ExecPath and SysInfoPath to be comma seperated instead of colon seperated to allow for Windows/DOS pathnames. * doc Add PDF versions of all document guides and manuals to the distribution. * doc Update Release Notes to clarify Linux + SuSe support. Also add details on Storage System Pro feature license. * doc/JavaRef Create new SysInfo Java Reference Manual document and add to SDK distribution. - Tweak SysInfo class to handle default SysInfo dir. - Add new java-examples tree. * doc/ProgGuide Create new Programmer's Guide document to describe how to use new Java API. * doc/RefMan Document in more detail the device format. * doc/RefMan Document new Process class. * doc/RefMan Document new "--logfile" option for mcsysinfo(1). * doc/RefMan Update mcsysinfod ref man to document new --service{add,delete,stop,start} options. * doc/ReleaseNotes Add section on Standards compliance. * doc/ReleaseNotes Document support for MacOS 10.6 with 9-H14 and later. * doc/ReleaseNotes Document support for Linux on PPC. * doc/ReleaseNotes Add support for SLES 11.0. - Fix build errors for emcclar. * doc/ReleaseNotes Re-write Supported System Matrix to make it easier to determine what Classes and features are supported on each platform. * doc/ReleaseNotes Update Release notes to document Discovery Process for Software SPS. * doc/ReleaseNotes Update release notes to include root and running process requirements for software detection. * doc/ReleaseNotes Document support for MacOS 10.6 with 9-H14 and later. * doc/ReleaseNotes Document "Out of Memory!" error on HP-UX. * doc/ReleaseNotes Document MacOS 10.1 and 10.2 no longer being supported. * doc/ReleaseNotes Document support for SLED 11 and CentOS 3-5. * doc/ReleaseNotes Update Supported Systems list to add MacOS 10.4 as officially supported. * doc/ReleaseNotes Update ReleaseNotes to document that we now support Red Hat Enterprise Linux 4 on x86_64 (AMD64/EM64T) and IA64. Also that we support Fedora Core 3. * doc/UserGuide Add doc on all supported data Classes. * doc/UserGuide Document General Data Class. * doc/UserGuide Add chapter on SiteInfo data. * fix/build Fix compile issues for Fedora 5 / GCC 4.1 including use of packed attribute and LRMI assembly. * install Enhance .sh installers to check OS name and App Arch to make sure it's a match. * license Update LICENSE files. * license Update End User License Agreement. * mcsysinfod Add support for inetd mode to support use of launchctl on MacOS 10.6 and later. - Integrate 9-H14 into main (10.0.0). * mcsysinfod Add support for inetd mode to support use of launchctl on MacOS 10.6 and later. * mcsysinfod Look for "DebugFlag=1" in mcsysinfod.cfg at runtime. - More cleanup of message logging. - Make mcsysinfod work under Windows SCM. * mcsysinfod Debugging messages now include process and thread ID (if any). * mcsysinfod Split BSD specific code out and add Win32 WinSock specific functions. * mcsysinfod Create new Log*() functions to allow use of proper OS facility - syslog() or ReportEvent() (Win32). * platform/aix Decode "YL" ODM value as "Physical Location". * platform/windows Add OS name and version support for Windows. * sie/class/account Add support for new "Account" class to report system user accounts. * sie/class/device Major revamp of Solaris hardware discovery. On Solaris 8 and later SysInfo now uses libdevinfo(3) as primary discovery. Older Solaris systems retain the older method of using KDT with OBP and libdevinfo supplementing the KDT data. * sie/class/device Report more DevFiles for devices on Solaris 8 and later using additional data gleamed from libdevinfo(3). * sie/class/device Add new "NodePath" and "CompatNames" properties to Device class. * sie/class/device Add new "GenericName" key flag to SID files for "device" lines. This flag tells SysInfo not to use the device entry as the canonical device name. * sie/class/DevInfo Change internal definition of DevInfo to remove DevSpec (Opaque_t) and replace with explicit types DiskDriveData, NetIf, FrameBuffer, Monitor, CpuInfo. This is required to cleanly autogenerate code in other languages like Java. Externally this is transparent to endusers. * sie/class/general Add new "OS License Key" to report the license key used to install or authorize the OS itself. Windows is the only platform supported at this time. * sie/class/general Add new "Description" attribute to contain a description of the system. - Fix SoftFileData_t to SoftFile_t references. * sie/class/general Add new "Location" attribute to General class. - Add generation of SysInfo.java in classdefs. * sie/class/general Add new field "OS Manufacturer" which specifies the company/org who created the OS. Add new field "OS Distribution Manufacturer" which specifies the company/org who created the OS Distribution. * sie/class/general Look for override values for "System Serial Number" and "Chassis Serial Number" in SiteInfo entries of "systemserial" and "chassisserial". * sie/class/general For "Primary User Login" and "Primary User Name" we now look for siteinfo keys "primaryuserlogin" and "primaryusername" and (if found) use as overrides. * sie/class/general Implement new "Chassis Serial Number" attribute for class General. This value is usually only reported on Blade systems. On Blade systems Chassis Serial is the serial of the enclosure and System Serial is the serial of the Blade card. On non Blade systems Chassis Serial is not reported. Currently Chassis Serial is only available on systems which support IPMI access to Baseboard Management Cards (BMC's). * sie/class/general Fix General class data on Man Long, Man Short, System Serial, System Model, and CPU Count - Socketed to use new SMBIOS data on x86 systems. This is available on Solaris 10 U2 06/06 and later X86. * sie/class/general Prefix "Serial Number" and all "Manufacturer" titles with "System". * sie/class/general Add support for providing the Sun recognized System Serial number on Sun X64 hardware running Solaris 10. We now obtain this data via IPMI from the BMC (required). * sie/class/general Output numeric values for General class items uptime, boottime, and currenttime in new field of REPORT output. * sie/class/general Overhaul CPU counting. Changed description "Number of CPUs (Physical)" to be " "CPU Count - Socketed", "Number of CPUs (Virtual)" to be "CPU Count - Virtual", "Number of CPUs (Online)" to be "CPU Count - Online", and "Number of CPUs (Offline)" to be "CPU Count - Offline". The report keys for all of these remain the same. Also added new "CPU Count - Physical" to provide count of each physical CPU including multi-core CPUs. * sie/class/general Add new "Up Time" value in class General. * sie/class/general Add debug info to GetMan{Short,Long}Sysinfo functions to report results or failures. * sie/class/hardware Add new "Family" attribute for CpuInfo data. Currently supported on X86/X64 systems with SMBIOS. * sie/class/hardware Add new "Family" attribute for CpuInfo data. Currently supported on X86/X64 systems with SMBIOS. * sie/class/hardware Add new "Family" attribute for CpuInfo data. Currently supported on X86/X64 systems with SMBIOS. * sie/class/hardware Move the probe for monitor EDID data on Linux X86 from within the main SIE to be a seperate SysInfo driver process. This isolates SIE from any unexpected faults and bugs in the VBE code in the Linux kernel. * sie/class/hardware Enhance Monitor_t data with MinVerRefresh, MaxVerRefresh, MinHorRefresh, MaxHorRefresh, and MaxPixelClock values. These were previously reported as "DESC" data. * sie/class/hardware Look at CPUID Intel and AMD data to set CpuInfo CoreCount and ThreadCount. * sie/class/hardware Add disk device Capacity support on Mac. Also improve disk drive and framebuffer device assimilation on Mac. * sie/class/hardware Add new DevInfo->CapacityNum value. Add new DT_PORT device type definetion. * sie/class/hardware Enhanced data on Sun X64 hardware is now provided for the top most system Hardware node. Enhanced data include the product part number and type. * sie/class/hardware On AIX we now check for Hitachi Dynamic Link Manager and use that to determine if a disk is multipathed or not. * sie/class/hardware Add new "Location" data as part of each "device" entry (where available). * sie/class/hardware Improve hardware details on Sun SPARC systems by augmenting data from prtfru(1m) which includes detailed part and serial number info for system boards, CPUs, etc. * sie/class/hardware Add new SATA class type. * sie/class/hardware Linux systems now correctly identify SATA devices instead of type SCSI. * sie/class/hardware Add check to see if disk device looks like a Seagate disk model and if Vendor is not set, set to Seagate. * sie/class/hardware Redesign Linux hardware discovery to use /sys (sysfs) on Linux 2.6 and later. This provides much improved consistancy in what devices are reported and also the device hierarchy. - When debug is enabled run lspci and lsusb on Linux. - Add new PathCanonical() and McDbg() functions. - Misc cleanup of device functions. * sie/class/hardware Add new database of USB vendors/devices IDs which are currently used for Linux hardware discovery. - Revamp PCI ID database generation to support USB db's as well. * sie/class/hardware Add Features flags to each DevInfo_t with initial support for removable, hotswap, and replacable. Values are reported consistantly as device properties. * sie/class/hardware Devices are now listed in sorted (alpha) order instead of the ordered provided by the OS. This helps consistancy on OS where the order provided can vary between each run. * sie/class/hardware Improve device naming for PORT devices (keyboard, mouse, serial, etc) obtained from DMI. Names now are based on DMI provided data rather than our own. * sie/class/hardware Add new device type DT_SLOT to classify card slots in a system. * sie/class/hardware Hardware discovered by DMI is now under a new top level node called "dmi/0". * sie/class/hardware Improve summary descriptions for DMI devices. * sie/class/jobs Add support for new "Jobs" class. This class is a list of all scheduled jobs/tasks that are scheduled to run automatically. * sie/class/kernel Update HPUX kernel variables list to include variables interesting for Oracle DB's. * sie/class/license Add License class support on Windows. Registry is scanned for license Keys. Currently supported are Microsoft and Adobe products. Others may also work if Keys are not encoded and in a commonly used Registry location. * sie/class/license Add new Category type to License with types APP and OS. Add KEY as a new type for LicenseType. Add new attributes SoftVendor and KeyEnc. * sie/class/license Upgrade FLEXlm support from FLEXlm 8.1 to version 10.1. Also add FLEXlm support on Solaris x86. * sie/class/netif Add IPv6 discovery support on MacOS X. - Move Ifconfig parsing into os/netif.c for each os. - Add SystemLocation and SystemDescription to sample siteinfo file. - Build fixes for MacOS and HPUX. * sie/class/netif Add IPv6 discovery on Solaris and AIX. Also we now use ifconfig cmd for IPv4 discovery. - Tweaks to build once again on Solaris and AIX. - Updates to mcsiclassx build. - Fix configure to look for java under /usr/local/java. * sie/class/netif Add discovery of IPv6 addresses on Linux. IPv4 addresses are also now obtained from ifconfig command for improved non-root data discovery. * sie/class/netif DHCP Client configuration for each interface in the NetIf class is not reported for Windows and Linux. * sie/class/network Add "WINS Proxy Enabled" to Network class. * sie/class/patch Create new "Patch" data class for software patches. Solaris is the first OS this is supported on. * sie/class/process Implement new class called Process to report all running processes on system. * sie/class/service Add new "Service" class for detailing System Services. - Fix StrSplit(). - Update TODO. * sie/class/SoftInfo Add SoftInfoCategory attribute to SoftInfo. * sie/class/software If Microsoft Office suite is detected then it is given an EntryType of PRODUCT instead of PKG. Components of Office are still marked as PKG. * sie/class/software Add support for decoding and reporting Adobe License Key (Serial#) values. * sie/class/software Improve editing of Software Name values to remove Version. We now look to match SoftInfo->Version and SoftInfo->Name for "{digit}.". This helps on Windows where sometimes Version="7.1" but "7.0" is used in Name. - Remove -Iinclude/mcsysinfo from libmcsysinfo/GNUmakefile.in and fix * sie/class/software Add discovery and reporting of OS Install Time in the SoftInfo OS entry under "InstDate". Supported on Windows only for now. * sie/class/software Create a SoftInfo entry for the OS itself. The SoftInfo entry is usually the root (top) node of the software tree and as such will (usually) be reported first. It also has a Category of "OS" to identify it. Some of the information is a duplicate of what is reported in class General. However, more subtle attributes going forward will be reported in the SoftInfo entry. * sie/class/software Report License Key values for Microsoft products including Office. * sie/class/software The OS SoftInfo node now reports the "Product ID" on Windows. * sie/class/software Add new "CATEGORY" type as a SoftInfo EntryType value in addition to existing PKG and PRODUCT. * sie/class/software Add new --swentrytype to restrict reporting to specified types (pkg, product, category). * sie/class/software On Linux change Software entries of type PRODUCT to be CATEGORY which is more accurate. * sie/class/software Add Software discovery support via SDL scripts for: Apache Tomcat, CA BrightStor Server, HP OpenView Data Protector, IBM DB2, IBM Informix C-ASAM, IBM Informix Enterprise Gateway Manager, IBM Informix I-SPY, IBM Informix MaxConnect, IBM Informix Extended Parallel Server, IBM Tivoli App Dependency Discovery Manager, IBM Tivoli COmposite App Manager for WebSphere Data Collector, IBM Tivoli Configuration Discovery and Tracking, IBM Tivoli Configuration Manager, IBM Tivoli Enterprise Console, IBM Tivoli Netcool, IBM Tivoli Provisioning Manager for OS Deployments, Sun Java/JRE. * sie/class/software Add "Install Date" for Software packages on Windows. * sie/class/software Give "HelpLink" preference over "URLinfoAbout" on Windows for value of URL. - Add Windows Patch class support. * sie/class/software Add Software Product Specific discovery for BEA WebLogic. * sie/class/software Add special software discovery of Apache HTTP Web Server. * sie/class/software Convert Software class in SIE to handle wide chars for I18N compliance. * sie/class/software Cleanup software related datatypes and consolidate into software specific header files. * sie/class/software Add new Software Product Specific discovery infrastructure with initial implementation to detect Oracle Database. * sie/class/software Add ability to report on multiple versions of the same software package. When report v2 format is enabled, a unique identifier is given for each software package. The identifier currently is name-version-rev. * sie/class/software Output report format V2 self-describing data for class Software. * sie/class/software Add new URLhelp, URLupdate, and InstSource members of class Software. - Add Software support to Windows. - Update Windows code to use LoadLibrary() instead of GetModuleHandle(). * sie/class/storvol Add new Storage Volume class. * sie/class/storvol Add support for Veritas Vol Mgr in storvol. * sie/class/storvol Added support for Linux LVM via linuxlvm driver. This was the hpuxlvm driver, but the 2 apparantly share very similiar roots. The hpuxlvm driver has thus been renamed the linuxlvm driver which is used on both Linux and HP-UX now. * sie/class/storvol Add driver to support Solaris Volume Manager and older Solstice DiskSuite. * sie/class/storvol Add storvol driver for native AIX LVM. * sie/class/vmguest Improve VmGuest detection of VMware software to support VMware Server 2.0. * sie/class/vmguest Add new VmGuest class for detailing VM Guest OSs installed on a system. * sie/class/vmhost Add support for discovery of whether we are running inside Microsoft Hyper-V guest. * sie/class/vmhost Introduce new class "VmHost" for detailing Virtual Machine Host information. * sie/cli Add new --xmlversion option to specify version of XML output to display. XML Version 2 output is now default. * sie/cli Add new --prefix option. * sie/cli Change "--expiretime" to be "--cacheexpire" and keep "--expiretime" as deprecated option. * sie/cli Add new "--nodemo" license to disable the use of any normally used demo licenses. * sie/core Boolean values are now reported in lowercase instead of uppercase in order to be XSD compliant. * sie/core Add support for Linux on s390x (zSeries). * sie/core Changes to support build on Linux on PPC. * sie/core Add initial support for Linux on PPC. * sie/core Updates for MacOS X 10.4 and Intel Mac. * sie/core Add platform debug info. * sie/core Include new "ClassTypeDesc" in report output. This provides the Device Class Type Description. * sie/core Move/migrate all SysInfo Database files * sie/core Move all config/mibs files into lib/mibs. * sie/core Revamp PSI calls to return new Status_t status and results via Query->Out exclusively. * sie/core More declaration cleanup and conversion to ANSI declarations. * sie/core Check for MCSYSINFO_HOME environment variable as the top level directory where SysInfo is installed. * sie/core Convert Siteinfo class functions to be I18N compliant. Build foundation for I18N functions. * sie/core Add new "Language Locale" reporting to class General. * sie/core Add support for --logfile to log messages to a file for "sie". * sie/core Use new PathStrChr() and PathStrRChr() in place of strchr() and strrchr() for pathnames. These functions handle both forward and reverse slashes. - Fix various @prefix@ to be @prefix_dir@. - BaseDebug() now is just a frontend for McDebug(). * sie/core Add new MakeTempFile() wrapper around mkstemp() or mktemp(). * sie/core Add support for "--repsep %p" being translated into "--repsep |" in order to support cases where "|" is intepreted by a shell. - Various Windows code updates for mcsysinfod, WinFuncGet(), etc. * sie/core Add "--format report" version 2 (self describing) format support for class Software. * sie/core Add new createtime, createtimenum, and sourcehost data to "--format report". * sie/core Document "--reportencvers" option (formerly undocumented as "--formatencvers"). * sie/core Improve debugging messages for CF*() functions. - Various fixes for Windows. * sie/core Update cpuid.c debugging statements for consistancy. * sie/core Add new GetCpuInfoDmi() function and support changes. - More Windows updates. * sie/core Replace cpuidasm.s with inline asm(). * sie/core Merge libmcl, libmcbase, libmcsidriver, and libmissing back into libmcsysinfo in order to support Windows DLLs. This is required since Windows DLL's cannot have any unresolved symbols which we required when we had seperate libraries. * sie/core Add initial Windows support. * sie/core Add Windows functions for directory retrieval. * sie/core Add new StrErr() function to replace SYSERR. Includes support for Windows version. * sie/core Fix various network functions to better handle missing structures. (Windows) * sie/core Improve ATA debug output. * sie/core Add definetion for ATA mode 6 as ATA/133. * sie/core Add improved reporting of DMI "Port" data using Internal and External string values from DMI. * sie/core Improve debugging messages. * sie/core/mac Update system models. * sie/doc/InstallGuide Break source installation into seperate chapter. Document Perl build on Windows. * sie/general Add support for CPU Model reporting on MacOS. * sie/hardware Improve MacOS hardware tree results by filtering out more driver/pseudo devices. * sie/license Revamp mcl license code to allow for broader use by standalone drivers. * sie/license Revamp licensing so that status messages such as demo license expiration are provided. Also provide license info for all driver licenses that use licensing. * sie/license Add "Feature" field to license data. * sie/output XML output for "netif" now places each address within an "address" element to support multiple addresses per netif. * sie/platform/aix Determine "Kernel Bit Size" on AIX by using sys/systemcfg.h values. We also now determine "Kernel Arch" from the same source. * sie/platform/aix We now provide system serial number of IBM pSeries (RS6000) systems for the first time. * sie/platform/aix Add support for class general "CPU Type" on AIX. * sie/platform/AMD64 Add support for RHEL 3 on AMD64. * sie/platform/hpux Integrate changes for support of HPUX on IA64 (Itanium). * sie/platform/hpux Add OS Dist support for reporting HPUX Operating Environment info. * sie/platform/hpux Improve debugging data for class hardware on HPUX. * sie/platform/linux Use lsb_release to identify OS Distribution if command is available. * sie/platform/linux Use first word of full OS Distribution as the Short OS Dist value if none of the special cases (i.e. "rhel" and "redhat") apply. This works for most Linux distributions including "fedora". * sie/platform/sun Show output from prtdiag when debug is enabled and hardware tree is built. * sie/platform/windows Add "Host Addresses" support in class General for Windows. * sie/rpm Add /usr/local/bin/rpm as another place to check for rpm. * sie/ui Add new options --sps, --spsignore, --spsemodules, and --spslist. * sie/ui Improve debugging messages. * sie/ui/GUI Add SysInfo to GNOME menu system during installation. * sie/wrapper Fix mcsiwrapper to not load in large config/*cf files like pci.cf. This noticably reduces runtime startup. * ui Add --licenselist option to list all SysInfo licenses found regardless of whether they apply to the local system or not. * ui/gui Update SysInfo and MagniComp logos to latest versions. * ui/GUI Add support to GUI to install a MagniComp license file. * ui/html Revamp HTML code to support hierarchical trees when column format is specified. * ui/text Revamp text code to support hierarchical trees when column format is specified. * utilities Add new mcsysinfodeploy script for assisting with deployment of SysInfo to multiple UNIX based systems. * wrapper A new wrapper (mcsiwrapper) written in C replaces the previous sysinfowrap shell script. A binary wrapper program is required on Windows which does not have any native support for shell scripts. Execution time on UNIX/Linux/MacOSX systems is also sped up by this. ######## BUG FIXES ######## * all Add support for obtaining DMI info on IA64 on Linux. * all When using GCC specify -Wall to better catch coding errors. * all Fix a handful of problems with using variables which may not be properly initialized. * all Fix a handful of problems with missing function calls with missing parameters. * all Fix numerous missing function declarations. * all Use new always Y2K compliant time format for StorSys and StorVol dates. Previously we used "%c" which is not Y2K compliant in some locale's. * all Fix a number of cases where *printf() format types did not exactly match their args. Typically this was cases of "%d" being used where "%ld" should have been used. * all Convert more function declarations to ANSI C format. * api Fix parsing of Device parameters to use the first value found instead of the last. * api Fix Hardware class API code to detect and fix when a device has a Master name equal to it's own name. * api/mcSysInfo Fix parsing of hardware "data" lines to parse proper field number. We previously looked at wrong field order resulting in "data" lines being ignored. * api/mcSysInfo Add proper locking to cache files to avoid data clobber and other ugly possibilities. * api/mcSysInfo Include product version in cache directory path to avoid different sysinfo versions from interferring with each other with installed simultaneously. * api/mcSysInfo Filter out possible recursion data in mcSoftware perl object data. We now check to make sure a software object's parent and children do not contain the node itself. * build Add ifdef checks for linux .h files on Fedora 6. - Fix ParseOptions() so that multiple boolean options increase the variable being set by 1. - Add QueryListDestroy() function. - Checkpoint SDL. * build Fix source tarball build to use same version command as used for prebuilt binary. This should result in more exact matching of names. * build Include LIBS in linker options when linking libmcsysinfo and libmcsnmp in order to satisfy MacOS linker. * build Don't use our own DRIVER_INFO_6 type declare anymore as mingw now includes one. * build Don't cache configure vars relating to product version since we often update hotfix data in these vars. * build Fix nsis/GNUmakefile.in to use BuildDir instead of objdir for SaveVarFile. * build Remove whitespace from cksum values in .sh dist files. This avoids problems whereby the cksum command on the customer system inserts extra whitespace vs. the build system's cksum command. * build Enable standard GCC compiler warnings on Windows. * build Fix configure test for VxVM to correctly set "no" when VxVM is not available. * build Cleanup and centralize various *FLAGS make variables to come from ConfigVars.mf instead of being in each GNUmakefile.in. * build Fix mcdadd to not require "-d" option. - Make "mcd" targets work once again. * build Use new ${prefix_dir} instead of ${prefix} and other changes necessary to handle whitespaces and backslashes in file/dir names (needed for Windows). * build Fix builds so that we use 64-bit builds of perl on 64-bit systems. We previously used 32-bit perl on 64-bit systems. * build Update various GNUmakefile's to refer to $(WRAPPERNAME) instead of explicit ".sysinfowrap". * build Fix CpuArch/AppArch handling, $PATH, $CC, and others to support Solaris 10 AMD64 builds. * build Fix problem with configure getting wrong $objdir value on Linux systems. It was being set to "linux-X.X-x86" where it should be "$osdist-X-x86". * build Add missing libmcsysinfo/os/sunos/netif.c to source dist. * build Fix build/configvaredit to work with older versions of perl(1). * build Fix syntax errors in configure when run in non-MagniComp environments. * build Fix configure to correctly search for shared libperl.* files. * build Fix configure to correct set CFLAGS on IRIX once again. * build Fix configure and setup to correctly set "@perl_shared_lib_dir_base@" * build Fix configure to check for all funcs with special AC_FUNC_CHECK macros in order to insure proper HAVE_$FUNC definetions. * build Fix "install" make target to install install.rc and associated files. * build Revamp build process to use improved "platform" naming during installation from source and "setup". * build Convert internal "KISA" variable to be "CPUARCH" with backwards compat. * build Remove attempt at AC_DEFINE_UNQUOTED($osname, ...) which never worked and now causes errors with newer autoconf. * build Move test for IS_X86 to configure from mcsysinfo/defs.h in order to work with newer platforms which don't have cpp defines we can use. * build Update perl GNUmakefile.in's to add improved error reporting. * build Change ./configure warning about GNU make to state builds will fail without GNU make. * build/compile Don't use -I/usr/src/sys on freebsd as this causes compilation errors with GCC 3.3.x and later. * build/config Always run $plcmd as "/bin/sh $plcmd" since it is not executable by default. Also tidy up and consolidate handling of $plcmd tests. * build/configure Need to set LdSysLibsLast=yes on Linux to get things to build with libexpat. * build/configure Fix bug in expat test that resulting in configure thinking expat was present when it was not. * build/configure Fix configure to properly detect when expat is not present. * build/configure Fix --with-perl option to configure to once again work. Fix related perl build issues. * build/configure If expat package is missing then we now treat this as a fatal configure error. * build/configure Fix configure to properly set cc options when using Sun Studio 10 C Compiler on Solaris AMD64 systems for 64-bit compiles. * build/configure Fix several cases of needing HAVE_* defined for AC_CHECK_LIB cases. These are due to changes in autoconf to generate HAVE_LIBXXX instead of the previous behavior of HAVE_XXX. * build/dist On HPUX IA64 the .sh distribution file fails to extract with "libbz2.sl" missing errors. This is fixed by including a bzip2 binary which does is not dependant on libbz2.sl being present. * build/dist Fix bug in makeself which resulted in distribution files (*.sh) not being extractable with a "bad trap" error. This was due to changes to "trap" syntax in newer OS like RHEL 4. * build/installer Fix Windows installer to create the "SysInfo with Debugging" menu shortcut to place logfile on users Desktop. * build/installer Fix Windows installer to better handle silent installs, improve logging, and improve addition of mcsysinfod to SCM. * build/make Fix most program GNUmakefile.in's to include @LDFLAGS@ and consistantly use @CFLAGS@ and link with $(LIBS) for .debug executables. * build/make Insure that $CPPFLAGS is set by @CPPFLAGS to insure that "gcc -E" tests for .h files work. * build/Perl Update "stage3" list of files to strip from perl to include Perl 5.8.7 locations. * build/platform/AMD64 Fix various minor problems with casting and declarations as part of port to RHEL 3 on AMD64. * class/device Fix discovery of NetIf's on Linux 2.6.30. Newer kernels do not place the administrative name of a netif in the expected place in /sys We now look for .../net/ethX. * class/filesys If an NFS mount is hung, SysInfo now times out instead of hanging. This is implemented via new "mntinfo" driver which performs all statvfs/statfs calls which are the calls which block when an NFS mount is hung. * class/hardware Fix DMI decoding of CACHE size to work properly with larger cache size values (>= 1MB). * class/software Improve performance of adding files to software objects by tracking Last ptr. - Add wchar_t support to McHash functions and modify softinfo functions to specify new MCH_TYPE_WIDESTR. - Fix CFLAGS/LDFLAGS to come from ConfigVars.mf in various remaining GNUmakefile.in's. - Fix misc declarations not be present due to .h issues. * class/storsys Fix rare core dump in nafiler due to NULL deref. - Add configure testing for ioctl() support. - Integration of 6.0 changes. * class/storsys/nafiler Link in -lcrypto statically with the NetApp driver in order to work across more Linux distros such as SuSe. * class/storvol Fix the HPUX LVM driver to actually run. It was previously not linked and installed properly resulting in dld.sl errors. * core Various changes to internal function names which conflict with Windows API functions of the same name. * core Fix bug in StrCat() which results in incorrect results and/or seg faults. Primarily affects class Software on HPUX. * core/api Detect when SIE exists abnormally typically due to a core dump and report an error message. * core/config Config files with an empty value field are no longer reported as an error, but are reported with --debug. * core/hardware Update PCI device database with about 2K more entries. * core/libmcsysinfo Use McDebugFlag instead of DebugFlag in mcsidriver/* files. * core/platform/linux Don't link against -lelf which is not available on all Linux dists like SuSe and is also unused by SysInfo on Linux. * core/platform/macos Update list of Mac system models. * dist Fix build distribution procedure to run strip(1) on binary executables and libraries to reduce size of distribution. * doc/RefMan Update mcsysinfoperl to specify that $mcSysInfo->Program() is REQUIRED and not optional. * doc/RefMan Fix the SYNOPSIS of mcsysinfocli to properly reflect options. * doc/RefMan Update mcsysinfod man page to document new --logfile option and fix OPTION summary section. * doc/RefMan Update mcsysinfocli manual to refer to "sysinfo --list class" for parameters to "--class". * doc/ReleaseNotes Document removal of support for SGI IRIX. * doc/ReleaseNotes Update release notes to doc Sun X64 serial number support. * doc/ReleaseNotes Update to state we now support HPUX 11.23 (11i v2) on PARISC. * doc/ReleaseNotes Clarify IA64 and HPUX/Linux supported system info. * drivers/nafiler Fix incorrect mkstemp() usage, changes to compile on Windows. * gui Fix GUI's Report tool to work once again. It was previously trying to run ".mcsiwrapper" instead of "sysinfo". * gui Fix GUI to actually display StorVol data. It previously was missing that functionality. * gui/class/storsys Fix StorSys general system Properties to properly display values. * install Fix installer to work on Fedora 5 and later. Newer OS which use the latest GNU coreutils don't accept "tail +N" by default. * install Fix UNIX installer to not fail with a Chown() error if not run as root with --override. * install Fix Windows installer to wait for uninstall of existing product to complete prior to installing. We were previosly deleting as we were installing which resulted in an unusable installation. * install Fix uninstall via setup to properly remove mcsysinfod on MacOS X. The problem was we did not correctly determine that we were on MacOS during removal. * install If the user installs the "noui" product distribution and does not specify "--format report" print an error which spells out they need "--format report" or should install the "Full" product distribution. * install/setup Fix check for available disk space to work once again. * install/setup Fix "deterine" typo in setup error messages. * install/setup Determine AppArch with builtin rule for HPUX IA64. * license If a FULL product license exists, do not auto-create any feature licenses such as for StorSys Pro. This reduces user confusion. * mcsiwrapper Fix wrapper so it can launch mcsysinfod when used with the noui distribution. * mcSysInfoAPI Remove \r (^M) from SIE inputs. * mcsysinfod Don't run with --debug by default anymore. * mcsysinfod Fix SysInfo Agent such that it fully divorces itself from the process (shell, init, setup, etc) which invoked it. This fixes a problem where SSH would hang if it was used to invoke the setup installer or if it ran /etc/init.d/mcsysinfo. * mcsysinfod Fix bug in SysInfo Agent which can cause Agent to fail (core dump) whenever it calls mcsysinfo due to Cmd.Argc being one too many. * mcsysinfod Fix Service Add via SCM on Windows 2000 to work more reliably. * mcsysinfod Fix a core dump problem in mcsysinfod which can result in incomplete remote data sessions or excessive CPU consumption by mcsysinfod. * mcsysinfod Improve detection of client disconnects. - Fix McProgramName() reference. * mcsysinfod Fix SEGV do to double free of CacheFile. * mcsysinfod Convert to read/write raw socket instead of converting to a FILE handle. This is more portable and was done to support Win32. * mcsysinfod Fix bug resulting in the first set of requested class data being reported, but most of remaining classes not being reported. Bug appears mainly on Solaris 10. Problem was use of fclose() on a popen()'ed file handle. Changed to pclose(). * mcsysinfod Fix several possible problems with incomplete data being provided due to improper terminatation of SIE. No reported problems. * mcsysinfod Use /tmp/mcsysinfod.cache instead of /var/tmp/mcsysinfocache to be consistant with UI caching into /tmp/mcsysinfo.cache.$UID. * misc Fix mcsysinfomotd to use '%' instead of '@' to avoid autoconfigure substitution problems. We also now include the OS name and version in /etc/motd. * platform/freebsd Update minimum supported FreeBSD version to be 5.2 due to bugs in vswprintf() in FreeBSD 5.0 and 5.1. These bugs caused segfaults in Software class retrieval. * platform/Sun Fix "Kernel Bit Size" on Solaris x64 to correctly indicate "64" rather than "32". * setup Fix setup meter progress bar to not reprint entire line to improve performance and reduce overhead. We also no longer use the meter bar if --debug is given. * setup Fix minor bug with extra "-" chars being displayed when showing the SUMMARY field. * setup Shell commands during setup (and potentially during sysinfo runtime) were falsely marked failed when setup was run by root (or any uid==0 user). The result was setup would abort for no apparant reason or indicate it was unable to check disk space. * setup Need to properly edit @ProdVersion@ during setup install in order to use proper /tmp cache directory and others. * sie " at the begging of each debug output line by default. * sie Fix debug message "Executing" to be "Running" in shlib in order to make debugging more consistant. * sie/api Fix mcSysInfo Perl API bug in cache code. When --show is used, only the --show arguments are saved to cache. Next time --show or --class are used only the previously saved --show arg data is displayed. Fix is to disable cache save when --show is given. * sie/build Add missing Solaris files to source tarball. * sie/class/bios Include BIOS characteristics in XML output. * sie/class/bios Include BIOS characteristics in XML output. * sie/class/bios Report Bios characteristics in class Bios same as reported in Hardware for bios0. * sie/class/bios Report "Release Date" for SMBIOS based BIOS in class Bios in addition to class Hardware. * sie/class/core Fix bug in SID code which sometimes (rarely) caused invalid address corruption resulting in core dumps. * sie/class/device Fix SID entries for ie, ei, le, ne, qe, pcelx, and elx to be "ether10m" instead of the invalid "ether" key. * sie/class/device Reduce discovery time of hardware on most systems be fixing DevTreeScan() to not be called more than once. * sie/class/device Fix Device Name sanitizing to make add AltName entry for sdX Aliases. * sie/class/device Fix detection of Bus# and BusDev# for disk drives by moving check of SetBusFromName() to be after DevSanitizeDiskDrive(). * sie/class/device Rename Device Names to match the official system network interface name used by ifconfig and netstat. This previously resulted on HPUX reporting a Device name of 'igelan1' but HPUX only recognized this device as 'lan1'. * sie/class/device Fix possible NULL deref resulting in core dump during device discovery. This is a result of strdup(DevData->DevName) with no null check from a fix in 9.0.0-H22. * sie/class/device Fix bug in SMBIOS decoding of memory devices where MEMDEV and MEMMOD devices discovery could overwrite each other. This can result in some memory devices not reporting all possible properties such as "Speed". Under some circumstances extra memoryX devices could also be reported which are actually duplicates. This could occur if --class general,device are run together. It's also limited to a select number of SMBIOS configurations. * sie/class/device Rename Device Names to match the official system network interface name used by ifconfig and netstat. This previously resulted on HPUX reporting a Device name of 'igelan1' but HPUX only recognized this device as 'lan1'. * sie/class/device Add "Speed (MHz)" numeric value for CPU's to report output as alternative to "Speed" for UI's. * sie/class/filesys On Windows do not run mntinfo driver with --debug as stdout is mixed with stderr. * sie/class/filesys Fix FileSys, PartInfo, and Hardware class to not hang if an NFS mount is hung. We have moved the statvfs()/statfs() calls which block on hung NFS mounts into a new driver program called mntinfo. SIE now calls mntinfo and parses it's output for all file system related data. If mntinfo hangs SIE will time-out and kill mntinfo then continue. This fix also contains fixes for Cmd_t time-outs to work when the child process blocks. * sie/class/general Fix Primary User discovery on Solaris which sometimes may cause a seg fault or report incorrect data. Failure can occur when we directly read wtmp/wtmpx files. We have re-activated support for using getutent()/getutxent() but now we use utmpname()/utmpxname() to specify the wtmp/wtmpx file we want to read. Additional error checking/validation is also performed for all wtmp/wtmpx methods. * sie/class/general Fix how Boot Time and Up Time are discovered on Linux to use getutid() first and then fall back to /proc. Previously we used /proc only which could result in Boot Time values which changed by 1 second in between runs of SysInfo on the same host. * sie/class/general The "OS Dist Manufacturer" code will get a default value from "OS Manufacturer" if no other method succeeds or exists. * sie/class/general Fix "OS Distribution Version" to report correct data on Windows 7 and 2008 R2. - Implement McRegSearch() function to search Registry. - Fix MC registry functions to display actual error code messages in debug output instead of using "0" value. * sie/class/general Fix "CPU Speed" discovery on HPUX 11i v3 IA64 to correctly parse new machinfo(1) output format. * sie/class/general Fix "CPU Count Socketed" on Solaris 9 SPARC to be correct on certain platforms. We previously ignored psrinfo on < Solaris 10 but the psrinfo now appears valid on Solaris 9 so we now use it on that OS version. * sie/class/general Fix how Boot Time and Up Time are discovered on Linux to use getutid() first and then fall back to /proc. Previously we used /proc only which could result in Boot Time values which changed by 1 second in between runs of SysInfo on the same host. - Integrate 9.0.0-H33 into main. * sie/class/general Fix segfault error on AIX during discovery of "boot time" and "up time". Error occured when /etc/utmp was corrupted. - Integrate 9-H27 into main. * sie/class/general Fix segfault error on AIX during discovery of "boot time" and "up time". Error occured when /etc/utmp was corrupted. * sie/class/general Fix CPU Count - Socketed and Physical count on Solaris SPARC UltraSPARC-IV systems. * sie/class/general Fix CPU Count - Socketed and Physical count on Solaris SPARC UltraSPARC-IV systems. * sie/class/general Fix bug which caused "numcpuoffline" output for report and xml to be reported when the --show option was used but did not specify to report "numcpuoffline" (it was shown anyways). * sie/class/general Add ability to not report System Serial if the true system serial is not known when the env var MCSYSINFO_TRUE_SYSSERIAL is set to "yes". This currently only pertains to Solaris SPARC. * sie/class/general Fix "kernbits" on Solaris x64 to properly report "64". Previously this worked in most cases, but failed on VMware guest instances of Solaris. - Integrate 9-H22 into main. * sie/class/general Fix "CPU Count Virtual" on HPUX to report single value in format output. In H56 we introduced a double output in format report. * sie/class/general Fix "CPU Count Virtual" on HPUX to report single value in format output. In H56 we introduced a double output in format report. * sie/class/general Fix "CPU Count Virtual" on HPUX to use mpsched as data source. Previosly no value was reported. * sie/class/general Fix "CPU Count - Physical" on certain UltraSPARC-T2 systems. The hash table used to track "core id" values was too small resulting in some cores being counted twice. * sie/class/general Add support for setting System Man and Model on Linux from /proc/cpuinfo on PPC. * sie/class/general Fix "CPU Type" on MacOS x86 to report "i686" instead of "i386" to be consistant with CpuInfo data. * sie/class/general Fix "Kernel Bit Size" on SunOS 5.6 SPARC to report "32" instead of "64" even on sparcv9 systems. * sie/class/general Fix possible use of uninitialized variable for "Kernel Bit Size" when using sysconf(2). * sie/class/general Fix primaryuserlogin and primaryusername on HPUX which has wtmpx but only updates wtmp. * sie/class/general Fix PrimaryUserLogin and PrimaryUserName on Solaris and other OS which use wtmpx. These attributes are not reported due to fix in 8-H35. * sie/class/general Fix PrimaryUserName and PrimaryUserLogin to work on Solaris and other systems which have wtmpx but not wtmp. * sie/class/general Fix primaryusername and primaryuserlogin on systems which have getutxent() and getutent() to not use these interfaces since they read utmp and not wtmp. * sie/class/general Fix "Kernel Version" on Linux to remove newline if present at end of string. * sie/class/general Fix bug which caused "numcpuoffline" output for report and xml to be reported when the --show option was used but did not specify to report "numcpuoffline" (it was shown anyways). - Update PCI and CPUID db. * sie/class/general Add ability to not report System Serial if the true system serial is not known when the env var MCSYSINFO_TRUE_SYSSERIAL is set to "yes". This currently only pertains to Solaris SPARC. * sie/class/general Fix core dump issue on Solaris when retrieving Serial Number on systems with "oem-banner" in OBP. * sie/class/general Check boottime value to see if it's in the future and if so to not return data for it and related data like uptime. * sie/class/general Fix "CPU Count - Physical" on Linux to correct calculate value on hyper-thread systems. * sie/class/general Fix "CPU Count - Physical" Solaris method for using psrinfo to only attempt to run if on Solaris 10 or later. - Fix DoParentAutoCreate to be static. Also not set Category if DoParentAutoCreate is False. * sie/class/general Enhance method for "CPU Count - Physical" on Solaris to first try psrinfo which correctly returns count on multi-core SPARC systems like the T1000. * sie/class/general Fix CPU Model Intel Family 15 Type 6 to be "Xeon" instead of P3. * sie/class/general Fix core dump on Solaris SPARC when retrieving serial number on systems without "SN" set in the OBP. * sie/class/general Fix core dump on Solaris SPARC due to NULL deref in OBPgetSerial(). * sie/class/general Add "T200" to CpuNumPhysByModel for calculating CPU Count Physical on Solaris SPARC. * sie/class/general Fix CPU Type and Kernel/App Arch discovery on MacOS to use uname(1) command instead of utsname(2) function for portability between PowerMac and Intel Mac. * sie/class/general Fix "kernbits" on Solaris x64 to properly report "64". Previously this worked in most cases, but failed on VMware guest instances of Solaris. * sie/class/general Fix system Memory discovery on MacOS to use hw.memsize for more accurate values, particuliarly on Intel Macs. * sie/class/general Fix system Serial discovery on MacOS to use IOPlatformSerialNumber instead of serial-number. The later is not present on Intel Macs. * sie/class/general Fix Primary User utmp code to build on MacOS 10.4.x. * sie/class/general Correctly report "1" as the value for "CPU Count Physical" on multi-core SPARC systems T1000 and T2000. We previously reported the core count as the Physical count. * sie/class/general Fix OS Dist Version discovery on Solaris to first use uname(2) and parse the "release" value. This works even when Solaris is run on a non-FCS release which may use a code-name for the Solaris version instead of a number. * sie/class/general Fix "CPU Count Virtual" on HPUX to report single value in format output. In H56 we introduced a double output in format report. * sie/class/general Fix "OS Dist" discovery on Linux systems which do not have lsb_release to look for "LINUX" as well as "Linux" in /etc/issue. * sie/class/general Avoid possible hang on AIX when obtaining "OS Version" using the oslevel command by using Cmd_t interface without a 60 second timeout. * sie/class/general Fix core dump bug when obtaining OS Dist info from /etc/issue. If /etc/issue is not in the expected format, we were core dumping. * sie/class/general Add timeout handler for GNU libc discovery to prevent hangs on systems which may have other more serious problems. * sie/class/general Fix "CPU Count Virtual" on HPUX to use mpsched as data source. Previosly no value was reported. * sie/class/general Fix reporting of "Number of CPUs (Physical)" on AIX systems with LPAR (hardware partitioning) to use LPAR provided value. This means we now report the true physical CPU count. * sie/class/general Fix "CPU Speed" discovery on HPUX 11i v3 IA64 to correctly parse new machinfo(1) output format. * sie/class/general Fix Windows OS containing double "Edition Edition" in name. * sie/class/general Fix Windows OS identification for x64 editions, Tablet PC, and Media Center. * sie/class/general Translate all "x86_64" to be "x64" for cross platform consistancy and to match industry standards. This affects CPU Type, App Arch, and Kern Arch. * sie/class/general Report "x86" as App Arch on "x64" systems which is more appropriate since x86 is the lowest common denominator arch. * sie/class/general Fix "Host Addresses" data on Windows to not return garbage sometimes. We were returning address of free()'ed memory. * sie/class/general Correctly report "x64" for App Arch and Kernel Arch on Windows x64 systems. * sie/class/general Report "Kernel bit size" on Windows systems. * sie/class/general Fix "App Architecture" on Windows x64 to report as "x64" instead of "x86". * sie/class/general Fix random core dump on AIX when retrieving system serial number due to Argc count being passed to CmdOpen() being 1 too many. * sie/class/general Fix bug in OS Distribution function on HPUX which results in SIE core dump due to not correctly terminating Cmd->Argv list in GetDistOE(). * sie/class/general For "System Serial#" add DMI check for system board serial number if no other serial is found. This is needed for "white box" PC's. * sie/class/general Fix "CPU Count Socketed" on Solaris 9 SPARC to be correct on certain platforms. We previously ignored psrinfo on < Solaris 10 but the psrinfo now appears valid on Solaris 9 so we now use it on that OS version. * sie/class/general Fix DMI decoding of MEMMOD data to indicate values of 0x7D and 0x7E are invalid per the 7/24/2004 SMBIOS spec. * sie/class/general Report "Current Time" in local timezone not UTC. - Need to include @CPPFLAGS@ in $CFLAGS in all GNUmakefile.in files. - Split out core of TimeToStr() into TimeToStrFromTm(). - Implement "Boot Time" and "Up Time" for Windows. * sie/class/general Fix "Number of (Physical) CPUs" to acurately report on X86 systems with hyperthreading CPUs. * sie/class/general For class general Manufacturer names check the new config/abbrev.cf for the vendor's official short and long names. * sie/class/general On Fedora systems we now correctly report our OS Dist Name as "Fedora Core" instead of "Fedora Core release". * sie/class/general Fix DMI function which obtains System Model to check for the system vendor/mfg in the model and remove it if found. * sie/class/hardware Fix Solaris SPARC discovery of CD/DVD to properly report speed on SCSI/ATA devs. * sie/class/hardware Fix loop in Device class data reported on AIX. The DevAdd() function was auto-creating Parent devices with Name "" (empty). * sie/class/hardware Fix missing "cpuX" Device class entries on Solaris SPARC. This was caused by not looking for Device Type in "devtype" and "dev_type" LDI properties. - Integrate 8-H66 into 9.0.0. * sie/class/hardware Add "SATABeast2" to CtlrBlockSize to support proper Capacity recognition. * sie/class/hardware Fix loop in Device class data reported on AIX. The DevAdd() function was auto-creating Parent devices with Name "" (empty). - Integrate 9.0.0-H30 to main. * sie/class/hardware Grab DevInfo->Vendor from DevInfo->Model after ATA query. This code was Linux specific but is applicable to all ATA. - More s390 tweaks after testing on real z/VM system. Includes new VmHost detection of z/VM and Hercules. * sie/class/hardware Fix detection of CD + DVD drives on Linux. We now check the Vendor data from ATA probe for detection. * sie/class/hardware On Linux diskdrive discovery we know look for CtlrBlockSize based on DevInfo as well as Parent DevInfo. - Fixes for building on Linuz s390x. * sie/class/hardware Add "SATABeast2" to CtlrBlockSize to support proper Capacity recognition. * sie/class/hardware Fix detection of CD + DVD drives on Linux. We now check the Vendor data from ATA probe for detection. * sie/class/hardware Fix hardware reporting on AIX to report vhostX devices even though they are virtual and not true physical devices. * sie/class/hardware Search /sys/devices/ide0 on Linux 2.6 systems for hardware. * sie/class/hardware Improve CPU Model detection on Intel X86/X64 CPU's. We now include lookup in our CPUID db to include the CPU Family value. If not found, we revert to prior lookup without Family. This should improve detection of Xeon vs. Core Duo CPU's which often have the same fingerprint. * sie/class/hardware Fix free() of in-use Driver value used in DevInfo and NetIf classes. Result was occasinally a Driver value being reported with non-printable bytes. * sie/class/hardware Fix CPU Model on certain Solaris X86/X64 based systems to remove the CPU Mfg and generic words like "CPU". * sie/class/hardware Fix memory size on certain Solaris SPARC systems which support prtfru data to report correct values. In some cases the Capacity of memory devices were reported as Bytes instead of MB or GB. * sie/class/hardware Fix issue on Solaris with certain RAID devices which have dev alias of "scsiclass,00" from having their Vendor, Model, and other attributes merged into real/raw disk drives. This fix causes SysInfo to not look for existing SysInfo discovered devices with name "scsiclass,00". * sie/class/hardware Discovery MAC Addr on Solaris SPARC when NetIf is not configured. Works on SPARC systems which have "local-mac-address" attribute in LDI. * sie/class/hardware Fix DMI PROC decoding to transform "INTEL" to "Intel" to be consistant with other sources of "Intel". * sie/class/hardware On Linux remove duplicate "psmouse" device. * sie/class/hardware Fix forced setting of class ATA on Linux even if class was already set to SATA. * sie/class/hardware Fix incorrect check for Type and TypeClass being set in ATA code. * sie/class/hardware Don't autogenerate ethX names on Linux if the Linux version is 2.6.25 or later. This is because in later Linux we can detect the proper ethX name if the device is working at the Linux kernel level. If its broken we don't want to autogen the wrong ethX name. * sie/class/hardware Improve CPU Model detection on Intel X86/X64 CPU's. We now include lookup in our CPUID db to include the CPU Family value. If not found, we revert to prior lookup without Family. This should improve detection of Xeon vs. Core Duo CPU's which often have the same fingerprint. * sie/class/hardware Fix Type and TypeClass errors introduced in 9-H4 on Linux. Some devices where reported as GENERIC or DEVICE where previously they had been reported as DISKDRIVE or FLOPPY. * sie/class/hardware Fix possible NULL deref bug in Linux sysfs hardware discovery introduced with 9-H2. * sie/class/hardware On Linux remove duplicate "psmouse" device. * sie/class/hardware Fix reporting of Capacity values on Linux for multi-TB sized "disk" devices which are on "Perc 6/i" controllers. Previously these devices were reported with a max Capacity of "2.0 TB" due to limitations in the SCSI protocol. * sie/class/hardware Fix definetions for standard Sun 10Mb netif devices to properly be reported as such. * sie/class/hardware Improve PCI database support for 10Gb network interface devices. * sie/class/hardware Fix VBE code to work on 64-bit Linux using get-edid style access. * sie/class/hardware On Solaris SPARC fix bug on M3000 where unused nxgeX devices were reported as fjgeX devices. * sie/class/hardware Fix ClassType and Model for "nxge" NetIf on Solaris SPARC to be consistant with version 8 values. * sie/class/hardware Fix duplicate values in "Ident" for memoryX devices created by DMI MEMMOD and MEMDEV. * sie/class/hardware Set Location value for memoryX devices created by DMI MEMOD and MEMDEV. * sie/class/hardware Fix TypeClass on Linux of floppy disks to be "FLOPPY" instead of "ATA". * sie/class/hardware Fix Solaris DDB function to properly rename DDB based devices to have unit number. * sie/class/hardware Fix segfault failure on HPUX during Hardware discovery of NetIf devices due to DevRename() of devices changing the ProbeData.AliasNames values. Appears to be related to changes introduced in 9.0.0. * sie/class/hardware Set DevInfo->Model and CpuInfo->Model from General.CpuModel if not yet set in DevSanitize(). * sie/class/hardware Set DevInfo Model value from CpuInfo if not already set. * sie/class/hardware Fix free() of in-use Driver value used in DevInfo and NetIf classes. Result was occasinally a Driver value being reported with non-printable bytes. * sie/class/hardware Avoid setting memory Vendor and similar attributes if the DIMM socket is determined to be empty. Applies to SMBIOS MEMARRAY devices. * sie/class/hardware Fix Report output for Monitor data to use R_PROP and have "monitor" token as SubClass. * sie/class/hardware Improve checks to insure canonical Device Name is set using our DevDefine DB. - Fix DeviceCreate() to use proper compare tests for Type and TypeClass. * sie/class/hardware Add ability for customer to configure exceptions to Device Ignore Alias via new "DevIgnoreAliasExcepts" CFG variable. When set to include "scsiclass,00" this restored the behavior of reporting sdX names on Solaris SPARC for DiskDrives. - Update sizestr.c to support better size units. * sie/class/hardware Fix Hardware discovery problems which could result with incorrectly Parent devices and other strange results due to DevFind() looking for NodeID <= 0 instead of NodeID == 0. We also now enforce use of DevFindInit() in DevFind(). Fixes at least one issue with bad Parent reporting on Solaris SPARC. * sie/class/hardware Fix Serial on MacOS diskdrive devices to be copied from Parent if Parent is driver. * sie/class/hardware Fix CacheInfo for L1d and L2 on MacOS to not be a copy of L1i data due to typo. - Fix diffrpt to load our own PM modules at runtime. - Various fixes to port back to MacOS. * sie/class/hardware Fix SMBIOS handling of PORT devices to use SMBIOS Internal location as device name which provides much closer matching to previously discovered devices such as usbX devices. This results in greater attribute reporting for these devices as well. * sie/class/hardware Fix Unit values for SMBIOS device types BIOS, SYSBOARD, ENCLOSURE, MEMARRAY, MEMCTL, PROC, and SLOT to be consistant for each device Type. Previously a device's Unit could change depending on if how many internal functions searched SMBIOS devices each call incrementing the Unit value for the next scan of SMBIOS. * sie/class/hardware Add definetion on Solaris for netif device name "e1000g". * sie/class/hardware Fix Solaris device names that of form pciVVVV,DDDD to more specific driver based names when data allows. * sie/class/hardware Fix bug which prevented canonical device names defined in .sid files from being set. Bug introduced in 7.0.0. * sie/class/hardware On Windows systems we now skip getting free disk space data on disk devices which have removable media. If we don't do this then Windows will popup a dialog box for the user if no media is loaded. When this happens SysInfo is forced to wait until the dialog is closed. * sie/class/hardware Add check for $MCSYSINFO_DDC_VBE in Linux BuildDDC() to allow user to disable DDC VBE probe. * sie/class/hardware Fix Linux setting of ATA disk drive Capacity values to use /proc data over disk geometry. This is what we previously did in 6.0 and earlier. We also now set DevInfo->CapacityNum in the ATA probe. * sie/class/hardware Add PCI definition for Intel X520-SR2 ether10g. * sie/class/hardware When run on Solaris check our Zone to see if it's "global" and if not warn about hardware data. * sie/class/hardware Fix bug on Solaris hardware discovery which ceased reporting cpuX devices on Solaris 10 and later SPARC. Bug was introduced in 9-H12. * sie/class/hardware Fix uninitialized DevFile variable in Linux hardware code. * sie/class/hardware Fix PCI device names on Linux 2.4 systems to once again be "pciX/X/X" instead of "pci/X/X". * sie/class/hardware Fix Linux hardware discovery to set Driver field for SCSI devices. * sie/class/hardware Fix Linux hardware discovery to properly discover ATA diskdrive devices on Linux 2.6.17 and newer kernels which use a modified /sysfs layout vs. the original 2.6.0 layout which previously worked. * sie/class/hardware Fix NULL deref core dump in DMI BOARD code resulting in reference to DevInfo variable which was not yet created. * sie/class/hardware Fix renaming of PCI "serial" controllers to be "USB..." devices on systems with DMI/SMBIOS. This resulted in occasional renaming and reclassifying serial FC disk controllers as USB devices resulting in the loss of disk devices. * sie/class/hardware Fix the BitSize reported for Intel CPUs to be based on the Kernel Bit Size rather than hardcoding "32" for most CPUs which is incorrect in lite of EM64T. * sie/class/hardware Fix MacOS hardware discovery code to build disklabel code only if available. This data is not available on MacOS 10.4 and later. * sie/class/hardware Edit DevInfo Model strings to remove quote at end of strings on Solaris systems when we use the DDB database. * sie/class/hardware Fix CPU Model on certain Solaris X86/X64 based systems to remove the CPU Mfg and generic words like "CPU". * sie/class/hardware Fix core dump on Solaris when --deub used and we probe SCSI disks. Debug output was triggering an alignment exception. * sie/class/hardware Add timers wrapped around ioctl() on Solaris systems to reduce chance of a hang during hardware discovery. * sie/class/hardware Fix bug in Sun hardware OBP code which results in random core dumps on newer platforms like the T1000. Problem was due to use of wrong probe function being set for OBPprobeCPU. * sie/class/hardware Fix bug in Sun hardware OBP code which results in random core dumps on newer platforms like the T1000. Problem was due to use of wrong probe function being set for OBPprobeCPU. * sie/class/hardware Fix bug in Solaris SPARC hardware code which resulted in SIE core dump due to a NULL deref of CpuInfo->ArchVer. * sie/class/hardware Detect and fix when a hardware entry lists itself as it's own master. This can cause the GUI to die in a loop if left untreated. * sie/class/hardware Fix memory size on certain Solaris SPARC systems which support prtfru data to report correct values. In some cases the Capacity of memory devices were reported as Bytes instead of MB or GB. * sie/class/hardware Fix rare core dump bug due to use of %lld for McDebug(). Solaris 7 x86 was the only observed platform where this caused a core dump. * sie/class/hardware Fix crash bug due to NULL deref in DMI enclosure decoding code. * sie/class/hardware Fix hardware class bug on AIX resulting in incomplete device reporting. * sie/class/hardware Fix Monitor EDID decoding of VESA v2 Serial number to correctly treat Serial as an ASCII string instead of a numeric value. * sie/class/hardware Fix issue on Solaris with certain RAID devices which have dev alias of "scsiclass,00" from having their Vendor, Model, and other attributes merged into real/raw disk drives. This fix causes SysInfo to not look for existing SysInfo discovered devices with name "scsiclass,00". * sie/class/hardware If a device Model contains "CD-RW/DVD-ROM X1234" remove the full "CD-RW/DVD-ROM" instead of leaving "/DVD-ROM" in string. We also give preference to classify such devices as DVD instead of CD now. * sie/class/hardware Fix DMI handling of memory speed, mfg, serial, and part number such that these values are only used if the DMI header length is large enough to indicate these fields are present. * sie/class/hardware Fix incorrect speed of network interfaces on Windows by ignoring bogus values obtained via NDIS. * sie/class/hardware Fix memory devices found via SMBIOS to show "empty" in Status field instead of ModelDesc to be consistant. * sie/class/hardware Fix DMI device discovery to report newer memory, CPU, BIOS, and board types to support SMBIOS v2.4 spec. * sie/class/hardware Fix problem with some "port" devices discovered by DMI not having a description and/or type. Also add DMI definetion for AGP8X and PCI-Express slot types. * sie/class/hardware Fix reporting of hardware data on X86 based systems to correctly report DMI devices once again. This bug was introduced in 6.0-alpha3. * sie/class/hardware Capture Revision for SCSI Disks on MacOS. * sie/class/hardware Add Opteron and Athlon 64 to CPU identification. * sie/class/hardware Fix fault when hardware class is run on Win XP x64 and getnameinfo() is called. This function is broken on this platform and we now avoid it at runtime. * sie/class/hardware Fix Hardare data on cpu's on Sun's to say "Sun" instead of "SUNW" for Vendor. * sie/class/hardware Fix DMI code for class General and Hardware to work on Windows XP x64 and Windows 2003 by using official GetSystemFirmwareTable() Win32 API call. * sie/class/hardware Improve assocating DMI devices with devices already identify by other OS means. * sie/class/hardware Fix null deref bug which can result in segv failure during hardware discovery on Linux 2.6 systems. Bug occurs in SysfsDevDataParse(). Reported on some SLED 11 x86 systems. * sie/class/hardware Add Hitachi and HP "OPEN-E" SAN server to the list of devices to ignore serial numbers from when checking for duplicate disks. * sie/class/hardware Fix bug resulting in incomplete CPU Cache data being reported on certain Linux systems. Bug was due to auto-generated cpuX devices overwriting SMBIOS CPU/Cache data. * sie/class/hardware Fix hardware detection to ignore serial numbers for disks Vendor="HITACHI" and * sie/class/hardware Report Solaris Virtual Disk device "vdc" (aka "sun4-virtual-disk") as a DISKDRIVE with all appropriate discovery. Previously reported as a GENERIC device. - Integrate 8-H53 into 9-H10 * sie/class/hardware Fix Capacity reporting for large (>2GB) RAID devices like Dell PERC 6/i again. This bug re-introduced by fix for detecting /sysfs disks with partition subdirs. * sie/class/hardware Fix bug in DMI memory decoding resulting in the same "location" being reported for each memory device. * sie/class/hardware Improve detection of non-printable strings from DMI. Result is fewer "garbage" strings reported for memory devices and others. * sie/class/hardware Fix incorrect auto-generated ethX names on Linux 2.6.18. This fix includes new MCSYSINFO_NETIF_AUTO_DEVNAME which if set to "no" will disable this behavior. * sie/class/hardware Fix definetion of "Q" to be "QLogic" and PCI 0x8000/0x8001 to be "QLE8142". * sie/class/hardware Identify framebuffer (graphics card) devices on AIX which where sometimes reported as generic "controller" devices. * sie/class/hardware Allow customer to set MCSYSINFO_USB_PROBE=no on Linux to disable certain USB discovery methods which cause very old Linux versions to hang. * sie/class/hardware Fix core dump problem on HPUX (and possibly others) due to free() DevInfo->Model which may not point to original location of allocated memory. * sie/class/hardware Report memory speed from DMI as "DDRxxx" instead of "PCxxx". * sie/class/hardware Check disk/CD/DVD devices for "DVD" in model and remove from model string. * sie/class/hardware If the Vendor name appears at start of Model, remove Vendor name from Model. * sie/class/hardware In DMI PROC decoding check for "Itanium" not "ia64" to avoid recursion. * sie/class/hardware Add PCI definetion for Fujitsu version of Broadcom BCM5703C. * sie/class/hardware Fix "Reliant CSB6" pci-id.cf entry from type "raid" to "ata" to properly identify connected disks. * sie/class/hardware Do not attempt to lookup DMI Cache if handle is 0xFFFF. * sie/class/hardware Add checks to DMI PORT and CACHE to filter out generic values like "None". * sie/class/hardware Don't report totaldisk if value == 0. * sie/class/hardware Fix problem with return values from platform device probe functions returning values which were sometimes interpreted as "no data found". * sie/class/license Fix LicenseDestroy() to work on all known attributes of License_t. - Add new Registry functions on Windows McRegValueType(), McRegBasePath(), McRegProductName(). - Fix Office 2010 key decoding to work using new offset value. * sie/class/license Fix flexlm probe code to initialize MCSIquery_t structure prior to each use. * sie/class/MntInfo Remove "(MB)" from label values in MntInfo as they are redundant from values. * sie/class/netif Add more debug msgs for MAC info. * sie/class/netif On Linux we know look in /sys/.../net/ to determine canonical netif name. This reflects new behavior in linux 2.6.30 and later. - Update PCI and CPUID databases. * sie/class/netif Fix error in debug message statements in HPUX lanadmin parser which could result in core dump when debug is enabled. * sie/class/netif Fix bug causing wrong macaddr to be reported on AIX systems which have virtual netif's. * sie/class/netif Fix Speed value for "79c970" and "VMware Virtual NIC" to be 1Gb. * sie/class/netif Fix problem with duplicate macaddr being reported on Solaris systems with eg0000X interface names as well as similar names with digits after alpha. * sie/class/netif Fix bug causing wrong macaddr to be reported on AIX systems which have virtual netif's. * sie/class/netif Fix internal NetIf class to use NetIfInit(). - Add --no-test-harness option to build. - Integrate 8-H52 into 9-H8. * sie/class/netif Fix MAC address discovery on HPUX via lanadmin to insert leading '00' elements as necessary since the address displayed by lanadmin may ommit leading '00'. * sie/class/netif Fix bug on Solaris with netif names like "e1000g" not reporting MAC address. This is due to use of digits in driver portion of device name. * sie/class/netif Improve validity checks of DLPI Mac Addr discovery to check for garbage content. * sie/class/netif Fix Speed value for "79c970" and "VMware Virtual NIC" to be 1Gb. * sie/class/netif Fix problem with duplicate macaddr being reported on Solaris systems with eg0000X interface names as well as similar names with digits after alpha. * sie/class/netif Fix MACaddr discovery on HPUX to work when DLPI fails. The DLPI discovery was setting MACaddr but as a zero length string which prevented the lanadmin parser from setting the discovered MACaddr. The generic DLPI MACaddr discovery has been fixed to check for MACaddr strings which are < 11 chars. * sie/class/network Add ability to correctly identify certain virtual netif devices like "vnetX" as type VIRTUAL instead of the default value of PHYSICAL. * sie/class/network Do not report "(none)" as NisDomain value. - Checkpoint main. Auto-generate ShowInfo data. * sie/class/network Report "Windows Workgroup Name" and "Windows AD Server Names". We were discoverying these values, but not reporting them. * sie/class/network Fix API to parse and report on Windows Domain Name and Windows PDC. Data was discovered, but not being reported. * sie/class/partition Fix Usage reporting of "partition" data on Solaris to report partitions used by ZFS as "STORVOL" with Manager (new field) "ZFS". Previouisly ZFS partitions where reported as "UNUSED". * sie/class/partition Fix Usage reporting of "partition" data on Solaris to report partitions used by ZFS as "STORVOL" with Manager (new field) "ZFS". Previouisly ZFS partitions where reported as "UNUSED". * sie/class/partition Fix report output for partition class to include the DevPath value in the Name field for "data" output lines. * sie/class/partition Fix partition Size on IA64 EFI partitions under Linux to be correct MB value. * sie/class/partition Fix reported partition and filesys sizes on AIX to be correct. We were reporting incorrect sizes for filesystems which used 512 byte blocksize vs. the AIX normal 4096 byte blocksize. * sie/class/partition - Fix duplicate partitions being reported * /fix/sie/class/partition - Fix duplicate partitions being reported due to bug introduced to avoid hang when an NFS mount is fixed. * sie/class/partitions Fix bug in DOS Partition code which reports on parititioning on X86 systems to correctly report Start, Size, and End sectors for larger (~70GB) disks. * sie/class/printer Display the site provided description of each print queue in the summary line. We were previously trying to use the wrong variable to display this info. * sie/class/service Fix segfault during Service scan on Linux systems with certain /etc/init.d files. A NULL deref was occuring on certain line patterns. * sie/class/siteinfo Fix core dump when siteinfo entry has empty/blank "value" field due to null deref. * sie/class/siteinfo Fix core dump when siteinfo entry has empty/blank "value" field due to null deref. * sie/class/siteinfo Fix bug so that a user's $HOME/.mcsysinfo/siteinfo file is now read (if present). We were previously checking //.mcsysinfo/siteinfo. This bug was due to using $HOME which is reset to HOME=/ by our wrapper. * sie/class/softinfo The Report V2 function has been changed to use the autogenerated function for the bulk of the property reporting. - Complete work to make Output Overrides work. - Re-work fix in core and UI to make InstDate report properly and still be backwards compatible and consistant. Instead of forcing MM/DD/YYYY we go back to default locale Time format and update uiCliShowSoftware to handle this case. - Add support to mcsiclassx to call StrNewlineEscW() as needed based on "newlines" boolean in XSD. * sie/class/software Force the "Installed Date" (InstDate) field for Software to always be in format MM/DD/YYYY. This insures proper reporting on all platforms and corrects the UI defect of reporting "1969" as install dates in some cases/platforms. - Further improvements to filtering of duplicate Windows products. * sie/class/software Improve filtering of SoftInfo->Version on Windows. * sie/class/software Improve duplicate elimination of Software products on Windows. * sie/class/software Improve cleaning of software Name values to remove Version if it appears inside of Name not just at the end of Name as before. * sie/class/software Fix bug in software discovery on AIX which can lead to infinite loop of discovered packages. This occurs when we auto create a package for a new pkg's parent without a Version for the parent and then later we re-add the parent with a Version. We now update the internal hashtables in this case. * sie/class/software Avoid reporting duplicate software entries for packages/products which have no Version. In particular the "System/YaST" PRODUCT on SLED 11 was being reported multiple times. * sie/class/software Don't truncate software package names which have "NNNANNN" (N=number, A=alpha) patterns. This is true with certain Oracle packages on Solaris. * sie/class/software Fix BEA Weblogic discovery to support discovery of multiple weblogic versions via process list. * sie/class/software Fix BEA Weblogic discovery to support discovery of multiple weblogic versions via process list. * sie/class/software Fix segfault on MacOS due to casting issue in printing debug output for ProcID. New bug in 9.0.0. * sie/class/software Fix SoftInfo discovery on AIX to use lslpp output instead of ODM. This improves reliability and consistancy at a small performance cost. - Solaris 7 + other build fixes. * sie/class/software Fix use of uninitialized variable in SDL intepretor in SdlDataTypeArrayStr(). Not tied to reports of any failures. * sie/class/software Enable support for multiple versions of the same package to be reported when discovered via SPS modules. * sie/class/software Implement $MCSYSINFO_SOFTWARE_CATEGORY_AIX support in AIX. * sie/class/software Fix SPS interface to support multiple packages per module. Also add per module runtime reporting via debug. * sie/class/software Fix AIX Software discovery to properly handle DiskUsage calculation for multiple version packages. * sie/class/software Fix AIX Software discovery to support $MCSYSINFO_SOFTWARE_SLINK_TARGET_SIZE env var to use target of symlinks for size calc instead of symlink itself. * sie/class/software Fix Software discovery on AIX to not overwrite BaseDir if pkg has multiple versions installed. * sie/class/software Fix RPM software discovery to not terminate Desc (Summary) at first newline or period. * sie/class/software Fix Software rpm discovery to not truncate Desc (Summary) at first period, but instead to look for period + SPACE or period + NL. * sie/class/software When using $MCSYSINFO_SOFTWARE_BASEDIR_SUFFIX make sure we don't add it when it's not needed. * sie/class/software Fix Software Websphere discovery to be more consistant in naming and use EntryType of product. * sie/class/software Check for environ var MCSYSINFO_SOFTWARE_BASEDIR_SUFFIX and if found append to all BaseDir software entry values. * sie/class/software Fix AIX software discovery to calculate BaseDir to be directory with most disk usage if the MCSYSINFO_SOFTWARE_BASEDIR_BY_SIZE environment var is set to "yes". The default remains to calculate based on the highest level common dir. * sie/class/software Fix AIX software discovery to use lslpp(1) command to extract pkg file lists instead of directly extracting from ODM. The direct extract is not portable to newer AIX versions resulting in missing or incomplete file lists. * sie/class/software Fix Sybase ASE to correctly set Version and other data for ASE version 12 in addition to ASE version 15. * sie/class/software Fix AIX ODM software discovery to use lslpp(1) command to list file sets for packages for which we could not find file set data directly via ODM. * sie/class/software Fix Sybase SPS module to ensure that the Desc field is set. * sie/class/software Change "IBM" to "IBM Corporation" for SPS modules. * sie/class/software Fix SPS Oracle AS discovery to look for * sie/class/software Fix SPS Weblogic to properly associate weblogic-server and weblogic-platform. * sie/class/software Remove extra args appearing in Apache HTTPD Version such as "(Unix)". * sie/class/software Fix SPS module for Sybase ASE to not coredump while parsing VPD file when --widechar is used on Solaris. * sie/class/software Fix Sybase ASE SPS module to report ASE with a name of "sybase-ase" consistantly. * sie/class/software Fix missing software size data on AIX due to improper ODM environment initialization. * sie/class/software Fix Sybase ASE SPS module to report ASE with a name of "sybase-ase" consistantly. * sie/class/software Fix missing software size data on AIX due to improper ODM environment initialization. * sie/class/software Make SPS VendorName values consistant. * sie/class/software Fix NULL deref core dump bug introduced in previous HF in debug messaging for creating new parent's of software nodes in some cases. * sie/class/software Fix SPS Apache HTTPD discovery to set BaseDir based on dir name of httpd not two levels up. i.e. It's now "/usr/sbin" vs. "/usr" previously. * sie/class/software Fix rare core dump due to divide by zero bug in SoftFileBuildSet(). * sie/class/software Fix Solaris Software scanning to build the DiskUsage data from "contents" file prior to extracting PKG data so it can be set by the PkgExtract() function. * sie/class/software Fix bug in software discovery on AIX which can lead to infinite loop of discovered packages. This occurs when we auto create a package for a new pkg's parent without a Version for the parent and then later we re-add the parent with a Version. We now update the internal hashtables in this case. * sie/class/software Automatically calculate DiskUsage in post processing stage if not set and BaseDir is available. Previously this was done only in specific cases. * sie/class/software Fix SPS Sybase ASE discovery to support the "vpd.properties" inventory found in ASE 15.0. * sie/class/software Fix SPS Oracle AS discovery to create a top level Product parent node which owns all the AS packages. * sie/class/software Fix SPS Oracle DB discovery to hardcode a VendorName value for Oracle. * sie/class/software Fix SPS discovery of IBM WebSphere AppServer to properly set BaseDir and DiskUsage. * sie/class/software Disable Tibco Rendezvous SPS discovery since it was causing rvd daemon to be run (if not already running). It is also deprecated because newer RV versions use the native OS software registry. * sie/class/software Fix HPUX VendorName handling to cache full name values so they are available for sub-packages. * sie/class/software Fix AIX Software discovery BaseDir to properly alloc memory instead of re-using previos buffer resulting in many bogus BaseDir values. This was a bug introduced by the previous AIX BaseDir fix. * sie/class/software On HPUX we now use the "title" field for VendorName if the "vendor" tag is set. This results in more consistant and full company names being reported. * sie/class/software Use new "SwMan" definetion from .cf files to set canonical VendorName for software. * sie/class/software Fix Software discovery on AIX to not count multiple versions of the same package when determining a package's DiskUsage. * sie/class/software Improve Oracle DB SPS discovery by doing find for sqlplus in $ORACLE_{BASE,HOME}. * sie/class/software Add MCSYSINFO_SWLIST_{PRODUCT,SUBPRODUCT} env options for HPUX software scanning. * sie/class/software Fix the Apache HTTPD SPS discovery code to provide BaseDir and DiskUsage values. * sie/class/software On HPUX during Software discovery the user can disable the "fileset" level of (full) data from swlist by setting the env var MCSYSINFO_SWLIST_FILESET=no. * sie/class/software Do not report on software packages that have zero length Name values. * sie/class/software Add /usr/apache to directories to search for apache httpd. * sie/class/software Fix bug with missing software packages on Solaris due to hash key calculation bug. * sie/class/software Fix bug in MemToWide() function which resulted in missing software packages being reported when --widechar was enabled and RPM was used as data source. * sie/class/software Fix Software data on HPUX to properly report software versions in the Version field and not the revision field. * sie/class/Software Fix bug in AIX Software discovery where by the BaseDir of each package was never reported due to lack of data from ODM. We now calculate BaseDir based on the most common directory of all files in a package. * sie/class/software Fix rpm software scanner to look for DIRNAMES tag if ROOT tag is not present, in order to determine the package's BaseDir value. * sie/class/software Fix core dump on Solaris when Software is being discovered. Bug was due to insufficient buffer for child (Slave) names in reportsoftinfo.c and insufficient buffer size detection. * sie/class/software Fix Software discovery on HPUX to properly allocate memory for Revision, BaseDir, and VendorName instead of using same memory. This caused problems if SoftwareDestroy() was called. * sie/class/software Fix NULL deref bug causing incomplete Software class data due to not checking for zero length SoftInfo->Name. * sie/class/software Fix bug in Software discovery on HPUX which caused infinite loop. Also fixed bug in same code for parsing quoted text. * sie/class/software Avoid reporting duplicate software entries for packages/products which have no Version. In particular the "System/YaST" PRODUCT on SLED 11 was being reported multiple times. * sie/class/software Fix Windows bug causing fatal Exception when encountering certain strings from software products found via Registry. Problem was a NULL deref. * sie/class/software Fix Windows bug causing software versions such as "0.1.2" to be reported as ".1.2". * sie/class/software On Windows we now remove "(remove..." and similiar strings from software product names. * sie/class/software Fix fatal error when --class software was run on Windows due to a NULL deref in parsing Registry data. * sie/class/software Fix Software output on Windows to work once again. Previous changes for I18N broke software collection on Windows. * sie/class/software Fix RPM Software class queries to not fetch file data unless +swfiles is given. This is the documented behavior and saves signficant runtime CPU and memory. * sie/class/software Fix several memory leaks in Software reporting which caused mild excess memory usage. * sie/class/software Improve error handling in Software Add (SoftInfoAdd()) function. * sie/class/software Improve filtering and cleanup of software entries to weed out dups and remove versions and vendor names from product names. - Improve Windows software discovery by looking at "Uninstall" are of the Registry. * sie/class/software Remove SoftFileList_t and replace with NextByPkg and NextAll members of SoftFileData_t. * sie/class/software Fix bug in RPM software discovery which resulted in no software data being reported if RPM command did not complete within 15 seconds. This was due to an incorrect value used for timeout checks. * sie/class/software If one of the software build functions failed, then we were returning no software data even if one had succeded. We now return software data with just one function returning data. * sie/class/storsys Fix bug reading data from NetApp filers via rsh resulting in no data being reported on certan platforms. Fixed result compare of fprintf() return value to account for newline. Fixed lack of data in tmp file by adding fflush() after rsh output read is complete. * sie/class/storsys Fix problem with NetApps not being discoveried at all due to bug introduced in 6.0.2. * sie/class/storsys Fix storsys drivers to directly check for "nodemo" option in .cfg files so that the option works when "--format report" is specified. * sie/class/storsys/nafiler Look for multiple NICs on same card/slot and report each seperately. * sie/class/storsys/nafiler Run "ifconfig -a" when debug is enabled to gather more debug data. - Fix Fatal() declara in alloc.c. * sie/class/storsys/nafiler Don't add duplicate disk entries. * sie/class/storsys/nafiler When using rsh(1) specify "-n" to have rsh redirect stdin to /dev/null so as not to cause problems when nafiler is run in terminal background. * sie/class/storsys,storvol Fix drivers to output version info when --debug is given to stderr not to stdout. * sie/class/storvol Fix memory corruption issue on aixlvm on systems with 20 or more volume groups as listed by "lsvg". * sie/class/storvol Fix memory corruption issue on aixlvm on systems with 20 or more volume groups as listed by "lsvg". * sie/class/storvol Fix missing vxvm support which was accidentially removed in a prior release on Solaris, HPUX, and AIX. * sie/class/StorVol Remove "(MB)" from Descripton fields of various StorVol attributes. * sie/class/storvol Fix missing vxvm support which was accidentially removed in a prior release on Solaris, HPUX, and AIX. - Update PCI and CPUID db. * sie/class/StorVol Remove "(MB)" from Descripton fields of various StorVol attributes. * sie/class/storvol Add vol group name to VmVendor and VmProduct report lines for StorVolume. * sie/class/storvol Fix HPUX LVM driver to check filesystem data for each StorVolume. * sie/class/storvol Fix Solaris LVM driver to use StorVolFileSysSet() instead of doing it itself. * sie/class/storvol Fix AIXLVM driver to report the Volume Group each Volume (StorVolume) belongs to. * sie/class/storvol Fix HPUXLVM driver to properly report Volume Groups as StorVolGroup and Logical Volumes as StorVolume. * sie/class/storvol Fix AIX LVM (aixlvm) driver to correctly report Volume Groups as "StorVolGroup" and Logical Volumes as "StorVolume". * sie/class/storvol Update UI to report Storage Volume Groups. * sie/class/storvol Fix the Veritas Volume Manager (vxvm) driver to collect and report on Volume Groups (aka Veritas Disk Groups). * sie/class/storvol Fix AIX aixlvm driver to correctly report AIX Logical Volumes as StorVolPart and Volume Groups as StorVolume. Also fully report on Volume Groups including total size, free size, used sized, etc. * sie/cli Insure that --encode xml output is always output in alphabetical by Name order. This is required in order to be compliant with SysInfoV2.xsd. * sie/cli The order classes are listed with --class are now the order the data is reported in. Previously the order was fixed. * sie/cli Fix possible core dump bug when "--list show" is used. * sie/cli Fix "--list class --msglevel terse" to only print the class names. * sie/cli Fix "--list class" to only list options which are supported on the runtime platform. * sie/config Update PCI device database (config/pci/pci-id.cf) with new and updated entries. * sie/config Move pci files from config/pci-* to config/pci/pci-*. * sie/core Cleanup sie GNUmakefile file list. * sie/core Fix incorrect count of Physical # CPU on x86 systems. * sie/core Add --avoidblink option to skip DDC probes of graphics cards known to blink monitors. * sie/core Improve general performance by adding additional checks in the messaging layer debug functions to determine as early as possible if debug is enabled and if not stop processing the debug message. * sie/core Enable earlier debug messages by checking for new MCSYSINFO_DEBUG=yes environ var. * sie/core Fix several NULL deref bugs in XML output code which resulted in seg faults. * sie/core Fix possible NULL deref in xml output function OutputXmlProp() and OutputXmlPropW(). * sie/core Fix Seg Fault when --debug is used and a command run for debug purposes takes more than 10 seconds to complete on Solaris. * sie/core Fix StrSplit() to honor ArgcPtr limits. This fixes a problem on AIX Patch class parsing which utilizies this. This bug was introduced in 9.0.0-alpha0. * sie/core Fix CmdReadLine() to detect EOF and set State to CMD_EOF. - Minor cleanup of REG_OK values. - Checkpoint SDL. * sie/core Fix possible memory buffer overwrite in mchash. * sie/core " due to attempted write of non-writable memory. * sie/core Fix MchDestroy() to properly destroy everything. * sie/core Fix possible buffer overflow condition in calls to swprintf() all relating to Software class data. - Fix uninitialized variable. - Add missing freebsd-declare.h. - Update buildfinish for ia64. - Fix SunOS CPU functions to use new Status_t convention. - Fix casting/warning errors in ipmitool. - Fix buildprep file mode issues. - Fix SPS Oracle AS build on Windows. * sie/core Fix core messaging Msg* functions to use proper wide printf functions on a file handle stream if wide mode is enabled for that stream. This fixes the problem where wide debug output on platforms like Linux were not displayed. * sie/core Re-arrange ShowPlatformDebug() such that debug output is displayed together. * sie/core Fix core dump in SIE during PrivsShow() due to NULL deref when a group cannot be looked up. * sie/core Fix several cases where we reset ptrs to alloced memory, yet did not re-alloc the memory resulting in double free's. * sie/core Fix several NULL deref bugs in XML output code which resulted in seg faults. * sie/core Update Device tree cleansing with new * sie/core When output report data we now search for occurances of the report seperator sequence (--repsep) in each data field. Any exact occurance of this sequence is edited to be all SPACE characters. * sie/core Update checks for "MacOS X" to include checks to support "MacOS X Server". * sie/core Fix possible NULL deref in xml output function OutputXmlProp() and OutputXmlPropW(). * sie/core Fix NULL deref crash when debug is on and a CmdOpen() uses an env var to read data. * sie/core Fix sie to accept and do nothing with --installpost. * sie/core Fix Seg Fault when --debug is used and a command run for debug purposes takes more than 10 seconds to complete on Solaris. * sie/core Fix build on HPUX to once again use +s flag to loader which tells HPUX to look at $SHLIB_PATH for shared library directories. This allows SysInfo to actually run and not give "dld.sl" errors about mcsysinfo.sl. * sie/core Fix several problems at startup resulting in not finding our perl on Windows due to mangled file path handling. * sie/core Fix bug in parsing of config/*.cf files which could sometimes result in spurious "Error parsing file" errors. * sie/core Fix bug in CleanString() which could result in * sie/core Only build rpm software discovery code on platforms which support it. * sie/core Fix GetHostNameCanonical() to check for hostname==localhost. * sie/core Fix SIE to always exit with 0 or a positive number instead of using negative numbers on error which caused rounding/decoding problems. SIE continues to exit 0 on success and now exits > 0 on error. * sie/core Only list/show classes which are at least supported by the runtime platform (if not the local system). We previously always attempted to check every possible class SysInfo supports instead of what's just supported on the runtime platform. This list is created during post installation updates. * sie/core Remove use of global "ProgramName" variable in libmcsysinfo. * sie/core Fix VersionGet(Terse) to not have newline at end of returned string. - More Windows logging and mcsysinfod fixes. * sie/core Replace McsiOpts->OutputFile with LogFile to more clearly reflect it's purpose. - Fix TmpDir on Windows to be C:\Temp. * sie/core Integrate system logger logging into libmcsysinfo from mcsysinfod. Cleanup message logging. * sie/core Use My*() functions to get OS info for CFKVvar() in preference to using uname and other specific methods. Result is cleaner and slightly faster runtime startup. * sie/core Fix all initialization of Cmd_t types from memset() to CmdInit(). * sie/core Change all use of fgets() of Cmd.FH to new CmdReadLine() for improved portability. - Implement CmdOpen() for Windows. - Fix $perlplatform for Windows. - Add define for EXEC_FILE_EXT. * sie/core Use SLASH_CHAR define in place of /. * sie/core Add new CmdRun() with support for both UNIX and Windows. Deprecates Execute(). * sie/core Use a configurable tmp directory instead of hardcoding /tmp in order to work on Windows. * sie/core Replace global vars McProgram{Name,Path} with functions. * sie/core Replace global use of ConfDir var with CFconfDirPath() function which now accepts setting ConfDir. - Fix misc port issues from Windows port so we build on Linux again. * sie/core Fix use of MsgClassFlags to be hidden and require use of mcSysInfo() to set. * sie/core Fix possible core dump when converting # sectors into # MB. Typically called by SCSI functions to decode SCSI CAPACITY query. * sie/core Add support for printf format "%I64d" and use in preference to "%lld". Also add new LtoaBuf() function to allow us to remove HAVE_PRINTF_XXX from most functions and use it in Ltoa() and LtoaBuf() only. * sie/core Revamp command line option parsing to support new mcsiwrapper need for passing back unparsed options. * sie/core Fix SEGFAULT bug when McDebug() is called with a "%s" in the arguments (not in format). * sie/core Update our DMI interfaces to use more portable "Open" and "GetTable" functions. - Add DMI support to Windows NT - XP (probably not later OS versions). * sie/core Add PrimaryUserName to PSI to allow for portability. * sie/core Convert GetHostName() and GetHostAddrs() to use PSI to allow for support of Windows API. * sie/core Fix StrErr() to work on Linux and other UNIX. * sie/core Fix incorrect handling of changing our real UID to 0 when executing some external OS commands. * sie/core Fix sie "--license --nodemo --format report" to not report auto-generated demo licenses. * sie/core Fix rpm(1) command to be run as user in order to avoid rpm hangs common when rpm is run as root. This fix also fixes a common bug with running external commands with excessive privs. * sie/core Avoid scanning for drivers when not necessary in order to improve performance. Previously we always scanned for drivers even if the requested class had no drivers. * sie/core Catch cases of "i?86" and map to "x86". * sie/core Change litteral "Ptr" names to others to avoid bug in MacOSX compiler. * sie/core Fix numerous cases of missing params to Capotalize() due to late change to this function. * sie/core Fix a number of cases of incorrect initialization for CmdOpen() calls. * sie/core When --show is given, don't check driver's since they don't support --show and it takes too long. * sie/core Look for ".*123456789" as a REGEX in DMI strings and ignore these values as they are probably uninitialized by the vendor. * sie/core Avoid possible stack corruption in Report*() functions by using improved initialization code. Also fix casting and declarations in strutil.c. * sie/core Fix PCIid_t to be unsigned int from unsigned long to to compatible with sscanf(xxx, "%x"). This fixes a bug with PCI device naming on 64-bit systems such as AMD64. * sie/core Ignore values of "none" from DMI for such things as System Serial Number. * sie/core Avoid sending SCSI "SPEED" query to EMC devices to avoid bug in EMC's which causes the EMC to crash. * sie/core Translate Application Arch of "iX86" to be "x86". We were previously incorrectly reporting KernArch/CpuArch's such as "i686" as the App Arch. * sie/core Translate internal references of "iX86" to "x86". * sie/driver/all Nearly all drivers never properly based their ProgramName onto the message functions which resulted in no program name being displayed in some error and debug messages. * sie/drivers Fix Driver search path to only have one dir to search. This avoids duplicate calls when discovering drivers. * sie/encode Fix XML output to filter reserved chars "&", "<", and ">" to proper XML values. * sie/hardware XML output of CacheInfo is now reported. Previously it was not output in XML. * sie/license Fix "--license" option to show all licenses found regardless of whether they apply to the current system. Each license shown now indicates in the "Applies to this System" line whether the license is applicable to the current system. * sie/license Improve DEMO license message for storsys-pro to state implicitly that the DEMO license is not for SysInfo base, but this optional feature. * sie/mcl Fix bug in licensing resulting in bad data being used when multiple valid licenses were found. * sie/mcsysinfod Add new "--logfile" option to log messages to a file. * sie/mcsysinfod Add version to mcsysinfod cache directory path. * sie/mcsysinfod Use Cmd_t instead of popen() for better portability and increased ability to detect failure of "sie". * sie/mcsysinfod Enable use of launchctl(1) to install mcsysinfod on MacOS X. This is required in order to work on MacOS X 10.6 and later. * sie/nafiler Need to include standard MIB files in distribution or else nafiler won't be able to perform SNMP queries. * sie/output/xml Fix XML output of StorVol to nest data within instead of as sibling data. * sie/output/xml Fix XML output of StorVol to add "name" attribute for each data type. * sie/platform/aix Set correct partition / filesystem type by using the mntctl(2) API. We were previously using fstab->type which is actually the primary mount option (i.e "rw"). * sie/platform/aix Obtain disk drive capacity even with SCSI queries are not available which is the usual case. * sie/platform/AIX Fix missing "return" values. * sie/platform/freebsd Fix build on FreeBSD to static link libm instead of leaving it dynamic. This is needed because FreeBSD 5.4 has a newer libm.so than previous 5.x which breaks backwards compat. * sie/platform/hpux Fix "CPU Type" to work with most modern HP systems. We had a bug which used an incorrect System Model value which worked on older systems, but not newer systems. * sie/platform/hpux Fix a bug in the hardware class probe code which resulted in a device not being reported at all if a timeout occured during device probes even if there was plenty of good data to report about the device. This was particuliarly true of some CD drives. * sie/platform/hpux Improve Software class extraction on HPUX to be faster. * sie/platform/HPUX Fix file descriptor leak in HPUX disk probe function which can result in incomplete hardware and partition data being reported. * sie/platform/HPUX Enable detection of duplicate serial numbers in hardware class data on HPUX. * sie/platform/hpux Fix core dump bug in class Software discovery on HPUX systems. Also fixes several problems interpreting quoted text as output by swlist(1m). * sie/platform/hpux Fix device names for disk drives to be "cXtXdX" instead of "diskX". * sie/platform/HPUX Fix class License to work once again on HPUX. Changes since 5.0 broke our ability to find lmstat. * sie/platform/hpux Do not report psuedo devices such as "tgt" disk target drivers in class device. * sie/platform/IA64 Fix "CPU Model" to work on IA64 using DMI data. * sie/platform/linux Improve "OS Dist Name" on Linux hosts which lack LSB support. We previously reported "Red" on Red Hat Linux 7.1 and we now correctly report "Red Hat Linux". * sie/platform/linux Fix "OS Dist" variables in class general to properly parse /etc/issue on Linux systems like SuSe 9.2. * sie/platform/linux Fix to make DMI retrieval of hardware info work on Linux 2.6.6 and later IA64 systems. * sie/platform/linux Fix bug which could result in "0 Bytes" being reported for "System Memory". This usually occurs on Linux 2.6 IA64 systems. * sie/platform/linux On Linux 2.6 systems we now query block devices such as /dev/sdX directly instead of using /dev/sgX since the later is deprecated as of 2.6 and not always present. Previous to this fix on many 2.6 systems we reported no SCSI disks. * sie/platform/linux Reduce size of PCI device data read from 256 to 64 bytes in order to avoid hanging poorly compliant devices such as the PCI bus on Dell 6650 servers. * sie/platform/linux Fix "OS Dist Short Name" to say "rhel" instead of "redhat" on Redhat Enterprise Linux systems. * sie/platform/linux Look for "vendor" and "family" in /proc/cpuinfo for Linux 2.6 systems. * sie/platform/linux Fix disk drive capacity reporting on to use /proc/ide/$disk/capacity in favor of ATA report geometry. This fixes a problem where Linux was reporting incorrect geometry in /proc/ide/$disk/geometry and via ATA Query. * sie/platform/linux Fix problem on Linux 2.6 where by SCSI devices where not attached to their controller (parent) devices. * sie/platform/linux Avoid opening /dev/hdX devices for cd/dvd drives on Linux 2.6 systems to avoid Linux bug which hangs us up. * sie/platform/linux Check disk geometry results from /proc and ignore any which start with a '-' which indicates Linux is confused about the disks geometry. * sie/platform/mac Update system model definetions for Apple Mac's. * sie/platform/mac,freebsd Fix bug which lead to core dump or missing MAC info due to incorrect parameters being passed to SetMacInfoSysCtl(). * sie/platform/storsys/nafiler Fix bug in nafiler driver which resulted in missing disks and incorrectly named ctlrs due to parsing bug. * sie/platform/sun Fix bug in ./configure which resulted in HAVE_DLPI not being defined during build due to incorrect AC_DEFINE() placement inside of AC_CACHE_CHECK. Result was no netif MAC info was provided on Solaris. * sie/platform/sun Fix bug which resulted in missing CPU's on Sun Fire 6800 systems (and others) which have LDI node names of "cpu". * sie/platform/sun Fix bug resulting in incorrect "cpuX" device names being used. We were not looking for "cpu_id" and "portid" as LDI properties for the "X" value. * sie/platform/sun Add "FJSV,pgtb-fjgi" netif entry to sunos.cf. * sie/platform/sun Add support for Solaris 10 on SPARC and X86. * sie/platform/sun Use libdevinfo(3) to get "Cpu Model" on Solaris X86 systems (and SPARC). We previously reported no value for "Cpu Model" on Solaris X86. * sie/platform/sun Improve device identification by using new PCI VendorID and DeviceID data made available via libdevinfo with Solaris 10. * sie/platform/sun Fix core dump problem on Solaris 10 X86 systems when probing for hardware. Bug was in code trying to set CpuInfo->BitSize. * sie/platform/sun Fix bug which resulted in some devices being incorrectly attached to the wrong parent device. Bug was in new libdevinfo(7) code introduced in 5.1. * sie/platform/sun Fix problem caused by Solaris 8 SPARC patch which results in internal disks on systems such as the Sun Fire V880 to no longer be discovered. Part of this fix also includes using device names obtained from libdevinfo(7) in preference to our own device name database. This will more align reported device names with the names used by the Solaris kernel. * sie/platform/sun Fix LDI code on Solaris to implement correct decoding of CPU speed values obtained via LDI. We were reporting significantly incorrect speed values on newer, higher speed CPU's. * sie/platform/sun Report improved "System Model" on Fujitsu systems. * sie/platform/sun Report "Kernel Bit Size" on Solaris Fujitsu systems. * sie/platform/sun Add definetion for Fujitsu Gb Ethernet device so we properly report it. * sie/platform/sun Fix problem with CPU frequency on Solaris Fujitsu systems being incorrectly reported. * sie/platform/sun Fix several possible bugs in Solaris code discovered from ANSI C declaration conversion. * sie/platform/windows Fix various compile warnings on Windows. * sie/report Fix report output for wide data to print "name" field if the Name (narrow) data member is empty. We now correctly check NameW to see if it's set. * sie/report Fix ReportDataW() with R_PROP to always output Ident field. Previously this field was not output if Ident or Name was empty. This needs to always be output to be consistant with narrow function ReportData(). * sie/report Fix report output for wide data to print "name" field if the Name (narrow) data member is empty. We now correctly check NameW to see if it's set. * sie/rpm Fix bug in rpm code which resulted in core dumps on Solaris when "rpm" command was found. Bug was due to access to unallocated memory segment during "rpm --querytags". * sie/ui Improve runtime startup by having mcsiwrapper pass MCSYSINFO_* env vars containing OS Name, OS Version, etc. mcMiniSysInfo() uses these values if set. If not set, it falls back to running uname(1) and other commands. - Changes to get perl CLI running on Windows. * sie/ui Calculate location (if any) of libperl.so when configure is run and have sysinfowrap set LD_LIBRARY_PATH (and equiv) appropriately. This allows for use of perl compiled shared/dynamic. This also removes the $PerlVersion hard coding in sysinfowrap previously used on MacOSX. * sie/wrapper Fix SetPrivs() to allow non-root setuid() to be permitted. * sie/wrapper Instead of using command line perl script to determine perl -I args, write the script to a file and then run that file. This is required for Windows which doesn't handle perl code on the command line. * sie/wrapper If "--show" and "--format report" are both given call SIE directly since the UI layer cannot handle this combination. * srcdist Include mcsysinfod/StartupParameters.plist in source distributions. * ui Fix various typos in Perl code which resulted in perl warnings when run with 'strict' checks. * ui Fix UI handling of strings with '%' to avoid perl printf problems. * ui Remove '%' chars from debug and CLI output messages to avoid perl barfing on it when used in printf(). * ui Remove ",*" from vendor names when building a device summary. * ui Do not refer to ".." for "use lib" calls in sysinfoui as this can lead to a significant performance hit if we are run in $HOME and /home is automounted. * ui Fix Hardware summary line to include device Status. * ui Fix bug causing Software entries to not be displayed under their parent products when using Tree format in the CLI and GUI. * ui Include the version status in the cache directory path. i.e. Use "5.1.1-H10" instead of "5.1.1". * ui Fix '--format report' cache bug which caused the cache file path under /tmp to not include the product version. * ui Fix caching so that '--format report --repsep X' uses the cache. To do so, we now store and compare the '--repsep X' values. * ui Fix bug where by '--format report' was previously not using the file cache. If '--format report --cache no' is given, then we bypass the cache as before. * ui Fix "supported" english language typo. * ui Improve wrapper to provide more baseline information to other parts of build process. * ui Translate 'device' to 'hardware' when specified with --class. This insures proper handling by mcSysInfo(). * ui/class/software Don't set date for InstDate and BuildDate since this should be done in sie now. * ui/cli Add "--font" to "--help" output. * ui/cli Fix bug where "--show hostname,memory,..." would result in the "G E N E R A L ..." banner being displayed for each --show argument. * ui/cli Add $cfdir as set by "configure --with-cfdir=..." (at build time) to the list of dirs to search for .cfg files. * ui/cli Fix things so that "--nodemo" actually works. The initial/previous patch only partially implemented this feature. * ui/cli Fix StorSys CLI reporting to include disk drives which were not previously displayed as they should have been. * ui/cli Fix Storage System summary line in CLI output to include ModelDesc. * ui/core Fix problem with fatal error during startup if there is a copy of sysinfo installed as /opt/sysinfo and another installed elsewhere. The later copy will fail with perl errors because we were looking at the /opt/sysinfo copy when we shouldn't. * ui/gui Fix bug which caused sysinfo GUI to run system out of memory when displaying "software" class info. * ui/gui Fix Windows SysInfo icon to remove extraneous white noise around edges. * ui/GUI Re-arrange Report Create, Cancel, etc buttons to be more intuitive. * ui/GUI Fix bug preventing some errors from being displayed in popup error window. * ui/GUI Remove distracting "Nothing more to retrieve" messages from GUI message panel. * ui/GUI Remove unnecessary "print" option from GUI's Help -> Diag Info window. * ui/GUI Fix quoting of executed commands to handle whitespace. * ui/GUI Fix "Browse..." popup windows for Report and Diag to be a "Save as" diaglog instead of an "Open" dialog. Set initial starting directory and file types. * ui/GUI Set window icon for all popup window types. - Fix "--outfile " to work once again (broken post 5.1). * ui/gui Insure that the product version gets passed down into the UI Cache functions for use in the cache pathname. Previously it was not, although the CLI worked fine. * ui/GUI Fix problem where by when the GUI exits (such as due to a user request for exit), the windows would shut down, but the process would never actually exit. This is some kind of Tk bug which we now workaround. * ui/GUI Fix bug which caused user to always be prompted to accept license in GUI on startup. Problem was we needed to mkdir $HOME/.mcsysinfo if it doesn't exist. * ui/gui Fix problem with File -> Open... resulting in error + stack trace. * ui/html Fix HTML output of Software class data not to be mixed with other class data. * ui/html Don't display class title for classes which have no data to present. * ui/html Fix bug causing output to be mixed and repeated when reporting on multiple classes simultaneously encoded as html. * ui/html Fix title of reports to correctly contain hostname report refers to. * ui/html Fix bottom of report to correctly provide version of SysInfo which produced report. * ui/mcsysinfocfg When comparing mcsysinfo.cfg variables with command line option equivilents, ignore case. * ui/wrapper On Linux make sure --BUILDPLATFORM returns a valid value on non-redhat based dists. * ui/wrapper " label to beginning of all debug output lines. Also capture $0 as $ProgramName and re-use $ProgramName to avoid $0 changing. * ui/wrapper Fix "i?86" apparch and cpuarch values to be "x86". * wrapper Fix wrapper to handle being invoked as a symlink as was possible with pre-6.0 versions. ######## OTHER CHANGES ######## * Misc various libmcsysinfo/*/*.c files to use correct mcsysinfo/$file.h. - Create new DateToTm, DateToTime, TimeToTm functions. * Misc x*alloc() debug support. Also add ability to build code with DUMA for debugging. * Misc "/oracle/.*/java" process. * Misc remove ".DSP*" and ".." which are commonly used by WebSphere packages. * Misc DeviceRemove() and Pseudo*() functions. * Misc from config/*.cf to lib/sid/*.sid. Revamp * Misc internal CF*() API to new Sid*() API. * Misc calls to *alloc() functions requesting negative memory. * Misc Model="OPEN*" since this is a SAN server. The result is disk devices from this type of system are now correctly reported. * Misc GNUmakefile.in and only call drivers/* targets which are buildable. * Misc - Tweaks to debug output in Cmd*() functions. * Misc * Release 5.1.1 GA.