Supermicro Update Manager (SUM) Validation Notes
======================================================
Software Release Version: V2.5.2-p3
Release Date: 2021/05/21


Introduction
============
The Supermicro Update Manager (SUM) can be used to manage the BIOS/BMC/CMM/PSU/
Broadcom 3108 RAID firmware image update and configuration update for select
systems. In addition, system checks as well as event log management are also
supported.
Moreover, special applications are also provided to facilitate system
management. To update configurations, users can edit system BIOS settings, DMI
information and BMC/RAID/CMM configurations from readable text files, as well as
use this update manager to apply these configurations.

Two channels are possible for management: the OOB (Out-Of-Band) channel, i.e.
communication through the BMC IPMI interface, and the in-band channel, i.e.
communication through the local system interfaces. By the OOB channel, most
management commands (except CheckSystemUtilization) can be executed
independently of the OS on the managed system and even before the system OS
is installed.


Requirements
============
@OOB Usage
- Management Client (Running SUM CLI)
    * Operating system:
        Red Hat Linux 4 updates 3 (x86_64) or later
        Ubuntu 12.04 LTS (x86_64) or later
        Debian 7 (x86_64) or later
        Windows Server 2008 (x64) or later
        FreeBSD 7.1 (x86_64) or later
- Managed System
    * Select X9/X10/X11/X12 systems
- Command specific requirements
    * TpmProvision: require to use with ISO images provided in
        TPM_1.3_20170802.zip Check ReleaseNotes.txt in the package for usage
    * CheckSystemUtilization: require to use with TAS (Thin Agent Service)
        TAS_1.5.1_build.180202.zip
@In-Band Usage
- Managed System
    * Operating system:
        Red Hat Linux 4 (x86_64) updates 3 or later
        Ubuntu 12.04 LTS (x86_64) or later
        Debian 7 (x86_64) or later
        Windows Server 2008 (x64) or later
        FreeBSD 7.1 (x86_64) or later
    * Hardware:
        Select X9/X10/X11/X12 systems
                
                
Known Limitation
================
1. In-band UpdateBmc command does not support AMI BMC firmware image.
2. OOB UpdateBios command is not supported on motherboards that implement client
   ME such as X11SAE-F, X11SAT-F, X11SSZ-(Q)F/LN4F, X11SRM-VF, X11SBA-(LN4)F, 
   X11SPA and X11SRi-IF. In addition, it is not supported on C7-series 
   platforms.
3. X9DRL-iF/3F MB does not support OOB BIOS update and OOB/in-Band DMI 
   information related commands.
4. For the --reboot option in OOB usage, if the target OS does not support 
   software shutdown, system will be forced to power off and on again. 
5. With the Server ME embedded on the Supermicro system, the execution of the 
   in-band command "UpdateBios" might fail when the Client ME driver (MEIx64) 
   is installed on Windows. 
6. All commands of CMM Management are for OOB use only.
7. In-band GetBmcCfg/ChangeBmcCfg commands in Windows does not support a 
   hostname that exceeds 244 bytes.
8. ChangeBiosCfg command will show error messages if the current BIOS 
   configuration is different from  the generated BIOS XML configuration file. 
9. BIOS XML configuration REQUIRES a text editor supporting extended ASCII 
   characters (ISO-8859-1 encoding).
10.The SW-managed JPME2 feature to update FDT in ME region is NOT supported in 
   the following MBs: X11DDW-L/N(T) Revision 1.10, X11DPH-T-P Revision 1.00, 
   X11DPL-I-P Revision 1.01, X11DPU-X(LL) Revision 1.01.
   Note that the earlier revisions of those four MBs are not supported neither.
11.The TpmProvision command does not support TPM 2.0 on Grantley.
12.A1SRi/A1SAi MB does not support OOB BIOS update.
13.The TpmProvision command does not support on the platforms after Purley.
14.The UpdatePsu command only supports PSU "PWS-2K04A-1R" and "PWS-2K20A-1R".
15.The UpdatePsu command does not support multi-OOB usage.
16.In-Band UpdateBmc command on FreeBSD OS will be slow caused by KCS driver 
   of FreeBSD.
17.Prevent BIOS downgrade if the ME version of current BIOS is greater than
   4.0.4.294 and the ME version of updating BIOS is smaller than or equal to
   4.0.4.294.
18.Cascade Lake CPU only supports BIOS update of ME version 4.1 or higher
   version.
19.TUI does not support mouse operation.
20.OOB BIOS update on B1SA4, B11SRE and B11SCG-ZTF requires AC cycle.
21.LAN table in BMC configuration file is read-only for OOB usage if BMC does
   not support REDFISH.
22.In-band update BIOS through KCS does not support on AMI platform.
23.In-band UpdateBios/UpdateBmc commands through KCS on Windows require SD5 
   removed.
24.While executing UpdateBIOS/In-Band TpmManage commands, manual steps are 
   required under some special cases. Instructions will be provided to continue
   these commands. 
25.The format mm/dd/yy or mm/dd/yyyy is required for build date in DMI
   information.
26.The GetGpuInfo command only supports NVIDIA GPU.
27.System will be powered off during update BIOS process on X12/H12 and later
   RoT platforms.
28.MountFloppyImage and UnmountFloppyImage commands do not support on X9 
   platforms.
29.Erase OA key feature does not support on platforms before X12/H12.
30.When dynamic enabling USB port by SetUsbAccessMode command, USB 3.0 device
   may need to manually unplug and plug to be available.
31.In SUM 2.5.1 and later, next boot to UEFI Shell is supported. However, when 
   next boot is set to UEFI Shell with unsupported BIOS, the system will be
   booted into BIOS Setup instead.
32.When activating JSON format node product key in Windows, the JSON product key
   string cannot contain space character.
33.The option --post_complete is designed to wait for system POST complete and
   requires both BMC and BIOS to support. When only BMC supports, even the
   system completes POST procedures, SUM still waits for system POST complete
   until timeout.
34.UpdateRaidController command is not supported on H12 RoT and X12 systems.                 


Hidden Command
================
*: For internal use only

*KeyProductDeletion
*CpldProvision (Production version only)


Hidden Option
===============
*: For internal use only

UpdateBios
    --list_me_mng_cmos (In-band only)
        Lists the CMOS value of the managed system.
    --clear_me_mng_cmos (In-band only)
        Clears the CMOS value of the managed system.
    --unlock_smmbuffer (In-band only)
        Releases the SMM buffer lock status of the managed system.
    --bypass_jpme2 (In-band only)
        Skips FDT check and updates ME region for the managed system.
    --release_token (OOB only)
        Releases the BIOS upload and update tokens of the managed system.
    --force_update (OOB only)
        Skips feature flags check, then force update BIOS based on input option
        even without entering recovery mode. Option --preserve_mer must be used
        if current BIOS does not support ME flash.
    --reset_pch (OOB only)
        Resets PCH and reboots the managed system after BIOS downgrading.
        Need to use with the option --force_update.
   *--cross_sign (In-band only)
        Supports conversion BIOS update between debug and production versions.
        only support for OEM version of SUM.
   *--skip_nmidisabling
        Skips NMI disabling. For in-band KCS BIOS update use.
    --relaxed_checking(Only work with option --preserve_setting)

GetBiosInfo
    --scan_rom (OOB only)
        Scans BIOS ROM data for acquiring up-to-date BIOS information.

GetDefaultBiosCfg
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

ChangeBiosCfg
    --skip_duplication_check
        Skips repeated boot option checking in HII BIOS configuration.      
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

ChangeDmiInfo
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

SetBiosPassword
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

ClearEventLog
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

SecureEraseDisk
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

SetLockdownMode
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

SetPowerAction
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

UpdatePsu
    --rescue
        Updates PSU firmware again if the previous update failed.    

UpdateRaidController
    --release_token (OOB only)
        Releases the RAID update token of the managed system.
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

BiosRotManage
    --relaxed_checking
        Relax step size checking for BIOS numeric value setting.

QueryProductKey
   *--show_index
        Display key index information of existed non-JSON product key.


SMSTC Report
============
Please upload the SMSTC report in here before release SUM package to PB.


Version History
===============
V2.5.2-p3 (2021/05/21)
===========================
1. New feature : Add BMC GUID A301MS to support AST2500_MicroBlade.
   Description : Add BMC GUID A301MS to support AST2500_MicroBlade 
          	 (B3ST1-CPU-001).
   Issue ID    : None
   Validation  : None
   Check list  : None
2. New feature : Add BMC GUID 2301MS to support AST2600_MicroBlade.
   Description : Add BMC GUID 2301MS to support AST2600_MicroBlade
                 (B3ST1-CPU).
   Issue ID    : None
   Validation  : None
   Check list  : None
3. New feature : Add BMC GUID C201MS to support X12_RoT2.0_ATEN_AST2600_2_1.
   Description : Add BMC GUID C201MS to support X12_RoT2.0_ATEN_AST2600_2_1.
   Issue ID    : None
   Validation  : None
   Check list  : None
4. New feature : Add BMC GUID 4301MS to support H12_RoT2.0_ATEN_AST2600_2_1.
   Description : Add BMC GUID 4301MS to support H12_RoT2.0_ATEN_AST2600_2_1.
   Issue ID    : None
   Validation  : None
   Check list  : None
5. New feature : Add BMC GUID 1301MS to support X12_RoT2.0_ATEN_AST2600_2_2.
   Description : Add BMC GUID 1301MS to support X12_RoT2.0_ATEN_AST2600_2_2 
                 (X12DGQ-R).
   Issue ID    : None
   Validation  : None
   Check list  : None
6. New feature : Add BMC GUID 6301MS to support X12ATEN_AST2600_2.
   Description : Add BMC GUID 6301MS to support X12ATEN_AST2600_2 
                 (X12STD).
   Issue ID    : None
   Validation  : None
   Check list  : None
7. New feature : Add BMC GUID 9301MS to support H12SSW_AN6_NC24B.
   Description : Add BMC GUID 9301MS to support H12RotATEN_AST2600_1_3
                 (H12SSW_AN6_NC24B).
   Issue ID    : None
   Validation  : None
   Check list  : None
8. New feature : Add BMC GUID 5301MS to support MBD-HGI-MEZZ-P.
   Description : Add BMC GUID 5301MS to support X12ROT_CEC_AST2500_1
                 (HaBaNa).
   Issue ID    : None
   Validation  : None
   Check list  : None
  
 
V2.5.2-p1 (2021/03/29)
===========================
1. Fix         : Do not throw exception if BMC GUID information cannot be got 
                 through Redfish API.
   Description : SUM will check GUID from Redfish API and remove curl speed 
                 limit for AST2600 systems. For backward compatibility, SUM 
                 will not throw exception if the systems does not support GUID
                 information in /redfish/v1/Chassis/1
   Issue ID    : LAB report
   Validation  : Executing GetBmcCfg command on B11SPE with BMC FW "03.72.15"
                 should complete normally.
   Check list  : 801-XX, 801-OB-MM, 802-XX, 802-OB-MM


V2.5.2-p1 (2021/02/25)
===========================
1. New Feature : Add BMC GUID B201MS to support M12 system with AST2600.   
   Description : Add BMC GUID B201MS to support M12 system with AST2600.
   Issue ID    : 123553
   Validation  : None
   Check list  : None
2. Fix         : Enhance error handling of UpdateCpld command.
   Description : SUM crashes when BMC becomes un-reachable after updating CPLD
                 when executing UpdateCpld command on X12/H12 systems. Check BMC 
                 connection after updating CPLD to prevent segmentation fault.
   Issue ID    : None
   Validation  : None
   Check list  : 2002-OB-XX
3. New feature : Support H12 platform with Milan CPU.
   Description : Support H12 platform with Milan CPU.
   Issue ID    : 122904, 123368
   Validation  : In-band UpdateBios on H12SSW-iN with Milan CPU installed 
                 through SMI should complete normally.
   Check list  : 305-XX-XX, 306-XX-XX, 307-IB, 308-OB-XX, 4XX-IB
4. Fix         : BiosRotManage command with --action GetInfo might display       
                 information with incorrect format. 
   Description : For BiosRotManage command with --action GetInfo, output display
                 is incorrect when the version field in Redfish response does 
                 not contain build date information.
   Issue ID    : None
   Validation  : 1. On X12DPT-B6 with BMC 00.11.34 or later, execute raw command
                    "0x30 0x68 0x28 0x21 0x02" and cold reset BMC with raw 
                    command "06 02" to erase backup BIOS.
                 2. Executing BiosRotManage command with --action GetInfo, "Not
                    Present" should be shown as backup BIOS version.
   Check list  : 1701-OB-XX, 1701-IB-RHI
5. Fix         : /dev/stdin support on FreeBSD for ChangeBmcCfg command XML file      
                 input.
   Description : Support /dev/stdin as a XML file input in FreeBSD for 
                 ChangeBmcCfg command.
   Issue ID    : 122569
   Validation  : 1. On FreeBSD, execute GetBmcCfg command to get BMC 
                    configuration file bmc.xml.
                 2. Execute command 'cat bmc.xml | ./sum -u ADMIN -p <ADMIN PWD> 
                    -i <BMC IP> -c ChangeBmcCfg --file /dev/stdin' should 
                    complete normally. The BMC configuration file will be sent 
                    to /dev/stdin file and treated as option --file input.
   Check list  : 802-OB-MM, 802-IB, 802-OB
6. Fix         : /dev/stdin support on FreeBSD for option -l input.
   Description : Support /dev/stdin as option -l input.
   Issue ID    : None
   Validation  : Execute "cat <BMC iplist> | ./sum -l /dev/stdin -u ADMIN -p 
                 <BMC PWD> -c GetBiosInfo" on FreeBSD should complete normally. 
                 The IP list file will be sent to /dev/stdin file and treated as
                 option -l input.
   Check list  : XXXX-OB-MM
7. Enhancement : Support /dev/stdin in FreeBSD for -f and --pw_file options.
   Description : Support /dev/stdin in FreeBSD for -f and --pw_file options.
   Issue ID    : Customer report
   Validation  : Executing "echo obfuscated_password | ./sum -i BMC_IP -u root
                 -f /dev/stdin -c GetBMCInfo" should complete normally.
   Check list  : None
8. Fix         : OEM FID information in in-band GetBiosInfo command should be
                 license free. 
   Description : Download OFID file through SMI should not require license.
   Issue ID    : None
   Validation  : OEM FID information should be displayed when executing in-band
                 GetBiosInfo command with --showall option on X12SPi without
                 license activated.
   Check list  : 306-IB
9. New Feature : Add BMC GUID F201MS to support X12 non-RoT system with AST2600.   
   Description : Add BMC GUID F201MS to support X12 non-RoT system with AST2600.
   Issue ID    : 122639
   Validation  : None
   Check list  : None
10.Fix         : GetPsuInfo command failed to show all PSU information on some 
                 systems.                                                         
   Description : Enhance slave devices detection logic:
                 1. Scan through all the possible slave addresses through raw 
                    command.
                 2. Add two more <slave address, Psu index> pair: <0x7A, 0x06>
                    and <0xB2, 0x06>.
                 3. Synchronize slave device scan order with SMCIpmiTool.
                 4. When scanning slave devices, put the device into available
                    list if the returned data from BMC is not 0xFF.
                 5. When scanning slave devices, if BMC returns non-zero 
                    completion code, SUM will try again with 1 second delay.
   Issue ID    : 122954
   Validation  : Executing GetPsuInfo command on X12DPG-OA6 with 4 PSUs 
                 installed. Information of all 4 PSUs should be displayed.
   Check list  : 1401-IB, 1401-OB-XX
11.Fix         : SecureEraseDisk command does not take affect with BIOS built 
                 after December 2020.                                               
   Description : In SecureEraseDisk command, BIOS setting DCMS license checking 
                 is not handled. Therefore, when BIOS add "SMCI Security Erase 
                 Configuration" setting in DCMS required list, SecureEraseDisk 
                 command will not take affect.
   Issue ID    : 122232
   Validation  : BIOS password should be set after executing SecureEraseDisk 
                 command to do SetPassword action on X12SPA with X12SPA0.C15 
                 BIOS.
   Check list  : 1118-OB-XX, 1118-IB
12.New Feature : Support force update for H12 RoT and X12 systems.
   Description : Support force update for H12 RoT and X12 systems.
   Issue ID    : Production team request
   Validation  : 1. Remove CPU of X12SPi.
                 2. Execute UpdateBios with option --force_update, error 
                    "Failed to enter ME recovery mode" should not appear.
   Check list  : 406-OB-XX
13.Enhancement : Reduce UpdateBmc/UpdateBios execution time for AST2600 systems.             
   Description : Remove libCurl speed limit setting for AST2600 systems.
   Validation  : V1. Execute UpdateBmc command on X12DPi-N6, only takes 21 
                     seconds to upload FW image.
                 V2. Execute UpdateBios command on X12DPi-N6, only takes 17 
                     seconds to upload FW image.
   Issue ID    : None
   Check list  : 4XX-OB-XX, 7XX-OB-XX
14.Fix         : In multi-OOB usage, ChangeBmcCfg command might failed with
                 exit code 8 (Can not open file).
   Description : Debug log file name was not stored separately for managed
                 systems in multi-OOB mode and it might cause race condition.
                 Add workaround to avoid this situation for now. 
   Validation  : Executing multi-OOB ChangeBmcCfg on 10 managed systems should
                 complete normally. 
   Issue ID    : None
   Check list  : 802-OB_MM
15.Enhancement : Enhance SecureEraseRaidHdd command error handling logic.
   Description : When SecureEraseRaidHdd command is issued while the RAID HDD is
                 in erasing process, BMC should reject the request with proper 
                 message. However, sometimes "MessageArgs" field content is 
                 missing in the Redfish response. SUM adds one retry with 5 
                 seconds interval to enhance stability.
   Validation  : None
   Issue ID    : 122709
   Check list  : 1113-OB-XX, 1114-OB-XX, 1115-OB-XX, 1116-OB-XX
16.Fix         : BMC/CMM configuration XML file generated by SUM 2.5.2 cannot be  
                 shown in browser.
   Description : Browser cannot display XML file which contains "--" charactors
                 in node type "Comment". Use node type "node_pi" to express 
                 sentence with "--" charactors. 
   Validation  : Executing GetBmcCfg command to generate BmcCfg.xml file. 
                 Browser should be able to open BmcCfg.xml correctly. 
   Issue ID    : None
   Check list  : 801-OB-XX, 801-IB
17.Fix         : Support IPv6 in VirtualMedia table for ChangeBmcCfg command.                 
   Description : Add IPv6 support for "ShareHost" field in VirtualMedia table in
                 ChangeBmcCfg command. 
   Validation  : Executing ChangeBmcCfg command with BMC configuration file 
                 which has IPv6 setting in the VirtualMedia table should
                 complete normally.
   Issue ID    : None
   Check list  : 802-OB-XX


V2.5.2 (2021/01/12)
======================
1. Fix         : UpdateCpld command segmentation fault.
   Description : UpdateCpld command segmentation fault.
   Issue ID    : Internal improvement
   Validation  : Execute UpdateCpld command on X12DPi should complete normally.
   Check list  : 2002-OB, 2002-IB-RHI, 2002-OB-MM
2. Enhancement : UpdateCpld command does not support option --post_complete.
   Description : UpdateCpld command should support option --post_complete by
                 convention
   Issue ID    : Internal improvement
   Validation  : Setup a X12DPi. Ask for BIOS team to provide post complete
                 supported BIOS image. Ask for BMC team to provide post complete
                 supported BMC. Update current BIOS/BMC to post complete
                 supported BIOS/BMC. Executing UpdateCpld command with option
                 --post_complete on X12DPi should complete normally.
   Check list  : 2002-OB-XX
3. Fix         : Remove unsupported description in CMMLAB table of CMM
                 configuration file.
   Description : Remove unsupported description fields IPAddr, SubNetMask,
                 DefaultGateWayAddr, VLAN_Enable and VLAN_ID under CMMLAN table
                 since these fields changes can be supported by SUM.
   Issue ID    : Internal improvement
   Validation  : Execute GetCmmCfg command to get CMM configuration file. The
                 unsupported description for fields IPAddr, SubNetMask,
                 DefaultGateWayAddr, VLAN_Enable and VLAN_ID should be removed.
   Check list  : 801-XX-XX, 802-XX-XX
4. Enhancement : Show warning message if the VPD data is not available on the
                 managed system for CheckAssetInfo command.
   Description : Show warning message if the VPD data is not available on the
                 managed system for CheckAssetInfo command.
   Issue ID    : PM request
   Validation  : None
   Check list  : 302-OB-XX
5.New Feature  : Add IPv4, IPv6, memory type and rank information in
                 CheckAssetInfo command.
   Description : SUM gets memory type and rank from SMBIOS type 17 and displays
                 results under memory section in CheckAssetInfo command output.
                 SUM gets IPv4 and IPv6 from TAS and displays results under
                 System Network Interface section.
   Issue ID    : None
   Validation  : Setup a system with TAS installed. Executing CheckAssetInfo
                 command on the managed system should complete normally and the
                 commnad output shows the IPv4, IPv6, memory type and rank. 
   Check list  : 302-OB-XX
6.New Feature  : Add storage UUID and LSI3108 smart status information in
                 CheckSystemUtilization command.
   Description : SUM supports storage UUID and LSI3108 smart status. The storage
                 UUID is from TAS. LSI3108 smart status is from Redfish API.
   Issue ID    : Customer request 
   Validation  : Setup a system with HDD installed and LSI3108 RAID controller.
                 Executing CheckSystemUtilization command on the managed system
                 should complete normally and show storage UUID and LSI3108
                 smart status.
   Check list  : 303-OB-XX


V2.5.2 (2021/01/07)
======================
1. New Feature : Add GetCpldInfo, UpdateCpld and CpldProvision(Hidden) commands
                 to support CPLD management for X12/H12 RoT system.
   Description : Support CPLD firmware management. GetCpldInfo command supports
                 CPLD firmware information from managed system and local file.
                 UpdateCpld command supports CPLD firmware update through BMC.
                 CpldProvision command supports CPLD provision.
   Issue ID    : None
   Validation  : Setup a X12 system. Executing GetCpldInfo command on the
                 managed system can get the CPLD information. Executing
                 UpdateCpld command with CPLD firmware on the managed system
                 should complete normally.
   Check list  : 2001-OB-XX, 2002-OB-XX, 2001-IB, 2002-IB-RHI
2. New Feature : Add ClearMaintenEventLog command to support maintenance log
                 clear for the platform Purley and laters.
   Description : Add ClearMaintenEventLog command to support maintenance log
                 clear for the platform Purley and laters.
   Issue ID    : Production request
   Validation  : Login BMC web to create maintenance event log on BMC. Execute
                 GetMaintenLog command to get log and check the maintenance log
                 of login has been created. Execute ClearMaintenLog to clear
                 maintenance event log. Execute GetMaintenLog command again then
                 check maintenance log has been cleared.
   Check list  : 904-OB-XX, 904-IB
3. New Feature : Support --individually option for ChangeBmcCfg, ChangeCmmCfg,
                 ChangeRaidCfg, ChangeDmiInfo and ChangeBiosCfg commands.
   Description : Support BIOS/BMC/CMM/RAID/DMI changes by different required 
                 file in multiple node mode.
   Issue ID    : Customer request
   Validation  : 1. Execute GetBmcCfg command in multiple node mode to generate
                    two BMC configuration files.
                 2. Change the hostname in network table of BMC configuration 
                    files with different hostname.
                 3. Execute ChangeBmcCfg command in multiple node mode with 
                    file name used in step 1 and --individually option should 
                    complete normally.
   Check list  : 103-IB, 504-OB-MM, 505-OB-MM, 602-OB-MM, 802-OB-MM, 1108-OB-MM,
                 1302-OB-MM
4. New Feature : Add BMC GUID D201MS to support X12DGO.
   Description : Add BMC GUID D201MS to support X12DGO.
   Issue ID    : 117500, 119287
   Validation  : None
   Check list  : None
5. New Feature : Add BMC GUID E201MS to support H12 RoT system with AST2600.
   Description : Add BMC GUID E201MS to support SW BMC H12 RoT system with
                 AST2600.
   Issue ID    : PM request
   Validation  : None
   Check list  : None
6. New Feature : Add BMC GUID 0301MS to support B12SPE.
   Description : Add BMC GUID 0301MS to support B12SPE.
   Issue ID    : PM request
   Validation  : None
   Check list  : None
7. New Feature : Support new JBOD family - CSE-947HE2C-R2K05JBOD for
                 GetCmmInfo and UpdateCmm commands.
   Description : Support new JBOD family - CSE-947HE2C-R2K05JBOD for
                 GetCmmInfo and UpdateCmm commands. Add options --overwrite_sdr
                 and --overwrite_ssl to UpdateCmm command to support
                 "CSE-947HE2C-R2K05JBOD".
   Issue ID    : None
   Validation  : Setup a JBOD system "CSE-947HE2C-R2K05JBOD".
                 1. Executing OOB GetCmmInfo command with --file option to get
                    CMM information from managed system and local CMM firmware
                    should complete normally.
                 2. Execute OOB UpdateCmm command to update CMM firmware should
                    complete normally.
                 3. Executing OOB UpdateCmm command with options
                    --overwrite_sdr and --overwrite_ssl on
                    "CSE-947HE2C-R2K05JBOD" system should complete normally.
   Check list  : 1202-OB-XX, 1203-OB-XX, 1204-OB-XX
8. New Feature : Add LocateServerUid command to control UID LED.
   Description : Support UID LED control.
   Issue ID    : None
   Validation  : Executing LocateServerUid command with action "GetStatus" on
                 the managed system can get the UID LED status. Executing
                 LocateServerUid commnad with action "on" on the managed system
                 can turn on the UID LED. Executing LocateServerUid command with
                 action "off" on the managed system can turn off UID LED.
   Check list  : 1010-IB, 1010-OB-XX
9. New Feature : Support more NVMe sensor event logs.
   Description : Support sensor type 0xD1 for NVMe sensor event logs.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 901-XX-XX
10.New Feature : Support RoT sensor event logs.
   Description : Support sensor type 0xDB for RoT sensor event logs.
   Issue ID    : Internal improvement 
   Validation  : None
   Check list  : 901-XX-XX
11.New Feature : Add option --post_complete to check POST status after
                 system boot.
   Description : Add option --post_complete to check post status after system 
                 boot in the following commands:
                  1. ChangeBiosCfg
                  2. LoadDefaultBiosCfg
                  3. ChangeDmiInfo
                  4. SetBiosPassword
                  5. ClearEventLog
                  6. SecureEraseDisk
                  7. UpdateBios
                  8. SetLockdownMode
                  9. SetPowerAction
                 10. UpdateRaidController
                 11. BiosRotManage 
   Issue ID    : Customer request
   Validation  : Execute SetPowerAction command with --action "reboot" and 
                 --post_complete on X11SPi with BMC 1.73.08 and BIOS 
                 X11SPI0.A30. Messages "Status: The managed system <BMC IP> is
                 waiting for POST complete" and "Status: The managed system 
                 <BMC IP> is POST completed" should be shown.
   Check list  : 402-OB-XX, 403-OB-XX, 404-OB-XX, 405-OB-XX, 406-OB-XX,
                 407-OB-XX, 413-OB-XX, 413-OB-XX, 418-OB-XX, 504-OB-XX,
                 505-OB-XX, 506-OB-XX, 508-OB-XX, 509-OB-XX, 602-OB-XX,
                 806-OB-XX, 902-OB-XX, 1106-OB-XX, 1118-OB-XX, 1405-OB-XX,
                 1406-OB-XX, 1702-OB-MM, 1703-OB-MM
12.Enhancement : Support OOB CMM network configuration change.                  
   Description : Use OEM command to set IPSrc, IPAddr, SubNetMask, VLAN_ID
                 and DefaultGateWayAddr in IPv4 configuration setting.
   Issue ID    : Internal improvement
   Validation  : Execute GetCmmCfg command to get current CMM configuration.
                 Change the network setting then execute ChangeCmmCfg command to
                 update network configuration. The command should complete
                 normally.
   Check list  : 1301-OB-XX, 1302-OB-XX
13.Enhancement : Support /dev/stdin as a XML file input in Linux/FreeBSD for
                 ChangeBmcCfg command.
   Description : Support /dev/stdin as a XML file input in Linux/FreeBSD for
                 ChangeBmcCfg command.
   Issue ID    : Internal improvement
   Validation  : Execute GetBmcCfg command to get BMC configuration file.
                 Execute command 'cat bmc.xml | ./sum -u ADMIN -p ADMIN -i
                 10.146.175.11 -c ChangeBmcCfg --file /dev/stdin' should
                 complete normally. The BMC configuration file will be sent to
                 /dev/stdin file and treated as option --file input.
   Check list  : 802-OB-MM, 802-IB, 802-OB
14.Enhancement : Support /dev/stdin as option -l input.
   Description : Support /dev/stdin as option -l input.
   Issue ID    : Internal improvement
   Validation  : Execute "cat iplist | ./sum -l /dev/stdin -u ADMIN -p ADMIN -c
                 GetBiosInfo" should complete normally. The IP list file will be 
                 sent to /dev/stdin file and treated as option -l input.
   Check list  : XXXX-OB-MM
15.Enhancement : Add more instructions in the exception messages for
                 troubleshooting.
   Description : Add more instructions in the exception messages for
                 troubleshooting.
   Issue ID    : PM request
   Validation  : None 
   Check list  : None
16.Enhancement : Support FAN mode "Liquid Cooling" for BMC configuration
                 commands.
   Description : Support FAN mode "Liquid Cooling" for BMC configuration
                 commands.
   Issue ID    : Customer report
   Validation  : Setup a X12DGO-6 system. Execute GetBmcCfg command to get BMC
                 configuration file from managed system. Change the FAN mode to
                 "Liquid Cooling" then execute ChangeBmcCfg command should
                 complete normally.
   Check list  : 801-XX-XX, 802-XX-XX
17.Enhancement : Add FAN mode "Smart Speed" description into BMC configuration
                 file.
   Description : On GPU system. The FAN mode definition of BMC configuration
                 "Smart Cooling" will be replaced by "Smart Speed". Add
                 description to explain the usage.
   Issue ID    : Customer report
   Validation  : Execute GetBmcCfg command to get BMC configuration file. The
                 description "Smart Cooling will be treated as Smart Speed on
                 GPU system" should be shown under FanMode field.
   Check list  : 801-XX-XX
18.Enhancement : Add BIOS version info in BiosRotManage command output.
   Description : Add BIOS version info in BiosRotManage command output.
   Issue ID    : Production team request
   Validation  : Execute BiosRotManage command with action "GetInfo" on
                 X12SPi-TF. The BIOS revision should be after BIOS build date.
   Check list  : 1701-OB-XX, 1701-IB-RHI
19.Enhancement : BMC GUID "2201MS" for H12 RoT AST2500 will be used for
                 H12DSG-Q-CPU6 and H12DGO-6.
   Description : H12DSG-Q-CPU6 and H12DGO-6 uses the incorrect BMC GUID "2201MS"
                 for standard product. To handle this, SUM shows BMC type as 
                 "H12_RoT_ATEN_AST2500/H12_RoT_ATEN_AST2600_1_2" for BMC GUID 
                 "2201MS". 
   Issue ID    : 117500, 119287
   Validation  : None
   Check list  : None
20.Enhancement : Improve ChangeCmmCfg command stability.
   Description : Add delay 10 seconds before changing network related settings
                 DateTimeMode, IPSrc, IPAddress, Subnetmask and Gateway.
   Issue ID    : SSM report
   Validation  : Setup a Blade system with switch MBM-OEM-001 and MBM-XEM-002
                 installed. Execute GetCmmCfg command to get CMM configuration.
                 Change the network setting of switch then execute ChangeCmmCfg
                 command to apply CMM configuration. The switch network
                 configuration should be updated.
   Check list  : 1302-XX-XX
21.Enhancement : Add hidden option --skip_pw_check to ignore password rule for
                 ChangeBmcCfg, ChangeCmmCfg, SetBmcPassword and SetCmmPassword
                 commands.
   Description : Add hidden option --skip_pw_check to ignore password rule for
                 ChangeBmcCfg, ChangeCmmCfg, SetBmcPassword and SetCmmPassword
                 commands.
   Issue ID    : Customer request
   Validation  : Execute SetCmmPassword command on blade system with option
                 --skip_pw_check and password '1234'. After command complete,
                 the user can use password '1234' to login ADMIN account.
   Check list  : 802-IB, 803-IB, 804-IB, 802-OB-XX, 803-OB-XX, 804-OB-XX,
                 1302-OB-XX, 1303-OB-XX, 1304-OB-XX
22.Enhancement : Add hidden option --relaxed_checking for BIOS configuration 
                 commands to relax numeric value step size checking for setting 
		 Numeric.
   Description : The new numeric value minus the current numeric value for 
                 Setting Numeric must be divisible by step size. With option 
		 --relaxed_checking, it is also allowed if the new numeric value 
                 minues the minimum value bound can be divisible by step size.
                 --relaxed_checking option is added in the following commands:        
                  1. GetDefualtBioscfg
                  2. GetCurrentBiosCfg
                  3. ChangeBiosCfg
                  4. LoadDefaultBioscfg
                  5. SecureEraseDisk
                  6. ClearEventLog
                  7. SetBiosPassword
                  8. UpdateBios with --preserve_setting
   Issue ID    : Customer report
   Validation  : Setup a blade system MBI-6119M-C2 with BIOS "B2Sc1.919".
                 Execute GetDefaultBiosCfg command with option
                 --relaxed_checking should complete normally.
   Check list  : 407-XX-XX, 501-OB-XX, 501-IB, 502-OB, 502-IB, 503-OB-XX,
                 503-IB, 504-OB-XX, 504-IB, 505-OB-XX, 505-IB, 506-OB-XX,
                 506-IB, 508-OB-XX, 508-IB, 509-OB-XX, 509-IB, 902-OB-XX, 902-IB 
23.Enhancement : Handle unexpected exception in multiple node mode.
   Description : Handle unexpected exception in multiple node mode.
   Issue ID    : None
   Validation  : None
   Check list  : XXXX-OB-MM
24.Enhancement : Support IPv6 address in HTTP protocol for the MountIsoImage
                 command.
   Description : Support IPv6 address in HTTP protocol for the MountIsoImage
                 command.
   Issue ID    : Internal improvement
   Validation  : Executing MountIsoImage command with HTTP URL and IPv6 address
                 should complete normally.
   Check list  : 1001-XX-XX, 1002-XX-XX
25.Enhancement : Skip CMM node configuration update when the BMC of node is
                 initializing.
   Description : CMM node configuration cannot be changed when the BMC of node
                 is initializing. Skip configuration update in this condition.
   Issue ID    : Customer request
   Validation  : None
   Check list  : 1301-OB-XX, 1302-OB-XX
26.Enhancement : Enhance network configuration stability of BMC/CMM.
   Description : In special condition, BMC returns empty data for fields
                 "CommunityString", "IPSrc", "IPAddr", "SubNetMask",
                 "DefaultGateWayAddr", "DNSAddr". CMM returns empty data for
                 "CommunityString". These fields should return default value as
                 reponse even the value was cleared. SUM needs to handle this
                 situation.
   Issue ID    : Customer report
   Validation  : Issue cannot be reproduced
   Check list  : 801-XX-XX, 802-XX-XX, 1301-XX-XX, 1302-XX-XX
27.Enhancement : Support more DCMS required BIOS setting.
   Description : In order to support multiple DCMS required variables, BIOS can
                 declare which variables require DCMS license in variable
                 DCMSVARLIST. SUM will follow the declaration and attach the
                 signature accordingly.
   Issue ID    : PM request
   Validation  : Only activate OOB license on the managed system. Features
                 secure erase, system lockdown, Pmem should not able to be
                 changed through ChangeBiosCfg command.
   Check list  : 501-XX-XX, 503-XX-XX, 504-XX-XX
28.Fix         : Cannot change BMC IPv4 network configuration on X12.
   Description : SW BMC changes body content format of HTTP patch method for 
                 network Redfish API. So SUM cannot change BMC IPv4 network 
                 configuration on X12 system.
   Issue ID    : Internal improvement
   Validation  : Setup X12DPi system with BMC "SMT_X12AST2600_ROT_096405".
                 Execute GetBmcCfg command to get BMC configuration. Change IPv4
                 network setting then execute ChangeBmcCfg command to update
                 network configuration should complete normally.
   Check list  : 801-OB-XX, 802-OB-XX, 801-IB, 802-IB
29.Fix         : Remove BH12_RoT_AST2600 support.
   Description : HW1 would create a new GUID to support BH12_RoT_AST2600.
   Issue ID    : None
   Validation  : None
   Check list  : None
30.Fix         : UpdateRaidController command failed on the platforms after X10.
   Description : UpdateRaidController command failed on the platforms after X10.
   Issue ID    : 116217
   Validation  : Setup a Purley system with SW BMC "SMT_X11IPMI_17626" and
                 LSI3108 RAUD card installed. Execute UpdateRaidController
                 command with RAID FW ROM file should complete normally.
   Check list  : 1105-OB-XX, 1106-OB-XX
31.Fix         : Fix key requirement description in help message of GetPsuInfo
                 command.
   Description : Change key requirement in help message from OOB to YES.
   Issue ID    : Internal improvement
   Validation  : Execute GetPsuInfo command with option -h. The command output
                 shows "yes" in key requirement field.
   Check list  : 103-IB
32.Fix         : Fix rolling forward checking rule for UpdateBios and UpdateBmc
                 commands.
   Description : Remove hard code version from the keyword of rolling forward 
                 checking.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 419-OB-XX, 419-IB-RHI, 705-OB-XX, 705-IB-RHI


V2.5.1 (2020/11/12)
======================
1. Enhancement : Stop progress dots before showing GPU related information.             
   Description : Stop progress dots before showing GPU related information.
   Issue ID    : Internal improvement
   Validation  : Execute GetGpuInfo command on the GPU supported managed system
                 with GPU add-on card installed. The progress dots should stop 
                 before showing GPU information.
   Check list  : 16XX-XX-XX
2. Fix         : Function keys and PLUS/MINUS key failed in BIOS TUI for Ubuntu
                 terminal.
   Description : PLUS/MINUS key causes TUI crash on menu widget. Function keys
                 do not work in Ubuntu terminal.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with option --tui on the
                 managed system with Ubuntu installed. The BIOS TUI should not
                 crash when pressing PLUS/MINUS key in menu widget, and the
                 function keys should work fine.
   Check list  : 502-IB, 502-OB
3. Fix         : Fix error message of GetGpuInfo command when the command is not
                 supported on the managed system.
   Description : Fix error message of GPU supported from "GetGpuInfo command is
                 not supported on this platform." to "GetGpuInfo command is not
                 supported on the managed system.".
   Issue ID    : LAB report
   Validation  : Execute GetGpuInfo command on the managed system without GPU
                 add-on card. SUM will throw exception with error message
                 "GetGpuInfo command is not supported on the managed system."
   Check list  : 16XX-XX-XX
4. Fix         : Fix inband shutdown can't work issue in FreeBSD.
   Description : The command parameter for system shutdown of FreeBSD is
                 different from Linux.
   Issue ID    : 118903
   Validation  : Executing BiosRotManage command with "UpdateGolden" action on 
                 X12 RoT managed system should work normally. 
   Check list  : 1702-OB-XX, 1703-OB-XX, 1702-IB-RHI, 1703-IB-XX
5. New Feature : Support third digit version for CMM image file.
   Description : Support third digit version for CMM image file.
   Issue ID    : 119107
   Validation  : Exexute GetCmmInfo command with option --file and --file_only
                 and CMM FW "INTEL_CMMFW_34601_REDFISH.bin". The local CMM
                 version shows 3 digits version.
   Check list  : 311-OB-XX
6. Fix         : Support MEL for HW1 BMC.
   Description : The MEL format of HW1 BMC is defferent from SW BMC. SUM 
                 supports HW1 MEL format parsing for GetMaintenEventLog command.
   Issue ID    : 119101
   Validation  : Execute GetMaintenEventLog command on X12DPT-B6 with BMC FW
                 "SMT_X12IPMI2600_01121dbgs" should complete normally.
   Check list  : 903-OB-XX, 903-IB
7. Enhancement : Improve error message of ActivateProductKey command.
   Description : If user activates non-JSON key on the JSON key supported 
                 managed system, SUM throws exception with error message 
                 "Unknown key type" instead of library error message.
   Issue ID    : BIOS LAB report
   Validation  : If user activates non-Json key on a JSON key supported managed
                 sysytem, SUM throws exception with error message "Unknown key
                 type."
   Check list  : 201-XX-XX, 202-XX-XX
8. Enhancement : Improve the stability of feature flags downloading.
   Description : Improve the stability of feature flags downloading. BMC may
                 need more time to prepare feature flags file if BMC is in busy
                 status. Increase the retry counts of raw command "30 A0 06" 
                 from 20 to 60 times.
   Issue ID    : BMC report
   Validation  : None
   Check list  : None
9. Fix         : GetEventLog command may fail when board name cannot be found
                 either source code or external file.
   Description : GetEventLog command fails when the system has sensor type 0xCC
                 memory error event log and board name is not in either source
                 code or external file.
   Issue ID    : Internal improve
   Validation  : Executing GetEventLog command on B12SPE-CPU-TF system with
                 memory error event log should complete normally.
   Check list  : 901-XX-XX
10.Fix         : Fix BIOS configuration grayout_if dependency issue.
   Description : When the last the dependency closure is
                 enum_gray_out_if_static_true,
                 enum_gray_out_if_RC_defined_dynamic_true,
                 enum_gray_out_if_only_numbers_in_expression_dynamic_true or 
                 enum_gray_out_if_has_static_true_dynamic_true, it was
                 incorrectly recognized as enum_gray_out_if_dynamic_true. The
                 BIOS settings under this dependency should be enclosed by 
		 "<?ReadOnly ?>".
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 501-XX-XX, 503-XX-XX, 504-XX-XX
11.Enhancement : Improve help message of MountIsoImage, UpdateBios, GetBmcCfg,
                 LoadDefaultBmcCfg, UpdateBmc, GetCmmCfg, GetGpuInfo,
                 GetEventLog, GetMaintenEventLog, UpdatePsu, GetRaidCfg and
                 SecureEraseRaidHdd commands.
   Desciprtion : Improve help message of MountIsoImage, UpdateBios, GetBmcCfg,
                 LoadDefaultBmcCfg, UpdateBmc, GetCmmCfg, GetGpuInfo,
                 GetEventLog, GetMaintenEventLog, UpdatePsu, GetRaidCfg and
                 SecureEraseRaidHdd commands.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 103-IB


V2.5.1 (2020/10/08)
======================
1. Fix         : Failed to get GPU add-on card information.
   Description : GPU index for getting GPU information depends on slot number by
                 project. SUM scans GPU add-on card from GPU index 1 to 64 to
                 support new BMC FW changes.
   Issue ID    : 116065, 115650
   Validation  : Setup a X11DPU with GPU card installed. Executing GetGpuInfo
                 command should get the GPU information.
   Check list  : 16XX-XX-XX
2. Enhancement : Enhance exception message of virtual media feature.
   Description : Enhance exception message of virtual media feature. Will
                 provide clearer instructions for special character rule.
   Issue ID    : None
   Validation  : Execute MountIsoImage command with option --id/--pwd and
                 unsupported character '&', SUM will throw exception with clear
                 explanation.
   Check list  : 801-XX-XX, 802-XX-XX, 1001-XX-XX, 1002-XX-XX
3. Enhancement : Enhance instructions of Redfish host interface for Linux.
   Description : Enhance instructions of Redfish host interface for Linux when
                 the network setting of Redfish host interface is not available.
   Issue ID    : None
   Validation  : Setup a X12 system with SUSE SLES 15 installed. Execute
                 BiosRoTManage command with option --action GetInfo. SUM
                 will throw exception with two solutions for enabling the
                 network interface of Redfish host interface.
   Check list  : XXXX-IB-RHI 
4. Fix         : GetNvmeInfo command supports up to 32 devices. 
   Description : GetNvmeInfo command supports up to 32 devices.
   Issue ID    : 115914
   Validation  : Setup a system with 32 NVMe devices installed. Execute
                 GetNvmeInfo command should get all NVMe information.
   Check list  : 1110-OB-XX, 1111-OB-XX
5. Fix         : Failed to get OEM FID information from local blade system BIOS
                 image for GetBiosInfo command with --file and --showall options.
   Description : Blade system puts OFID information at different place in BIOS
                 ROM file. SUM add an alterntive solution to parse OFID for
                 blade system.
   Issue ID    : 115247
   Validation  : Executing GetBiosInfo command with options --file and --showall
                 on the B11SRE-CPU-TF with BIOS "B11SRE0.520" should get OFID
                 information.
   Check list  : 306-XX-XX
6. Enhancement : Revise the SecureEraseDisk command output.
   Description : Hide the BIOS unsupported fields. Change field name
                 "Device Type" to "Security Mode". Add field "TCG Device Type".
                 Show "N/A" for field "Applicable Action" if the device is
                 recognized by BIOS but does not support security function.
   Issue ID    : None
   Validation  : Execute SecureEraseDisk command with option --precheck on 
                 system with HDD installed. Appropriate above changes should be
                 shown.
   Check list  : 1117-OB-XX, 1118-OB-XX, 1117-IB, 1118-IB
7. Enhancement : Support "Not TCG/SAT3 Supported" device for SecureEraseDisk 
                 command.
   Description : Support "Not TCG/SAT3 Supported" device. Moreover, 
                 "Security Mode" field will show either "NONE" or 
                 "Not TCG/SAT3 Supported" depends on BIOS design.
   Issue ID    : Internal improvement
   Validation  : Setup a X12SPA with "Not TCG/SAT3 Supported" device installed.
                 Executing SecureEraseDisk command with option --precheck should
                 complete normally. The "Applicable Action" field will show 
                 supported actions depends on BIOS design.
   Check list  : 1117-OB-XX, 1118-OB-XX, 1117-IB, 1118-IB
8. Fix         : Fix the RAID controller ID parsing method for 
                 secureEraseRaidHdd command.
   Description : Enhance the regular expression rule for parsing REDFISH API
                 "/redfish/v1/Chassis/" to get available RAID controller ID.
   Issue ID    : None
   Validation  : None 
   Check list  : 1113-OB, 1114-OB, 1115-OB, 1116-OB, 1113-OB-MM, 1115-OB-MM
9. Enhancement : Revise the help message of SecureEraseRaidHdd command.
   Description : Recommand the user to use ALL intead of 'ALL' for options
                 --enc_id and --dsk_id.
   Issue ID    : None
   Validation  : Execute SecureEraseRaidHdd command in help mode. The usage of
                 options --enc_id and --dsk_id should be changed.
   Check list  : 103-IB
10Enhancement : Add PMEM and BIOS_UNIQUE_NAME information in OFID section for
                 GetBiosInfo command.
   Description : Add PMEM and BIOS_UNIQUE_NAME information in OFID section for
                 GetBiosInfo command.
   Issue ID    : None
   Validation  : Executing GetBiosInfo command with options --file and --showall
                 with BIOS "X12SPI_T202008131059.bin" should show PMEM and
                 BIOS_UNIQUE_NAME information in OFID section.
   Check list  : 306-XX-XX
11.Enhancement : Support new Redfish API "UpdateService/upload" for X12.
   Description : If the UpdateService Redfish API version is greater than or
                 equal to 1_7_0, SUM runs X12 BIOS/BMC update with new multipart
                 HTTP push URI.
   Issue ID    : None
   Validation  : Executing UpdateBios command on X12DPT with BMC FW
                 "X12DPTB_T202009251102.bin" should complete normally.
   Check list  : 4XX-OB-XX, 4XX-IB-RHI, 7XX-OB-XX, 7XX-IB-RHI
12.Enhancement : Improve inband BMC configuration commands execution time.
   Description : SUM will do unnecessary retry for Redfish support checking when 
                 executing inband BMC configuration commands.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 801-IB, 802-IB
13.Enhancement : Enhance the help message of TpmManage command. 
   Description : Inform user that TPM 2.0 status is always enabled for clear 
                 dTPM use case.
   Issue ID    : Internal improvement
   Validation  : Execute TpmManage command in help mode. The usage of option
                 --clear_dtpm should be more clear.
   Check list  : 103-IB
14.Fix         : SUM would ignore all HTTP errors for GetInfo action of 
                 BiosRotManage/BmcRotManage command.
   Description : When executing BiosRotManage/BmcRotManage command with option 
                 --action GetInfo, SUM shows "N/A" in version field if HTTP code
                 is 404. 
   Issue ID    : Internal improvement
   Validation  : Exception with authentication error will be thrown if executing 
                 BiosRoTManage/BmcRotManage command with incorrect password and 
                 option --action GetInfo on X12DPT-B6.
   Check list  : 1701-IB-RHI, 1801-IB-RHI
15.Enhancement : Support data type double for JSON parser and related tools.
   Description : Support data type double for JSON parser and related tools.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
16.Fix         : Fix the inband usage of BiosRotManage/BmcRotManage command in
                 help message.
   Description : Fix the inband usage of BiosRotManage/BmcRotManage command in 
                 help message.
   Issue ID    : Internal improvement
   Validation  : Execute BiosRotManage/BmcRotManage command in help mode. The
                 inband usage should be fixed to support Redfish host interface.
   Check list  : 103-IB
17.Enhancement : Improve local KCS BMC update speed and stability on Linux
                 kernel 4.19 and laters for inband UpdateBmc command.
   Description : KCS speed is slow on Linux kernel 4.19 and laters when it is
                 not in maintenance mode. Switch KCS to maintenance mode if 
                 needed before starting inband update BMC process.
   Issue ID    : 114077
   Validation  : Execute inband UpdateBmc command in Ubuntu 20.04, the update
                 time will reduce from 90 minutes to 1X minutes.
   Check list  : 70X-IB
18.Fix         : SMI command cannot work in Linux when secure boot is enabled.
   Description : SMI command cannot work in Linux when secure boot is enabled.
   Issue ID    : Internal improvement
   Validation  : Setup a system with Linux and enable secure boot. Executing
                 inband GetBiosInfo command should complete normally.
   Check list  : 3XX-IB, 4XX-IB, 5XX-IB
19.Fix         : Node product key "SFT-DCMS-SINGLE" existence message is not
                 output to multiple log in multiple node mode.
   Description : Node product key "SFT-DCMS-SINGLE" existence message is not
                 output to multiple log in multiple node mode.
   Issue ID    : Internal improvement
   Validation  : Setup a system and activate SFT-DCMS-SINGLE key. Execute
                 ActivateProductKey command with SFT-DCMS-SINGLE key in multiple
                 node mode. The message "Node product key SFT-DCMS-SINGLE
                 already exists." will be output to multiple log.
   Check list  : 20X-IB 20X-IB-RHI 20X-OB 20X-OB-MM
20.Fix         : Auto license activation failed when required SFT-DCMS-SINGLE
                 key is not activated.
   Description : ActivateProductKey command checks SFT-DCMS-SINGLE key
                 requirement before auto license activation. If the executed
                 command requires SFT-DCMS-SINGLE key but the managed system
                 does not have SFT-DCMS-SINGLE key. SUM throws exception before
                 auto license activation.
   Issue ID    : Internal improvement
   Validation  : Setup a system without any product key. Prepare a auto key
                 activation file with the MAC of the managed system and
                 SFT-DCMS-SINGLE key. Executing GetGpuInfo command will trigger
                 auto license activation to activate SFT-DCMS-SINGLE key.
                 Execute QueryProductKey command to check the existing key
                 status. The SFT-DCMS-SINGLE key should exist.
   Check list  : 203-XX-XX, 160X-XX-XX
21.Enhamcement : Auto license activation supports JSON key.
   Description : Auto license activation supports JSON key.
   Issue ID    : Internal improvement
   Validation  : Setup a X12 system without any product key. Prepare a auto key
                 activation file with the MAC of the managed system and
                 SFT-DCMS-SINGLE HSM product key. Executing GetGpuInfo command
                 will trigger auto license activation to activate 
                 SFT-DCMS-SINGLE JSON key. Execute QueryProductKey command to
                 check the existing key status. The SFT-DCMS-SINGLE key should 
                 be activated.
   Check list  : 203-XX-XX, 160X-XX-XX
22.Enhancement : Improve dyanmic enabling USB 3.0 device in SetUsbAccessMode
                 command for Windows.
   Description : Some USB 3.0 devices cannot be dynamic enabled back. SUM tries
                 to WPR to make USB port reset and turn to enabled.
   Issue ID    : 113334
   Validation  : SMSTC TC343 should pass.
   Check list  : 1005-IB
23.Fix         : Global IPv6 address cannot work with OOB SUM command.
   Description : Fix global IPv6 address cannot work issue.
   Issue ID    : 113616
   Validation  : Execute OOB GetBiosInfo command with option -i and global IPv6
                 address should complete normally.
   Check list  : XXXX-OB-XX
24.Fix         : Support /dev/stdin as input file for file required commands in
                 Linux.
   Description : Support /dev/stdin as input file for file required commands in
                 Linux.
   Issue ID    : Customer report 
   Validation  : Executing "echo obfuscated_password | ./sum -i BMC_IP -u root
                 -f /dev/stdin -c GetBMCInfo" should complete normally.
   Check list  : None 
25.Fix         : Add option --overwrite_ssl for UpdateBmc command to support X12
                 and later platforms.
   Description : Add option --overwrite_ssl for UpdateBmc command to support X12
                 and later platforms.
   Issue ID    : Internal improvement 
   Validation  : Executing UpdateBmc command with option --overwrite_ssl on X12
                 system should complete normally.
   Check list  : 705-XX-XX
26.Enhancement : Support inband UpdateBios cross ME version 14.0.39.1339 on
                 X12SAE/X12SCA-F, X12SCZ-F/QF/TLN4F, C9Z490-PG(W) and X12SCQ.
   Description : For Comet Lake platfroms, some settings are changed after 
                 updating ME FW 14.0.39.1339. To support this update, SUM will
                 update only BIOS region first and ask user to reboot system. 
                 Then follow the standard in-band update BIOS procedure to 
                 update BIOS.
   Issue ID    : Production report
   Validation  : V1. Execute command "Fpt.efi -closemnf" on X12SCA with 
                     "X12SAE0.715" BIOS. 
                 V2. SUM throws exception to guide user rebooting the system 
                     when executing inband UpdateBios command with --file
                     X12SAE0.921.
                 V3. SUM throws exception to guide user rebooting the system to
                     enter update mode when executing inband UpdateBios command 
                     with --file X12SAE0.921.
                 V4. Executing inband UpdateBios command with --file X12SAE0.921
                     should complete normally.
                 V5. Confirm that "ME firmware Version" is 14.0.45.1389 and 
                     "ME firmware Mode" is "Normal Mode" under BIOS setup menu.

                 Note: After executing "Fpt.efi -closemnf" command, the Boot 
                       Guard key cannot be changed permanently.
   Check list  : 4XX-IB
27.Fix         : Fix the help mesaage of GetTpmInfo command.
   Description : Add product key requirement to the help message of GetTpmInfo
                 command.
   Issue ID    : None
   Validation  : Execute GetTpmInfo command with option -h. The product key
                 requirement should show yes.
   Check list  : 103-IB
28.Enhancement : Support H12 AST2600 RoT.
   Description : Support BMC type 9201MS for HW1 H12 AST2600 RoT.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
29.Fix         : UpdateRaidController command failed to check managed system
                 capability. 
   Description : SUM should not throw exception when executing 
                 UpdateRaidController command on MCTP unsupported system because
                 BMC might update RAID controller through I2C. Skip BIOS MCTP 
                 checking for UpdateRaidController command.
   Issue ID    : 116217
   Validation  : Executing UpdateRaidController command on X11DPX-T with BIOS
                 "X11DPX0.221" should complete normally.
   Check list  : 1105-OB-XX, 1106-OB-XX
30.Enhamcement : Enhance output message of BiosRotManage and BmcRotManage
                 commands.
   Description : For BiosRotManage command, enhance the output message. For
                 BmcRotManage command, enhance the output message and add
                 6 minutes waiting time, so the command will complete after BMC
                 reset is ready.
   Issue ID    : Internal improvement
   Validation  : SUM should wait 6 minutes when executing BmcRotManage command
                 with --action UpdateGolden. 
   Check list  : 170X-OB-XX, 180X-OB-XX, 170X-IB-RHI, 180X-IB-RHI
31.Enhancement : Support "no" as hidden parameter of --lock option for test
                 purpose in TpmProvision command.
   Description : SUM removed --lock no support in SUM 2.5.0. Add it back for LAB
                 test purpose.
   Issue ID    : LAB report
   Validation  : Execute TpmProvision command with option --lock no should
                 complete normally.
   Check list  : 1501-OB-XX
32.Fix         : Get incorrect OFID inforamtion from AMD 32MB BIOS.
   Description : Get incorrect OFID inforamtion from AMD 32MB BIOS.
   Issue ID    : Internal improvement
   Validation  : Execute inband GetBiosInfo command with options --file_only and
                 --showall to read local BIOS file"H12DSU0.810". Only the 16 MB
                 Rome image should contain OFID information.
   Check list  : 4XX-OB-XX, 4XX-IB-RHI, 7XX-OB-XX, 7XX-IB-RHI
33.New Feature : Support boot version 0x02 for BMC configuration commands.
   Description : Support boot version 0x02 for BMC configuration commands.
   Issue ID    : None
   Validation  : When supported boot version in BIOS is 0x02, the system should
                 be able to boot into the expected boot device through
                 ChangeBmcCfg command.
   Check list  : 802-XX-XX 
34.Fix         : Prevent infinite loop in SetUsbAccessMode command for
                 Linux/FreeBSD.
   Description : USB 3.0 device status in some system cannot be switched from
                 port reset to enabled. Add timeout to prevent infinite loop.
                 Manually unplug and plug the USB device can make it switch to
                 enabled status.
   Issue ID    : 115060
   Validation  : ATT TC343 for X12DPG should not fall into an infinite loop.
   Check list  : 1005-IB
35.New Feature : Support next boot into UEFI shell for BMC configuration
                 commands.
   Description : Support next boot into UEFI shell for BMC configuration
                 commands in boot version 0x01.
   Issue ID    : Customer request
   Validation  : Firstly, executing GetBmcCfg command to get BMC configuration.
                 Secondly, change "BootMode" as "UEFI" and "UEFIDeviceType" as
                 "UEFI: BIOS Shell". Thirdly, reboot the system. The system
                 should be booted into UEFI Shell.
   Check list  : 801-XX-XX, 802-XX-XX
36.Enhancement : Set boot version as 0x02 when boot version is great than 0x02.
   Description : When boot version is great than 0x02, SUM 2.5.0 and before sets
                 boot version as 0x00. The siutation only happens in the future
                 BIOS.
   Issue ID    : None
   Validation  : Build a BIOS with boot version as 0x03. SUM 2.5.1 should
                 follows boot version 0x02 instead of 0x00.
   Check list  : 802-XX-XX


V2.5.0 (2020/07/22)
======================
1. Fix         : Fix the display format of BIOS version asnd revision information.
   Description : Fix the format of BIOS version and revision in BIOS additional
                 information. These two BIOS inforamtion are shifted.
   Issue ID    : None
   Validation  : Execute GetBiosInfo command with option --showall on X11SSH-F,
                 The BIOS version and revision should display normally.
   Check list  : 306-IB
2. Enhancement : Add hidden option --show_index in QueryProductKey command for
                 non-JSON key.
   Description : Add hidden option --show_index option in QueryProductKey
                 command for non-JSON key to display key index information of
                 existed product key.
   Issue ID    : None
   Validation  : Execute QueryProductKey command with option --show_index on
                 X11SSH-F. The command output should display key index of each
                 product key.
   Check list  : 205-XX-XX,
3. Enhancement : Add --key_index option back to KeyProductDeletion command for
                 non-JSON key.
   Description : Add --key_index option back to KeyProductDeletion command for
                 non-JSON key.
   Issue ID    : None
   Validation  : Active a SFT-DCMS-SINGLE key on X11SSH-F. Execute
                 QueryProductKey command with option --show_index to get key
                 index information. Execute KeyProductDeletion command with
                 option --key_index and the corresponding index number to delete
                 SFT-DCMS-SINGLE key.
   Check list  : 206-XX-XX
4. New Feature : Support B12 system with AST2600.
   Description : Add BMC GUID 7201MS to support B12 system with AST2600.
   Issue ID    : None
   Validation  : None
   Check list  : None
5. New Feature : Show invoice information in QueryProductKey command for
                 non-JSON key systems.
   Description : Show invoice information in QueryProductKey command for
                 non-JSON key systems.
   Issue ID    : None
   Validation  : Activate product key on X11SSH-F system. Execute
                 QueryProductKey command on the X11SSH-F. The invoice
                 information should be displayed in command output.
   Check list  : 203-IB, 203-OB, 203-OB-MM
6. New Feature : Add non-JSON keys SSM, SD5, SCM, SITE, DCMS-CALL-HOME and SMIS
                 support back to QueryProductKey and KeyProductDeletion
                 commands.
   Description : Add non-JSON keys SSM, SD5, SCM, SITE, DCMS-CALL-HOME and SMIS
                 support back to QueryProductKey and KeyProductDeletion
                 commands.
   Issue ID    : None
   Validation  : None
   Check list  : 203-IB, 203-OB, 204-OB, 203-OB-MM, 203-OB-MM
7. Fix         : Support pure IPv6 network configuration in Windows.
   Description : Support IPv6 when IPv4 is disabled in Windows. Use API
                 GetAdaptersAddresses to replace GetInterfaceInfo.
   Issue ID    : None
   Validation  : Setup a Windows system. Disable IPv4 in network configuration.
                 Running SUM command with IPv6 address should complete normally.
   Check list  : None
8. Enhancement : Support update BMC/BIOS on HW1's X12 system
   Description : Get TaskUrl from BMC Http response header for querying update
                 status. HW1's BMC use the same task ID to handle whole update
                 flow and add pending status in TaskService. SUM handles pending
                 status in TaskService for HW1. Mars BMC use the different task
                 ID for each update related tasks.
   Issue ID    : None
   Validation  : Executing updateBios command on BH12SSi system with BMC FW
                 "SMT_B12IPMI_10004" should compelete normally.
   Check list  : 4XX-OB-XX, 7XX-OB-XX, 4XX-IB-RHI, 7XX-IB-RHI
9. Fix         : Fix SUM crashes on HW1 X12/H12 system when executing
                 UpdateBios/UpdateBmc commands.
   Description : Mars BMC and Xinan BMC have different data type definition for
                 HidePayload field in TaskService structure. SUM removed it
                 to avoid conflict.
   Issue ID    : None
   Validation  : Executing updateBios command on BH12SSi system with BMC FW
                 "SMT_B12IPMI_10004" should compelete normally.
   Check list  : 4XX-OB-XX, 4XX-IB-RHI, 7XX-OB-XX, 7XX-IB-RHI
10.Enhancement : Support the formal rolling-forward message ID for BIOS/BMC
                 update.
   Description : BMC changed the rolling-forward message ID from 1 to
                 "SMC.1.0.OemAntiRollForward".
   Issue ID    : None
   Validation  : Setup a X12DPi-N6 with beta BMC FW "X12_AST26_MessageID_962_1".
                 Executing UpdateBmc command without option --forward and beta
                 BMC "X12_AST26_MessageID_962_2" should throw exception with
                 error message "Use --forward to advance the Rollback ID. Once
                 the Rollback ID advances, BMC cannot downgrade to any older
                 version."
   Check list  : 401-OB-XX, 401-IB-RHI, 701-OB-XX, 701-IB-RHI
11.New Feature : Add RoT support information in CheckOOBSupport command.
   Description : Add RoT support information in CheckOOBSupport command.
   Issue ID    : None
   Validation  : Execute CheckOOBSupport command X12DDW-A6, The field "System
                 Supports Rot Feature" should display yes. 
   Check list  : 301-XX-XX
12.Enhancement : Add a checking rule for the image path with continuous
                 backslashes or slashes for MountIsoImage command.
   Description : Characters backslash and slash should only be used once in
                 image path. Add continuous backslashes and slashes checking for
                 MountIsoImage command.
   Issue ID    : None
   Validation  : Execute MountIsoImage command on with image path
                 "http://aaa//a.iso" should throw exception with error message
                 "Invalid HTTP URL" not "Fail to connect image provider host.".
   Check list  : 1001-XX-XX, 1002-XX-XX
13.Fix         : Support IPv6 address in SAMBA protocol for the MountIsoImage.
   Description : IPv6 address contains illegal character ':'. SUM supports
                 character ':' if IPv6 address is used in SAMBA image path.
   Issue ID    : None
   Validation  : Executing MountIsoImage command with SAMBA URL and IPv6 address
                 should complete normally.
   Check list  : 1001-XX-XX, 1002-XX-XX
14.Fix         : GPU GUID information lost two bytes data at the end.
   Description : GPU GUID information lost two bytes data at the end.
   Issue ID    : None
   Validation  : Execute GetGpuInfo command on X12DPG with BMC FW
                 "SMT_X12AST2600_ROT_001036" and GPU card installed, The GUID
                 shows 16 bytes data in GetGpuInfo command output.
   Check list  : 16XX-XX-XX
15.Fix         : Fix ACPICA binary path checking issue in GetUsbaccessMode and
                 SetUsbAccessMode commands on Windows.
   Description : ACPICA binary path checking is incorrect on Windows and it 
                 caused exception was thrown even acpidump.exe and acpiexec.exe
                 are under .\acpica_bin\.
   Issue ID    : 114211
   Validation  : Executing GetUsbaccessMode or SetUsbAccessmode command with 
                 acpidump.exe and acpiexec.exe under .\acpica_bin\ on Windows
                 should complete normally.
   Check list  : 1004-IB, 1005-IB, 1006-IB
16.Enhancement : Improve dyanmic enabling USB 3.0 device in SetUsbAccessMode
                 command for Linux and FreeBSD.
   Description : Some USB 3.0 devices cannot be dynamic enabled back. SUM tries
                 to WPR to make USB port reset and turn to enabled.
   Issue ID    : 113334 
   Validation  : SMSTC TC343 should pass.
   Check list  : 1005-IB, 1006-IB
17.Fix         : Fix enabling/disabling USB 2.0 port accidentally when USB 3.0
                 port does not exist in the assigned panel.
   Description : SUM only checked group token (dynamic control flag from ACPI
                 GPLD method) for USB 3.0 device but USB 2.0 device didn't. When
                 there is no USB 3.0 port in the assigned panel, SUM would not
                 throw exception with the group token 0. Then, SUM
                 enabled/disabled the USB 2.0 in the assigned panel accidentally
            	 without checking group token.
   Issue ID    : 114211 
   Validation  : SMSTC TC343 should pass on X12QCH+ which contains no USB 3.0 
                 port in the front panel.
   Check list  : 1005-IB, 1006-IB
18.Enhancement : Enhance in-band UpdateBmc command stability for X10/X11
                 platforms.
   Description : SUM will display pseudo update progress when the last valid
                 progress BMC reports is larger than 10% and BMC fails to
                 provide update progress in one of the following cases:
                 1. BMC returns with non-zero completion code
                 2. The update progress does not change for 3 minutes
   Issue ID    : None
   Validation  : Executing in-band UpdateBmc command on X10DRW with OEM BMC 3.35
                 should complete normally.
   Check list  : 7XX-IB
19.Enhancement : Do not support pseudo progress when BIOS/BMC is updated through
                 Redfish.
   Description : Do not support pseudo progress when BIOS/BMC is updated through
                 Redfish.
   Issue ID    : None
   Validation  : None
   Check list  : 4XX-OB-XX, 4XX-IB-RHI, 7XX-OB-XX, 7XX-IB-RHI
20.Enhancement : pmdll checks the fourth digit of the Windows driver version.
   Description : pmdll checks the fourth digit of the Windows driver version.
                 If the current driver version in managed system is less than
                 the one in SUM package, the current driver will be replaced by
                 new driver.
   Issue ID    : None
   Validation  : None
   Check list  : None
21.New Feature : Add new field "udp_timeout" to .sumrc file to control UDP
                 connection timeout.
   Description : Add new field "udp_timeout" to .sumrc file to control UDP
                 connection timeout.
   Issue ID    : None
   Validation  : Configure udp_timeout in .sumrc. Execute OOB SUM command on the
                 network unreachable system, the UDP connection timeout should
                 match the setting udp_timeout.
   Check list  : XXXX-OB-XX
22.Enhancement : Show all error message from Redfish API response.
   Description : Show all error message from Redfish API response if BMC returns
                 more than one error message.
   Issue ID    : None
   Validation  : None
   Check list  : None
23.Enhancement : SecureEraseDisk command supports formal Security Module Version
                 1.00.
   Description : BIOS changed Security Module Version from 0.01 to 1.00.
   Issue ID    : None
   Validation  : Executing SecureEraseDisk command with option --precheck on
                 X12SPi-TF with BIOS "X12SPI_T202007201736" should complete
                 normally.
   Check list  : 1117-OB, 1118-OB, 1117-IB-XX, 1118-IB-XX
24.Enhancement : Support BMC configuration AD/LDAP for BH12 platform.
   Description : If AD/LDAP exists under /redfish/v1/AccountService and the
                 version in @odata.type is equal or larger than v1_6_0, SUM will
                 support the setting modification through Redfish API.
                 Otherwise, BMC configuration AD/LDAP will be supported through
                 IPMI raw command.
   Issue ID    : None
   Validation  : Execute GetBmcCfg command on BH12SSi to get BMC configuration.
                 The BMC configuration file should contain AD/LDAP tables.
                 Change AD/LDAP tables then execute ChangeBmcCfg command to
                 update BMC configuration. The AD/LDAP settings should be
                 updated.
   Check list  : 801-OB, 802-OB, 801-IB, 802-IB, 801-OB-MM, 802-OB-MM
25.Enhancement : Support BMC configuration Alert for BH12 platform.
   Description : Support BMC setting modification through Redfish if
                 /redfish/v1/EventService/Subscriptions/1 exists and the version
                 in @odata.type is equal or greater than v1_7_0. Otherwise,
                 support BMC setting modification through IPMI raw command.
   Issue ID    : None
   Validation  : Execute GetBmcCfg command on BH12SSi to get BMC configuration.
                 The BMC configuration file should contain Alert table. Change
                 Alert setting then execute ChangeBmcCfg command to update BMC
                 configuration. The Alert setting should be updated.
   Check list  : 801-OB, 802-OB, 801-IB, 802-IB, 801-OB-MM, 802-OB-MM
26.Fix         : Increase the timeout of polling progress from 50 minutes to 85
                 minutes for UpdateRaidController command.
   Description : Increase the timeout of polling progress from 50 minutes to 85
                 minutes for UpdateRaidController command. 
   Issue ID    : 104486
   Validation  : Execute UpdateRaidController command with RAID FW
                 "REDFISH_X10_389_20200623_unsigned" on X10DRU should complete
                 normally.
   Check list  : 1105-OB,1106-OB,1105-OB-MM,1106-OB-MM
27.Enhancement : Apply new task ID querying rule to SecureEraseRaidHdd command.
   Description : Get TaskUrl from BMC Http response header for querying secure
                 erase status.
   Issue ID    : None
   Validation  : Execute SecureEraseRaidHdd command on X12 systems should
                 complete normally.
   Check list  : 1113-OB, 1114-OB, 1113-OB-MM
28.Fix         : Check whether Redfish is supported by the managed system for
                 SecureEraseRaidHdd command.
   Description : Check whether Redfish is supported by the managed system for
                 SecureEraseRaidHdd command.
   Issue ID    : None
   Validation  : Execute SecureEraseRaidHdd command on the managed system
                 without Redfish support BMC, SUM should throw exception with
                 unsupported message.
   Check list  : 1113-OB, 1114-OB, 1113-OB-MM
29.Fix         : Cannot change JBOD mode in RAID configuration on X12 systems.
   Description : BMC changed the Redfish API of RAID actions on X12 systems.
                 Support new Redfish API for JBOD mode configuring on X12
                 systems.
   Issue ID    : None
   Validation  : Setup a X12SCA system with RAID card installed. Execute
                 GetRaidCfg command to get current RAID configuration from the
                 managed system. Change JBOD mode setting. Executing
                 ChangeRaidCfg command to update RAID configuration of the
                 managed system should complete normally.
   Check list  : 1107-OB,1108-OB,1107-OB-MM,1108-OB-MM
30.Fix         : Remove banner of RAID controller task service for exception
   Description : Should not display RAID controller task service banner if an
                 exception is thrown because user inputs invalid task IDs for
                 secure erase RAID HDD task.
   Issue ID    : None
   Validation  : Execute SecureEraseRaidHdd command with option --tsk_id and
                 invalid ID number. An exception will be thrown and the banner
                 of RAID controller task service should not be displayed.
   Check list  : 1115-OB, 1116-OB, 1115-OB, 1116-OB


V2.5.0 (2020/07/03)
======================
1. Fix         : --file_only option of GetRaidControllerInfo, GetBmcInfo and 
                 GetCmmInfo commands does not work in some environment.
   Description : SUM checks SMBIOS content for BMC existance. However, commands
                 with --file_only options does not need IPMI device. Skip the 
                 BMC existance checking for --file_only option.
   Issue ID    : None
   Validation  : Executing GetBmcInfo command with --file and --file_only 
                 options on personal laptop should complete normally.
   Check list  : 310-IB, 312-IB, 1104-IB
2. Fix         : Throw exception when GetRaidControllerInfo command is executed 
                 with invalid RAID FW file.
   Description : Throw exception when GetRaidControllerInfo command is executed
                 with invalid RAID FW file (size >= 64 bytes).
   Issue ID    : None 
   Validation  : Exception with error message "Invalid firmware image file" 
                 should be thrown when executing GetRaidControllerInfo command 
                 with invalid RAID FW file (size larger than 64 bytes).
   Check list  : 1103-OB-XX, 1103-IB, 1104-IB
3. Fix         : Disable LDAP/AD service will be done twice in ChangeBmcCfg 
                 command.
   Description : Redfish API used to disable AD/LDAP service is patched twice.
   Issue ID    : None
   Validation  : None
   Check list  : 802-OB-XX
4. Enhancement : Enhance stability of BMC/RAID configuration tables whose         
                 information is getting through Redfish APIs.
   Description : Add retry for Redfish support checking in BMC/RAID 
                 configuation.
   Issue ID    : None
   Validation  : SMSTC SUMECO TC215 on X12SCA should pass.
   Check list  : 801-OB-XX, 802-OB-XX, 1107-OB-XX, 1108-OB-XX
5. Enhancement : Throw exception when system cannot be powered up after 
                 recovering BIOS or updating golden BIOS image.
   Description : Throw exception when system cannot be powered up after
                 executing OOB BiosRotManage command with "--action 
                 updateGolden" or "--action Recover".
   Issue ID    : None
   Validation  : None
   Check list  : 1702-OB-XX, 1703-OB-XX
6. Fix         : Remove confusing messages from ChangeBiosCfg command output 
                 with X12 US BIOS.
   Description : Zero padding was added into std:string in                          
                 CHiiSettingString::setDefaultString(). Particular BIOS settings
	         were incorrectly judged as changed. Then, SUM outputs confusing
                 messages.
   Issue ID    : Internal improvement
   Validation  : Execute ChangeBiosCfg command with nothing changed for X12 US 
                 MB. The command output should contain no confusing messages.
   Check list  : 504-XX-XX
7. Enhancement : Improve error message when BMC responds with unexpected HTTP
                 code.
   Description : Add HTTP code and BMC responds data in the exception error
                 message.
   Issue ID    : Internal improvement
   Validation  : None
   Checklist   : 4XX-OB-XX, 4XX-IB-RHI, 7XX-OB-XX, 7XX-IB-RHI, 8XX-OB-XX,
                 309-OB-XX, 2XX-OB-XX, 2XX-IB-RHI
8. Fix         : Changes in LDAPRule/ADRule tables under BMC configuration may 
                 not be applied for OOB ChangeBmcCfg command.
   Description : Changes in LDAPRule/ADRule tables under BMC configuration 
                 should be allowed as long as "RemoteUser" or "RemoteGroup" 
                 information is filled.
   Issue ID    : 112906
   Validation  : V1. On X12SPi, execute GetBmcCfg command to get current BMC 
                     configuration.
                 V2. In the BMC configuration file, fill information only for
                     "RemoteUser" and "RulePrivilege" Under ADRule table.
		 V3. Executing ChangeBmcCfg command should complete normally.
                 V4. Execute GetBmcCfg command to confirm "RemoteUser" and 
                     "RulePrivilege" are applied under ADRule table.
   Check list  : 801-OB-XX, 802-OB-XX
9. Enhancement : CURL formPost will bypass SSL by default. 
   Description : CURL formPost will bypass SSL by default.
   Issue ID    : None
   Validation  : None
   Check list  : None
10.Enhancement : Prevent segmentation fault in ChangeBiosCfg command.              
   Description : This issue happens in Purley and later platforms without BIOS
                 Administrator/User password setting. SUM attempted to access null
                 pointer in CHiiXmlCfg::setPasswordHashType() and it caused 
	         segmentation fault.
    Issue ID   : Internal improvement
    Validation : None
    Check list : 504-XX-XX
11.Fix         : Commands with "-I Redfish_HI" might segmentation fault in Linux
                 or FreeBsd.
   Description : SUM uses system API to get system MAC address on Linux/FreeBsd
                 for checking whether Redfish host interface IP is assigned.
                 However, the char array was too small to hold the system MAC 
                 address.
   Issue ID    : None
   Validation  : Executing inband UpdateBios command on X12SPi should complete 
                 normally.
   Check list  : 2XX-IB-RHI, 4XX-IB-RHI, 7XX-IB-RHI, 17XX-IB-RHI, 1802-IB-RHI 
12.Enhancement : Inband SetPowerAction command does not support "--action up". 
   Description : "--action up" should not be supported in SetPowerAction command
                 for in-band usage.
   Issue ID    : None
   Validation  : Exception should be thrown when executing inband SetPowerAction
                 command with "--action up".
   Check list  : 1405-IB
13.Enhancement : Scan maximum 64 GPU support slots to discover GPU card 
                 existance.
   Description : GPU index in BMC raw command uses physical slot number. 
                 Therefore, SUM scans possible slots (1~64) to get GPU 
                 information.
   Issue ID    : 111531
   Validation  : Insert GPU cards on slot 1 and 5 on X11DGQ. Output display 
                 of GetGpuInfo command should have information for both GPU 
                 cards. 
   Check list  : 1601-XX-XX
14.Enhancement : Enhance BIOS build date output format in BiosRotManage command.
   Description : BIOS build date format should be YYYY/MM/DD. Fill 0 if month or 
                 day is single digit.
   Issue ID    : None
   Validation  : Executing BiosRotManage with "--action GetInfo" on X12SPi with 
                 BMC 00.23.04 and BIOS X12SPI_T202006181045.bin, the output BIOS
                 build date should be 2020/06/18. 
   Check list  : 1601-XX-XX
15.Enhancement : Enhance BIOS build date output format in GetBiosInfo command.
   Description : BIOS build date format should be YYYY/MM/DD. Fill 0 if month or
                 day is single digit.
   Issue ID    : None
   Validation  : V1. Excuting inband GetBiosInfo command on X12SPi with BIOS
                     X12SPI_T202006181045.bin installed, the output BIOS build 
                     date should be 2020/06/18.
                 V2. Excuting GetBiosInfo command with --showall option on 
                     X12SPi with BIOS X12SPI_T202006181045.bin installed, the 
                     output BIOS build date in addtional information section
                     should be 2020/06/18.
   Check list  : 305-IB, 306-IB, 307-IB, 306-OB-XX
16.Fix         : Exception should be thrown when OOB ChangeRaidCfg command 
                 fails to change JBOD mode configuration.
   Description : Exception should be thrown when JBOD mode configuration cannot 
                 be changed by Redfish API with both PATCH and POST method.  
   Issue ID    : None
   Validation  : None
   Check list  : 1108-OB


V2.5.0 (2020/06/12)
======================
1. New Feature : Add GetMaintenEventLog command to get maintenance event log 
                 from the managed system.
   Description : Add GetMaintenEventLog command to get maintenance event log
                 from the managed system.
   Issue ID    : None
   Validation  : Executing GetMaintenEventLog command should complete normally.
   Check list  : 903-OB-XX, 903-IB
2. Enhancement : Apply new special character checking rule to virtual media
                 feature for TpmProvision command.
   Description : BMC defined new special character checking rule due to command
                 injection security issue. so follow the doc "Virtual Media
                 Specs for special charactersV2" to support new rule.
                  1. Special characters for ID and password: ^.
                  2. Special characters for ShareHost: -.
                  3. Special characters for PathToImage: @^-_./\ (/ and \ can
                     only be used in a path)
                  4. Special characters like backslashes \ and slashes / should
                     only be used once; repeated use (e.g., //, \\, /\ and \/)
                     is not allowed.
                  5. Special character ^ is not available for use in older
                     versions of BMC firmware.
   Issue ID    : None
   Validation  : Please follow the above rules to test virtual media feature.
   Check list  : 1001-XX-XX, 1002-XX-XX, 802-XX-XX
3. Fix         : In-band UpdateBios command fails because of incorrect board ID
                 judgment if local BIOS image contains more than one $FID tag.
   Description : SUM gets the board ID information from local BIOS image by 
                 searching the first $FID tag in in-band UpdateBios command. 
                 However, board ID in BIOS image should be retrived by searching 
                 the first $FID tag from the end of image data.
   Issue ID    : 111612
   Validation  : Executing in-band UpdateBios command with C9Z390C0.526 on 
                 C9Z390 should complete normally.
   Check list  : 4XX-IB
4. Enhancement : Reduce system reboot time in OOB UpdateBios command on X12 and 
                 later RoT system.
   Description : On RoT system, after BIOS update is completed, SUM checks 
                 whether system is powered up by polling power status with 30 
                 seconds timeout and 1 second interval. If system is not powered 
                 up after 30 seconds, SUM will power it up.
   Issue ID    : Internal improvement
   Validation  : Executing OOB updateBios command on H12SSW with RHEL 8.0, 
                 system should still in booting process when SUM exits 
                 successfully.
   Check list  : 4XX-OB-XX
5. Enhancement : Support --force_update option for in-band UpdateBios command 
                 with --kcs option.
   Description : --force_update option should be allowed for in-band UpdateBios
                 command with --kcs option.
   Issue ID    : Internal improvement
   Validation  : Executing in-band updateBios command with --force_update option 
                 should complete normally.
   Check list  : 415-IB
6. New Feature : Add BmcRotManage command to support X12 RoT related features.
   Description : Add BmcRotManage command to support X12 RoT related features.
   Issue ID    : None
   Validation  : V1. Setup a X12 RoT system with active BMC version 00.10.19 and
                     golden BMC version 00.10.xx. 
                 V2. Execute BmcRotManage command with "--action UpdateGolden".
                 V3. Execute BmcRotManage command with "--action GetInfo" after
                     BMC comes up.
                 V4. Golden BMC version should be 00.10.19.
   Check list  : 18XX-OB-XX, 18XX-OB-RHI
7. New Feature : Add BiosRotManage command to support X12 RoT related features.
   Description : Add BiosRotManage command to support X12 RoT related features.
   Issue ID    : None
   Validation  : V1. Setup a X12 RoT system with differnt BIOS image as active
                     BIOS build date 2020/06/05 and golden BIOS build date 
                     YYYY/MM/DD.
                 V2. Execute BiosRotManage command with "--action UpdateGolden".
                 V3. Execute BiosRotManage command with "--action GetInfo" after
                     system reboot.
                 V4. Golden BIOS build date should be 2020/06/05.
   Check list  : 17XX-OB-XX, 17XX-IB-RHI
8. Enhancement : Support JBOD mode configuration for OOB ChangeRaidCfg command
                 on X12 systems.
   Description : BMC changes JBOD mode configuration Redfish API method from 
                 PATCH to POST on new platforms and SMT_X11AST2500_173_02.bin.
                 For backward compatibility, SUM uses PATCH method first, if 
                 BMC responds with HTTP code 405 (Method Not Allowed), SUM will
                 switch to POST method.
   Issue ID    : None
   Validation  : 1. Execute OOB GetRaidCfg command on X12SPi, JbodMode should be
                    shown in RAID configuration.
                 2. Modify JbodMode with value Disable/Enable, and execute OOB
                    ChangeRaidCfg command.
                 3. Execute OOB GetRaidCfg command to get RAID configuration, and
                    check if JbodMode is changed in RAID configuration.
   Check list  : 1107-XX-XX, 1108-XX-XX
9. Enhancement : Improve error message when BMC responds with unexpected HTTP 
                 code.
   Description : Add HTTP code and BMC responds data in the exception error 
                 message.
   Issue ID    : Internal improvement
   Validation  : None
   Checklist   : 4XX-OB-XX, 4XX-IB-RHI, 7XX-OB-XX, 7XX-IB-RHI, 8XX-OB-XX, 
                 309-OB-XX, 2XX-OB-XX, 2XX-IB-RHI
10.Fix         : Correct example in MountIsoImage command help message.
   Description : --id and --pw does not accept '&' character.
   Issue ID    : None
   Validation  : None
   Checklist   : None
11.Fix         : The wrong ACPICA binary path was checked in GetUsbAccessMode
                 and SetUsbAccessMode commands.
   Description : SUM incorrectly checked the wrong path "/opt/acpica_bin" and 
                 reported incorrect exception.
   Issue ID    : Interlnal improvement
   Validation  : V1. For Linux and FreeBSD, make sure /opt/acpica_bin/acpiexec 
                     and /opt/acpica_bin/acpidump not exist.
                 V2. For Linux and FreeBSD, make sure ./acpica_bin/acpiexec and 
                     ./acpica_bin/acpidump exist.
                     For Windows, make sure .\acpica_bin\acpiexec.exe and
                     .\acpica_bin\acpidump.exe exist.
                 V3. Executing GetUsbAccessMode or SetUsbAccessMode command 
                     should not report ACPICA binary not found exception.
   Check list  : 1004-IB, 1005-IB, 1006-IB
12.Enhancement : Display N/A when no USB port mapped to front/rear panel in 
                 GetUsbAccessMode command.
   Description : When there is no any USB port mapped to front or rear panel,
                 instead of no panel information output, SUM will output
		 FRONT panel...................N/A
		 REAR panel....................N/A
   Issue ID    : Interlnal improvement
   Validation  : Take an X12 BIOS with no USB port mapped to front/rear panel.
                 Executing GetUsbAccessMode command should output
		 FRONT panel...................N/A
		 REAR panel....................N/A
   Check list  : 1004-IB
13.Fix         : GetUsbAccessMode/SetUsbAccessMode commands might crash if 
                 "temp_acpi_data" directory exists.
   Description : Check "temp_acpi_data" directory existance and delete it in 
                 GetUsbAccessMode/SetUsbAccessMode commands.
   Issue ID    : Interlnal improvement
   Validation  : Executing GetUsbAccessMode or SetUsbAccessMode command should 
                 not cause segmentation fault.
   Check list  : 1004-IB, 1005-IB, 1006-IB
14.Fix         : Correct MfgDateTime data in GetGpuInfo command.
   Description : MfgDateTime information was one day ahead of the actual date.
   Issue ID    : None 
   Validation  : Execute GetGpuInfo command and the MfgDateTime date should 
                 match the data on BMC web.
   Check list  : 1601-XX-XX, 1602-XX-XX
15.Fix         : Revise GetGpuInfo command output format.
   Description : Only get first GPU core data as GPU card information. Will not
                 show all GPU cores information. The command output only shows
                 GPU cards information.
   Issue ID    : Interlnal improvement
   Validation  : Executing GetGpuInfo command should complete normally and show
                 GPU cards information.
   Check list  : 1601-XX-XX
16.Fix         : Get slot and location information by GPU card index, not GPU
                 core index.
   Description : Get slot and location information by GPU card index, not GPU
                 core index.
   Issue ID    : Interlnal improvement
   Validation  : Executing GetGpuInfo command should complete normally.
   Check list  : 1601-XX-XX
17.Enhancement : Allow padding length of RMCP+ payload to be larger than 15.
   Description : Allow padding length of RMCP+ payload to be larger than 15.
   Issue ID    : Interlnal improvement
   Validation  : None
   Check list  : XXXX-XX-XX


V2.5.0 (2020/05/28)
======================
1. Fix         : GetGpuInfo command supports HSM license checking on X12 
                 systems.
   Description : GetGpuInfo command supports HSM license checking on X12 
                 systems.
   Issue ID    : Internal improvement
   Validation  : Execute GetGpuInfo command on the X12 system with 
                 SFT-DCMS-SINGLE product key, the HSM license checking should 
                 pass.
   Check list  : 16XX-XX-XX
2. Enhancement : Apply new special character checking rule to virtual media 
                 feature for MountIsoImage and ChangeBmcCfg commands.
   Description : BMC defined new special character checking rule due to command
      	         injection security issue. so follow the doc "Virtual Media 
                 Specs for special charactersV2" to support new rule.
		  1. Special characters for ID and password: ^.
                  2. Special characters for ShareHost: -.
		  3. Special characters for PathToImage: @^-_./\ (/ and \ can 
                     only be used in a path)
		  4. Special characters like backslashes \ and slashes / should
                     only be used once; repeated use (e.g., //, \\, /\ and \/) 
                     is not allowed.
                  5. Special character ^ is not available for use in older 
                     versions of BMC firmware.
   Issue ID    : None
   Validation  : Please follow the above rules to test virtual media feature.
   Check list  : 1001-XX-XX, 1002-XX-XX, 802-XX-XX
3. Enhancement : Sync following command help messages with user guide.
                 SetUsbAccessMode, UpdateBios, UpdateBmc, ActivateLicense,
                 QueryProductKey, SecureEraseDisk, SecureEraseRaidHdd.
   Description : Command help messages are same as user guide description.
   Issue ID    : None
   Validation  : None
   Check list  : None 
4. fix         : Check step size for HII BIOS configuration.
   Description : Fix step size checking rule of HII BIOS configuration.
   Issue ID    : BIOS report
   Validation  : Execute ChangeBiosCfg command on Purley system with BIOS 
                 specific FW should complete normally.
   Check list  : 501-IB, 501-OB-XX, 502-IB, 502-OB-XX, 503-IB, 503-OB-XX, 
                 504-IB, 504-OB-XX, 505-IB, 505-OB-XX
5. Enhancement : Add warning message for updatebios command without 
                 --preserve_setting option.
   Description : Executing updatebios command without --preserve_setting option
                 will show message "BIOS setting will be reset without option 
                 --preserve_setting".
   Issue ID    : None
   Validation  : Executing updatebios command without --preserve_setting option
                 will show message "BIOS setting will be reset without option
                 --preserve_setting" .
   Check list  : 4XX-XX-XX
6. fix         : Correct typo of BMC type "MicroBlade(B2)" and rename 
                "X12_RoT_Blade" to "B12_RoT".
   Description : correct typo of BMC type "SuperBlade(B11)/MicroBalde(B2)" to 
                 "SuperBlade(B11)/MicroBlade(B2)"and rename "X12_RoT_Blade" to 
                 "B12_RoT".
   Issue ID    : Internal improvement
   Validation  : 1. Executing GetBMCInfo command on B11 SuperBlade system shows
                    "SuperBlade(B11)/MicroBlade(B2)".
                 2. Executing GetBMCInfo command on B12 RoT Blade system shows 
                    "B12_RoT".
   Check list  : 309-OB-XX, 309-IB
7. Enhancement : GetCurrentBiosCfg command does not check string length of HII 
                 BIOS configuration.
   Description : GetCurrentBiosCfg command does not check string length of HII 
                 BIOS configuration.
   Issue ID    : BIOS request
   Validation  : Execute GetCurrentBiosCfg command on Purley system with BIOS 
                 specific FW should complete normally.
   Check list  : 501-IB, 501-OB-XX, 502-IB, 502-OB-XX, 503-IB, 503-OB-XX, 
                 504-IB, 504-OB-XX, 505-IB, 505-OB-XX
8. fix         : Revise typo "LapTop" to "Laptop" in DMI file.
   Description : Revise typo "LapTop" to "Laptop" in DMI file.
   Issue ID    : None
   Validation  : 1. Execute GetDmiInfo with --file option.
                 2. Checking file  [chassis] comment will see "Laptop".
   Check list  : 601-OB, 602-OB, 603-OB, 604-OB, 601-IB, 602-IB, 603-IB, 604-IB
9. fix         : Revise GetGPUInfo command output format.
   Description : 1. info primary temperature add "degreeC".
                 2. info power consumption change "W" to "mW" unit.
   Issue ID    : None
   Validation  : Executing GetGPUInfo command on the Purley system with GPU 
                 card install and GPU support FW, shows primary temperature and 
                 power consumption modification.
   Check list  : 1601-XX, 1601-OB-MM 
10.fix         : Fix VM setting in BMC configuration cannot accept empty 
                 string.
   Description : Fix VM setting in BMC configuration cannot accept empty 
                 string.                 
   Issue ID    : None
   Validation  : Executing ChangeBmcCfg command should complete normally if BMC
                 configuration field <ShareHost> <PathToImage> <UserName> 
                 <UserPassword> are empty.
   Check list  : 801-OB-XX, 802-OB-XX, 801-IB, 802-IB
11.fix         : GetGpuInfo command could not display the correct location 
                 information.
   Description : Update slot location definition for GetGpuInfo and 
                 CheckAssetInfo commands.            
   Issue ID    : None
   Validation  : Executing GetGpuInfo command should display the correct 
                 location information.
   Check list  : 1601-XX-XX
12.Enhancement : Add root privilege checking in non-Windows OS.
   Description : Check root privilege before trying to get SMBIOS from OS.      
   Issue ID    : Internal improvment
   Validation  : None
   Check list  : None
13.fix         : Fix EFI_IFR_ONE_OF_OPTION parsing for BIOS HII file.
   Description : SUM failed to parse multiple layer dependency under 
                 EFI_IFR_ONE_OF_OPTION. SUM changed to parse dependency 
                 recursively under EFI_IFR_ONE_OF_OPTION.            
   Issue ID    : 103539
   Validation  : Executing GetCurrentBiosCfg command on X12SPi should complete 
                 normally.
   Check list  : 50X-XX-XX
14.fix         : Skip retry when HTTP code is 400/404/405.
   Description : 1. Skip retry when HTTP code is 404/405
                 2. Skip retry when HTTP code is 400 and error message is 
                    "property value type error/unknow".         
   Issue ID    : None
   Validation  : None
   Check list  : XXX-OB-MM
15.Enhancement : SecureEraseRaidHdd warning message modifed("F/W" to "FW").
   Description : SecureEraseRaidHdd warning message modifed("F/W" to "FW").         
   Issue ID    : None
   Validation  : 1. Executing SecureEraseRaidHdd command without --tsk_id. 
                 2. Warning message will show "FW" instead.
   Check list  : 1113-OB, 1114-OB, 1115-OB, 1116-OB, 1113-OB-MM, 1115-OB-MM
16.New feature : Add BMC GUID 5201MS to support X12 AST2600 BMC.
   Description : Add BMC GUID 5201MS to support X12 AST2600 BMC.      
   Issue ID    : None
   Validation  : Executing GetBmcInfo command on X12DDW-A6 should complete 
                 normally.
   Check list  : XXXX-XX-XX
17.New Feature : Add --backup option in UpdateBios and UpdateBmc commands to 
                 support backing up current BIOS/BMC firmware.
   Description : Add --backup option in UpdateBios and UpdateBmc commands to 
                 support backing up current firmware during updating process. 
                 This feature is supported on X12 and later platforms except 
                 H12 non-RoT system.  
   Issue ID    : None
   Validation  : 1. Setup X12SPW system with different BIOS images installed as 
                    current BIOS (build date xxxx/xx/xx) and backup BIOS 
                    (build date yyyy/yy/yy).
                 2. Execute OOB UpdateBios command with --backup option.
                 3. Backup BIOS version should be xxxx/xx/xx after updating is
                    completed.
   Check list  : 418-OB-XX, 418-IB-RHI, 704-OB-XX, 704-IB-RHI
18.New Feature : Use Redfish API to configure AD table under BMC configruation 
                 on X12 platform.
   Description : Support Redfish API for new AD table under BMC configruation 
                 on X12 platform.     
   Issue ID    : None
   Validation  : 1. Execute GetBmcCfg command on X12SPI to get BMC 
                    configuration.
                 2. Modify AD table under BMC configuration. 
                 3. Execute ChangeBmcCfg command to update BMC configuration.
		 4. Execute GetBmcCfg command to get BMC configuration and make 
                    sure AD table has changed. 
   Check list  : 801-OB, 802-OB, 801-OB-MM, 802-OB-MM
19.New Feature : Use Redfish API to configure LDAP table under BMC 
                 configruation on X12 platform.
   Description : Support Redfish API for new LDAP table under BMC configruation 
                 on X12 platform.     
   Issue ID    : None
   Validation  : 1. Execute GetBmcCfg command on X12SPI to get BMC 
                    configuration.
                 2. Modify LDAP table for BMC configuration. 
                 3. Execute ChangeBmcCfg command to update BMC configuration.
		 4. Execute GetBmcCfg command to get BMC configuration and make 
                    sure LDAP table has changed. 
   Check list  : 801-OB, 802-OB, 801-OB-MM, 802-OB-MM
20.Enhancement : Add JSON key support information in CheckOOBSupport command.
   Description : 1. Add key information into CheckOOBSupport command 
                 2. Show node product key information is JSON or non-JSON as 
                    the following format.    
   Issue ID    : None
   Validation  : Executing CheckOOBSupport command shows Node Product Key 
                 Format is JSON or non JSON.
                 [KEY]
                 Node Product Key Format..........JSON
   Check list  : 301-OB, 301-IB, 301-OB-MM
21.Enhancement : Support new Redfish API for configuring syslog table on X12 
                 platform.
   Description : Support new Redfish API "Managers/1/Oem/Supermicro/Syslog" for
                 configurating syslog table on X12 platform.              
   Validation  : 1. Executing OOB ChangeBmcCfg command with syslog table.
                 2. The syslog table should be changed successfully on X12 
                    platform.              
   Check list  : 801-OB-XX, 802-OB-XX
22.Enhancement : Support arrayID extension and BBU(Backup Battery Unit) status 
                 exapnsion for GetRaidCfg command.
   Description : 1. The attribute of "ArrayID" in <RAID> will have more than 
                    one array ID values on RAID combined with two RAID levels, 
                    e.g. RAID10/RAID50/RAID60. 
                 2. Support new battery status definition: Voltage Low, 
                    No Install, Unknown.
   Issue ID    : None
   Validation  : 1. Insert minimum 4 physical number HDDs on-board or AOC with 
                    LSI MegaRaid SAS 3108 chip-inserted X11 platform or after.
                 2. Create RAID10 by ChangeRaidCfg command.
                 3. Execute GetRaidCfg command to check whether "ArrayID" has 
                    Ids more than one.
   Check list  : 1107-OB, 1107-IB, 1107-OB-MM
23.Enhancement : Throw exception when system cannot be powered up after OOB 
                 updating BIOS through Redfish.
   Description : Throw exception when system cannot be powered up after OOB 
                 updating BIOS through Redfish.   
   Issue ID    : None
   Validation  : Execute OOB UpdateBios command through Redfish. 
                 If system cannot be powered up after OOB updating BIOS, will 
                 throw exception.    
   Check list  : 4XX-OB-XX
24.Enhancement : Add BMC GUID 6202MS to support HW1 X12 AST2600 BMC.
   Description : Add BMC GUID 6202MS to support HW1 X12 AST2600 BMC. 
   Issue ID    : None
   Validation  : None   
   Check list  : XXXX-XX-XX
25.Fix         : OOB UpdateBios and UpdateBmc commands cannot support IPv6.
   Description : OOB UpdateBios and UpdateBmc commands cannot support IPv6 
                 since default network interface index 0 cannot be used for 
                 CURL. 
   Issue ID    : 110313, 108845
   Validation  : Executing OOB UpdateBios or UpdateBmc command with IPv6 
                 address on the X11SPW with BMC FW "SMT_X11AST2500_171_18" 
                 should complete normally.   
   Check list  : 4XX-OB-XX, 7XX-OB-XX, 4XX-IB-RHI, 7XX-IB-RHI
26.Enhancement : Support GPU baseboard FRU data for GetGpuInfo command.
   Description : Support GPU baseboard FRU data for GetGpuInfo command.  
   Issue ID    : None
   Validation  : Executing GetGpuInfo command with option --show_all on HGX2 
                 system should get GPU baseboard FRU information.
   Check list  : 1602-XX-XX
27.Enhancement : Use Redfish API to configure Alert table under BMC 
                 configruation on X12 platform.
   Description : Support Redfish API for new Alert table under BMC 
                 configruation on X12 platform.
   Issue ID    : None
   Validation  : 1. Execute GetBmcCfg command on X12SPI to get BMC 
                    configuration.
                 2. Modify Alert table for BMC configuration.
                 3. Execute ChangeBmcCfg command to update BMC configuration.
                 4. Execute GetBmcCfg command to get BMC configuration and make
                    sure Alert table has changed.
   Check list  : 801-OB, 802-OB, 801-OB-MM, 802-OB-MM
28.New Feature : Add --forward option for UpdateBios and UpdateBmc commands to 
                 support rollback/forward feature.
   Description : Add --forward option for UpdateBios and UpdateBmc commands to 
                 support rollback/forward feature on X12/H12 and later 
		 platforms except H12 non-RoT system. 
   Issue ID    : None
   Validation  : 1. Ask BIOS engineer to help provide X12SPi test BIOS images:
                    bios_v0: BIOS image with global version 0 in OEM FID.
		    bios_v1: BIOS image with global version 1 in OEM FID.
		    bios_v2: BIOS image with global version 2 in OEM FID.
		 2. Setup X12SPi with BMC FW 00.23.04 and BIOS image bios_v1.
		 3. Exception should be thrown when executing UpdateBios 
		    command with --file bios_v0.
		 4. Exception should be thrown when executing UpdateBios 
		    command with --file bios_v2.
                 5. Executing UpdateBios command with --file bios_v2 and 
		    --forward options should complete normally.
                 Note: After this verification, BIOS and CPLD need to be 
		 flashed with official FW by programmer.
   Check list  : 4XX-OB, 7XX-OB, 4XX-IB-RHI, 7XX-IB-RHI
29.Fix         : OOB ChangeBmcCfg command fails on X12 platform and X11 
                 platform with BMC firmware 1.73.02.
   Description : BMC changed network Redfish API behavior. Adding workaround to
                 make OOB ChangeBmcCfg command work normally.  
   Issue ID    : None
   Validation  : 1. Execute OOB GetBmcCfg command to get BMC configuration of 
                    the managed system.
                 2. Modify IPv4 table content for BMC configuration.
                 3. Execute OOB ChangeBmcCfg command to update BMC 
                    configuration.
                 4. Execute OOB GetBmcCfg command to get BMC configuration and 
                    make sure IPv4 table has changed.
   Check list  : 801-OB, 802-OB, 801-OB-MM, 802-OB-MM
30.Enhancement : Apply StdDefaults first for X12/H12 and later platforms.
   Description : Before X12/H12 platform, SUM applies HII op code defaults 
                 first. For X12/H12 and later platforms, StdDefaults (NVRAM) 
                 will be applied first. The default value changed by AMIBCP 
                 should reflect to BIOS configuration from GetDefaultBiosCfg 
                 command. Singed BIOS Needs to re-sign.
   Issue ID    : Internal improvement
   Validation  : 1. Use AMPBCP to change default for a setting on X12/H12 
                    platform.
                 2. execute GetDefaultBiosCfg command to get default BIOS 
                    configuration.
                 3. the default value for the setting changed in AMIBCP should
                    reflect to the default BIOS configuration.
   Check list  : 5XX-XX-XX
31.Enhancement : Revise GetLockdownMode command message output. 
   Description : Executing GetLockdownMode command output message will change 
                 "system Lockdown" to "    System Lockdown". 
   Issue ID    : Internal improvement
   Validation  : Executing GetLockdownMode command output message will change
                 "system Lockdown" to "    System Lockdown".    
   Check list  : 1404-OB, 1401-IB, 1404-OB-MM, 314-IB, 314-OB, 314-OB-MM
32.Enhancement : Revise Getpowerstatus command message output. 
   Description : Executing Getpowerstatus command output message will change 
                 "Managed system power is currently on/off" to 
                 "Power status..............on/off" 
   Issue ID    : Internal improvement
   Validation  : Executing Getpowerstatus command output message will change 
                 "Managed system power is currently on/off" to
                 "Power status..............on/off"   
   Check list  : 1404-OB, 1401-IB, 1404-OB-MM, 314-IB, 314-OB, 314-OB-MM
33.Enhancement : Change exit code of Redfish host interface checking exception 
                 from error 38 (FunctionIsNotSupported) to warning 254 
                 (ManualStepsToBeContinued).
   Description : Change exit code of Redfish host interface checking exception 
                 from error 38 (FunctionIsNotSupported) to warning 254 
                 (ManualStepsToBeContinued).   
   Issue ID    : Internal improvement
   Validation  : 1. Prepare a X12 system with OS redhat8.0.
                 2. Reboot the managed system.
		 3. Execute UpdateBios command with option -I and argument 
                    Redfish_HI. SUM will throw exception with manual step 
                    message for setup IPv4 address on Redfish host interface.                     
   Check list  : 2XX-IB-RHI, 4XX-IB-RHI, 7XX-IB-RHI
34.fix         : OOB UpdateBios and UpdateBmc commands support hostname for the
                 BMC firmware with CSRF prevention.
   Description : OOB UpdateBios and UpdateBmc commands support hostname for the
                 BMC firmware with CSRF prevention.  
   Issue ID    : Customer report
   Validation  : Executing OOB UpdateBios or UpdateBmc command with IPv6 
                 address on the X11DPi-N with BMC FW "SMT_X11AST2500_171_18" 
                 should complete normally.   
   Check list  : 4XX-OB-XX, 7XX-OB-XX
35.Enhancement : Improve error message is empty of ActivateProductKey command.
   Description : Execute ActivateProductKey command with invalid Json format 
                 key. If Redfish responses content "MessageArgs" and "Message" 
                 are empty, SUM will throw exception with all Redfish 
                 responses.
   Issue ID    : Internal improvement
   Validation  : Execute ActivateProductKey command with invalid Json format 
                 key on X12SPi with BMC FW 23.02. SUM will throw exception with
                 error code 407.16, and error message includes all Redfish 
                 responses.    
   Check list  : 201-OB-XX, 201-IB, 202-OB-XX, 202-IB
36.Enhancement : Improve help message of ActivateProductKey command.
   Description : Improve help message of ActivateProductKey command.  
   Issue ID    : None
   Validation  : Executing ActivateProductKey command with "-h" option will 
                 show the following message in notice section "A JSON-style 
                 format node product key must be put into single quotation 
                 marks."   
   Check list  : 103-IB
37.Fix         : GetPsuInfo command failed on X12 non-RoT system.
   Description : Bus ID of X12 non-RoT system should be 0x07 instead of 0x00.
   Issue ID    : None
   Validation  : Execute GetPsuInfo command on X12 non-RoT system should 
                 complete normally.
   Check list  : 1401-XX-XX
38.Enhancement : Add port number usage in the help message of MountIsoImage 
                 command.
   Description : Add port number usage in the help message of MountIsoImage 
                 command.
   Issue ID    : Internal improvement
   Validation  : 1. Execute MountIsoImage command with option -h.
                 2. SUM shows the port number usage in notice section.
   Check list  : 1001-XX-XX, 1002-XX-XX
39.Enhancement : SUM shows message to inform user when KeyProductDeletion
                 command is executed on system without product key.
   Description : On system supports HSM key, SUM shows message instead of 
                 throwing exception when KeyProductDeletion command is executed
                 on system without product key.
   Issue ID    : None
   Validation  : 1. On X12SPW, clear all product keys activated on the managed 
                    system.
                 2. Message "Node product key (SFT-OOB-LIC) does not exist on 
                    <IP> should be displayed when executing KeyProductDeletion 
                    command with --key_name SFT-OOB-LIC.
   Check list  : 204-XX-XX
40.Fix         : Executing ChangeBmcCfg command with syslog table in multiple 
                 node mode would fail. 
   Description : Executing ChangeBmcCfg command with syslog table in multiple 
                 node mode would fail, if the BMC FW are different on each 
                 managed system.
                 Because different BMC FW might support different syslog 
                 porperty name.				 
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None


V2.5.0 (2020/04/23)
======================
1. Fix         : Fix BIOS OEM FID parsing boundary issue in GetBiosInfo command 
                 with --showall option.
   Description : SUM attempted to parse beyond the end of OEM FID file. It 
                 caused undefined behavior and the symptom was infinite text 
                 output.
   Issue ID    : 108881, 108715
   Validation  : Executing GetBiosInfo command with --showall option should not
                 output infinite text.
   Check list  : 306-XX-XX
2. Enhancement : Support parsing twelve OEM FID firmware types in GetBiosInfo 
                 command with --showall option.
   Description : SUM supported parsing five OEM FID firmware types. Now, sync 
                 with "OEM FID_20200310.docx" to support twelve types.
   Issue ID    : None
   Validation  : Execute GetBiosInfo command with --showall option. All the OEM
                 FID firmware information in the OEM FID file should be printed.
   Check list  : 306-XX-XX


V2.5.0 (2020/04/17)
======================
1. Enhancement : Display invalid and corrupted license key in QueryProductKey
                 command output.
   Description : When license key on the managed system is invalid or 
                 corrupted, it will still be displayed in QueryProductKey 
                 command output.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 203-XX-XX
2. Fix         : Multi-OOB SetBmcPassword command with --pw_file option failed
                 to set BMC password.
   Description : SetBmcPassword command with --pw_file option failed to set
                 BMC password in multi-OOB usage because of incorrect option 
                 checking.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 804-OB-MM
3. Enhancement : Implement function to covert structure data to JSON format.
   Description : Implement function to covert structure data to JSON format.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
4 .Fix         : Fix unexpected memory address memory read/write operation.
   Description : The used data type for memory address offset variable in 
                 CMem::readDataFromMem() and CMem::writeDataFromMem() was too 
		 small. It might cause memory address offset overflow and 
		 unexpected memory address read/written.
   Issue ID    : None
   Validation  : Executing GetUsbAccessMode command should output the correct 
                 front/rear panel USB ports access mode.
   Check list  : 1004-IB, 1005-IB, 1006-IB, 504-IB, 505-IB, 508-IB, 509-IB, 
                 6XX-IB, XXXX-IB-RHI
5. Enhancement : Enhance BIOS boot option duplication checking.
   Description : SUM implements substring matching workaround for boot option 
                 string for portability. When one boot option string from 
		 applies substring matching workaround and one applies exact 
		 matching with the same boot option string in the managed 
		 system, SUM did not report duplication and incorrectly allowed
		 to apply the duplicated boot options in different boot 
		 sequence.
   Issue ID    : Customer report 
   Validation  : Configure BIOS configuration "Boot mode select" as "Legacy" 
                 and assume the network device boot option string for legacy 
		 mode in the managed system is "Network". Configure 
		 "Boot Option #1" as "Network" and "Boot Option #2" as 
		 "Network:2". When executing ChangeBiosCfg command, exception 
		 should be thrown to indicate boot option "Network" is 
		 duplicated.
   Check list  : 504-XX-XX
6. New Feature : SetBmcPassword command supports password change through system
                 list file.
   Description : Support BMC password change through system list file.
   Issue ID    : None
   Validation  : Create a system list file and fill system IP, username,
                 password and new BMC password into file. Executing multi-node
                 SetBmcPassword command with system list file and without option
		 --new_password and --pw_file should complete normally. The BMC
                 password of the managed system listed in system list will be
                 changed to new BMC password.
   Check list  : 804-OB-MM
7. Enhancement : MountFloppyImage and UnmountFloppyImage commands do not support
                 on X9 platforms.
   Description : MountFloppyImage and UnmountFloppyImage commands do not support
                 on X9 platforms.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 1008-OB-XX, 1008-IB, 1009-OB-XX, 1009-IB
8. New Feature : Support UpdateBios command without system powered off on 
                 non-RoT systems of X12/H12 and later platforms.
   Description : On non-RoT systems of X12/H12 and later platforms, system does
                 not to be powered off when updating BIOS.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 4XX-OB-XX, 4XX-IB-RHI
9. Fix         : Warning message is missing in UpdateBmc command on X12/H12 and 
                 later platforms except H12 non-RoT system.
   Description : Warning message is missing in UpdateBmc command on X12/H12 and
                 later platforms except H12 non-RoT system.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 7XX-OB-XX, 7XX-IB-RHI
10.Enhancement : Confirm system can be powered on after executing OOB UpdateBios
                 command on RoT systems of X12/H12 and later platforms.
   Description : Confirm system can be powered on after executing OOB UpdateBios
                 command on RoT systems of X12/H12 and later platforms.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 4XX-OB-XX 
11.Fix         : HTTP code 202(Accepted) should be accepted as legal BMC 
                 Redfish response.
   Description : HTTP code 202(Accepted) should be accepted as legal BMC
                 Redfish response.
   Issue ID    : 108476
   Validation  : Executing OOB UpdateBmc command on X12SAE should complete 
                 normally.
   Check list  : 7XX-OB-XX, 7XX-IB-RHI
12.Fix         : SMBIOS type 42 parser for Redfish service host name is 
                 incorrect.
   Description : Because "Redfish Service Hostname Length" in SMBIOS type 42 
                 contains the end character '\0' unexpected, it should not be
                 used directly when parsing "Redfish Service Hostname".
   Issue ID    : None
   Validation  : None
   Check list  : 7XX-OB-XX, 7XX-IB-RHI
13.Enhancement : ActivateProductKey command without --key_file option should 
                 throw exception when key activation fails.
   Description : ActivateProductKey command without --key_file option should
                 throw exception when key activation fails.
   Issue ID    : Internal improvement
   Validation  : Exception should be thrown when executing ActivateProductKey 
                 command with invalid key using --key option.
   Check list  : 201-XX-XX, 202-XX-XX
14.Enhancement : Modify SecureEraseDisk command output message.
   Description : Add applicable actions in precheck result.
   Issue ID    : None
   Validation  : Execute SecureEraseDisk command with --precheck option,
                 the available actions should be displayed in precheck result. 
   Check list  : 1117-IB, 1118-IB, 1117-OB-XX, 1118-OB-XX
15.Enhancement : Enhance SecureEraseDisk command to support Security Module 
                 Version 0.01
   Description : Separate SecurityErasePWD and SecurityErasePSID from 
                 SecurityErase action and modify the input file format
                 correspondingly.
   Issue ID    : None
   Validation  : V1. Prepare a test SSD and create a serial number mapping file
                     which contains the test SSD serial number and password.
                     (SSD takes less time to secure erase)
                 V2. Check HDD available actions by executing SecureEraseDisk
                     command with --precheck option.
                 V3. Execute SecureEraseDisk command with --action SetPassword
                     and --reboot option to set hard disk password.
                 V4. Execute SecureEraseDisk command with --action 
                     SecurityErasePWD, --file Password.txt and --reboot options
                     to secure erase hard disk.
                 V5. The secure erase status will show on the monitor of the
                     managed system.
                 V6. After BIOS POST completed, check BIOS configuration and find
                     the status code by the key word "Last Status Code". The
                     status code zero represents the previous task is success.
   Check list  : 1117-IB, 1118-IB, 1117-OB-XX, 1118-OB-XX
16.Fix         : Remove --show_all option support in GetGPUInfo command. 
   Description : Information from BMC when executing GetGPUInfo command with 
                 --show_all option is incorrect. Remove --show_all option 
                 support for now.
   Issue ID    : None
   Validation  : Exception should be thrown when executing GetGpuInfo command 
                 with --show_all option.
   Check list  : 201-XX-XX, 202-XX-XX
17.Fix         : Do not support GPU driver information on HGX2 system.
   Description : Do not support GPU driver information on HGX2 system.
   Issue ID    : None
   Validation  : Executing GetGpuInfo command on HGX2, the GPU driver 
                 information should not be displayed.
   Check list  : 201-XX-XX, 202-XX-XX
18.Fix         : Add output message for SetPowerAction command with --action 
                 reboot.
   Description : Add output message for SetPowerAction command with --action 
                 reboot.
   Issue ID    : None
   Validation  : Message "Going to reboot the managed system." should be 
                 displayed when executing SetPowerAction command with --action
                 reboot.
   Check list  : 201-XX-XX, 202-XX-XX
19.Enhancement : Enhance error message for SetLockdownMode command on unsupport
                 systems.
   Description : Exit code 38 (Function is not supported) should be displayed 
                 with corresponding error message when executing SetLockdownMode
                 command with "--lock no" on unsupport systems.
   Issue ID    : None
   Validation  : Exception with error message "This platform does not support 
                 system lock down mode" should be thrown when executing 
                 SetLockdownMode command with "--lock no" on X11DPU.
   Check list  : 806-OB-XX
20.Fix         : OOB UpdateBios and UpdateBmc commands failed on H11 platforms
                 with Rome CPU.
   Description : BIOS and BMC FWs need to be updated through CGI instead of 
                 Redfish APIs on H11 platforms with Rome CPU even though the
                 platform ID in BIOS feature flags is Whitley(Rome).
   Issue ID    : None
   Validation  : Executing OOB UpdateBios command on H11SSW-IN with Rome CPU 
                 should complete normally.
   Check list  : 7XX-OB-XX
21.Fix         : EraseOAKey command and --erase_OA_key option of in-band
                 UpdateBios command are supported only on X12/H12 and later
                 platforms.
   Description : Only BIOS on X12/H12 and later platforms supports erase OA key
                 feature.
   Issue ID    : None
   Validation  : Exception with exit code 38 should be thrown when executing
                 in-band UpdateBios command with --erase_OA_key option on 
                 X11SPi.
   Check list  : 416-IB, 510-IB


V2.5.0 (2020/03/20)
======================
1. Fix         : MountIsoImage command might fail with error message "Fail to 
                 login image provider host".                                   
   Description : When sending host name, iso image path, id and password 
                 information to BMC through ipmi raw command, SUM needs to add 
                 NULL character (0x00) at the end. Moreover, maximum data size 
                 of this raw command is 124 bytes.
   Issue ID    : None
   Validation  : Executing MountIsoImage command on B1SD2-TF with BMC FW 
                 "SMT_MBIPMI_363_REDFISH.bin" should complete normally.
   Check list  : 1001-IB, 1002-IB, 1001-OB, 1002-OB, 1001-OB-MM, 1002-OB-MM
2. Fix         : GetBmcCfg and ChangeBmcCfg commands do not work correctly on 
                 system activated with HSM key.
   Description : HSM license checking is incorrect for BMC OEM configruation
                 tables. 
   Issue ID    : None
   Validation  : Executing ChangeBmcCfg command on X12SPW should complete
                 normally. 
   Check list  : 801-IB, 802-IB, 801-OB, 802-OB, 801-OB-MM, 802-OB-MM
3. Enhancement : Support third digit BMC version display of local BMC image for 
                 SuperBlade and MicroBlade.
   Description : Support third digit BMC version display of local BMC image for
                 SuperBlade and MicroBlade.
   Issue ID    : 105682
   Validation  : Execute GetBmcInfo command with BMC firmware
                 "SMT_MBAST2500_57200_V.bin", BMC version under "Local BMC image
                 file" section should show 05.72.00.
   Check list  : 308-IB, 308-OB, 308-OB-MM
4. Enhancement : Settings under AD table in BMC configuation should only be 
                 applied when AD is enabled.
   Description : Settings under AD table in BMC configuation should only be
                 applied when AD is enabled.
   Issue ID    : None
   Validation  : V1. Execute GetBmcCfg command to get BMC configuration of the 
                     managed system.
                 V2. Under AD table, set <ADEnable> to "Disable" and modify 
                     <Timeout> setting. 
                 V3. <Timeout> setting should not be applied after executing
                     ChangeBmcCfg command.
   Check list  : 802-IB, 802-OB, 802-OB-MM
5. Enhancement : PMDLL allows in-band interface switch between WMI and PHYMEM
                 after it is set to WMI.
   Description : PMDLL allows in-band interface switch between WMI and PHYMEM
                 after it is set to WMI. 
   Issue ID    : None
   Validation  : In-band updating BMC command should complete within 15 
                 minutes.
   Check list  : 7XX-IB
6. Fix         : UpdateCmm command failed with error message "cannot get 
                 progress".
   Description : SUM should use "cgi/upgrade_process.cgi" to poll update 
                 progress until it reaches 100% instead of just once. 
   Issue ID    : None
   Validation  : Executing UpdateCmm command should complete normally.
   Check list  : 120X-OB-XX
7. New Feature : Support H12 RoT MBs.
   Description : Register BMC GUID <0x32, 0x32, 0x30, 0x31, 0x4D, 0x53> to
                 support H12 RoT MBs.
   Issue ID    : 105718
   Validation  : Executing GetBmcInfo on H12SSW should complete normally.
   Check list  : 4XX-XX, 7XX-XX
8. New Feature : Support X12 non-RoT MBs.
   Description : Register BMC GUID <0x33, 0x32, 0x30, 0x31, 0x4D, 0x53> to
                 support X12 non-RoT MBs.
   Issue ID    : None
   Validation  : None
   Check list  : 4XX-XX, 7XX-XX
9. Fix         : BMC existance check should be skipped when INBAND_KEY is 
                 enabled. 
   Description : BMC existance check should be skipped when INBAND_KEY is
                 enabled. 
   Issue ID    : None
   Validation  : None
   Check list  : None
10.Enhancement : Improve display messages of SecureEraseRaidHdd,  
                 MountFloppyImage and UnmountFloppyImage commands.
   Description : Improve display messages of SecureEraseRaidHdd, 
                 MountFloppyImage and UnmountFloppyImage commands.
   Issue ID    : None
   Validation  : None
   Check list  : 1007-OB-XX, 1008-OB-XX, 1113-OB-XX, 1114-OB-XX, 1115-OB-XX, 
                 1116-OB-XX, 1007-IB, 1008-IB
11.Fix         : Particular non SFT-DCMS-Single license required BIOS setting
                 was incorrectly recognized as SFT-DCMS-Single license required.
   Description : When a BIOS setting contains no default value, SUM incorrectly
                 recognized as SFT-DCMS-Single license required.
   Issue ID    : 107653, 107572, 107510, 107382, 107229
   Validation  : Executing GetDefaultBiosCfg command on X11DAi,
                 <LicenseRequirement> should be gone under "Driver Option #%d"
   Check list  : 503-XX-XX
12.Fix         : Particular boot options cannot be preserved after UpdateBios
                 command with with --preserve_setting on X11SCA/X11SCZ MBs.
                 Particular boot options cannot be swapped after ChangeBiosCfg
                 command on X11SCA/X11SCZ MBs.
   Description : "Boot Option" is a general key word for BIOS boot option
                 configuration feature. However, "Boot Order" is used in
                 X11SCA/X11SCZ. This workaround covers "Boot Order", too.
   Issue ID    : 104667, 104482
   Validation  : Pass SMSTC TC220, TC308 and TC424 on X11SCA/X11SCZ.
   Check list  : 407-XX-XX
13.Enhancement : "LicenseName" is removed in JSON content of ClearLicense 
                 Redfish API.
   Description : "LicenseName" is removed in JSON content of Redfish API 
                 "Managers/1/LicenseManager/ClearLicense".
   Issue ID    : None
   Validation  : Executing KeyProductDeletion command on system with BMC FW 
                 "SMT_X12AST2500_ROT_002120.bin" should complete normally. 
   Check list  : 204-OB-XX, 204-IB-RHI
14.Enhancement : MountIsoImage command supports SAMBA URL over IPv6.                 
   Description : MountIsoImage command supports SAMBA URL over IPv6.
   Issue ID    : None
   Validation  : Executing MountIsoImage command with SAMBA URL and IPv6 address
                 should complete normally.
   Check list  : 1001-OB-XX, 1002-OB-XX
15.Enhancement : Avoid invalid vector access when executing GetBmcCfg command.       
   Description : Check NameServer vector is not empty in Redfish response before 
                 accessing to avoid exception.
   Issue ID    : 107287
   Validation  : On X11DPU with BMC FW "SMT_X11AST2500_173_00", executing 
                 GetBmcCfg command after sending raw command 0x30 0x48 0x01 
                 should complete normally.
   Check list  : 801-OB-XX
16.Enhancement : Throw exception with instruction when Redfish host interface IP
                 is not assigned in Linux/FreeBSD. 
   Description : Obtain Redfish host interface MAC address in SMBIOS type 42  
                 then use it to check whether Redfish host interface IP is  
                 assigned in Linux/FreeBSD. Guide user to use command  
                 "dhclient <interface name>" when IP is not available.
   Issue ID    : None
   Validation  : Executing in-band UpdateBios command with "-I Redfish_HI"
                 on X12 system with Linux OS right after system rebooting, 
                 exception with error message "The Redfish Host Interface IP is
                 not available. Please assign an IP to the Redfish Host 
                 Interface (<interface name>) by the following command: dhclient
                 <interface name>" should be thrown.
   Check list  : 20X-IB-RHI, 4XX-IB-RHI, 70X-IB-RHI
17.Fix         : Correct some typo in SEL sensor type 0xDC (Components Changed)    
                 description for GetEventLog command.  
   Description : Correct "eSATA" to "sSATA", "Others components changed" to 
                 "Other components changed" in sensor type 0xDC description.
   Issue ID    : None
   Validation  : 1. Use ipmitool raw command <0x04 0x02 0x04 0xDC 0xFF 0x6F
                    0x50 0x10 0x00> to generate sensor type 0xDC event log.
                 2. Executing GetEventLog command and check the output message.
   Check list  : 901-OB-XX, 901-IB
18.Enhancement : Update SEL sensor type 0xCC (Memory Error) for GetEventLog       
                 command.
   Description : Update SEL sensor type 0xCC (Memory Error) according to spec
                 "X11_IPMIManagement_Standarization_SPEC_SEL_20190925.xlsx".
   Issue ID    : None
   Validation  : 1. Use ipmitool raw command <0x04 0x02 0x04 0xCC 0xFF 0x6F             
                    0x0D 0xFF 0x11> to generate sensor type 0xCC event log on
                    X11SPi.
                 2. Event description "Partial Mirror mode is disabled. 
                    (P1-DIMME2)" should be displayed when executing GetEventLog 
                    command. 
   Check list  : 901-OB-XX, 901-IB
19.New Feature : Modify JSON serdes internal tool to support UEFI.
   Description : Modify JSON serdes internal tool to support UEFI.
   Issue ID    : None
   Validation  : None
   Check list  : None
20.Fix         : Check HSM support is incorrect in multi-OOB usage with more 
                 than one system.
   Description : Previously, check HSM support will only be done once and store 
                 in static variable. In multi-OOB usage, all systems are using
                 the checking result of one system. Change to always checking 
                 when the function is called.
   Issue ID    : None
   Validation  : Create a mlist with one HSM system and one non-HSM key system.
                 Executing multi-node GetBmcCfg command should complete 
                 normally.
   Check list  : XXXX-OB-MM
21.New Feature : Use pushUri Redfish API to update BMC and BIOS for X12/H12 and
                 later platforms except H12 non-RoT.
   Description : For X12/H12 and later platforms except H12 non-RoT, use pushUri
                 Redfish API to update BIOS and BMC. 
   Issue ID    : 107762, 107084, 103535
   Validation  : Executing UpdateBios command on X12DPG with BMC FW 
                 "X12_ROT_FI_932_8_20200313.bin" should complete normally.
   Check list  : 4XX-OB-XX, 7XX-OB-XX, 4XX-IB-RHI, 7XX-IB-RHI
22.New Feature : System can be power on automatically after executing in-band
                 UpdateBios command on X12/H12 RoT system.
   Description : For X12/H12 RoT system, system needs to be powered off when 
                 updating BIOS. SMI 0xE6, subcommand 0x70 is used to set chipset
                 before shutting down the system to ensure that system can be 
                 powered on after BIOS update.
   Issue ID    : None
   Validation  : Executing UpdateBios command on X12DPG with BMC FW
                 "X12_ROT_FI_932_8_20200313.bin" snd BIOS image 
                 "X12DPG_T202003171031.bin", system should be powered down 
                 when updating BIOS and powered up automatically when the 
                 update is completed.
   Check list  : 4XX-IB-RHI
24.Fix         : UpdateBios command supports --preserve_setting option for 
                 X12/H12 and later platform except H12 non-RoT.
   Description : UpdateBios command supports --preserve_setting option for
                 X12/H12 and later platform except H12 non-RoT.
   Issue ID    : None
   Validation  : BIOS setting should be preserved after executing UpdateBios
                 command with --preserve_setting option.
   Check list  : 4XX-OB-XX, 4XX-IB-RHI
25.New Feature : Use feature flag to check whether UpdateBios/UpdateBmc through
                 Redfish is supported by BMC.
   Description : Remove GUID exception list workaround. Use only feature flag to
                 check whether UpdateBios/UpdateBmc through Redfish is suppoted 
                 by BMC. 
   Issue ID    : None
   Validation  : Executing UpdateBios command on X12DPG should complete 
                 normally.
   Check list  : 4XX-OB-XX, 4XX-IB-RHI
26.New Feature : In-band UpdateBios through SMI is forbidden on RoT system 
                 after X11.
   Description : Remove GUID exception list workaround. Use feature flag to 
                 determine RoT system after X11 and prevent in-band 
                 UpdateBios through SMI.
   Issue ID    : None
   Validation  : Executing UpdateBios command on X12DPG should complete
                 normally.
   Check list  : 4XX-OB-XX, 4XX-IB-RHI
27.New Feature : Use BIOS feature flag "ClientME applies JPME2Less" is used to
                 identify client ME system.
   Description : Use BIOS feature flag "ClientME applies JPME2Less" is used to
                 identify client ME system.
   Issue ID    : None
   Validation  : None
   Check list  : 4xx-OB-XX
28.New Feature : OOB UpdateBios through Redfish does not required license.
   Description : Skip OOB UpdateBios license checking for X12/H12 and later
                 platforms except H12 non-RoT system.
   Issue ID    : None
   Validation  : Executing OOB UpdateBios command on X12 RoT system without 
                 license activated should complete normally.
   Check list  : 4XX-OB-XX
29.Enhancement : Replace with WHQL certificated phymem driver.
   Description : Replace with WHQL certificated phymem driver.
   Issue ID    : None
   Validation  : Executing in-band UpdateBios command on system with secure
                 boot enabled in Windows should complete normally.
   Check list  : 3XX-IB, 4XX-IB, 5XX-IB
30.Fix         : Add GPU system type checking for the managed system without GPU
                 installed.
   Description : Executing GetGpuInfo command would fail to get GPU capabilities
                 from the managed system without GPU installed. Add GPU system
		 type checking before getting GPU information.
   Issue ID    : Internal improvement
   Validation  : Setup a system without GPU installed. Execute GetGpuInfo
                 command to get GPU information from the managed system. SUM
		 will throw exception with error message "GetGpuInfo command
                 is not supported on this platform.".
   Check list  : XXXX-OB-MM


V2.5.0 (2020/02/07)
======================
1. New feature : Support X11 ROT systems and X12 ROT systems.
   Description : Add new BMC GUIDs below to support ROT supported X11 BMC, X12 blade
                 and X12 TW BMC/US BMC.
                 enBmcTypeX11RotBlade,
                 enBmcTypeX11Rot_2,
                 enBmcTypeX12RotBlade_AST2500,
                 enBmcTypeX12RotATEN_AST2500_2,
                 enBmcTypeX12RotATEN_AST2500,
   Issue ID    : None
   Validation  : None
   Check list  : None
2. New Feature : Add GetGpuInfo command to support NVIDIA GPU information.
   Description : Add GetGpuInfo command to support NVIDIA GPU information.
   Issue ID    : None
   Validation  : None
   Check list  : 1601-XX-XX, 1602-XX-XX
3. New Feature : Add LoadDefaultBmcCfg/LoadDefaultCmmCfg command to load the
                 BMC/CMM to factory default.
   Description : Add LoadDefaultBmcCfg/LoadDefaultCmmCfg command to load the
                 BMC/CMM to factory default.
   Issue ID    : None
   Validation  : None
   Check list  : 807-XX-XX, 808-XX-XX, 809-XX-XX, 1305-OB-XX, 1306-OB-XX,
                 1307-OB-XX
4. New Feature : Support JBOD mode configuration for OOB GetRaidCfg and
                 ChangeRaidCfg commands.
   Description : Add JbodMode field in RAID configuration file to support JBOD
                 mode configuration.
   Issue ID    : None
   Validation  : 1. Execute OOB GetRaidCfg command on X10DRC-LN4+ with BMC FW
                    "REDFISH_X10_369", and JbodMode should be shown in RAID
                    configuration.
                 2. Modify JbodMode with value Disable/Enable, and execute OOB
                    ChangeRaidCfg command.
                 3. Execute OOB GetRaidCfg command to get RAID configuration, and
                    check if JbodMode is changed in RAID configuration.
   Check list  : 1107-XX-XX, 1108-XX-XX
5. New Feature : Some BIOS configuration require SFT-DCMS-SINGLE license to be
                 changed.
   Description : BIOS configuration with tag <LicenseRequirement> in HII BIOS
                 configuration file cannot be changed when the managed system
                 without SFT-DCMS-SINGLE license.
   Issue ID    : None
   Validation  : 1. Execute GetCurrentBiosCfg command and modify the BIOS
                    setting with <LicenseRequirement> tag.
                 2. Executing ChangeBiosCfg on the managed system without
                    SFT-DCMS-SINGLE license, configuration with tag
                    <LicenseRequirement> should fail to be changed and show
                    warning message "Setting requires SFT-DCMS-SINGLE license to
                    be changed to BIOS" and the original option should be kept.
                 3. Executing ChangeBiosCfg on the managed system with
                    SFT-DCMS-SINGLE license should complete normally.
   Check list  : 501-XX-XX, 502-XX-XX, 504-XX-XX, 505-XX-XX
6. New Feature : Add SecureEraseDisk command to support secure erase disk that
                 can be detected by BIOS on the managed system.
   Description : Add SecureEraseDisk command to support secure erase disk that
                 can be detected by BIOS on the managed system.
   Issue ID    : None
   Validation  : 1. Create a serial number mapping file which contains HDD
                    serial number, PSID ,and HDD password.
                 2. Check HDD password status by executing SecureEraseDisk
                    command with --precheck option.
                 3. Execute SecureEraseDisk command with --action SetPassword
                    and --reboot option to set hard disk password.
                 4. Execute SecureEraseDisk command with --action SecurityErase
                    and --reboot option to secure erase hard disk.
                 5. The secure erase status will show on the monitor of the
                    managed system.
                 6. After BIOS POST completed, check BIOS configuration and find
                    the status code by the key word "Last Status Code". The
                    status code zero represents the previous task is success.
   Check list  : 1117-IB, 1118-IB, 1117-OB-XX, 1118-OB-XX
7. New Feature : Add system lockdown prechecking before running SUM command.
   Description : Check if the managed system is in lockdown mode and the
                 executing SUM command can be executed under lockdown mode.
   Issue ID    : None
   Validation  : If the command cannot be executed when system is locked down.
                 SUM will throw the exception with the following message.
                 "Cannot execute command "SUM cmd" when system is locked down.
                 Please use the OOB SetLockdownMode command to unlock the
                 managed system."
   Check list  : XXXX-XX-XX
8. New Feature : Support in-band usage for MountIsoImage and UnmountIsoImage
                 commands.
   Description : Support in-band usage for MountIsoImage and UnmountIsoImage
                 commands through KCS interface.
   Issue ID    : None
   Validation  : Executing In-Band MountIsoImg and UnmountIsoImage command
                 should complete normally.
   Check list  : 1001-IB, 1002-IB, 1003-IB
9. New Feature : Add RawCommand command to execute IPMI raw command.
   Description : Add RawCommand command to send IPMI raw command to BMC by SUM.
   Issue ID    : None
   Validation  : None
   Check list  : 1009-XX-XX
10.New Feature : Add GetPowerStatus and SetPowerAction commands to manage power
                 status of the managed system.
   Description : Add GetPowerStatus and SetPowerAction commands to obtain power
                 information and control power status of the managed system.
   Issue ID    : None
   Validation  : None
   Check list  : 1405-XX-XX, 1406-XX-XX
11.New Feature : Add SecureEraseRaidHdd command to support secure erase HDDs for
                 LSI MegaRaid SAS 3108 controller.
   Description : Add SecureEraseRaidHdd command to support secure erase HDDs for
                 LSI MegaRaid SAS 3108 controller.
   Issue ID    : None
   Validation  : 1. Setup a Purley system with on-baord RAID controller or RAID
                    add-on card installed.
                 2. Setup at least one HDD behind the LSI MegaRaid SAS 3108
                    controller.
                 3. Get disk information by GetRaidCfg command.
                 4. Execute OOB SecureEraseRaidHdd command with options
                    "--dev_id", "--enc_id" and "--dsk_id" and arguments.
                    Option "--sync" can be used together to poll the secure
                    erase status synchronously.
                 5 .Execute OOB SecureEraseRaidHdd command with option
                    "--tsk_id" to poll secure erase status. Option "--sync" can
                    be used together to poll the secure erase status
                    synchronously.
   Check list  : 1113-OB-XX, 1114-OB-XX, 1115-OB-XX ,1116-OB-XX
12.New Feature : Add MountFloppyImage/UnMountFloppyImage commands to
                 mount/unmount floppy image on BMC with 1.44 MB file size.
   Description : Add MountFloppyImage/UnMountFloppyImage commands to
                 mount/unmount floppy image on BMC with 1.44 MB file size.
   Issue ID    : None
   Validation  : V1. Execute MountFloppyImage command with 1.44 MB floppy image
                     file, then check the IPMI web. The floppy image should be
                     mounted up.
                 V2. Execute UnMountFloppyImage command then check the IPMI web.
                     The floppy image should be unmounted.
   Check list  : 1007-XX-XX, 1008-XX-XX
13.New Feature : Add GetLockdownMode and SetLockdownMode commands to configure
                 system lockdown mode.
   Description : Add GetLockdownMode and OOB SetLockdownMode commands to configure
                 system lockdown mode. Software FRU initialization checking is
                 skipped in QueryProductKey command when system is locked down.
   Issue ID    : None
   Validation  : On X11SPi with BETA_X11AST2500_SYSTEM_LOCKDOWN_20190830.bin
                 BMC FW, firstly, execute OOB SetLockdownMode command to enable
                 system lockdown. Then, execute GetLockMode command and confirm
                 system lockdown status is "Yes".
   Check list  : 314-XX-XX, 806-OB-XX
14.New Feature : OOB UpdateBios and UpdateBmc support X12 platform.
   Description : Support OOB BIOS update and BMC update through Redfish
                 interface for BMC GUID "F101MS".
   Issue ID    :
   Validation  : On X12SPW with BMC FW "Beta_X12_AST2500_RoT_90002_V.bin",
                 execute OOB UpdateBmc should complete normally.
   Check list  : 4XX-XX-XX, 7XX-XX-XX
15.New Feature : Add Redfish host interface support for UpdateBios, UpdateBmc,
                 ActivateProductKey, QueryProductKey and KeyProductDeletion
                 commands.
   Description : Add -I Redfish_HI support for UpdateBios, UpdateBmc,
                 ActivateProductKey, QueryProductKey and KeyProductDeletion
                 commands. SMBIOS type 42 parser is implemented to support this
                 feature.
   Issue ID    : None
   Validation  : On X12SPW with BMC FW "Beta_X12_AST2500_RoT_90002_V.bin" and
                 BIOS "X12SPW_T202001201706.bin", execute in-band
                 QueryProductKey command with -I Redfish_HI, -u <BMC user name>,
                 -p <BMC password> options should complete normally.
   Check list  : 201-IB_RHI, 202-IB_RHI, 203-IB_RHI, 204-IB_RHI, 4XX-IB_RHI,
                 7XX-IB_RHI
16.New Feature : Add GetUsbAccessMode and SetUsbAccessMode commands to support
                 USB mode control.
   Description : GetUsbAccessMode command is able to query current front/rear
                 panel USB port access modes. SetUsbAccessMode command is able to
                 enable/disable front/rear panel USB port access modes.
   Issue ID    : None
   Validation  : Front/rear USB port accessibility can be retrieved by
                 GetUsbAccessMode command. Executing SetUsbAccessMode command
                 with --panel front and --disable, the front USB ports should
                 be unable to access. Then, executing SetUsbAccessMode command
                 with --panel front and --enable, the front USB ports should be
                 turn accessible.
   Check list  : 1004-IB, 1005-IB, 1006-IB
17.New Feature : Support new JBOD family - CSE-946ED-R2KJBOD for
                 GetCmmInfo/UpdateCMM command.
   Description : Support new JBOD family - CSE-946ED-R2KJBOD for
                 GetCmmInfo/UpdateCMM command.
   Issue ID    : None
   Validation  : Setup a JBOD system "CSE-946ED-R2KJBOD".
                 V1. Execute OOB GetCmmInfo with --file option to get local CMM
                     firmware information.
                 V2. Execute OOB UpdateCMM with --file option to update CMM
                     firmware.
   Check list  : 311-OB-XX, 1201-OB-MM, 1202-OB-MM
18.New Feature : Add field "ipv6_file_name_switch" in .sumrc file.
   Description : Some commands use IP address as apart of file name. When the
                 field is set to 1, the character ':' in IPv6 address will be
                 convert to '-' in the name of any generated file. The feature
                 only supports Linux and FreeBSD.
   Issue ID    : None
   Validation  : 1.Set "ipv6_file_name_switch" in .sumrc to 1.
                 2.Run multi-node GetDmiInfo with IPv6 address. The 
                   character ':' in generated file name will be replaced by '-'.
   Check list  : 601-OB-MM 
19.Enhancement : Re-group exit code.
   Description : Add four new exit codes as following:
                 InvalidCfgFile(60)
                 InvalidInputFile(62)
                 InvalidDownloadFile(64)
                 InvalidInternalFile(65)
                 Re-group the following exit codes:
                 InvalidBiosCfgFile(60) to InvalidCfgFile(60)
                 InvalidFirmwareFile(62) to InvalidInputFile(62)
                 InvalidSmbiosFormatFromBIOS(64) to InvalidDownloadFile(64)
                 InvalidSmbiosFormatFromUser(66) to InvalidInputFile(62)
                 InvalidMachineListFormat(67) to InvalidInputFile(62)
                 InvalidBmcCfgTextFile(68) to InvalidCfgFile(60)
                 InvalidAssetInfoInformation(69) to InvalidDownloadFile(64)
                 InvalidCmmCfgTextFile(70) to InvalidCfgFile(60)
                 InvalidRaidCfgTextFile(71) to InvalidCfgFile(60)
                 InvalidPCHAsssetInformation(72) to InvalidDownloadFile(64)
                 InvalidFullSmbiosFormat(73) to InvalidDownloadFile(64)
                 InvalidVPDFormat(74) to InvalidDownloadFile(64)
                 InvalidBiosInternalFile(75) to InvalidInternalFile(65)
                 InvalidTPMProvTableFile(76) to InvalidInputFile(62)
                 InvalidSumrcFile(77) to InvalidInputFile(62)
                 Change the following exit code:
                 InvalidSmbiosCmlFormatFromUser(65) to
                 InvalidCommandLineData(11)
   Issue ID    : None
   Validation  : None
   Check list  : None
20.Enhancement : Support JSON key string for ActivateProductKey command from
                 X12 platform.
   Description : ActivateProductKey command supports JSON key string as argument
                 of option --key in single node usage.
   Issue ID    : None
   Validation  : Executing ActivateProductKey command with --key option and JSON
                 key string. Quote the JSON key string with single quote. The
                 ActivateProductKey command should complete normally.
   Check list  : 201-OB
21.Enhancement : Support new license key format "MAC;license key" in file from
                 X12 platform.
   Description : Support new license key format "MAC;license key" in file. The
                 license key file accepts both original format and JSON key
                 string.
   Issue ID    : None
   Validation  : Create a key file and input MAC and key string with JSON
                 format. Executing ActivateProductKey with --key_file option and
                 license key file. The ActivateProductKey command should
                 complete normally.
   Check list  : 202-OB-MM
22.Enhancement : Improve thread pool management stability for PBU feature.
   Description : On Ubuntu 16.04.6 and CentOS 7, PBU feature may fail since
                 creating threads error.
   Issue ID    : Internal improvement
   Validation  : Executing PBU featute on Ubuntu 16.04.6 and CentOS 7 should
                 complete normally.
   Check list  : 417-OB-MM
23.Enhancement : Update product ID and vendor ID in external data file.
   Description : Update product ID and vendor ID in external data file.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
24.Enhancement : Improve the error message of excception when getting HTTP code
                 400 through Redfish API.
   Description : Show detailed error message when getting HTTP code 400 through
                 Redfish API.
   Issue ID    : None
   Validation  : Execute SecureEraseRaidHdd command on HDDs under erasing, the
                 command output will show "Progress Launched Already".
   Check list  : 1113-OB-XX, 1114-OB-XX, 1115-OB-XX ,1116-OB-XX
25.Enhancement : Define new log location rule.
   Description : Journal path can be created by option "--journal_path" or
                 parameter "journal_path" in .sumrc file. If journal path is not
                 defined, logs will be saved under current working directory
                 except multiple-system Log. If journal path is specified, refer
                 to the following rules:
                   1. Command usage history will be created under
                      <journal_path>/History
                   2. Critical error log will be created under
                      <journal_path>/Critical
                   3. Mutiple-system log will be created under
                      <journal_path>/Multiple
   Issue ID    : None
   Validation  : Execute OOB GetBmcCfg command with option "--journal_path" or
                 parameter "journal_path" defined in .sumrc file, "sum.log" will
                 be saved under <journal_path>/History; critical error log will
                 be created under <journal_path>/Critical if error occurs;
                 mutiple-system log will be created under <journal_path>/Critical.
   Check list  : 801-OB-MM
26.Enhancement : Refine output message for UpdateBios command with
                 --preserve_setting option.
   Description : Replace message "You have to reboot or power up the system for
                 the changes to take effect" with "The BIOS configuration is
                 being reserved" after the preserved BIOS configuration is
                 uploaded to BMC.
   Issue ID    : None
   Validation  : Executing OOB UpdateBios command with --preserve_setting
                 option, message "The BIOS configuration is being reserved"
                 should be displayed.
   Check list  : 407-OB-XX
27.Enhancement : Redefine QueryProductKey command output.
   Description : Hide timestamp (hh:mm:ss) in creation date field and remove
                 key index, version, invoice support in QueryProductKey command.
   Issue ID    : None
   Validation  : Executing QueryProductKey command and confirm output displayed
                 does not contain key index, version and invoice information.
   Check list  : 203-XX-XX
28.Enhancement : Hide ClearProductKey command and rename to KeyProductDeletion.
   Description : Rename ClearProductKey command to KeyProductDeletion and remove
                 --key_index option support. KeyProductDeletion command is set
                 as a hidden command.
   Issue ID    : None
   Validation  : V1. Exception should be thrown when executing ClearProductKey
                     command.
                 V2. SFT-DCMS-SINGLE should be cleared when executing
                     KeyProductDeletion command with --key_name SFT-DCMS-SINGLE
                     option on system with DCMS key.
   Check list  : 204-XX-XX
29.Enhancement : Support scrolling feature for menu bar of BIOS TUI.
   Description : Support scrolling feature for menu bar of BIOS TUI. If the menu
                 in BIOS TUI is more than two pages, SUM can handle it.
   Issue ID    : None
   Validation  : None
   Check list  : 502-IB, 502-OB
30.New feature : Support HSM feature.
   Description : 1. Support HSM feature for in-band usage through KCS interface.
                 2. Support HSM feature for in-band usage through Redfish host
                    interface.
                 3. Support HSM feature for OOB usage.
   Issue ID    : None
   Validation  : None
   Check list  : 201-XX-XX, 202-XX-XX, 203-XX-XX, 204-XX-XXX
31.Fix         : Add progress dot in SetBmcPassword/SetCmmPassword command
                 output.
   Description : Add progress dot in SetBmcPassword/SetCmmPassword command
                 output.
   Issue ID    : None
   Validation  : None
   Check list  : 803-XX-XX, 804-XX-XX, 1303-OB-XX, 1304-OB-MM
32.Fix         : Unknown password hash type on Avoton platform.
   Description : Support Avoton platform for SetBiosPassword command.
   Issue ID    : 104272
   Validation  : 1. Set BIOS password on A1SA2 through SetBiosPassword command.
                 2. Reboot the managed system and enter to BIOS GUI.
                 3. We should enter the BIOS GUI after entering the BIOS
                 password.
   Check list  : 508-XX-XX, 509-XX-XX
33.Fix         : Unknown password hash type on Denlow platform.
   Description : Support Denlow platform for SetBiosPassword command.
   Issue ID    : 105302, 105315
   Validation  : 1. Set BIOS password on X10SLE or X10SLL through
                    SetBiosPassword command.
                 2. Reboot the managed system and enter to BIOS GUI.
                 3. We should enter the BIOS GUI after entering the BIOS
                    password.
   Check list  : 508-XX-XX, 509-XX-XX
34.Fix         : The journal log of multi node contains unused message.
   Description : The journal log of multi node contains unused message.
   Issue ID    : None
   Validation  : Execute any SUM command in multi node with journal feature
                 enable, journal log should not include string "%s".
   Check list  : XXXX-OB-MM
35.Fix         : Duplicated IP will be appended accidentally after generated
                 file in multiple node.
   Description : Executing getting configuration/information commands in
                 multiple node, the IP address will be duplicated after
                 generated file name.
                 E.g.
                 First execution file name:
                   <--file name>.192.168.34.56
                 Second execution file name:
                   <--file name>.192.168.34.56.192.168.34.56
                 After fix,
                 First execution file name:
                   <--file name>.192.168.34.56
                 Second execution file name:
                   <--file name>.192.168.34.56
   Issue ID    : Internal improvement
   Validation  : Execute GetBmcCfg command in multiple node, the IP address in
                 generated file name will not be duplicated.
   Check list  : XXXX-OB-MM
36.Fix         : Fix file generated rule in multiple node for getting
                 configuration/information commands.
   Description : In multiple node, executing getting configuration/information
                 commands without --file option. If file already exists, SUM
                 will overwrite the file. If file already exists, but executing
                 commands with --file option and without --overwrite option, SUM
                 will exit the program.
   Issue ID    : Internal improvement
   Validation  : Execute GetBmcCfg/GetCmmCfg/GetDefBiosCfg/GetCurBiosCfg/
                 GetDmiInfo/GetRaidCfg/GetEventLog commands in situation
                 described in description, the generated file will be
                 overwritten or SUM exits the program if file already exists.
   Check list  : XXXX-OB-MM
37.Fix         : SUM doesn't show the command help message when executing
                 command with wrong option.
   Description : If a command with the wrong option is executed, SUM shows help
                 message about the executed command before exception.
   Issue ID    : None
   Validation  : V1. Executing SetBMCPassword command with both --new_password &
                     --pw_file options, SUM will show help message and then throw
                     "OptionConflict" exception.
                 V2. Executing SetBMCPassword command with neither of --pw_file,
                     --new_password, or --confirm_password option, SUM will show
                     help message and then throw "MissingOption" exception.
                 V3. Executing in-band SetKcsPriv command, SUM will show help
                     message and then throw "FunctionIsNotSupported" exception.
   Check list  : 1201-XX-XX, 1117-OB-MM, 1501-OB-MM
38.Fix         : Cannot create file in multi-node mode in Windows when file name
                 contains IPV6 address.
   Description : Execute multi-node GetDmiInfo with IPV6 address. SUM shows
                 exception since information file cannot be created. The root
                 cause is the charater ':' in IPV6 address cannot be as a part
                 of file name.
   Issue ID    : Internal improvement
   Validation  : Run multi-node GetDmiInfo with IPv6 address. The character ':'
                 in generated file name will be replaced by '-'.
   Check list  : XXXX-XX-MM
39.New Feature : Add "ipv6_fie_name_switch" in .sumrc file.
   Description : Some commands use IP address as file name. When the value is 
                 set to 1, the ':' in IPv6 address will be change to '-' in the
                 name of any generated file. Only support Linux users and 
                 FreeBSD users.
   Issue ID    : None
   Validation  : 1.Set "ipv6_fie_name_switch" in .sumrc to 1.
                 2.Run multi-node GetDmiInfo with IPv6 address in IP list. The 
                   generated file will have ':' replaced by '-' in  file name.
   Check list  : 601-OB-MM


V2.4.0 (2019/12/06)
======================
1. Fix         : X11SPL-F cannot be powered up after executing OOB UpdateBios
                 command on powered off managed system.
   Description : PCH reset is required for X11SPL-F when executing OOB 
                 UpdateBios command on powered off system. 
   Issue ID    : 101636
   Validation  : 1. Exception with error message “PCH reset is needed for this
                    operation. If you still need UpdateBios, use SUM with 
                    --force_update, --reboot and --pch_reset options.” should 
                    be thrown when executing OOB UpdateBios command on powered 
                    off X11SPL-F system.
                 2. Executing OOB UpdateBios command with --force_update, 
                    --reboot and --pch_reset options should complete normally.
   Check list  : 4XX-XX-XX
2. Enhancement : Correct ClearProductKey command help message.
   Description : Argument of --key_name in the example of ClearProductKey 
                 command help message is incorrect. 
   Issue ID    : Internal improvement
   Validation  : Execute ClearProductKey command with -h, the argument of 
                 --key_name option in examples should be SFT-DCMS-Single.
   Check list  : None
3. Enhancement : Enhance cross site request forgery (CSRF) prevention. 
   Description : If BMC/CMM provides CSRF token, then SUM will fill in CSRF 
                 token, host and referer fields in HTTP header.
   Issue ID    : None
   Validation  : Execute OOB UpdateBios and UpdateBmc commands on platform with
                 beta BMC FW "20191119_X11AST2500_SecurityPatches_990_3.bin" 
                 should complete normally.
   Check list  : 401-OB-XX, 701-OB-XX, 1201-OB-XX, 1104-OB-XX, 1105-OB-XX
4. Enhancement : Add board ID 1B4C (X11SRi-IF) in the client ME system list.
   Description : X11SRi-IF is client system with SPS solution. Add board ID 1B4C
                 in the client ME system list.
   Issue ID    : None
   Validation  : Exception with error message "UpdateBios command is not 
                 supported by this platform which uses Client ME." when 
                 executing OOB UpdateBios command on X11SRi-IF.
   Check list  : 4XX-OB-XX
5. Enhancement : Enhance in-band UpdateBmc command stability.
   Description : For in-band UpdateBmc command, increase polling progress 
                 timeout on X10 and later platforms from 10 minutes to 20 
                 minutes to enhance stability.
   Issue ID    : Customer report
   Validation  : Executing in-band UpdateBmc command on X10 and later platfroms
                 should complete normally.
   Check list  : 7XX-IB


V2.4.0 (2019/11/19)
======================
1. Fix         : Add license check for GetKcsPriv and SetKcsPriv commands.
   Description : OOB license is required for GetKcsPriv and SetKcsPriv commands.
   Issue ID    : Internal improvement
   Validation  : Clear product keys from managed system. Executing GetKcsPriv or
                 OOB SetKcsPriv should throw exception.
   Check list  : 313-XX-XX, 511-OB-XX
2. Enhancement : Enhance option check for in-band UpdateBios command.
   Description : --kcs and --erase_OA_key options cannot coexist in in-band 
                 UpdateBios command.
   Issue ID    : Internal improvement
   Validation  : Option conflict exception should be thrown when executing 
                 in-band UpdateBios command with --kcs and --erase_OA_key 
                 options.
   Check list  : 415-IB, 416-IB
3. Fix         : Correct BMC/CMM password complexity rule in error message.
   Description : 1. BMC/CMM password length limitation should be 8~19 instead of 
                    8~20.
                 2. Match password complexity rule error message format in 
                    ChangeBmcCfg/ChangeCmmCfg commands with 
                    SetBmcPassword/SetCmmPassword commands.
   Issue ID    : Internal improvement
   Validation  : "Password must be 8 to 19 characters in length." should be 
                 shown when executing ChangeBMCPassword command with "ADMIN" as 
                 new password.
   Check list  : 802-XX-XX, 803-XX-XX, 804-OB-XX, 1302-XX, 1303-XX, 1304-XX
4. Fix         : Clear BIOS password through TUI might fail.
   Description : Uninitialized password dialog might cause clear BIOS password
                 failed.
   Issue ID    : Internal improvement
   Validation  : 1. Use SetBiosPassword command to set BIOS Administrator 
                    password on managed system.
                 2. Execute GetCurrentBiosCfg command with --tui and select
                    "Administrator Password" under "Security" tab. Press "Enter"
                    directly when "Create New Administrator Password" dialog 
                    pops out. "Clear Old Administrator Password" dialog should
                    show up.
   Check list  : 502-XX-XX
5. Fix         : Select the correct hash method based on the platform.
   Description : Select the correct hash method based on the platform.
   Issue ID    : Internal improvement
   Validation  : 1. Set BIOS password on any platforms through SetBiosPassword
                    command.
                 2. Reboot the managed system and enter to BIOS GUI.
                 3. We should enter the BIOS GUI after entering the BIOS
                    password.
   Check list  : 502-XX-XX
6. Fix         : BMC version display incorrectly when value is larger than 80.
   Description : BMC version display incorrectly when value is larger than 80.
   Issue ID    : Customer report
   Validation  : BMC version 03.80 should be displayed when executing GetBmcInfo
                 command on system with REDFISH_X10_380.bin.
   Check list  : 309-XX-XX
7. Fix         : CheckAssetInfo command shows incorrect informaion in
                 "Add-on PCI Device" section on X11DPQ-OT/X11DPG-OT.
   Descriptin  : X11DPQ-OT/X11DPG-OT are a 8 way system which have more than 15 
                 onboard slots. Therefore, add X11DPQ-OT/X11DPG-OT in 8 way 
                 system list to handle slot number in DMI type 9 differently.
   Issue ID    : 101696
   Validation  : Executing CheckAssetInfo command on X11DPQ-OT should complete
                 without any "Unknown" field under "Add-on PCI Device" section.
   Check list  : 302-OB-XX
8. Enhancement : Options --overwrite_cfg and --overwrite_sdr of UpdateBmc 
                 command doesn't need to be bundled.
   Description : Options --overwrite_cfg and --overwrite_sdr of UpdateBmc 
                 command doesn't need to be bundled. Remove some warning 
                 messages from Help.
   Issue ID    : Internal improvement
   Validation  : Running UpdateBmc command with option --overwrite_cfg alone 
                 should work. Similarly, running UpdateBmc command with option
                 --overwrite_sdr alone should work.
   Check list  : 702-XX-XX, 703-XX-XX
9. Fix         : GetTpmInfo command output shows on screen under multi-OOB 
                 mode. 
   Description : GetTpmInfo command output should be written into log file 
                 under multi-OOB mode.
   Issue ID    : Internal improvement
   Validation  : Command output should be in log file after executing GetTpmInfo
                 command under multi-OOB mode.
   Check list  : 1504-OB-MM, 1505-OB-MM
10.Fix         : Block in-band GetKcsPriv command on non-F MB.
   Description : Block in-band GetKcsPriv command on non-F MB.
   Issue ID    : Internal improvement
   Validation  : Exception should be thrown when executing in-band GetKcsPriv 
                 command on non-F MB.
   Check list  : 313-IB
11.Enhancement : Banner does not show when SUM is executed with incorrect 
                 command options.
   Description : Banner does not show when SUM is executed with incorrect
                 command options.
   Issue ID    : Internal improvement
   Validation  : Banner should be displayed when executing GetBiosInfo command 
                 with repeated option.
   Check list  : XXXX-XX-XX
12.Enhancement : Improve thread pool management stability on Linux.
   Description : On Ubuntu 16.04.6 and CentOS 7, thread pool creation may fail
                 when calling notify_one(). Change main thread logic to check 
                 count in while loop instead of using notify_one().
   Issue ID    : Customer report
   Validation  : Executing GetBiosInfo command under multi-OOB mode on Ubuntu 
                 16.04.6 should complete normally.
   Check list  : XXXX-OB-MM
13.Fix         : OOB UpdateBios command should be prevented on X11SPA.
   Description : X11SPA (board ID 1B34) is a client ME system with jumperless
                 solution. SUM adds the board ID in exception list to prevent
                 the OOB UpdateBios command.
   Issue ID    : 102480
   Validation  : Exception with error message "UpdateBios command is not 
                 supported by this platform which uses client ME" should be 
                 thrown when executing OOB UpdateBios command on X11SPA.
   Check list  : 40X-OB-XX
14.Enhancement : For BIOS configuration, keep the original option when the new 
                 option is evaluated as invalid.
   Description : In ChangeBiosCfg command, when the new option is evaluated as 
                 invalid, SUM changes not to throw exception with warning 
                 message instead. SUM will keep the original option 
                 configuration.
   Issue ID    : Internal improvement
   Validation  : Firstly, execute GetCurrentBiosCfg command and modify a BIOS 
                 setting Option to an invalid option. Secondly, execute 
                 ChangeBiosCfg command. SUM should not throw exception and 
                 output warning message that the originalo option is kept.
   Check list  : 501-XX-XX, 504-XX-XX
15.Enhancement : Mark exceptions with exit code 249 and 254 as "CRITICAL 
                 WARNING".
   Description : Mark exceptions with exit code 249 and 254 as "CRITICAL
                 WARNING" instead of "ERROR".
   Issue ID    : Internal improvement
   Validation  : Title of exception should be "CRITICAL WARNING" when executing
                 OOB UpdateBios command on powered on X11DPU-R system.
   Check list  : 4XX-XX-XX, 15XX-IB
16.New Feature : Support sensor type 0xDC (Components Changed) for GetEventLog 
                 command.
   Description : Support sensor type 0xDC (Components Changed) for GetEventLog 
                 command.
   Issue ID    : Internal improvement
   Validation  : 1. Use ipmitool raw command <0x04 0x02 0x04 0xDC 0xFF 0x6F 
                    0x00 0x00 0x00> to generate sensor type 0xDC event log.
                 2. Executing GetEventLog command should display sensor type 
                    0xDC event log correctly.
   Check list  : 901-XX-XX
17.Fix         : OOB IPMB command does not work in sum_2.4.0_Windows_20190910.
   Description : First 7 bytes of IPMB response cannot be skipped under OOB 
                 mode in Windows.
   Issue ID    : 102837
   Validation  : Executing OOB GetTpmInfo command in Windows should complete 
                 normally.
   Check list  : 15XX-OB-XX
18.Enhancement : Fix thread safe issue in pmdll.
   Description : Fix thread safe issue in pmdll for TAS.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
19.Enhancement : Update product ID and vendor ID external data.
   Description : Update mapping table for product ID, board name and vendor ID.
                 Product ID/board ID are sync with X12DAi-N.xls (2019/10/18).
                 Vendor ID is sync with "List of PCI ID's" (2019/10/12).   
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 302-OB-XX
20.Enhancement : In-band UpdateBios command might fail on some MBs.
   Description : BIOS region offset used to find BIOS region should be retrived
                 from either OFBD TC 0x55 subfunc 0x00 or OFBD TC 0x55 subfunc 
                 0x03.
   Issue ID    : 102076
   Validation  : Executing in-band UpdateBios command on X11SRi-IF with 
                 X11SRi-IF9.b04 BIOS should complete normally.
   Check list  : 4XX-IB
21.Enhancement : Fix incorrect BMC/CMM password complexity check in 
                 SetBmcPassword, SetCmmPassword, ChangeBmcCfg and ChangeCmmCfg 
                 commands.
   Description : The BMC password must contain at least one character from three
                 of the following categories:
                 a-z, A-Z, 0-9 and special characters like !@#$%^&*.
   Issue ID    : Internal improvement
   Validation  : Exception should be thrown when executing SetBmcPassword
                 command with password "aaaa0000". 
   Check list  : 1303-OB, 1304-OB, 803-XX-XX, 804-XX-XX
22.Fix         : ChangeRaidCfg command crashes if the input configuration file 
                 contains SUM version and file created timestamp information.
   Description : Comments should be ignored when parsing input RAID 
                 configuration file.
   Issue ID    : Internal improvement
   Validation  : 1. Execute GetRaidCfg command to get the current RAID 
                    configuration file.
                 2. Executeing ChangeRaidCfg command with the file generated in
                    step 1 should complete normmaly.
   Check list  : 1108-XX-XX
23.Enhancement : Rename option --show to --precheck in PBU feature.
   Description : Rename option --show to --precheck in PBU feature.
   Issue ID    : Internal improvement
   Validation  : Executing UpdateBios command under multi-OOB mode with 
                 --policy and --precheck options should complete normally.
   Check list  : None
24.Enhancement : PBU handles cache file incorrectly when there is only one file
                 in the BIOS image folder.
   Description : PBU cache file is not updated when the only file in folder gets
                 deleted.
   Issue ID    : 102851 
   Validation  : 1. Put only one system information in IP list file.
                 2. Create a BIOS image folder and put BIOS image file of the
                    managed system in the folder.
                 3. Add the BIOS image folder path in the "Folder" field under
                    "GeneralPolicy" table in policy_sample.xml.
                 4. Execute UpdateBios command under multi-OOB mode with
                    --policy and --precheck options to update PBU cache file.
                 5. Delete the BIOS image in BIOS image folder.
                 6. Error message with "<IP> has no matched file" should be 
                    reported when executing UpdateBios command in multi-OOB node
                    usage with --policy and --precheck options.
   Check list  : 417-OB-MM
25.Enhancement : PBU supports soft link files under BIOS image folder.
   Description : PBU supports soft link files under BIOS image folder.
   Issue ID    : Internal improvement
   Validation  : 1. Create a BIOS image folder.
                 2. In the BIOS image folder, create soft link files which link
                    to BIOS image files of managed systems in IP list file.
                 3. Add the BIOS image folder path in the "Folder" field under
                    "GeneralPolicy" table in policy_sample.xml.
                 4. Execute UpdateBios command in multiple node usage with
                    --policy and --reboot options.
                 5. All managed systems in the IP list file should be updated
                    with the latest BIOS image.
   Check list  : 417-OB-MM
26.Fix         : PBU handles 32MBs AMD BIOS image incorrectly when "BIOS Policy"
                 is set to "OneFile" in policy_sample.xml
   Description : When "BIOS Policy" is set to "OneFile" in policy_sample.xml, 
                 upper 16MBs BIOS image was always used to compare information 
                 with BIOS running on the managed system. SUM should check 
                 system CPU to determine which part of local BIOS image file
                 should be used.
   Issue ID    : Internal improvement
   Validation  : 1. Setup H12DSU system with Rome CPU installed on it.
                 2. Create a BIOS image folder and put 32MBs H11DSU BIOS image 
                    file in the folder.
                 3. Set "BIOS Policy" to "OneFile" in policy_sample.xml.
                 4. Execute  UpdateBios command in multiple node usage with
                     --policy and --reboot options should complete normally.
   Check list  : 417-OB-MM
27.Enhancement : Add OP_GET opcode support for GetDefaultBiosCfg, 
                 GetCurrentBiosCfg, ChangeBiosCfg, LoadDefaultBiosCfg, 
                 ClearEventLog and TpmProvision commands.
   Description : Support opcode OP_GET in HII.
   Issue ID    : Internal improvement
   Validation  : Executing GetCurrentBiosCfg command on X11SPI with 
                 "X11SPI_T201910311406.bin" should complete normally.
   Check list  : 501-XX-XX, 502-XX-XX, 503-XX-XX, 504-XX-XX, 505-XX-XX, 
                 506-XX-XX, 902-XX-XX, 1501-XX-XX, 1502-XX-XX, 1503-XX-XX
28.Enhancement : Add IS_DEBUG_CERR in ccmake option list.
   Description : When IS_DEBUG_CERR is set to enable, SUM debug messages uses 
                 DEBUG_CERR() will be forwarded to standard error.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
29.Enhancement : Improve stability of CheckAssetInfo command under multi-OOB 
                 mode.
   Description : Add mutex protection when building vendor ID and device ID 
                 maps.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 302-OB-MM
30.Enhancement : Reduce output message of in-band UpdateBios/UpdateBmc 
                 commands.
   Description : Reduce output message of in-band UpdateBios/UpdateBmc
                 commands.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 4XX-IB, 7XX-IB
31.Enhancement : Refine Windows driver access scope.
   Description : Refine Windows driver access scope:
                 1. Only port 0x70, 0x71, 0x84, 0xCA2, 0xCA3 are allowed to be
                    accessed and only by users with Administrator level 
                    privileges.
                 2. Limit physical memory access.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 4XX-IB 


V2.4.0 (2019/09/10)
======================
1. New Feature : Support in-band UpdateBios command through KCS interface with 
                 OEM requested BMC FW.
   Description : Add --kcs option to support in-band UpdateBios command through
                 KCS interface.
   Issue ID    : SuperForm: 248-00-190826-003
   Validation  : Executing in-band UpdateBios with --kcs option should complete
                 normally.
   Check list  : 415-IB
2. Enhancement : Support in-band NM command on Winodws.
   Description : For in-band kcs option on Linux, fields in IPMI raw command is
                 incorrect.Change the channel filed to 0x00 and the rqsa field 
                 to 0x20.
   Issue ID    : Internal improvement
   Validation  : Execute in-band UpdateBios command with --kcs option on Purley
                 system with Windows should complete normally.
   Check list  : 415-IB
3. Enhancement : Support in-band IPMB command on Linux.
   Description : For in-band IPMB command on Linux, the IPMB command doesn't
                 need to transfer to IPMI message commmand. Just send the IPMB
                 command directly.
   Issue ID    : Internal improvement
   Validation  : Execute in-band UpdateBios command with option --kcs on Purley
                 system with Linux should complete normally.
   Check list  : 415-IB
4. Enhancement : SUM will not throw exception when enabling SMCI services failed
                 on Windows. 
   Description : SUM will not throw exception when enabling SMCI services failed 
                 on Windows. 
   Issue ID    : Internal ipmrovement
   Validation  : None
   Check list  : 415-IB, 7XX-IB
5. Enhancement : Improve thread pool management stability.
   Description : Implement a new ThreadPool to improve stability. 
   Issue ID    : None
   Validation  : Execute GetBiosInfo command in multiple usage with thousands 
                 dummy IPs should complete without crash.
   Check list  : XXX-OB-MM
6. Fix         : Improve thread pool management stability on Linux.
   Description : 1. SUM crashes when setting and getting environment variable  
                    simultaneously in different threads. SUM sets environment
                    variable at the threadpool initialization stage. Main thread
                    will wait until all threads in threadpool leave 
                    initialization stage.
                 2. Add mutex wrapper(lock_guard) to protect host information 
                    map access within multiple threads.
   Issue ID    : None
   Validation  : Execute GetBiosInfo command in multiple usage with thousands 
                 fake IPs should complete without crash.
   Check list  : XXX-OB-MM
7. Fix         : H11/H12 BIOS configuration might become unexpected after 
                 executing UpdateBios command with --preserve_setting option.
   Description : UpdateBios command with --preserve_setting will create and 
                 upload a BIN file based on local BIOS image. The variable 
                 'Setup' is revised to initialize from StdDefaults instead 
                 of all 0x00. 
   Issue ID    : 101383
   Validation  : Firstly, execute UpdateBios command with --preserve_setting 
                 option on H11/H12 BIOS. Secondly, manually check if BIOS 
                 configuration is expected.
   Check list  : 407-XX-XX
8. Fix         : 'Terminal Type' becomes 'VT100' from 'VT100+' after UpdateBios 
                 command with --preserve_setting option.                 
   Description : There was a prefix boot option string workaround causing that 
                 'VT100' matches 'VT100+'. When 'Terminal Type' is 'VT100+', it
                 becomes 'VT100' after UpdateBios command with 
                 --preserve_setting option.
   Issue ID    : Internal improvement
   Validation  : Firstly, execute UpdateBios command with --preserve_setting 
                 option. Secondly, manually check if 'Terminal Type' is 
                 'VT100+' in BIOS configuration.
   Check list  : 407-XX-XX
9. Fix         : Inaccurate error message when BIOS configuration file contains
                 invalid option.
   Description : When there is an invalid option in BIOS configuration file, 
                 SUM reported the inaccurate error message with empty option
                 string.
   Issue ID    : Internal improvement
   Validation  : Firstly, modify 'Option ROM Messages' to 'Test' in BIOS 
                 configuration file. Secondly, executing ChangeBiosCfg with the 
                 previous modification. SUM should report the accurate error 
                 message that 'Test' is invalid.
   Check list  : 504-XX-XX
10.Enhancement : Enhance ChangeRaidCfg and GetRaidCfg commands stability.
   Description : Add 10 times retry with 3 seconds interval in RAID related 
                 IPMI raw command when BMC response non-zero completion code.
   Issue ID    : 100245
   Validation  : Execute ChangeRaidCfg and GetRaidCfg commands sould complete
                 normally.
   Check list  : 11XX-XX-XX
11.Fix         : In-band UpdateBios through KCS failed to upload BIOS image on 
                 Windows Hyper-V.
   Description : Increase KCS buffer size in pmdll64.dll and ipmi raw command 
                 buffer size in SUM for Windows OS to support in-band UpdateBios
                 throught KCS on Windows Hyper-V. 
   Issue ID    : Internal_Improvement
   Validation  : Executing inband UpdateBios command with --kcs option on 
                 Windows Hyper-V should complete normally.
   Check list  : 415-IB
12.New Feature : Support Secure Boot enabled Linux.
   Description : Support Secure Boot enabled Linux.
   Issue ID    : Customer request
   Validation  : V1. Setup a Secure Boot enabled Linux.
                 V2. Following the instruction in user guide section 2.3 to sign
                     the driver.
                 V3. Execute inband UpdateBios on Secure Boot enabled Linux.
   Check list  : 3XX-IB, 4XX-IB, 5XX-IB
13.New Feature : Add prebuilt Linux dirver and Linux driver source code to
                 release package.
   Description : Add prebuilt Linux dirver and Linux driver source code to
                 release package.
   Issue ID    : Customer request
   Validation  : None
   Check list  : None
14.Enhancement : Enhance error message of GetPsuInfo command.
   Description : If bus ID 0x00 of I2C interface is used and no slave devices
                 detected, "PMBus 0x00 is used" will be shown in error message. 
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 1401-XX-XX
15.Enhancement : Replace INTEL/AMD codename for error and help message.
   Description : Replace INTEL/AMD codename for error and help message.
   Issue ID    : None
   Validation  : Execute TpmManage command with --provision and --table_default
                 options on platform before Purley, "Intel(R) Xeon(R) Scalable
                 Processors with Intel(R) C620 Series Chipsets" should show in
                 error message instead of "Purley".
   Check list  : XXXX-XX-XX
16.New Feature : Add in-band EraseOAKey command to support OA key erase feature
                 on X12 platforms.
   Description : Add in-band EraseOAKey command to support OA key erase feature
                 on X12 platforms.
   Issue ID    : None
   Validation  : V1. On X12 platform, use AFUDOS.exe to flash OA 3.0 license 
                     key on system.
                 V2. Execute in-band EraseOAKey command to erase OA keys.
                 V3. Boot the system into DOS and execute pl.exe. Make sure
                     MSDM field is no longer exist in ACPI table.
   Check list  : 510-IB
17.New Feature : Add --erase_OA_key option for in-band UpdateBios command to 
                 support OA key erase feature on X12 platforms.
   Description : Add --erase_OA_key option for in-band UpdateBios command to 
                 support OA key erase while updating BIOS on X12 platforms.
   Issue ID    : None
   Validation  : V1. On X12 platform, use AFUDOS.exe to flash OA 3.0 license 
                     key on system.
                 V2. Execute in-band UpdateBios command with --erase_OA_key to
                     erase OA keys while updating BIOS.
                 V3. Boot the system into DOS and execute pl.exe. Make sure
                     MSDM field is no longer exist in ACPI table.
   Check list  : 416-IB
18.Enhancement : Add password complexity check for ChangeBmcCfg, ChangeCmmCfg, 
                 SetBmcPassword and SetCmmPassword commands.
   Description : Confirm user inputted password follows rule below:
                 - Require password length: 8 to 19 characters.
                 - Password can not be reverse of the user name.
                 - Password must include characters from at least 3 of the 
                   listed character classes:
                   - a - z
                   - A - Z
                   - 0 - 9
                   - Special Characters
   Issue ID    : Internal improvement
   Validation  : Exception should be thrown when executing SetBmcPassword 
                 command with password "00000000".
   Check list  : 803-XX-XX, 804-XX-XX, 1303-OB-XX, 1304-OB-XX
19.Fix         : Support Secure Boot enabled Windows.
   Description : When managed system has secure boot feature enabled, phymem 
                 driver needs to be WHQL certificated. Replace phymem driver 
		 and modify DLL code accordingly. 
   Issue ID    : Customer request
   Validation  : Executing in-band UpdateBios command on system with secure 
                 boot enabled in Windows should complete normally.
   Check list  : 3XX-IB, 4XX-IB, 5XX-IB
20.New Feature : Support KCS privilege configuration for GetBmcCfg command and 
                 OOB ChangeBmcCfg command.
   Description : Add KCSPrivilege table in BMC XML configuration to support KCS 
                 privilege configuration.
   Issue ID    : None
   Validation  : On X11DGQ with BMC FW SMT_X11IPMI_172.bin, confirm 
                 "PrivilegeLimit" field can be changed by executing 
		 ChangeBmcCfg command.
   Check list  : 501-XX-XX, 502-XX-XX, 504-OB-XX, 505-OB-XX
21.New Feature : Add GetKcsPriv and OOB SetKcsPriv commands.
   Description : Add GetKcsPriv and OOB SetKcsPriv commands to support KCS 
                 privilege configuration. 
   Issue ID    : None
   Validation  : On X11DGQ with BMC FW SMT_X11IPMI_172.bin, confirm KCS 
                 privilege can be set by OOB SetKcsPriv command.
   Check list  : 313-XX-XX, 511-OB-XX
22.New Feature : Block in-band commands when KCS privilege of the managed
                 system is not ADMIN.
   Description : Block in-band commands when KCS privilege of the managed 
                 system is not ADMIN.
   Issue ID    : None
   Validation  : On X11DGQ with BMC FW SMT_X11IPMI_172.bin, use OOB SetKcsPriv
                 command to set KCS privilege to "User". Then, executing 
		 in-band GetBmcInfo command should be blocked.
   Check list  : XXXX-IB-XX
23.New Feature : Support BIOS anti-rollback feature for UpdateBios command on
                 X12/H12 series MBs.
   Description : If both managed system and local BIOS image support OEM FID,
                 "FW global veresion" field will be used to judge whether the
                 BIOS updating is allowed.				 
   Issue ID    : None
   Validation  : On X11SCL-F with X11SCLF_T201907031310_v1.ROM BIOS, exception 
                 with "Error: BIOS does not support downgrade to previous 
		 version BIOS." should be thrown when executing in-band 
		 UpdateBios command with --file X11SCLF_T201907031521_v0.ROM. 
   Check list  : 4XX-XX-XX
24.New Feature : Support BMC anti-rollback feature for UpdateBmc command.
   Description : If the BMC FW on the managed system supports BMC anti-rollback 
                 feature and the local BMC FW image should be prevented from 
		 updating, BMC will return error status after the local FW 
		 image is uploaded.
   Issue ID    : None
   Validation  : On X11SPI with BETA_X11_AST2500_ANTIROLLBACK_32M_910_1_V.bin
                 BMC, exception with "Error: Can't downgrade to this update 
		 package version." should be thrown when executing UpdateBmc 
		 command with --file SMT_X11AST2500_171.bin.
   Check list  : 7XX-XX-XX
25.Enhancement : Update openssl to 1.0.2s for security concern.
   Description : Update openssl to 1.0.2s for security concern.
   Issue ID    : Internal improvement 
   Validation  : None
   Check list  : 401-OB-XX, 701-OB-XX, 1201-OB-XX, 1104-OB-XX
26.Enhancement : Improve error message of TpmManage and GetTpmInfo commands.
   Description : SUM's error message is not clear when TpmManage/GetTpmInfo
                 command fail because it does not support on the managed 
		 system.
   Issue ID    : Internal improvement 
   Validation  : Exception with clear error message should be thrown when 
                 executing TpmManage command on platform before Purley. 
   Check list  : 1504-XX-XX, 1505-XX-XX, 1506-XX-XX, 1507-XX-XX, 1508-XX-XX
                 1509-XX-XX, 1510-XX-XX, 1511-XX-XX, 1512-XX-XX, 1513-XX-XX
27.New Feature : Support X11DPT-BR, X11DPFF-SNR and X12 series MBs.
   Description : Register BMC GUID <0x43, 0x31, 0x30, 0x31, 0x4D, 0x53> for
                 supporting X11DPT-BR, X11DPFF-SNR, X12 series MBs of HW1.
   Issue ID    : 100746
   Validation  : Execute OOB UpdateBios or UpdateBMC command on X11DPFF-SNR
                 should complete normally.
   Check list  : 40X-OB-XX, 70X-XX-XX
28.Enhancement : Improve x-AMI debug output for BIOS config.
   Description : Add x-AMI ID in generated BIOS configuration file when 
                 IS_DEBUG_HII is defined.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 501-XX-XX, 502-XX-XX, 503-XX-XX
29.New Feature : Add --policy option to support policy update for multiple node 
                 mode UpdateBios command.
   Description : Policy file can be modified to control the BIOS update policy
                 of each managed system in the system list file.
   Issue ID    : None
   Validation  : V1. Create a BIOS_folder and put BIOS image files of managed 
                     systems in system list file in it.
                 V2. Add the BIOS_folder path in the Folder field under
                     GeneralPolicy table in policy_sample.xml.
		 V3. Execute UpdateBios command in multiple node usage with 
		     --policy and --reboot options.
                 V4. All managed systems in the system list file should be
                     updated with the latest BIOS image. 
   Check list  : 417-OB-MM
30.Fix         : AMD systems support BIOS force update.
   Description : Due to ME region does not exist in AMD systems, following 
                 actions will be handled:
		 1. Don't check SPS downgrade prevention.
		 2. Always set "preserve MER" as update option.
                 3. Don't send force update enable/disable raw commands to BMC.				 
   Issue ID    : Production report
   Validation  : Executing OOB UpdateBios command with --force_update option on
                 H11DSU should complete normally.
   Check list  : 406-OB-XX
31.Enhancement : In-band TpmManage/GetTpmInfo command supports Intel OTA
                 solution.
   Description : In-band TpmManage/GetTpmInfo command supports Intel OTA
                 solution.			 
   Issue ID    : Customer report
   Validation  : Executing in-band GetTpmInfo command on X11SPI with TPM module 
                 should complete normally.
   Check list  : 1504-IB, 1505-IB, 1506-IB, 1507-IB, 1508-IB, 1509-IB, 1510-IB,
                 1511-IB, 1512-IB, 1513-IB
32.Enhancement : Mark * for current running CPU for 32MBs H11/H12 BIOS image 
                 file.
   Description : For 32MBs H11/H12 BIOS image file, GetBiosInfo command shows
                 local BIOS image information for both Naples and Rome CPUs and
                 mark * will be added in front of the running CPU.
   Issue ID    : 100381, 131376
   Validation  : V1. Setup H11DSU-iN with Naples CPU.
                 V2. Execute GetBiosInfo command with 32MBs H11DSU-iN BIOS 
                     image, both Naples and Rome BIOS information should show
                     under "Local BIOS image file" section and mark * should 
                     show in front of "Naples".
   Check list  : 305-XX-XX, 306-XX-XX
33.New Feature : Support CheckSystemUtilization command on system with TAS ESXi. 
   Description : On VMWare ESXi, a physical NIC might map to multiple IPs. SUM 
                 modify accordingly to display correct information.
   Issue ID    : Customer report
   Validation  : Executing CheckSystemUtilization command on VMWare ESXi with 
                 TAS ESXi installed should complete normally with unique MAC 
                 address showed under [NIC] sections.
   Check list  : 303-OB-XX
34.Enhancement : Improve searching method for StdDefaults in CRomParser.
   Description : There might be multiple StdDefaults in CRomParser. Change the
                 searching method suggested by BIOS team to find the most 
                 suitable one.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
   

V2.3.0 (2019/08/08)
======================
1. Fix         : Some boot options could not be preserved after UpdateBios
                 command with --preserve_setting option.
   Description : When a device name is attached to boot option string, the boot
                 option can't be preserved after UpdateBios command with
                 --preserve_setting option.
   Issue ID    : Customer report
   Validation  : Firstly, mount boot devices into system. Secondly, swap boot 
                 options by ChangeBiosCfg command. Thirdly, execute UpdateBios 
                 command with --preserve_setting option. All the swapped boot 
                 options should be preserved.
   Check list  : 407-XX-XX
2. New Feature : Support H12 and H11 series motherboards with 32MBs BIOS.
   Description : 32MBs BIOS of H12 and H11 series motherboards contains BIOS 
                 image for Naples and Rome CPUs. Top 16MBs is for Naples CPU; 
                 bottom 16MBs BIOS is for Rome CPU. For in-band update BIOS, SUM
                 checks current CPU type and flashes corresponding 16MBs BIOS 
                 image as usual. The other 16MBs BIOS image will be flashed with
                 "NONBOOT16M" OEM string.
   Issue ID    : 99312, 99313, 99931, 100333, 100975, 100011
   Validation  : Execute in-band UpdateBios on H11DSU-IN with 32MBs BIOS image
                 should complete normally.
   Check list  : 40X-IB
3. New Feature : Support 32MBs H11/H12 BIOS image file for GetBiosInfo command.
   Description : For 32MBs H11/H12 BIOS image file, GetBiosInfo command shows 
                 local BIOS image information for both Naples and Rome CPUs.
   Issue ID    : None
   Validation  : Execute GetBiosInfo command with 32MBs H11DSU-IN BIOS image,
                 both Naples and Rome BIOS information should show under "Local
                 BIOS image file" section.
                 Check list : 305-XX-XX, 306-XX-XX
4. New Feature : Support three digits BMC version of input BMC image file for
                 GetBmcInfo command.
   Description : SUM shows the third digit of BMC version if the input BMC image
                 file supports three digits BMC version.
   Issue ID    : 99620
   Validation  : Execute GetBmcInfo command with BMC firmware
                 "SMT_X11AST2500_172_0.bin", BMC version under "Local BMC image
                 file" section should show 01.72.00.
   Check list  : 308-XX-XX
5. Fix         : Feature support checking error on X10, SuperBlade and
                 MicroBlade systems.
   Description : Skip feature flags download under the following conditions
                 because of an incorrect BMC version check before downloading
                 feature flags file.
                 C1.X10 system and BMC FW above 2.15
                 C2.MicroBlade system and BMC FW above 2.52
                 C3.B10 super blade system and BMC FW above 3.23
   Issue ID    : Internal improvement
   Validation  : Executing MountIsoImage command with the HTTP URL path on the
                 B1SD2 system with BMC FW "SMT_MBIPMI_363_REDFISH" should
                 complete normally.
   Check list  : 1001-XX-XX, 1002-XX-XX


V2.3.0 (2019/07/25)
======================
1. Enhancement : Support new BMC GUID "enBmcTypeX10_JBOD" for JBOD system.
   Description : Support new BMC GUID "enBmcTypeX10_JBOD" for JBOD system.
   Issue ID    : Internal improvement
   Validation  : Execute OOB GetBmcInfo command on the JBOD system.
   Check list  : 309-XX-XX
2. Enhancement : Support user deletion for new BMC FW.
   Description : New BMC FW changes user deletion mechanism, so SUM changes IPMI
                 raw command flow for new user deletion feature.
   Issue ID    : #299-00-181031-002 (BMC Account Security)
   Validation  : 1.Execute GetBmcCfg command on the system with BMC FW
                   "SMT_X11AST2500_171_1".
                 2.modify the BMC configuration file to add a new user.
                 3.Execute ChangeBmcCfg command to update BMC user
                   configuration.
                 4.Modify BMC configuration file to delete BMC user.
                 5.Execute ChangeBmcCfg command to update BMC user
                   configuration.
   Check list  : 801-XX-XX, 802-XX-XX
3. Fix         : Fix GetBmcCfg command issue for the system with AMI BMC.
   Description : Execute GetBmcCfg command will fail on the system with AMI BMC
                 because AMI BMC does not support OEM BMC configuration.
   Issue ID    : Internal improvement
   Validation  : Execute GetBmcCfg and ChangeBmcCfg commands on X9DRW-3F should
                 be complete normally.
   Check list  : 801-XX-XX, 802-XX-XX
4. Fix         : Fix incorrect help message for GetBIOSInfo, GetBmcInfo,
                 GetCmmInfo and GetRaidControllerInfo commands.
   Description : Fix incorrect help message for GetBIOSInfo, GetBmcInfo,
                 GetCmmInfo and GetRaidControllerInfo commands.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 103-IB
5. Enhancement : Add exit code 249 for "Special action is required" use.
   Description : Add exit code 249 to handle "Special action is required" case.
                 For example, if the system does not support OOB BIOS update in
                 power on status, exception with exit code 249 will be thrown
                 to remind user to power off the managed system before OOB BIOS
                 update.
   Issue ID    : Internal improvement
   Validation  : Executing OOB UpdateBios command in power on status on
                 X11DPU-R with BMC FW "SMT_X11DPUR_011_V.bin". Exception with
                 exit code 249 should be thrown.
   Check list  : 4XX-OB-XX
6. Fix         : Incorrect data alignment in BIOS image parser.
   Description : Incorrect data alignment caused incomplete BIOS image parsing.
   Issue ID    : 99312, 99313, 99931, 100333
   Validation  : Setup a H12 system. Executing UpdateBios command with
                 --preserve_setting option should complete normally.
   Check list  : 407-XX-XX   
7. Enhancement : Support FFSv3 parsing for BIOS image parser.
   Description : Support FFSv3 parsing for BIOS image parser. FFSv3 starts to
                 support extended size. First found in H12 BIOS image.
   Issue ID    : 99312, 99313, 99931, 100333
   Validation  : Setup a H12 system. Executing UpdateBios command with 
                 --preserve_setting option should complete normally.
   Check list  : 407-XX-XX
8. Enhancement : Add FFS GUID EFI_FIRMWARE_FILE_SYSTEM3_GUID support.
   Description : Add FFS GUID EFI_FIRMWARE_FILE_SYSTEM3_GUID support. First 
                 found in H12 BIOS image.
   Issue ID    : 99312, 99313, 99931, 100333
   Validation  : Setup a H12 system. Executing UpdateBios command with 
                 --preserve_setting option should complete normally.
   Check list  : 407-XX-XX
9. Fix         : Extend delay of querying BMC status after BMC reset from one
                 minute to three minutes for in-band UpdateBmc command.
   Description : BMC reset takes more than one minutes. SUM will wait three
                 minutes before checking the BMC status.
   Issue ID    : 100141
   Validation  : Executing in-band UpdateBmc command on the B2SC1-CPU with
                 Windows and BMC FW "SMT_MBAST2500_563_V.bin" should complete
                 normally.
   Check list  : 701-IB, 702-IB
10.Fix         : HII package list parsing error for BIOS image file.
   Description : Non HII package list was parsed out from EFI_SECTION_PE32 
                 containing uni-code "HII" signature and caused subsequent 
                 parsing error.
   Issue ID    : 100430, 100289 
   Validation  : Executing UpdateBios command with option "--preserve_setting"
                 and BIOS "X11SDS9.523" on the system X11SDS-16C should
                 complete normally.
   Check list  : 407-XX-XX
11.Fix         : Fix BBS priorities menu was hidden incorrectly in TUI.
   Description : BBS priorities menu was hidden incorrectly in TUI due to 
                 improper provisional value access. Then, it caused wrong
                 dependency evaluation.
   Issue ID    : Internal improvement
   Validation  : Executes GetCurrentBiosCfg command with --tui option. The BBS 
                 priorities menus should be visible correctly.
   Check list  : 502-XX-XX 
12.Fix         : Improve the boot option string matching workaround.
   Description : Before applying boot option substring matching workaround, 
                 make sure the provisional option string does not match any 
                 option string in available option strings.
   Issue ID    : 100589 
   Validation  : Setup a system with two identical NVMe drives. The BBS
                 priorities boot order of these two drives should be able to
                 change in BIOS configuration.
   Check list  : 504-XX-XX


V2.3.0 (2019/06/06)
======================
1. Enhancement : Support skipping SPS downgrade prevention checking in OOB 
                 UpdateBios command for production team. 
   Description : Using SkipMEProduction SUM to execute OOB UpdateBios with 
                 --force_update, SPS downgrade prevention checking will be
                 skipped.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 406-OB-XX
2. Fix         : Correct IPv6 dynamic address source definition.
   Description : Correct IPv6 dynamic address source definition according to 
                 IPMI spec.
   Issue ID    : 99114
   Validation  : Execute GetBmcCfg command on system with dynamic IPv6 should 
                 complete normally.
   Check list  : 801-XX-XX
3. Enhancement : IPSrc field in IPv4 LAN table can be set by ChangeBmcCfg 
                 command under multi-node mode.
   Description : IPSrc field in IPv4 LAN table can be set by ChangeBmcCfg
                 command under multi-node mode.
   Issue ID    : Internal improvement
   Validation  : Setup two identical systems with different static IPv4 
                 addresses. Then executing ChangeBmcCfg command to change IPSrc
                 of IPv4 to DHCP should take effect under multi-node mode.
   Check list  : 802-OB-MM
4. New Feature : Add "multi_retry_count" in .sumrc file to set command retry
                 count for failed managed system in multiple node mode.
   Description : In multi-node mode, user can set the retry count for failed
                 managed system in .sumrc file. By default, the retry count is 
                 set to 2.
   Issue ID    : Internal improvement
   Validation  : Set the "multi_retry_count" to 0 in .sumrc file. Execute 
                 UpdateBios command in multi-node mode with invalid BIOS image,
                 multi-node log should show command only execute once for each
                 managed system.
   Check list  : XXXX-OB-MM
5. Fix         : GetPsuInfo command does not work on X11 with Nuvoton BMC chip, 
                 X12 and H12 platform.
   Description : For X11 with Nuvoton BMC chip, X12 and H12 platform, the PMBus
                 ID should be 0x7.
   Issue ID    : 99312
   Validation  : Executing GetPsuInfo command on H12DST-B should complete 
                 normally.
   Check list  : 1401-XX-XX
6. Fix         : SUM uses incorrect section size when parsing BIOS ROM.
   Description : SUM uses incorrect section size when parsing BIOS section "
                 EFI_SECTION_FIRMWARE_VOLUME_IMAGE".
   Issue ID    : None
   Validation  : None
   Check list  : None
7. New Feature : Add --user_id option for SetBmcPassword and SetCmmPassword 
                 commands.
   Description : Execute SetBmcPassword/SetCmmPassword command with --user_id to
                 set BMC/CMM password for a specific user.
   Issue ID    : None
   Validation  : Create a new BMC user, then executing SetBmcPassword command 
                 with the new user ID should complete normally.
   Check list  : 803-XX-XX, 804-XX-XX, 1303-OB-XX, 1304-OB-XX
8. Enhancement : Reset BMC if needed for exception case of in-band ChangeBmcCfg 
                 command.
   Description : Reset BMC if needed for exception case of in-band ChangeBmcCfg
                 command if "AutoConfig" field in LAN table is changed.
   Issue ID    : None
   Validation  : None
   Check list  : 802-IB
9. Enhancement : Improve dependency description in SNMP table of BMC 
                 configuration.
   Description : Add dependency description "Please enable SNMP service in 
                 ServiceEnabling table before changing SNMP V2 or V3 
                 configuration." and "Configuration of V2 and V3 will be
                 skipped if the SNMP service in ServiceEnabling table is 
                 'Disabled'." in SNMP table for BMC configuration commands.
   Issue ID    : None
   Validation  : Executing GetBmcCfg command and check the above dependency 
                 description is shown in SNMP table.
   Check list  : 801-XX-XX
10.Enhancement : Revise title and footer of SUM BIOS configuration TUI.
   Description : Revise title of SUM BIOS configuration TUI to "SUM BIOS 
                 configuration TUI - Copyright (C) 2013-2019 Super Micro 
                 Computer, Inc." and footer to "SUM version 2.3.0. 2019/06/04 
                 Copyright (C) 2013-2019 Super Micro Computer, Inc.".
   Issue ID    : None
   Validation  : Execute GetCurrentBiosCfg command with option --tui. The title
                 and footer description should show as above.
   Check list  : 502-IB, 502-OB 
11.Enhancement : Improve efficiency of finding usable IPv6 network interface on 
                 Windows and Linux.
   Description : Add "0" as interface name at the top of IPv6 system interface 
                 list. SUM will try whether system can find usable IPv6 network
                 interface with index 0 first.
   Issue ID    : None
   Validation  : None
   Check list  : None
12.Enhancement : Add output message when SetBmcPassword and SetCmmPassword 
                 commands complete normally. 
   Description : When BMC/CMM password is set successfully, message "The 
                 BMC/CMM password is set for the user ID <user_id>" will be 
                 shown.
   Issue ID    : None
   Validation  : Executing SetBmcPassword command should complete normally with
                 message "The BMC password is set for the user ID 2".
   Check list  : 803-XX-XX, 804-XX-XX, 1303-OB-XX, 1304-OB-XX
13.Enhancement : SUM version is controlled by single source.
   Description : SUM version is controlled by makefile only.
   Issue ID    : None
   Validation  : None
   Check list  : None


V2.3.0 (2019/05/22)
======================
1. Enhancement : Ability to extract/filter BIOS configuration formset by GUID.
   Description : BIOS configuration formset can be extracted/filtered by GUID 
                 using function parameter.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
2. Enhancement : Update board ID support list.
   Description : Sync board ID support list with "AOC-AG-i4S.XLS_0223".
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
3. Enhancement : Board ID support list can be read from external data.
   Description : SUM first validates board ID with list in SMCIPID.txt. Only 
                 when the board ID is not listed in the external data, SUM will 
                 check the board ID with its internal board ID support list.
   Issue ID    : Internal improvement
   Validation  : Execute GetEventLog command on a system with either event 0x6F
                 or 0x70, the message "Read board model information from 
                 external data..." should be shown.
   Check list  : 901-XX-XX
4. Enhancement : Print notice when BMC responses syslog with unexpected JSON
                 field name.
   Description : Show "Unknown JSON syslog format" message when SUM gets 
                 unexpected JSON field name from BMC in syslog response. 
   Issue ID    : None
   Validation  : None
   Check list  : None
5. Fix         : "Slot location" under add-on section shows unknown on X11SPD-F
                 for CheckAssetInfo command.
   Description : Add MicroLP slot location definition (0x0A) for Purley and 
                 later platform.
   Issue ID    : 98352
   Validation  : Execute CheckAssetInfo command on X11SPD-F with AOC-CGP-i2, 
                 slot location under add-on section should show "MicroLP".
   Check list  : 302-OB-XX
6. Enhancement : Support JSON serdes array parsing.
   Description : Support JSON serdes array parsing.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
7. New Feature : Add new command option --pw_file.
   Description : Command option --pw_file allowed user to provide password
                 through password file for security concern.
   Issue ID    : Internal improvement
   Validation  : Executing MountIsoImage, SetBiosPassword, SetBmcPassword, 
                 SetCmmPassword or TpmProvision command with --pw_file option 
                 should complete normally.
   Check list  : 1002-OB-XX, 509-XX-XX, 804-XX-XX, 1304-OB-XX, 1503-OB-XX
8. Enhancement : Hide setting name which should be invisible to user in HII.
   Description : For HII dependency, if the setting is designed to be invisible 
                 to user, show value instead of setting name.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 502-XX-XX
9. Fix         : BIOS TUI segmentation fault when option string width exceeds 
                 parent window.
   Description : If option string width is larger than its parent window width, 
                 limit the showed option to the parent window width with "..." 
                 to represent the option string is shorten. User can press hot
                 key <S> to disply full option string content.
   Issue ID    : Customer report
   Validation  : None
   Check list  : 502-IB, 502-OB
10.Enhancement : Correct validif location for HII BIOS configuration.
   Description : Validif location in HII bios configuration should be below the
                 option enclosure. 
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg or GetDefaultBiosCfg command on 
                 Purley or later platform and check validif location in the bios
                 configuration file.
   Check list  : 501-XX-XX
11.Enhancement : Handle unexpected data length from SW FRU0 read command.
   Description : If response data length from SW FRU0 reading command is not
                 expected, SUM treats as no DCMS key and continue the process.
   Issue ID    : Internal improvement
   Validation  : Setup B1SA4 with BMC FW before April, 2016. To cause BMC 
                 responds with unexpected data length for SW FRU0 read command, 
                 use ipmi raw command <30 68 15 00 00 00 FF> to write one byte 
                 in SW FRU0. Then execute ActivateProductKey command with DCMS
                 key should complete normally.
   Check list  : 201-XX-XX, 202-XX-XX
12.New Feature : Support secure flash for UpdateCMM command.
   Description : Support secure flash for UpdateCMM command. Reset CMM when 
                 uploading CMM FW failed.
   Issue ID    : None
   Validation  : On CMM, firstly, flash the CMM with production signed CMM 
                 firmware. Then, execute UpdateCMM command with debug signed CMM
                 firmware. The exception with error message "Error! Firmware image 
                 verification failed!" should be thrown. 
   Check list  : 1201-OB-XX
13.Enhancement : Change year information in copyright notice from 2019 to 
                 2013-2019.
   Description : Change year information in copyright notice from 2019 to
                 2013-2019.
   Issue ID    : Internal improvement
   Validation  : Execute SUM command, year information in banner should be 
                 2013-2019.
   Check list  : XXXX-XX-XX
14.Fix         : Correct iso image path of MountIsoImage command.
   Description : SUM sends incorrect iso image path to BMC when iso file is
                 directly under shared folder.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 1001-OB-XX
15.New Feature : Add Serdes XML support.
   Description : Serdes now can support XML file.
   Issue ID    : None
   Validation  : None
   Check list  : None
16.Fix         : Increase in-band updateBios command stability.
   Description : Add delay between each BIOS region read/write/earse actions to
                 prevent OS hang.
   Issue ID    : 98282, 98313
   Validation  : On Apollo Lake platform, in-band UpdateBios command should 
                 complete normally over ssh.
   Check list  : 402-IB
17.New Feature : Add SetBmcPassword/SetCmmPassword command to support changing
                 BMC/CMM default default administrator account (ID 2) password.
   Description : Add SetBmcPassword/SetCmmPassword command to support changing 
                 BMC/CMM password for user ID 2 (default administrator account).
   Validation  : Change BMC/CMM password with SetBMCPassword/SetCmmPassword 
                 command, then execute OOB GetBmcInfo/GetCmmInfo command with 
                 new BMC/CMM password should complete normally.
   Check list  : 803-XX-XX, 804-XX-XX, 1303-OB-XX, 1304-OB-XX
18.New Feature : Support standard signed PSU FW update.
   Description : Support standard signed PSU FW update.
   Issue ID    : None
   Validation  : None
   Check list  : 1403-XX-XX
19.Enhancement : Reserve file download ID 23/24.
   Description : Reserve file download ID 23 for last BMC crash screenshot and 
                 ID 24 for video file download.
   Issue ID    : None
   Validation  : None
   Check list  : None
20.New Feature : Support H12 series MB.
   Description : Register H12 BMC GUID <0x42, 0x31, 0x30, 0x31, 0x4D, 0x53> for 
                 supporting H12 series MB.
   Issue ID    : 98256
   Validation  : Execute OOB UpdateBios or UpdateBMC command on H12SSW should 
                 complete normally.
   Check list  : 40X-OB-XX, 70X-XX-XX
21.Enhancement : Use random delay interval for file download retry to reduce
                 chance of confliction.
   Description : BMC will reject general file download command set if it is 
                 asked by different resources simultaneously. Pick delay 
                 randomly between 15 and 30 seconds when general file download
                 failed and retry again to reduce chance of confliction.
   Issue ID    : Customer report
   Validation  : Execute OOB GetDmiInfo command with two SUMs simultaneously.
                 Both SUMs should complete normally.
   Check list  : 
22.Enhancement : Add x-AMI attribute in BIOS configuraiton when IS_DEBUG_HII is
                 enabled.
   Description : Add x-AMI attribute in BIOS configuraiton when IS_DEBUG_HII is
                 enabled.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
23.New Feature : Support BMC CSRF_TOKEN feature.
   Description : Support BMC CSRF_TOKEN feature for cross site request forgery
                 protection. 
   Issue ID    : None
   Validation  : Execute OOB UpdateBios, OOB UpdateBmc, UpdateCmm and OOB
                 UpdateRaidController command on platform with beta BMC FW 
                 image "BETA_X11_2019Q1_FEATURES_901_20190403" should complete
                 normally.
   Check list  : 401-OB-XX, 701-OB-XX, 1201-OB-XX, 1104-OB-XX, 1105-OB-XX
24.Enhancement : Remove redundant login check for OOB UpdateRaidController
                 command.
   Description : Redundant login check will cause login failure with SUM which
                 support CSRF_TOKEN.
   Issue ID    : Internal improvement
   Validation  : Execute OOB UpdateRaidController command should complete 
                 normally.
   Check list  : 1104-OB-XX, 1105-OB-XX
25.Enhancement : Continue bios update process when NM command failed with 
                 --force_update option for OOB UpdateBios command.
   Description : If NM command failed and user execute OOB UpdateBios command 
                 with --force_update option, skip SPS downgrade prevention check
                 and continue the update process. Warning message "Note: Skip 
                 SPS downgrade prevention checking. AC cycle might be needed 
                 after updating BIOS." will be displayed.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 401-OB-XX
26.Fix         : OOB UpdateBios command failed because of invalid reservation 
                 ID.
   Description : Reservation ID might become invalid in the middle of process
                 when SUM gets NM device ID. In this case, SUM should try to 
                 get NM device ID again with new reservation ID. Currently, SUM
                 will retry maximum 5 times with 2 seconds interval.
   Issue ID    : 95802
   Validation  : Stress test OOB UpdateBios command should complete normally.
   Check list  : 40X-OB-XX
27.New Feature : Display BIOS version and revision when GetBiosInfo command is 
                 executed with --showall.
   Description : If user execute GetBiosInfo command with --showall, SUM will
                 display BIOS version and revision information from DMI type 0.
   Issue ID    : Internal improvement
   Validation  : Execute GetBiosInfo command with --showall, BIOS version and
                 revision information should be displayed.
   Check list  : 306-XX-XX
28.Fix         : OOB GetBiosInfo command with --scan_rom might fail.  
   Description : Enable BMC force update feature when SUM fails to scan BIOS 
                 ROM and scan BIOS ROM to acquire up-to-date BIOS information
                 again. Then Disable the BMC force update feature.
   Issue ID    : Internal improvement
   Validation  : Setup a system without CPU and memory installed and use 
                 ipmitool to power on the system. Then execute OOB GetBiosInfo
                 command with --scan_rom. Command should complete normally with
                 "Note: Scan rom failed. Bypass ME and try again." message.
   Check list  : 310-OB-XX
29.New Feature : UpdatePsu command only supports signed PSU FW image.
   Description : For security concern, SUM will verify the user input PSU FW
                 is signed properly before continue the update PSU process.
   Issue ID    : Internal improvement
   Validation  : SUM will throw exception if user execute UpdatePSU command
                 with unsigned or invalid PSU FW.
   Check list  : 1401-XX-XX
30.New Feature : Add SUM version and file creation timestamp in DMI information
                 and configuration file. 
   Description : SUM version and file creation timestamp is added in the 
                 configuration files generated by GetCurrentBiosCfg, 
	         GetDefaultBiosCfg, GetBmcCfg, GetCmmCfg and GetRaidCfg 
		 commands and DMI information file generated by GetDmiInfo 
		 and EditDmiInfo commands.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg, GetDefaultBiosCfg, GetBmcCfg, 
                 GetCmmCfg, GetRaidCfg, GetDmiInfo or EditDmiInfo command. The
                 SUM version and file creation date should show on the top of 
                 generated file.
   Check list  : 501-XX-XX, 502-XX-XX, 503-XX-XX, 1106-XX-XX, 1107-XX-XX, 
                 801-XX-XX, 1301-XX-XX, 601-XX-XX, 603-XX-XX, 604-XX-XX
31.New Feature : Support X12 series MB.
   Description : Register BMC GUID <0x43, 0x31, 0x30, 0x31, 0x4D, 0x53> for
                 supporting X12 series MB.
   Issue ID    : 98256
   Validation  : Execute OOB UpdateBios or UpdateBMC command on X12 platform 
                 should complete normally.
   Check list  : 40X-OB-XX, 70X-XX-XX
32.New Feature : Add --file_only option to display file information only.
   Description : Add --file_only option for in-band GetBiosInfo, GetBmcInfo,
                 GetCmmInfo and GetRaidControllerInfo commands which works with
	         --file option to display only information of input file.
   Issue ID    : Internal improvement
   Validation  : Execute in-band GetBiosInfo, GetBmcInfo, GetCmmInfo or 
                 GetRaidControllerInfo command with --file_only and --file 
                 option. Only input file information should be displayed.
   Check list  : 307-IB, 310-IB, 1104-IB, 312-IB
33.Fix         : GetTpmInfo command shows incorrect TPM version.
   Descriptin  : SUM filled TPM information incorrectly when sending raw 
                 command to BMC for INTEL OTA solution. 
   Issue ID    : Customer report
   Validation  : TPM information should not be changed after executing TpmManage
                 command with valid use case on system with TPM 2.0 without
                 rebooting system.
   Check list  : 1504-XX-XX
34.Fix         : In-band UpdateBMC command might fail on X10 platform.
   Descriptin  : Newer X10 BMC FW image adds 4 more bytes information in part 
                 3. Therefore, SUM needs to modify the part 3 block size 
		 calculation accordingly.
   Issue ID    : Customer report
   Validation  : On X10SLH, executing in-band UpdateBMC command to update BMC
                 FW with IBM_X10_375.bin should complete normally.
   Check list  : 40X-IB
35.Fix         : CheckAssetInfo command shows incorrect informaion in 
                 "Add-on PCI Device" section.
   Descriptin  : Slot number spec in DMI type 9 uses 4 bits to represent slot 
                 number. However, 8 way systems have more than 15 onboard 
		 slots. Therefore, exception which uses 1 byte to hold slot 
		 number has to be made for 8 way systems.
   Issue ID    : 98949
   Validation  : Executing CheckAssetInfo command on X11OPi should complete
                 without any "Unknown" field under "Add-on PCI Device" section.
   Check list  : 302-OB-XX
36.Fix         : Subclass field of CheckAssetInfo command shows "Unknown".
   Descriptin  : Update PCI mapping table according to "PCI code and ID 
                 Assignment Specification 1.11".
   Issue ID    : 99020
   Validation  : Executing CheckAssetInfo command on X11SPW, the subclass of 
                 "Mass storage controller" under onboard PCI device section 
                 should not show "Unknown" 
   Check list  : 302-OB-XX
37.Enhancement : BIOS configuration option string dependency improvement. 
   Description : An option string will be hidden when ValidIf is false with user
                 invisble variable. A ValidIf string for a option string will be 
		 hidden when ValidIf is true with user invisble variable.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 501-XX-XX, 503-XX-XX 
38.Fix         : Correct BMC/CMM LAN mode wording from "Bonding" to "Failover".
   Descriptin  : Correct BMC/CMM LAN mode wording from "Bonding" to "Failover".
   Issue ID    : Internal improvement
   Validation  : Execute GetCmmCfg/GetBmcCfg commands, the options for LanMode
                 should be "Dedicated", "Shared" and "Failover".
   Check list  : 801-XX-XX, 802-XX-XX, 1301-OB-XX, 1302-OB-XX
39.Enhancement : Correct GetPsuInfo command description in help message.
   Descriptin  : Correct GetPsuInfo command description in help message.
   Issue ID    : Internal improvement
   Validation  : Execute GetPsuInfo command with -h, the description should be 
                 "Prints the PSU information on the managed system". 
   Check list  : None
40.Fix         : Executing TpmManage command with --reboot will timeout if it is
                 preceded by a TpmManage command without --reboot.
   Descriptin  : When user executes TpmManage command with a valid use case 
                 without option --reboot odd times followed by a valid use case
                 with --reboot, system cannot apply use case successfully
                 because SUM sends incorrect signature to BMC.
   Issue ID    : Internal improvement
   Validation  : Execute TpmManage command with a valid use case without option
                 --reboot followed by another TpmManage command with a valid use
                 case and option --reboot. The TpmManage command should complete
                 successfully.
   Check list  : 1503-XX-XX, 1504-XX-XX, 1505-XX-XX, 1506-XX-XX, 1507-XX-XX,
                 1508-XX-XX, 1509-XX-XX, 1510-XX-XX, 1511-XX-XX, 1512-XX-XX
41.Fix         : Commands failed due to file creation failure on Windows when
                 executing command with IPv6 address.
   Descriptin  : Executing following commands on Windows with IPv6 address 
                 failed due to file creation failure: OOB UpdateBios command 
                 with --preserve_setting, GetBmcCfg, ChangeBmcCfg, GetCmmCfg, 
                 ChangeCmmCfg, ChangeRaidCfg and GetRaidCfg commands.
   Issue ID    : Internal improvement
   Validation  : Executing GetBmcCfg command with IPv6 address on Windows 
                 should complete normally.
   Check list  : 407-OB-XX, 801-XX-XX, 802-XX-XX, 1301-OB-XX, 1302-OB-XX, 
                 1107-XX-XX, 1108-XX-XX
42.New Feature : Support X11 series MB with NUVOTON BMC chip.
   Descriptin  : Register BMC GUID <0x45, 0x31, 0x30, 0x31, 0x4D, 0x53> for
                 supporting X11 series MB with NUVOTON BMC chip. 
   Issue ID    : Internal improvement
   Validation  : Execute OOB UpdateBios or UpdateBMC command on X11 platform
                 with NUVOTON BMC chip should complete normally.
   Check list  : 40X-OB-XX, 70X-XX-XX
43.Enhancement : Boot option string partial matching did not work for boot
                 option not beginning with "Boot Option #".
   Descriptin  : Boot option string partial matching was designed for boot 
                 option beginning with "Boot Option #". Boot option starts with
                 "UEFI Boot Option #", "DUAL Boot Option #" and  "LEGACY Boot 
                 Option #" were not included. The revised boot option string 
                 partial matching will be applied to "Boot Option #" can be 
                 found between index 0 and 9.
   Issue ID    : Internal improvement
   Validation  : Setup a system with BIOS possessing boot option starting with 
                 "UEFI Boot Option #", "DUAL Boot Option #" or "LEGACY Boot 
                 Option #". Removing device information for a boot option after
                 the first colon. For example, "Network:IBA GE Slot 0200" 
                 becomes "Network" after removing ":IBA GE Slot 0200". Executing
                 ChangeBiosCfg command should complete normally without 
                 exception thrown.
   Check list  : 504-XX-XX 
44.Enhancement : BMC LAN configuration supports Redfish.
   Description : For OOB, If Redfish is supported by BMC, SUM gets/changes LAN
                 configuration through both Redfish API and IPMI raw command.
                 If Redfish is not supported by BMC, SUM will get LAN
                 configuration through IPMI raw command and LAN configuration
                 will be treated as read-only. SUM will add comments to LAN
                 configuration table to explain why the changes do not take
                 effect. 
                 For in-band, SUM gets/changes LAN configuration through
                 IPMI raw command only. If BMC doesn't support needed IPMI raw
                 command. The associated table will be hidden by SUM.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 801-XX-XX, 802-XX-XX
45.New Feature : SUM supports IP protocol status in BMC LAN table.
   Description : SUM supports IP protocol status in BMC LAN table. This setting
                 includes IPv4, IPv6 and Dual modes. This setting will be hidden
                 if BMC doesn't support this setting.
   Issue ID    : None
   Validation  : Execute GetBmcCfg command on X11SPi-TF with BMC beta FW
                 "BETA_X11DP_IP_STACK_SELECTION_AND_INFO_975_20190322". The
                 setting "IPProtocolStatus" should be in the BMC LAN table.
                 Change the IP protocol status from "IPv4" to "Dual" and then
                 execute ChangeBmcCfg command to update BMC configuration. The
                 setting "IPProtocolStatus" should be changed to dual mode.
   Check list  : 801-XX-XX, 802-XX-XX
46.Enhancement : Redesigned LAN table configuration for GetBmcCfg and 
                 ChangeBmcCfg commands.
   Description : For OOB, If Redfish is supported by BMC, SUM gets/changes IPv4
                 configuration through Redfish API. If Redfish is not supported
                 by BMC, SUM will get IPv4 configuration through IPMI raw
                 command and IPv4 configuration will be treated as read-only.
                 For in-band, SUM gets/changes IPv4 configuration through IPMI
                 raw command only.
   Issue ID    : None
   Validation  : V1. First, execute in-band GetBmcCfg command to get BMC
                     configuration with BMC LAN table, Second, change IPv4
                     configuration in IPv4 group in BMC LAN table. Third,
                     execute in-band ChangeBmcCfg command to update BMC
                     configuration. Fourth, execute in-band GetBmcCfg command to
                     get BMC configuration, IPv4 configuration should take
                     effect.
                 V2. If BMC FW supports Redfish API getting/setting.
                     First, execute OOB GetBmcCfg command to get BMC
                     configuration with BMC LAN table, Second, change IPv4
                     configuration in IPv4 group in BMC LAN table. Third,
                     execute OOB ChangeBmcCfg command to update BMC
                     configuration. Fourth, execute OOB GetBmcCfg command to
                     get BMC configuration, IPv4 configuration should take
                     effect.
   Check list  : 801-XX, 802-XX
47.New Feature : Supports IPv6 configuration for OOB GetBmcCfg command, in-band
                 GetBmcCfg and ChangeBmcCfg commands.
   Description : For OOB, SUM gets IPv6 configuration through IPMI raw command
                 and IPv6 configuration will be treated as read-only.
                 For in-band, SUM gets/changes IPv6 configuration through IPMI
                 raw command.
   Issue ID    : None
   Validation  : V1. Executing OOB GetBmcCfg command can get BMC configuration
                     with IPv6 table.
                 V2. First, execute in-band GetBmcCfg command to get BMC
                     configuration with IPv6 table, Second, add a IPv6 static
                     address in IPv6 static group in BMC LAN table. Third,
                     execute ChangeBmcCfg command to update BMC configuration.
                     Fourth, Execute GetBmcCfg command to get BMC configuration.
                     The IPv6 address should be added in the IPv6 static table.
   Check list  : 801-XX-XX, 802-IB
48.Fix         : SUM stucks when executing commands with invalid IPv6 address 
                 on Windows OS. 
   Description : Add timeout for UDP socket to avoid the stuck situation.
   Issue ID    : Internal improvement
   Validation  : Exception should be thrown when executing SUM command with 
                 option -i and invalid IPv6 address. 
   Check list  : XXXX-XX-XX
49.Fix         : SUM stucks when executing commands with valid IPv6 address
                 on some Windows OS.
   Description : When finding network interface of IPv6, if SUM tests with 
                 invalid network interface or network interface which is not 
                 suitable for IPv6, SUM will stuck bacause there is no timeout
                 set for UDP socket.
   Issue ID    : Internal improvement
   Validation  : Executing SUM command with option -i and valid IPv6 address 
                 should complete normally.
   Check list  : XXXX-XX-XX
50.Fix         : OOB UpdateBios, OOB UpdateBmc, OOB GetBmcCfg, OOB ChangeBmcCfg
                 and OOB UpdateRaidController commands failed when executing
                 with IPv6 address.
   Description : OOB UpdateBios, OOB UpdateBmc, OOB GetBmcCfg, OOB ChangeBmcCfg
                 and OOB UpdateRaidController commands failed when executing
                 with IPv6 address. 
   Issue ID    : Internal improvement
   Validation  : Execute OOB GetBmcCfg command with option -i and IPv6 address
                 on X11SPi-TF with BMC FW "SMT_X11AST2500_169". The OOB
                 GetBmcCfg command should complete normally with message
                 "BMC LAN content is available via Redfish.".
   Check list  : 4XX-OB-XX, 7XX-OB-XX, 801-OB-XX, 802-OB-XX, 1106-OB-XX
51. Fix        : Swapping boot option orders did not take effect when boot
                 option string partial matching is applied.
   Description : When boot string partial matching was applied, SUM still tried
                 to match the full boot option string. It caused SUM failed to
                 match a proper boot option string and swapping boot option 
                 orders would not be taken effect.
   Issue ID    : Internal improvement
   Validation  : Swap two boot option order with removing device information 
                 after the first colon. For example, "Network:IBA GE Slot 0200" 
                 becomes "Network" after removing ":IBA GE Slot 0200". Executing
                 ChangeBiosCfg to swap boot option orders should be taken effect
                 after system reboot.
   Check list  : 504-XX-XX


V2.2.0-p1 (2019/04/11)
======================
1. Fix         : Slot type of add-on network interface shows unknown on Twin
                 and FatTwin systems for CheckAssetInfo command.
   Description : Add new slot type definitions (7~11) for platform before 
                 Purley.
   Issue ID    : 97691
   Validation  : Execute CheckAssetInfo command on Twin or FatTwin system 
                 with add-on NIC. Slot type information of the add-on NIC should
                 display correctly.
   Check list  : 302-OB-XX
2. Fix         : SUM might crash when executing in-band UpdateBIOS command on 
                 AMD platform.
   Description : Because of uninitialzed variable, SUM might crash when 
                 executing in-band UpdateBIOS command on AMD platform.
   Issue ID    : 96963
   Validation  : Executing in-band UpdateBIOS commmand on AMD platform with 
                 Windows OS should complete normally.
   Check list  : 40X-IB
3. New Feature : Add --show_multi_full option for multi-node mode. 
   Description : By default, in multi-node mode, SUM only disaplys intermediate
                 status of managed systems which are in either running or retry
                 stage. If user executes SUM command with --show_multi_full 
                 option, SUM displays intermediate status for all managed 
                 systems. 
   Issue ID    : Internal improvement
   Validation  : Execute SUM command in multi-node mode with --show_multi_full,
                 then press "Enter". SUM should display current execution status
                 of all managed systems.
   Check list  : XXXX-OB-MM
4. Fix         : SUM displays incorrect information when executing 
                 CheckOOBSupport command on platform before Purley.
   Description : Add feature flag check for "BIOS Supports OOB BIOS Config" 
                 field and correct feature flags check for "BIOS Supports OOB 
                 DMI Edit" field.
   Issue ID    : Internal improvement
   Validation  : Execute CheckOOBSupport command on platform before Purley with
                 BIOS which does not support OOB bios configuration or OOB DMI
                 edit. SUM should display correct information accordingly.
   Check list  : 301-XX-XX


V2.2.0 (2019/02/20)
======================
1. Fix         : Remove the exported debug file in OOB ChangeBiosCfg command.
   Description : When executing OOB ChangeBiosCfg command, the debug file
                 "bios.bin.upload" should not be exported.
   Issue ID    : Internal improvement
   Validation  : Executing OOB ChangeBiosCfg command should complete normally
                 without "bios.bin.upload" exported.
   Check list  : 504-OB-XX
2. Enhancement : Replace plain --ip and --pw texts with asterisks in SUM command
                 log.
   Description : For security concern, replace plain --ip and --pw texts with
                 asterisks in SUM command log.
   Issue ID    : Internal improvement
   Validation  : Firstly, execute TpmProvison or MountIsoImage comand. Secondly,
                 check SUM command log. --ip and --pw texts should be replaced
                 with "*****".
   Check list  : 1001-OB-XX, 1501-OB-XX
3. Enhancement : Remind user to use double quote in command arguments on
                 Windows.
   Description : Add descriptions in command help and user guide to remind user
                 to use double quote in command arguments on Windows.
   Issue ID    : Customer report
   Validation  : The -u and -p texts in help message and user guide should be
                 double quoted.
   Check list  : 101-IB, 102-IB
4. Enhancement : Update mapping table for product ID and board name.
   Description : Update mapping table for product ID and board name. Possible
                 affected command: GetEventLog.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
5. Enhancement : Solve TUI font size is too small on Windows 7.
   Description : Solve TUI font size is too small on Windows 7.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with --tui option. The font
                 size should large enough to read.
   Check list  : 502-IB, 502-OB
6. Enhancement : Add workaround for client ME platform US BIOS update.
   Description : US BIOS for client ME platform ignores OFBD TC55/SubFunc 4.
                 SUM uses return status 0x00 to recognize client ME platform
                 instead.
   Issue ID    : Internal improvement
   Validation  : Executing inband UpdateBios command on B1SA4, B11SRE or
                 B11SCG-ZTF should complete normally.
   Check list  : 401-IB
7. Enhancement : CURL returns CURLE_HTTP_RETURNED_ERROR instead of CURLE_OK when
                 http code is not 200.
   Description : CURL teturns CURLE_HTTP_RETURNED_ERROR instead of CURLE_OK when
                 http code is not 200.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
8. Fix         : Correct vendor, subvendor, device name and subsystem name
                 information in CheckAssetInfo command output.
   Description : Vendor, subvendor, device name and subsystem name information
                 were placed incorectly in CheckAssetInfo command output.
   Issue ID    : Internal improvement
   Validation  : Vendor, subvendor, device name and subsystem name
                 information in CheckAssetInfo command output should match to
                 their field names.
   Check list  : 302-OB-XX
9. New Feature : Add new command option -f for BMC/CMM password file.
   Description : Command option -f is allowed user to assign BMC/CMM passowrd
                 through passowrd file for security concern.
   Issue ID    : Customer request
   Validation  : Executing any OOB command with -f option with the assigned
                 password file should pass account authentication.
   Check list  : XXXX-OB
10.Fix         : Board ID was N/A after BMC factory default loaded without
                 reboot.
   Description : When BMC factory default is loaded with reboot, board ID is
                 cleared in board info. Use IPMI raw command 0x30 0x21 to get
                 board ID instead.
   Issue ID    : Customer report
   Validation  : Firstly, Load BMC factory default. Secondly, Board ID in OOB
                 GetBiosInfo command output should not be N/A.
   Check list  : 305-OB
11.Enhancement : Skip EDR switch configuration for CMM management commands.
   Description : Skip EDR switch configuration for CMM management commands
   Issue ID    : Internal improvement
   Validation  : Install EDR switch. Executing OOB GetCmmCfg or ChangeCmmCfg
                 command should complete normally.
   Check list  : 1301-OB, 1302-OB
12.Fix         : Fix multi node command output message.
   Description : The system list file name in multi node command output
                 message was inaccurate.
   Issue ID    : Internal improvement
   Validation  : Firstly, execute any multi node command. Secondly, check the
                 output message
                 "Start to do <command> for systems listed in <file>". <file>
		 should be consistent to -l option file name.
   Check list  : XXXX-OB-MM
13.Enhancement : Enhance multi node command output message
   Description : Add execution log path message at the end of multi node
                 command execution.
   Issue ID    : Customer request
   Validation  : Firstly, execute any multi node command.  Secondly, check the
                 the last line of output message. The execution log path
	         message should be output in the last line of output message.
   Check list  : XXXX-OB-MM
14.Enhancement : Update product ID and vendor ID external data.
   Description : Update product ID and vendor ID external data.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
15.Enhancement : Support syslog server FQDN for BMC configuration.
   Description : Support syslog server FQDN for BMC configuration.
   Issue ID    : Customer request
   Validation  : Firstly, set a BMC FW with syslog FQDN REDFISH function.
                 Secondly, cxecute GetBmCCfg command to get current BMC
                 configuration. Thirdly, change "SyslogServer" to a FQDN.
                 Forthly, execute ChangeBmcCfg command to change BMC
                 configuration. Fifthly, execute GetBmcCfg to get the new BMC
                 configuration. Sixthly, the "SyslogServer" should be changed to
                 the assigned FQDN.
   Check list  : 801-OB-XX, 802-OB-XX
16.Fix         : Fix escape sequence key issue in FreeBSD 11.2 local host
                 terminal.
   Description : Fix escape sequence key issue in FreeBSD 11.2 local host
                 terminal.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with --tui option on
                 FreeBSD 11.2 local terminal. The keystroke <F1>, <F2>, <F3>,
                 <F4>, <back space> and key pad <+> should work normally.
   Check list  : 502-IB, 502-OB
17.Enhancement : Add TUI support on FreeBSD local host terminal.
   Description : FreeBSD local host terminal dimension was unable to fit the
                 required BIOS TUI dimension 30 by 100.
   Issue ID    : Internal improvement
   Validation  : Executing GetCurrentBiosCfg command with --tui option
                 on FreeBSD local host terminal should work normally.
   Check list  : 502-IB, 502-OB
18.Enhancement : Revise x86_64 as x64 for Windows in release documents.
   Description : Revise x86_64 as x64 for Windows in release documents.
   Issue ID    : Customer report
   Validation  : Check user guide, validation note and release note.
   Check list  : None
19.Enhancement : Help and error messages for --file are revised to be specific
                 to input or output file.
   Description : Help and error messages for --file are revised to be specific
                 to input or output file.
   Issue ID    : Customer report
   Validation  : Execute SUM with arguments "-h -c UpdateBios". The help message
                 for --file should be specific to input file. In constrast,
		 execute SUM with arguments "-c GetCurrentBiosCfg". The help
		 message for --file should be specific to output file.
   Check list  : 103-IB
20.Enhancement : Remove a hidden command, EditBiosCfg.
   Description : Remove a hidden command, EditBiosCfg.
   Issue ID    : Internal improvement
   Validation  : Execute EditBiosCfg command should report error message
                 "Command EditBiosCfg is unknown command".
   Check list  : None
21.Fix         : Fix segmentation fault when getting TPM information from
                 TpmManage or GetTpmInfo command with problematic BIOS.
   Description : A segmentation would occur if BIOS dose not perform OTA use
                 case and SUM tried to get TPM information. Because SUM would get
                 previous uploaded data, then create a invalid object.
   Validation  : Executing TpmManage command with option --provision on X11DAi-N
                 with TPM and BIOS "X11DAi-N_CLX19.116" should complete
                 normally.
   Check list  : 1503-XX-XX, 1504-XX-XX, 1505-XX-XX, 1506-XX-XX, 1507-XX-XX,
                 1508-XX-XX, 1509-XX-XX, 1510-XX-XX, 1511-XX-XX, 1512-XX-XX
22.Fix         : SMCI OTA use case cannot be performed by US BIOS.
   Description : Fix error setting TPM properties for SMCI OTA. SUM tool would
                 set TPM properties based on default TPM properties status, but
                 it should be set based on current TPM properties status.
   Issue ID    : Internal improvement
   Validation  : Setup a X11DGQ with TPM 1.2. Executing TpmManage command with
                 option --provision should complete normally. Then execute
                 GetTpmInfo command to get TPM capabilities. The TPM provision
                 flag should be raised.
   Check list  : 1505-XX-XX, 1506-XX-XX, 1507-XX-XX, 1508-XX-XX, 1509-XX-XX,
                 1510-XX-XX, 1511-XX-XX, 1512-XX-XX
23.Fix         : Fix exception message of SMCI OTA capabilities checking.
   Description : An exception with incorrect message will be thrown if TPM clear
                 or TPM provision fails.
   Validation  : Execute TpmManage command with option --provision on X11DGQ
                 with TPM 2.0 and BIOS "X11DGQ19-CLX.128". An exception should
                 be thrown with error message
		 "Wrong TPM provision table content: Auto provision failed".
   Check list  : 1506-XX-XX, 1508-XX-XX, 1511-XX-XX, 1512-XX-XX
24.Fix         : Remove triggerring redundant reboot action in TpmManage 
                 command.
   Description : System reboot command would be triggered twice due to 
                 problematic processing flow.
   Validation  : Executing TpmManage command with option --provision should
                 complete normally. The reboot message 
                 "Going to soft shutdown the managed system" and
                 "System reboot command issued"  should be only shown once in 
                 command output for OOB and inband, respectively.
   Check list  : 1505-XX-XX, 1506-XX-XX, 1507-XX-XX, 1508-XX-XX, 1509-XX-XX,
                 1510-XX-XX, 1511-XX-XX, 1512-XX-XX
25.Fix         : Missing the action done status message in the affected 
                 commands.
   Description : Missing the action done status message in the commands which
                 require reboot to take effect.
   Validation  : Execute LoadDefaultBiosCfg command without assigning option 
                 --reboot. The command output should contain the status message
                 indicating that the default BIOS configuration is loaded.
   Check list  : 506-XX-XX


V2.2.0 (2019/01/23)
======================
1. Enhancement : For Linux and FreeBSD, update ncurses header files to 
                 NCURSES_VERSION_PATCH 20181215.
   Description : For Linux and FreeBSD, update ncurses header files, 
                 "ncurses.h" and "ncurses_dll.h," to NCURSES_VERSION_PATCH
                 20181215; "ncurses_dll.h" version is v1.11 2018/06/23.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None 
2. Fix         : Help message of BIOS TUI might not update.
   Description : If switch to root menu with setting, then switch to another
                 root menu without setting, the help message window would remain
                 previous message. Add a flush to clear previous message when 
                 switch root menu or setting.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with option --tui. Switch
                 root menu to "Advanced". The help message will show "Boot
                 Feature Configuration Page". then switch back to "Main". The
                 help message should be cleared after this operation.
   Check list  : 502-XX
3. Enhancement : Close RMCP session before executing TUI.
   Description : Closing RMCP session takes long time because session has expired
                 during executing GetCurrentBiosCfg command with option --tui.
                 Close RMCP session before invoking TUI since GetCurrentBiosCfg
                 command with option --tui no longer needs RMCP session.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with option --tui. Then exit
                 execution. execution should be done quickly.
   Check list  : 502-XX
4. Enhancement : OOB ChangeBmcCfg for Syslog table would not take effect with
                 certain BMC FW.
   Description : REDFISH API request through CURL with "PATCH" method would fail
                 because CURL returns non-CURLE_OK. Increase maximum retry count
                 up to 15 times and delay to six seconds to cover this
                 situation.
   Issue ID    : 95802, 95834 
   Validation  : Running TC215 should pass for BMC FW "SMT_B11IPMI_356_REDFISH".
   Check list  : 802-OB-XX
5. Enhancement : Add title on upper border of dialog box.
   Description : Add title on upper border of dialog box.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with option --tui. Then
                 press keystroke <ESC>. The title "Exit Without Saving" should
                 be included on upper border.
   Check list  : 502-XX
6. Fix         : Scroll bar of BIOS TUI might not display properly when the
                 number of data is reduced.
   Description : Scroll bar of BIOS TUI might not display properly when the
                 setting are hidden because of dependency rules.
   Issue ID    : Internal improvement
   Validation  : Follow steps below.
                 1.Execute GetCurrentBiosCfg command with option --tui on
                   X11DAi-N.
                 2.Switch root menu to IPMI.
                 3.Get into sub-menu "BMC Network configuration".
                 4.Change setting "IPV6 Support" to enabled.
                 5.Change setting "Configuration Address source" to static.
                 6.Move to setting "Prefix Length".
                 7.Change setting "IPV6 Support" back to disabled.
                 8.Pressing key <UP> or <DOWN> should not hang.
   Check list  : 502-XX
7. Enhancement : Improve BIOS TUI scroll operation for large skipping area.
   Description : If skipping area is large, some information would not be
                 showable.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 502-xx
8. Fix         : The fan 2 information was not shown in GetPsuInfo command
                 output.
   Description : PSU module information must be obtained before getting fan 2
                 information. If not, SUM would not try to get fan 2
                 information.
   Issue ID    : Customer report
   Validation  : Execute GetPsuInfo command on the system with two fans power
                 supplier. The fan 2 information should be displayed.
   Check list  : 1401-XX-XX
9. Enhancement : SUM will handle new BIOS update status code 0x16 from BMC.
   Description : BMC implements BIOS ME downgrade prevention with Cascade Lake
                 CPU and adds a new status code "usbcBiosBlockClxCPU". OOB BIOS
                 downgrade from ME version 4.1.XXX to 4.0.XXX. The execution
                 should be blocked because BMC updates ME downgrade rule. SUM
                 handles it accordingly.
   Issue ID    : None
   Validation  : None
   Check list  : 4XX-OB-XX
10.Fix         : ME downgrade prevention rule does not work for in-band
                 BIOS update with Cascade Lake CPU. Add BIOS provided error
                 message as well.
   Description : SUM did not prevent ME downgrade for in-band BIOS update with
                 Cascade Lake CPU for some MBs. SUM added typecode 5C signature
                 length field parsing and get correct signature from BIOS 
                 response. 
                 If downgrade fails, BIOS may response error message to SUM. SUM
                 would also show it to users.
   Issue ID    : 96319
   Validation  : Setup a X11DPL system with BIOS "X11DPLI8.C21". Executing in-band
                 UpdateBios command to downgrade BIOS to "X11DPLI_8.615" should
                 be terminated with BIOS error message.
   Check list  : 4XX-IB
11.Enhancement : Show secure flash information in in-band GetBiosInfo and
                 UpdateBios command output.
   Description : Show secure flash information in in-band GetBiosInfo and
                 UpdateBios command output.
   Issue ID    : Internal improvement 
   Validation  : Execute in-band GetBiosInfo command on A2SDV with BIOS
                 "A2SDVL8.C17". A message "Secure Flash: Enable" should be 
                 displayed in the command output.
   Check list  : 305-IB, 4XX-IB
12.Fix         : Remove debug message for GetDmiInfo command in multiple node
                 mode.
   Description : Remove debug message for GetDmiInfo command in multiple node
                 mode.
   Issue ID    : Internal improvement
   Validation  : Execute GetDmiInfo command in multiple node mode. The command
                 output should not include debug message
                 "CSumCmdGetDmiInfo execMulti".
   Check list  : None
13.Enhancement : Record every exception and retry log in multiple node log.
   Description : Record every exception and retry log in multiple node log.
   Issue ID    : Internal improvement
   Validation  : None 
   Check list  : XXXX-OB-MM
14.Enhancement : Add a message for SUM in-band command with option --reboot
                 after issuing system reboot command.
   Description : Add a message "System reboot command issued" after issuing
                 system reboot command, then check execution results is okay.
   Issue ID    : Internal improvement 
   Validation  : Execute UpdateBios command with option --reboot. The message
                 "System reboot command issued" should be displayed in command
                 output.
   Check list  : 4XX-IB
15.Enhancement : Enhance exception message of OTA feature flags checking.
   Description : When both Intel OTA and SMCI OTA support flags are not raised
                 in feature flags, SUM should show both Intel OTA and SMCI OTA
                 unsupported reasons.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 1503-XX-XX, 1504-XX-XX, 1505-XX-XX, 1506-XX-XX, 1507-XX-XX,
                 1508-XX-XX, 1509-XX-XX, 1510-XX-XX, 1511-XX-XX, 1512-XX-XX
16.Fix         : GetTpmInfo and TpmManage commands was not supported in some BMC
                 firmware revisions for Purley.
   Description : Check the SMCI OTA feature support in the BIOS and BMC feature
                 flags separately. BMC feature flag only needs version 1.6.
   Issue ID    : Internal improvement
   Validation  : Executing OOB GetTpmInfo command on X11DAi-N with BMC FW
                 "SMT_X11AST2500_164" should complete normally.
   Check list  : 1503-OB-XX, 1504-OB-XX, 1505-OB-XX, 1506-OB-XX, 1507-OB-XX,
                 1508-OB-XX, 1509-OB-XX, 1510-OB-XX, 1511-OB-XX, 1512-OB-XX
17.Fix         : In-band BIOS update failed on H11DST system.
   Description : In the past, SUM would terminate BIOS update process if BIOS
                 required data is not found by SUM.
                 Sync BIOS update flow with AFU tool. First, SUM sends a type
                 code 0x5c command to get a required pattern from BIOS.
                 Second, SUM searches this pattern in local BIOS image file.
                 Third, If SUM can't find this pattern in local BIOS image. SUM
                 sends another type code 0x5c command to BIOS. Fourth, based on
                 BIOS response, SUM determines whether to continue process.
   Issue ID    : 95427
   Validation  : Setup a H11DST system with BIOS "H11DST8.A04". Executing
                 in-band UpdateBios command to downgrade BIOS to "H11DST8.B16"
                 should complete normally.
   Check list  : 40X-IB
18.Fix         : Modified password in BIOS TUI was not exported to BIOS XML 
                 configuration.
   Description : Modified password in BIOS TUI was not exported to BIOS XML 
                 configuration in plain text. New SUM fix it by exporting it
                 in plain text to BIOS XML configuration.
   Issue ID    : Internal improvement
   Validation  : Firstly, execute GetCurrentBiosCfg command with --tui option.
                 Secondly, modify Administrator password.
                 Thirdly, pressing keystorke <F4> to "save & exit".
                 Fourthly, check if the modified password is taken effect to BIOS 
                 XML configuration in plain text.
   Check list  : 502-IB, 502-OB
19.Enhancement : String dialog box supports up to 511 characters in BIOS TUI.
   Description : String dialog box supports up to 511 characters in BIOS TUI.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
20.Enhancement : Add dialog window shadow.
   Description : Add dialog window shadow.
   Issue ID    : Internal improvement
   Validation  : Firsly, execute GetCurrentBiosCfg command with --tui option. 
                 Secondly, general help dialog box with shadow will be popped 
                 up by pressing keystroke <F1>.
   Check list  : 502-IB, 502-OB
21.Enhancement : Add comment "setting was modified in TUI" under modified
                 setting in BIOS XML configuration.
   Description : When modifying BIOS setting through BIOS TUI, the comment 
                 "setting was modified in TUI" will be attached under the
                 setting in the exported BIOS XML configuration.
   Issue ID    : Internal improvement
   Validation  : Firstly, execute GetCurrentBiosCfg command with --tui option. 
                 Secondly, modify any setting configuration.
                 Thirdly, pressing keystorke <F4> to "save & exit".
                 A comment "setting was modified in TUI" will be attached under
                 the setting in the exported BIOS XML configuration.
   Check list  : 502-IB, 502-OB   
22.Fix         : Replace first level comment tags <!-- --> with <?ReadOnly ?> 
                 to avoid nested comment issue in BIOS XML configuration.
   Description : Nested comment <!-- --> structure is not allowed in XML. When 
                 GetCurrentBiosCfg command generates BIOS XML configuration with 
                 nested comment structure, execute ChangeBiosCfg command would 
                 fail to parse.
   Issue ID    : Internal improvement
   Validation  : Firstly, Setup a B2SC1 system with BIOS "B2SC118.B20".
                 Secondly, execute GetCurrentBiosCfg command to get BIOS XML 
                 configuration. Thirdly, execute ChangeBiosCfg command should
                 complete normally. 
   Check list  : 504-XX-XX
23.Fix         : Fix inaccurate "ValidIf" condition for option string in "Setting
                 Option" in BIOS XML configuration.
   Description : "ValidIf" condition for option string was inaccurate in "Setting
                 Option" in BIOS XML configuration.
   Issue ID    : Internal improvement
   Validation  : Firstly, setup a B2SC1 system with BIOS "B2SC118.B20". Secondly,
                 execute GetCurrentBiosCfg command to get BIOS XML configuration. 
                 Thirdly, assume the number of avaiable processor cores is six,
                 the ValidIf for the third option string "2" in 
                 "Active Processor Cores" should be "( 6 > 2 )" rather than 
                 "( 6 <= 2 )".
   Check list  : 501-XX-XX
24.Enhancement : Support option string dependency checking in BIOS XML 
                 configuration.
   Description : When option string contains ValidIf condition, the ValidIf 
                 must be evaluated as true to be selected. SUM will throw 
                 exception when the selected option string is evaluated as
                 false.
   Issue ID    : Internal improvement
   Validation  : Firstly, setup a B2SC1 system with BIOS B2SC118.B20. Secondly,
                 execute GetCurrentBiosCfg command to get BIOS XML
                 configuration. Thirdly, assume the number of processor cores is
                 six, the ValidIf condition for the seventh option string "6" in
                 "Active Processor Cores" is "( 6 > 6 )" which is evaluated as
                 false. Change the "selectedOption" to "6" in
                 "Active Processor Cores". Forthly, executing ChangeBiosCfg
                 command will throw exception with error code 318.5.
   Check list  : 504-XX-XX
25.Enhancement : Support option string dependency checking in BIOS TUI.
   Description : Support option string dependency checking in BIOS TUI.
   Issue ID    : Internal improvement
   Validation  : Firstly, setup a B2SC1 system with BIOS "B2SC118.B20".
                 Secondly, execute GetCurrentBiosCfg command with --tui option.
                 Assume the number of processor cores is six, the setting 
                 "Active Processor Cores" should only contains six option 
                 strings, "All", "1", "2", "3", "4" and "5".
   Check list  : 502-IB, 502-OB
26.Fix         : Revise instruction display rule for OOB UpdateBios command.
   Description : Troubleshooting instruction for OOB updateBios failed case
                 (because BIOS cannot enter ME recovery mode) should not be
                 shown in other cases.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 40X-OB-XX
27.Enhancement : Show upload status message when execute OOB updateBios command
                 with option --force_update.
   Description : SUM would not show any upload status message if execute OOB
                 updateBios command with option --force_update.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 406-OB-XX
28.Fix         : SUM in-band commands might fail on the system installed legacy
                 FreeBSD 11.2 because SMBIOS anchor string cannot be found.
   Description : UEFI/Legacy FreeBSD judgement should only depend on the
                 return code of system call kenv(). The kenv() function returns
                 0 if SMBIOS entry address can be retrieved (that means current
                 FreeBSD is UEFI). If an error occurs, a value of -1 is returned
                 and the global variable errno is set to indicate the error.
   Issue ID    : Internal improvement
   Validation  : Running TC305 should pass on the system installed legacy
                 FreeBSD 11.2.
   Check list  : XXXX-IB
29.Fix         : Console resize issue on Windows.
   Description : TUI can handle original console size on Windows under following
                 situations.
                 1. Console height is larger and width is smaller.
                 2. Console height is smaller and width is larger.
   Issue ID    : Internal improvement
   Validation  : Open a cmd console on Windows, Set console height to 60 and
                 width to 80. Executing GetCurrentBiosCfg command with option
                 --tui should complete normally.
   Check list  : 502-XX
30.Enhancement : TUI supports local terminal on non-GUI FreeBSD.
   Description : Use system console utility "vidcontrol" for changing FreeBSD
                 console size of local terminal on non-GUI FreeBSD.
   Issue ID    : Internal improvement
   Validation  : Executing GetCurrentBiosCfg command with option --tui in local
                 terminal on non-GUI FreeBSD 10.3 should complete normally.
   Check list  : 502-XX
31.Enhancement : Syslog settings may not be obtained from BMC through OOB
                 GetBmcCfg command.
   Description : This issue may happen under situations below:
                 1. REDFISH API request through CURL with "GET" method would
                    fail because CURL returns non-CURLE_OK.
                 2. REDFISH API request through CURL with "GET" method would
                    fail because CURL returns CURLE_OK, but HTTP code is not
                    200(OK).
                 Increase maximum retry count up to 15 times and delay to six
                 seconds to cover this situation.
   Issue ID    : 95752
   Validation  : Running TC215 should pass for BMC FW "SMT_MBIPMI_357_REDFISH".
   Check list  : 802-OB-XX


V2.2.0 (2018/12/27)
======================
1. Fix         : Fix incorrect execution path in multi-node log.
   Description : Execute SUM command in multi-node mode, the execution path in
                 multi-node log is incorrect. User home directory was prefixed
                 before executable name.
   Issue ID    : Internal improvement
   Validation  : Executing SUM command in multi-node mode, the execution path in
                 multi-node log should be absolute or relative path of SUM home
                 directory.
   Check list  : XXXX-OB-MM
2. Fix         : Remove TpmProvision command support on Purley and later
                 platforms.
   Description : Remove TpmProvision command support on Purley and later
                 platforms.
   Issue ID    : Internal improvement
   Validation  : Executing TpmProvision command on X11SPi-TF, SUM will throw
                 exception to instruct user to use TpmManage command instead.
   Check list  : 1501-OB-XX, 1502-OB-XX
3. Fix         : Remove BIOS version field for OOB GetBiosInfo, UpdateBios
                 and CheckOobSupport commands if command is executed through
                 IPMI interface.
   Description : Do not display "BIOS version" field for GetBiosInfo, UpdateBios
                 and CheckOobSupport commands if executing command through IPMI
                 interface. Because field BIOS version is only provided by
                 REDFISH interface.
   Issue ID    : Internal improvement 
   Validation  : Executing GetBiosInfo command through IPMI interface, The field
                 "BIOS version" will not be displayed.
   Check list  : 301-OB-XX, 305-OB-XX, 40X-OB-XX, 
4. Fix         : The syslog configuration does not take effect after executing
                 OOB ChangeBmcCfg command.
   Description : The syslog configuration in BMC configuration cannot be changed
                 because SUM did not handle response from BMC correctly. Add
                 retry up to five times with three seconds interval to avoid BMC
                 busy and no normal response.
   Issue ID    : 95592, 95731, 95738, 95754, 95776, 95777, 95801, 95802, 95821,
                 95834, 95842, 95876 and 95922
   Validation  : Changing syslog setting in BMC configuration should be
                 successfully after executing ChangeBmcCfg command. 
   Check list  : 802-OB-XX
5. Fix         : Support syslog configuration modification for US BMC.
   Description : The syslog configuration cannot be changed because the property
                 names "syslogServerIP" and "syslogPortNumber" are inconsistent
                 between TW's BMC and US BMC. These property names in USA's
                 BMC are "syslog ServerIP" and "syslog PortNumber".
   Issue ID    : 95592, 95731, 95738, 95754, 95776, 95777, 95801, 95802, 95821,
                 95834, 95842, 95876 and 95922
   Validation  : Changing syslog setting in BMC configuration should be
                 successfully after executing ChangeBmcCfg command.
   Check list  : 802-OB-XX
6. Fix         : Add SNMP service support checking for some old version of BMC
                 FWs which is not support SNMP service.
   Description : The SNMP service is not supported on some old version of
                 BMC FWs. The "SNMP" field in "ServiceEnableing" and
                 "ServicePort" tables should not be created if this feature is
                 not supported by BMC.
   Issue ID    : Customer report
   Validation  : Execute GetBmcCfg command on the managed system with the old
                 BMC FW which does not supported SNMP service. The "SNMP" field
                 in "ServiceEnableing" and "ServicePort" tables should not be
                 created.
   Check list  : 801-XX-XX
7. Fix         : The SNMP table in BMC configuration should be established only
                 when the BMC supports service SNMPV2 or SNMPV3 or both support.
   Description : In the previous design, The SNMP table in BMC configuration
                 will be established only when services SNMPV2 and SNMPV3
                 support in the same time. Now, the SNMP table will be
                 established even if only SNMPV2 or SNMPV3 is support.
   Issue ID    : Internal improvement
   Validation  : Execute GetBmcCfg command on the managed system with the BMC FW
                 which is only support SNMPV2. The SNMPV3 table will not be
                 created.
   Check list  : 801-XX-XX
8. Enhancement : For Purley and later platforms, the exit code changed to 11
                 when the BIOS password is too short or too long in command
                 SetBiosPassword.
   Description : In order to be consistent among platforms, revise to throw exit
                 code to 11 on Purley and later platforms when the BIOS password
                 is too short or too long in command SetBiosPassword.
   Issue ID    : 95737, 96108
   Validation  : Execute command SetBiosPassword with BIOS password length
                 shorter than three or longer than twenty. Exception should be
                 thrown with exit code 11 on all platforms.
   Check list  : 508-XX-XX
9. Fix         : Change BIOS password through command ChangeBiosCfg did not 
                 work on Purley and later platforms.
   Description : Attemping to change BIOS password through command ChangeBiosCfg
                 would cause an exception thrown with error code "319.1" and
                 error message "Password length is incorrect".
   Issue ID    : 95679, 95742, 95737, 95927, 96034, 96096, 96147, 96149
   Validation  : Firstly, change BIOS password on Purley and later platforms.
                 Secondly, executing command ChangeBiosCfg should complete
                 normally.
   Check list  : 505-XX-XX
10.Enhancement : Modify OOB CheckAssetInfo command output format.
   Description : For SSM to parse CheckAssetInfo command output, SUM uses 
                 duplicate pair symbols "[" and "]" to re-format group title
                 in add-on sections as below: 
                 Add-on Network Interface
                 ===================================
                     [[[SXB3 (Riser)]]]
                         [[Onboard]]
                             [NIC(1)]
                                       DATA...
   Issue ID    : Internal improvement
   Validation  : Execute OOB CheckAssetInfo command, the group titles under 
                 add-on sections should have duplicate pair symbols. The number
                 of pair symbols depends on the data structure.
   Check list  : 302-OB-XX
11.Fix         : Add-on network information of OOB CheckAssetInfo command is
                 incorrect.
   Description : Information of OOB CheckAssetInfo command is incorrect on
                 system with multiple LAN ports add-on NIC. Index of
                 "MAC address" and "Current speed" under add-on network
                 interface section should be in numerical order.
   Issue ID    : None
   Validation  : Execute OOB CheckAssetInfo command on system with multiple LAN
                 ports add-on NIC. The index of MAC address and current speed 
		 under add-on network interface section should be in numerical
                 order.
   Check list  : 302-OB-XX
12.Enhancement : Skip usage checking for riser onboard devices.
   Description : Information of riser onboard devices should show regardless of
                 device usage when OOB CheckAssetInfo command is executed.
   Issue ID    : Internal improvement
   Validation  : Execute OOB CheckAssetInfo command on X11DPU with AOC 
                 AOC-2UR8N4-i2XT, information of all riser onboard devices 
		 should show completely under add-on sections regardless of
                 device usage.
   Check list  : 302-OB-XX
13.Fix         : Automatic activation of product key does not work on Linux.
   Description : Automatic activation of product key does not work on Linux.
   Issue ID    : Customer report
   Validation  : Firstly, prepare a system with no product key activated.
                 Secondly, put credential file (cred.bin) under directory
                 "SUM_HOME/credential". Then execute any license required SUM
                 command on Linux. The command should complete normally.
   Check list  : 601-XX
14.Fix         : RSTe information of CheckSystemUtilization command is 
                 incorrect.
   Description : To associate RSTe information from TAS, SUM needs to use both 
                 "Logical HDD mapping index" and "related physical HDD mapping 
                 index set" fields of "Logical" label to map with "Physical HDD 
                 mapping index" of "HD" label.
                 Physical HDD mapping index definition:
                 0     0     0     0     | 0     0     0     0
                 Logical HDD mapping idx | related physical HDD mapping idx set
   Issue ID    : None
   Validation  : Set up a system with more than one RSTe, install TAS version
                 1.5.2 or later. Execute CheckSystemUtilization command, all
                 RSTe information should show correctly.
   Check list  : 303-OB-XX
15.Enhancement : Support SSL/TLS authentication for BIOS signed server.
   Description : Enable SSL/TLS for FTP authentication to support BIOS signed
                 server for BIOS cross sign update feature.
   Issue ID    : Internal improvement
   Validation  : Update a debug signed BIOS to a managed system with production
                 signed BIOS by executing in-band UpdateBios command with
                 --cross_sign option. The execution process should complete
                 normally.
   Check list  : 414-IB
16.Enhancement : Upload BIOS to BIOS signed server failed when executing in-band
                 UpdateBios command with option --cross_sign.  
   Description : Remove limitation that BIOS image has to be located under 
                 SUM home directory when executing in-band UpdateBios command
                 with option --cross_sign.
   Issue ID    : Internal improvement
   Validation  : Locate debug signed BIOS image under folder other than 
                 SUM home directory, then execute in-band UpdateBios command
                 with option --cross_sign to a managed system with production
                 signed BIOS. The execution process should complete normally.
   Check list  : 414-IB
17.Fix         : BIOS ME downgrade prevention issue for in-band UpdateBios
                 command.
   Description : SUM checks return status of OFBD type code 0x5C incorrecly 
                 when type code 0x5C is used for OEM pattern check purpose.
   Issue ID    : 96127
   Validation  : Prepare a system A2SAV with BIOS "A2SAV8.B30". Then execute
                 in-band UpdateBios command with BIOS "A2SAV8.710". SUM will
                 prevent BIOS downgrade and throw exception.
   Check list  : 401-IB
18.Enhancement : Support extension version of BMC firmware.
   Description : BMC uses the second byte of extension version field to
                 indicate its release type and signed type. SUM will show BMC
                 extension version of the managed system when executing 
                 GetBmcInfo or UpdateBMC command.
   Issue ID    : Internal improvement
   Validatoin  : Execute GetBmcInfo command on X11 system, BMC extension 
                 version information should be displayed under managed system
                 section.
   Check list  : 307-OB-XX, 308-XX, 701-XX, 702-XX
19.Fix         : Major version of inputed BMC FW file should be displayed in
                 decimal format instead of hex format.
   Description : According to IPMI specification, BMC major version should be
                 displayed in decimal format instead of hex format.
   Issue ID    : None
   Validation  : Execute GetBmcInfo command on system with US OEM BMC firmware,
                 if BMC major version is 11, SUM should show "11" instead of
                 "0B".
   Check list  : 307-OB-XX, 308-XX, 701-XX, 702-XX
20.Fix         : For Purley and later platforms, not to validate current value
                 when a BIOS setting is conditionally changeable for OOB
                 GetDefaultBiosCfg command.
   Description : When a BIOS setting is conditionally changeable, the 
                 current value might be invalid. SUM sets the current value from
               	 default value in GetDefaultBiosCfg command.
   Issue ID    : Internal improvement
   Validation  : Executing command GetDefaultBiosCfg should complete normally.
   Check list  : 503-XX-XX
21.Fix         : Free all TUI resources in signal handler.
   Description : The display of the screen is abnormal if user uses keystroke
                 combination [Ctrl+C] to terminate SUM.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with option --tui. If user
                 uses keystroke combination [Ctrl+C] to terminate SUM, all TUI
                 resources will be released and the screen will be cleaned up.
   Check list  : 502-XX
22.Enhancement : Add scroll bar widget in BIOS TUI mode.
   Description : Add scroll bar widget in BIOS TUI mode. The scroll bar will be
                 displayed if the current data is more than window size that
                 can be displayed.
   Issue ID    : None
   Validation  : Firstly, execute GetCurrentBiosCfg command with option --tui.
                 Secondly, change menu page to "Boot". Thirdly, Change "Boot
                 Mode Select" to "DUAL" The scroll bar should be displayed.
   Check list  : 502-XX
23.Fix         : Eliminate residue shadow for scroll widget and help message.
   Description : Eliminate residue shadow for scroll widget and help message.
                 Window only refreshes updated character position, so the
                 previous data might remain on the screen.
   Issue ID    : None
   Validation  : None
   Check list  : 502-XX
24.New Feature : Add two keystrokes K and M support for help message use
                 in BIOS TUI mode.
   Description : Add two keystrokes K and M support for help message use
                 in BIOS TUI mode.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command with option --tui to run BIOS
                 TUI, pressing keystroke K and M should respectively scroll up
                 and scroll down the help message of BIOS TUI if messgae is too
                 long.
   Check list  : 502-XX
25.New Feature : Implement debug mechanism for BIOS TUI.
   Description : Implement debug mechanism for BIOS TUI.
   Issue ID    : None
   Validation  : None
   Check list  : 502-XX
26.Enhancement : Update static library ncurses (ver. 6.1 patch 2018/12/15) for
                 Linux and FreeBSD.
   Description : Previous ncurses library does not include terminal
                 configuration. User must install ncurses on their system to use
                 TUI. New NCURSES library will pack terminal configuration.
                 User does not need to install NCURSES library.
   Issue ID    : None
   Validation  : Firstly, remove ncurses package and "/usr/share/terminfo".
                 Secondly, execute GetCurrentBiosCfg command with option --tui
                 should open up BIOS TUI mode.
   Check list  : 502-XX
27.Enhancement : Set terminal configuration automatically when executing 
                 GetCurrentBiosCfg command with --tui option.
   Description : Set terminal configuration automatically when executing
                 GetCurrentBiosCfg command with --tui option.
   Issue ID    : Internal improvement
   Validation  : Firstly, set console window size to 24 by 80. Then, execute
                 GetCurrentBiosCfg command with --tui option on Purley or later
                 platforms. The BIOS TUI window should open up normally.
   Check list  : 502-XX
28.Enhancement : Reload RMCP session after TUI exits.
   Description : RMCP session might lose connection during TUI operation.
                 Therefore, reload RMCP session is needed after TUI exits.
   Issue ID    : Internal improvement
   Validation  : Executing GetCurrentBiosCfg command with --tui on Purley or
                 later platforms, SUM should exit quickly.
   Check list  : 502-XX
29.Fix         : Remove debug message in BIOS TUI mode.
   Description : Remove debug message in BIOS TUI mode.
   Issue ID    : Internal improvement   
   Validation  : Execute command GetCurrentBiosCfg with option --tui. It should
                 no debug message in BIOS TUI mode.
   Check list  : 502-XX
30.Fix         : BIOS TUI segmentation fault.
   Description : In BIOS TUI mode, browsing settings and changing setting 
                 values interleavingly might cause segmentation fault.
   Issue ID    : Internal improvement
   Validation  : Execute command GetCurrentBiosCfg with option --tui.  Browsing 
                 settings and changing setting values interleavingly should not
                 cause segmentation fault.
   Check list  : 502-XX
31.Fix         : Pressing keystroke F3 did not load default BIOS configuration
                 in BIOS TUI mode.
   Description : Pressing keystroke F3 did not load default BIOS configuration
                 in BIOS TUI mode.
   Issue ID    : Internal improvement   
   Validation  : Execute command GetCurrentBiosCfg with option --tui. When 
                 pressing keystroke F3 and confirming, the default BIOS
                 configuration should be loaded in BIOS TUI mode.
   Check list  : 502-XX
32.Fix         : Load default BIOS configuration in BIOS TUI mode was not taken
                 effect to the exported BIOS configruation.
   Description : Load default BIOS configuration in BIOS TUI mode was not taken
                 effect to the exported BIOS configruation.
   Issue ID    : Internal improvement
   Validation  : Firstly, execute command GetCurrentBiosCfg with option --tui.
                 Secondly, press keystroke F3 to load default BIOS
                 configuration. Thirdly, press keystroke F4 to save and exit.
                 Forthly, check if the default BIOS configuration is taken
                 effect in the exported BIOS configuration( in standard output
                 or the saved file).
   Check list  : 502-XX
33.Fix         : In-band GetCurrentBiosCfg command with option --tui should 
                 open up BIOS configuration in BIOS TUI mode.
   Description : When executing in-band GetCurrentBiosCfg command with option 
                 --tui, the BIOS configuration was generated directly without
                 BIOS TUI mode opened up.
   Issue ID    : Internal improvement
   Validation  : The BIOS TUI mode should be opened up after executing in-band
                 GetCurrentBiosCfg command with option --tui. 
   Check list  : 502-XX
34.Enhancement : Add restore terminal configuration script in case SUM exiting
                 without auto restoring the original terminal configuration.
   Description : Add restore terminal configuration script in case SUM exiting
                 without auto restoring the original terminal configuration.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
35.Fix         : OOB BIOS update would fail during update process.
   Description : OOB BIOS update would get status code "06" (error message "BIOS
                 size is abnormal") because BMC is not ready to do BIOS update
                 process. Extend delay from 10 to 30 seconds for stability.
   Issue ID    : Internal improvement
   Validation  : Executing OOB BIOS update command on H11DSU with BIOS
                 "H11DSU7.925" should complete normally.
   Check list  : 4XX-OB-XX
36.Fix         : In-band BMC update behavior is differnt from AlUpdate Tool.
   Description : BMC needs more time to get ready after uploading BMC FW.
                 Otherwise, BMC cannot respond to new commands. Increase delay
                 time from 20 to 30 seconds for stability.
   Issue ID    : 95592
   Validation  : Execute in-band UpdateBMC command on X11SPA with 64MB BMC FW.
                 SUM should not throw exception with error code "154.5"
   Check list  : 701-IB, 702-IB
37.Enhancement : Increase delay time from 20 to 30 seconds before uploading
                 BMC FW for OOB UpdateBmc command stability.
   Description : Increase delay time from 20 to 30 seconds before uploading
                 BMC FW for OOB UpdateBmc command stability.
   Issue ID    : Internal improvement
   Validation  : none
   Check list  : 701-OB-XX, 702-OB-XX
38.Enhancement : Update ME downgrade rule for UpdateBios command.
   Description : Prevent BIOS downgrade if current ME version is greater than
                 4.0.4.294, and the ME version of updating BIOS is smaller than
                 or equal to 4.0.4.294. The update procedure still can be run if
                 user execute OOB UpdateBios command with --force_update and
                 --reset_pch options.
   Issue ID    : None
   Validation  : Setup a system with BIOS "X11SPI8.919", Executing OOB
                 UpdateBios command with BIOS "X11SPI7.B29" should be terminated
                 and throw exception.
   Check list  : 4XX-OB-XX
39.Fix         : Cascade Lake CPU only supports BIOS update of ME version 4.1 or
                 higher version.
   Description : Cascade Lake CPU only supports BIOS update of ME version 4.1 or
                 higher version.
   Issue ID    : 96319
   Validation  : Setup a system with Cascade Lake CPU and BIOS "X11DPLI8.C21",
                 Executing OOB UpdateBios command with BIOS "X11DPLI_8.615"
                 should be terminated and throw exception.
   Check list  : 4XX-XX-XX


V2.2.0 (2018/11/30)
======================
1. New Feature : Support BIOS TUI feature.
   Description : User can edit HII BIOS configuration with text-based user
                 interface throught in-band and OOB GetCurrentBiosCfg command.
                 Then update BIOS configuration throught ChangeBiosCfg command.
   Issue ID    : None
   Validation  : Execute GetCurrentBiosCfg command with options "--tui" and 
                 "--file". BIOS configuration can be edited in TUI mode and 
                 saved as the file name followed by option "--file". The 
                 generated BIOS configuration should reflect the edited 
                 settings in TUI mode. 
   Check list  : 502-XX
2. Enhancement : Add a new option "--skip_duplication_check" for ChangeBiosCfg
                 command to control duplication boot option check.
   Description : ChangeBiosCfg command would fail because BIOS has repeated
                 boot option. New command option would skip repeated boot option
                 check, so the command can execute normally.
   Issue ID    : None
   Validation  : Executing ChangeBiosCfg command with option
                 "--skip_duplication_check" should complete normally even if
                 the boot option is repeated in BIOS configuration.
   Check list  : 505-XX-XX
3. Fix         : Not throw exception when BMC IP is invalid.
   Description : When executing OOB QueryProductKey command through Redfish
                 interface with invalid BMC IP, SUM will throw exception to
                 indicate error.
   Issue ID    : 94758
   Validation  : Exception should be thrown when executing OOB QueryProductKey 
                 command through Redfish interface with invalid BMC IP.
   Check list  : 202-OB-XX
4. Fix         : Not throw exception when login authentication failed.
   Description : When executing OOB QueryProductKey command through Redfish
                 interface with incorrect BMC user ID or password, SUM will 
                 throw exception to indicate error.
   Issue ID    : Internal improvement
   Validation  : Exception should be thrown when executing OOB QueryProductKey
                 command through Redfish interface with incorrect BMC user ID or
                 password. 
   Check list  : 202-OB-XX
5. Fix         : Not throw exception when the .sumHttp file does not exist.
   Description : When executing OOB QueryProductKey command through Redfish
                 interface, and the .sumHttp file does not exist. SUM would not
                 throw exception to indicate error.
   Issue ID    : Internal improvement
   Validation  : Exception should be thrown when executing OOB QueryProductKey
                 command through Redfish interface when the .sumHttp file does
                 not exist.
   Check list  : 202-OB-XX
6. Enhancement : Fix BIOS information format for OOB GetBiosInfo and UpdateBios
                 command.
   Description : Revise two BIOS information field names "BIOS Build Date" and
                 "BIOS Version" to "BIOS build date" and "BIOS version"
   Issue ID    : None
   Validation  : Executing OOB GetBiosInfo/UpdateBios command through REDFISH.
                 The BIOS information should be changed as below.
                 Managed system
                     Board ID.............10.146.160.27
                     BIOS ID..............0941
                     BIOS build date......2018/06/14
                     BIOS version.........N/A
   Check list  : 305-OB-XX, 306-OB-XX, 307-OB-XX
7. New Feature : Support syslog for GetBmcCfg and ChangeBmcCfg commands.
   Description : SUM can get/change syslog configuration through REDFISH
                 interface. This feature only supports X10 and later platforms.
   Issue ID    : None
   Validation  : Executing GetBmcCfg command to get BMC configuration file.
                 Revise the BMC configuration file to set a syslog server IP for
                 BMC. Executing ChangeBmcCfg command to change BMC configuration.
                 Listen the packages on syslog server through wireshark. The
                 network packages which includes system log should be catched. 
   Check list  : 801-XX-XX, 802-XX-XX
8. Enhancement : Sensor type will be displayed after sensor number for
                 CheckSensorData command.
   Description : Sensor type will be displayed after sensor number if an
                 undefined sensor number is received from BMC. Extend buffer
                 (sensor type and sensor number) from 32 to 64 bytes for showing
                 complete information.
   Issue ID    : None
   Validation  : None
   Check list  : 304-OB-MM
9. Fix         : SUM does not display PSU information correctly.
   Description : SUM does not display PSU information correctly when system has
                 two PSUs with the same slave address "0xB0". GetPsuInfo command
                 only shows first one PSU information because SUM uses incorrect
                 command to get serial number of PSU.
   Issue ID    : #93767
   Validation  : Execute GetPsuInfo command on the system installed two PSUs
                 with the same slave address "0xB0". All PSU information should
                 be displayed correctly.
   Check list  : 1401-XX-XX
10.Fix         : In-band UpdateBmc command would fail on X10 systems with OEM BMC.
   Description : SUM would terminate and throw timeout exception if not disable
                 OEM watchdog before updating BMC on X10 systems with OEM BMC.
   Issue ID    : None
   Validation  : Executing in-band UpdateBmc command should complete normally on
                 X10DRL-LN4 with OEM BMC "SMT_X10DRL_LN4_256_HikVision".
   Check list  : 701-IB, 702-IB
11.Enhancement : Do not parse "_AOC" tag in DMI type 40 for CheckAssetInfo
                 command.
   Description : Do not parse "_AOC" tag in DMI type 40 because the BIOS no
                 longer supports this feature anymore.
   Issue ID    : None
   Validation  : None
   Check list  : 302-OB-XX
12.New Feature : Support more than one device of an add-on card.
   Description : Support more than one device of an add-on card. Change slot ID
                 format in DMI type 9 as below.
                 |Slot location | Device index | Slot number|
                 |       8 bits |        4bits |       4bits|
   Issue ID    : None
   Validation  : Execute CheckAssetInfo command on Purley or later platforms
                 with riser card "AOC-UR-i4XT", there should be two onboard NIC
                 devices under add-on section.
   Check list  : 302-OB-XX
13.Enhancement : SUM groups add-on network interface and add-on PCI devices by
                 riser card on Purley and later platforms.
   Description : SUM groups add-on network interface and add-on PCI devices by
                 riser card on Purley and later platforms.
   Issue ID    : None
   Validation  : Execute CheckAssetInfo command on Purley platform or later
                 platforms with riser card. The device information under add-on
                 session should be grouped by riser card.
   Check list  : 302-OB-XX
14.New Feature : Support 64MB BMC firmware update for UpdateBmc command.
   Description : Update new static library "libBmcUpdate" for in-band update
                 64MB BMC firmware. OOB to update 64MB BMC firmware does not
                 need to change anything.
   Issue ID    : 94985
   Validation  : Executing UpdateBmc command should complete normally with 64MB
                 BMC firmware.
   Check list  : 701-XX-XX, 702-XX-XX
15.Enhancement : SUM would crash when executing ActiveProductKey command in
                 multiple usage.
   Description : SUM can't get product key list, so executing ActiveProductKey
                 command in multiple usage would fail.
   Issue ID    : None
   Validation  : Executing OOB ActiveProductKey command should complete normally
                 in multiple mode.
   Check list  : 201-OB-MM
16.Enhancement : Modify parsing rule of HTTPS response when uploading binary
                 file to BMC failed for OOB UpdateBmc command.
   Description : Modify parsing rule of HTTPS response when uploading binary
                 file to BMC failed for OOB UpdateBmc command. 
   Issue ID    : Internal improvement
   Validation  : Execute OOB UpdateBmc to update signed BMC with unsigned BMC
                 FW on X11DPU-ZE+. SUM should throw exception with nonempty
                 error message.
   Check list  : 701-OB-XX, 702-OB-XX
17.Enhancement : Improve error message of TpmManage command.
   Description : SUM's error message is not clear when TpmManage command fails
                 because TPM status matches use case expected results already.
                 Replace the exception message with a clearer warning message.
   Issue ID    : Internal improvement 
   Validation  : Set a system with TPM module. Do not create TPM ownership,
                 then enable TPM and TXT. Execute TpmManage command with
                 option "--clear_and_enable_dtpm_txt", The operation is invalid
                 and a clearer warning message should display on scren.
   Check list  : 1505-XX-XX, 1506-XX-XX, 1507-XX-XX, 1508-XX-XX, 1509-XX-XX,
                 1510-XX-XX
18.Fix         : In-band UpdateBios command failed on AMD Naples platform.
   Description : H11 BIOS uses OFBD type code 0x5C for AMD PSP region checksum
                 value, SUM needs to skip OFBD type code 0x5C result check for
                 the follwoing motherboard ID: 0964, 098A, 0963, 1A03, 1B19.
   Issue ID    : 95427
   Validation  : Execute in-band UpdateBios command on H11DST-B from
                 "H11DSTB8.A04" to "H11DSTB8.B23". The update process should
                 complete normally.
   Check list  : 40X-IB
19.Enhancement : Add a new feature flag to check whether AMD update PSP region
                 is supported in BIOS. 
   Description : Add a new feature flag to check whether AMD update PSP region
                 is supported in BIOS for in-band UpdateBios command. 
   Issue ID    : None 
   Validation  : Execute in-band UpdateBios command on H11DST-B from
                 "H11DSTB8.A04" to "H11DSTB8.B23". The update process should
                 complete normally.
   Check list  : 40X-IB
20.Enhancement : Improve four error messages format.
   Description : Improve four error messages format as below.
                 ===== 1 =====
                 ExitCode = 148 
                 Description = IPMI execution exception occurred 
                 Program Error Code = 260.4 
                 Error message: 
                         Can not turn on this system. Detect system power status
                     timeout.
                 Instruction:
                         Step 1: AC off. Step 2: AC on.
                 ===== 2 =====
                 ExitCode = 148 
                 Description = IPMI execution exception occurred 
                 Program Error Code = 257.45 
                 Error message: 
                         Prepare download file failed.
                 Instruction:
                         To reboot the managed OS/system and try execution again.
                 ===== 3 =====
                 ExitCode = 148 
                 Description = IPMI execution exception occurred 
                 Program Error Code = 198.7 
                 Error message: 
                         UpdateBios failed, get wrong status code. 
                         14 (Failed to enter ME recovery mode)
                 Instruction:
                         Not recommend for UpdateBIOS when failed to enter ME 
                         recovery mode.If you still need UpdateBIOS, use SUM 
                         with the --force_update option. ./sum -c UpdateBios 
                         --file biosfile.bin --force_update -i <BMC_IP> 
                         -u <BMC_ID> -p <BMC_PASSWD>
                 ===== 4 =====
                 ExitCode = 61
                 Description = Utility internal error
                 Program Error Code = 313.70
                 Error message:
                         Duplicate boot options: UEFI OS
                 Instruction:
                         Check the file information. Make sure no duplicate 
                         options.
                 =============
   Issue ID    : Internal improvement 
   Validation  : None
   Check list  : None
21.Fix         : Unable to catch terminated exception.
   Description : Miss to catch exception if terminated by pressed [Ctrl + C] in
                 multiple mode.
   Issue ID    : None
   Validation  : Execute SUM command in multiple mode, pressing [Ctrl + C] to
                 terminate should throw an exception.
   Check list  : XXXX-OB-MM
22.Fix         : BIOS configuration dependencies might be hided or shown
                 incorrectly in SUM 2.0.1 and 2.1.0.
   Description : Due to defect dependency evaluation, BIOS configuration
                 dependencies might be hided or shown incorrectly in SUM 2.0.1
                 and 2.1.0.
   Issue ID    : Internal improvement
   Validation  : Executing GetCurrentCfg command on X11DAi with BIOS
                 "X11DAi-N_CLX18.B12". The WorkIf for setting "XHCI Hand-off"
                 should be shown as "( 1 != Install Windows 7 USB support )".
   Check list  : 501-XX-XX, 503-XX-XX
23.Fix         : Remove BMC device checking in previous workaround for DMI
                 related commands.
   Description : Checking for BMC presence through in-band would cause an error
                 when creating and initialing SMBIOS data.
   Issue ID    : Internal improvement
   Validation  : Execute in-band GetBiosInfo command first with SUM 1.6.2.
                 Executing in-band GetDmiInfo or ChangeDmiInfo command should
                 complete normally through BMC KCS, and show message "Query
                 through KCS interface".
   Check list  : 305-IX, 60X-IB

V2.2.0 (2018/10/18)
======================
1. New Feature : Hide Redfish feature.
   Description : Hide Redfish related settings in .sumrc file.
   Issue ID    : None
   Validation  : None
   Check list  : None
2. New Feature : Support secure flash for UpdateBMC command.
   Description : Support secure flash for UpdateBMC command.
   Issue ID    : None
   Validation  : On X11DPL, firstly, flash the BMC with production BMC 
                 firmware. Then, execute UpdateBMC command with debug BMC 
                 firmware. The exception with error message "Error! 
                 Firmware image verification failed!" should be thrown.
   Check list  : 701-XX-XX
3. New Feature : Support "-" as separator for MAC address.
   Description : Per PM team's suggestion, according to IEEE standard, MAC
                 address should use "-" as separator. This change is for SUM 
                 internal parsing method only, does not effect output display.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
4. Enhancement : Change compression method of journal feature.
   Description : Implement new compression method to replace zipper library.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
5. Enhancement : Upgrade Jsoncpp library.
   Description : Upgrade Jsoncpp library from 1.7.6 to 1.8.4.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
6. Enhancement : Improve .sumrc parsing method.
   Description : Show warning message when setting value is empty in .sumrc 
                 file.
   Issue ID    : Internal improvement
   Validation  : Enable thread_count setting in .sumrc without configuring any 
                 value. Warning message should be shown when executing SUM 
                 commands.
   Check list  : XXXX-XX-XX
7. Fix         : Correct "Slot Location" display under add-on session.
   Description : When executing OOB CheckAssetInfo command, if device is located
                 on slot 0, SUM should display "Onboard" instead "0" in "Slot 
                 Location" field.
   Issue ID    : #93757
   Validation  : Install a riser card with network controller on the system.
                 The network controller information should display under add-on
                 session with "Slot Location" shows "Onboard" after executing
                 OOB CheckAssetInfo command.
   Check list  : 302-OB-XX
8. Fix         : Move NIC device information from onboard session to add-on 
                 session.
   Description : Revise code due to DMI spec change (NIC device information is 
                 moved from DMI type 41 to DMI type 9)
   Issue ID    : #93757
   Validation  : On X11DPU-Z+ with X11DPUZ8.808 BIOS image, network controller
                 device information should display under add-on session after
                 executing OOB CheckAssetInfo command.
   Check list  : 302-OB-XX
9. Fix         : SUM cannot get BMC type information from AMI BMC firmware when
                 executing in-band BMC management commands.
   Description : SUM uses raw command 0x06 0x37 0x00 0x00 to retrieve BMC type
                 information. If BMC returns 0xC7 completion code, SUM will try 
                 again with raw command 0x06 0x37. 
   Issue ID    : Customer report
   Validation  : On X9DRW-3F with SMM_X9_2_59.ima BMC firmware, execute 
                 GetBmcInfo command should complete normally.
   Check list  : 306-IB
10.Fix         : Set HTTP method before sending each request in libcurl.
   Description : Set CURLOPT_CUSTOMREQUEST option according to customize 
                 request method.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
11.Fix         : Incorrect display when executing ActivateProductKey command.
   Description : Banner was displayed twice when executing ActivateProductKey
                 command.
   Issue ID    : Internal improvement
   Validation  : Execute ActivateProductKey command and verify the banner only
                 displayed once.
   Check list  : 201-XX-XX
12.Fix         : SUM might crash when executing GetEventLog command.
   Description : If SUM receives undefined sensor number when executing 
                 GetEventLog command, display the sensor number instead of 
                 sensor type.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 901-XX-XX
13.Fix         : In-band UpdateBmc command timeout due to retrive update
                 progress failure.
   Description : 1. Delay 20 seconds after uploading BMC firmware to enhance
                    in-band UpdateBmc stability.
                 2. On X9, do not cold reset BMC after uploading BMC firmware 
                    for in-band UpdateBMC command. 
   Issue ID    : #94714
   Validation  : On X9DRW-7TPF, execute in-band UpdateBmc command should 
                 complete normally.
   Check list  : 701-IB, 702-IB


V2.2.0_CrossSign (2018/09/28)
================================
1. New Feature : Support conversion BIOS update between debug and production
                 versions for in-band UpdateBios command. 
   Description : Support conversion BIOS update between debug and production
                 versions for in-band UpdateBios command, and add new hidden
                 option --cross_sign for launch this feature.
   Issue ID    : Lab request
   Validation  : Case 1 for SPS:
                 1-1. Run in-band updateBIOS command with –cross_sign option,
                      SUM will upload BIOS image to FTP server that provided by
                      BIOS team and download transition BIOS from FTP server
                      after transition BIOS is created.
                 1-2. SUM will auto run BIOS update procedure, then run FDT
                      comparing procedure.

                 If FDT is different.
                 1-3. Due to FDT of current BIOS is different with new BIOS, SUM
                      will show message to ask user to re-start OS so that put
                      ME into manufacturing mode.
                 1-4. After system is rebooted, ME of current BIOS should be put
                      into manufacturing mode.
                 1-5. Re-run step 1-1, SUM will update BIOS to transition BIOS
                      automatically.

                 If FDT is the same.
                 1-6. After BIOS is updated to transition BIOS, please reboot
                      system (do not shutdown or poweroff system).
                 1-7. After system reboot is finished, re-run step 1-1 to update
                      BIOS to target BIOS from transition BIOS.

                 Case 2 for Client ME:
                 2-1. Run in-band updateBIOS command with –cross_sign option,
                      SUM will upload BIOS image to FTP server that provided by
                      BIOS team and download transition BIOS from FTP server
                      after transition BIOS is created.
                 2-2. SUM will auto run BIOS update procedure, SUM will show
                      message to ask user to re-start OS so that put ME into
                      flash mode from operation mode.
                 2-3. After system is rebooted, ME of current BIOS should be put
                      into flash mode from operation mode.
                 2-4. Re-run step 2-1, SUM will update BIOS to transition BIOS
                      automatically.
                 2-5. After BIOS is updated to transition BIOS, please reboot
                      system (do not shutdown or poweroff system).
                 2-6. After system reboot is finished, re-run step 2-1 to update
                      BIOS to target BIOS from transition BIOS.
   Check list  : 4XX-IB


V2.2.0 (2018/09/20)
======================
1. New Feature : Support REDFISH interface for OOB commands.
   Description : Support REDFISH interface for OOB commands.
   Issue ID    : None
   Validation  : None
   Check list  : None
2. New Feature : Add three settings default_interface, server_ip and server_port
                 in .sumrc file for
                 REDFISH support.
   Description : Add three settings default_interface, server_ip and server_port
                 in .sumrc file for
                 REDFISH support.
   Issue ID    : None
   Validation  : First, set default_interface to REDFISH, Second, congigure
                 server_ip and server_port in .sumrc file. Third, execute SUM
                 command through REDFISH interface. Fourth, A HTTP server will
                 be started if the server does not exist. Fifth, executing SUM
                 command should complete normally after step three.
   Check list  : XX-OB-XX
3. New Feature : Add setting thread_count in .sumrc file to limit the maximum
                 number of concurrent execution.
   Description : Add setting thread_count in .sumrc file to limit the maximum
                 number of concurrent execution.
   Issue ID    : None
   Validation  : First, Set up 100 SUTs, Second, configure thread_count in
                 .sumrc file. Third, execute SUM command in mutiple mode.
                 Fourth, the number of concurrent running node will not exceed 
                 the specified thread_count.
   Check list  : XX-OB-XX
4. Enhancement : Improve exception message format.
   Description : Remove repeated space character and adjust output format.
   Issue ID    : None
   Validation  : None
   Check list  : None
5. Fix         : Correct the length limit of BMC/CMM password in BMC/CMM
                 configuration file.
   Description : Correct the length limit of BMC/CMM password in BMC/CMM
                 configuration file from 20 to 19 characters. 
   Issue ID    : Customer report
   Validation  : Executing ChangeBmcCfg command to update BMC password with 20
                 characters should be rejected and an exception will be thrown.
   Check list  : 802-XX-XX
6. Fix         : Apply new BMC download/upload file path for REDFISH.
   Description : Apply new BMC download/upload file path for REDFISH.
                 New upload path:
                 https://hostIP/restapi/smci/Actions/File.Import
                 New download path:
                 https://hostIP/restapi/smci/Actions/File.Export
   Issue ID    : None
   Validation  : Executing OOB QueryProductKey command through REDFISH interface
                 should complete normally.
   Check list  : 202-OB-XX
7. Fix         : Forbid libcurl to reuse connection cache in a short time.
   Description : Enable "CURLOPT_FORBID_REUSE" option instead of
                 "CURLOPT_FRESH_CONNECT" to forbid libcurl to reuse connection
                 cache.
   Issue ID    : Internal improvement
   Validation  : Executing OOB CheckOobSupport command through REDFISH interface
                 on the SUT with BMC FW "Nutanix_335_X10DRT_P_160909.bin" should
                 complete normally.
   Check list  : 301-OB-XX
 

v 2.1.0 (2018/09/03)
=======================
1. Fix         : Roll back client ME detection mechanism. Detect client ME
                 driver through Windows API.
   Description : Roll back client ME detection mechanism. Detect client ME
                 driver through Windows API.
   Issue ID    : Internal improvement
   Validation  : First, install a new Windows 2016 on server platform system.
                 Second, make sure client ME driver has installed. Third, an 
                 exception will be thrown when executing in-band UpdateBios
                 command with client ME driver installed. Fourth, follow all
                 steps in exception message to delete MEIx64 service. Fifth,
                 executing in-band UpdateBios command again should complete
                 normally.
   Check list  : 40X-IB
2. Enhancement : Improve Client ME exception troubleshooting message for
                 Windows.
   Description : Improve Client ME exception troubleshooting message as below.
                 The Client ME driver is detected on server platform. Please
                 follow steps as below to remove it first:
                 1. Remove 'Intel Management Engine Component' from Control
                    Panel/Programs and Features if it exists. 
                 2. Run the command 'sc delete MEIx64' to remove the Client ME
                    service.
                 3. Restart the system and try again.
   Issue ID    : Internal improvement
   Validation  : First, install a new Windows 2016 on server platform system.
                 Second, make sure client ME driver has installed. Third, an
                 exception with troubleshooting message will be thrown when
                 executing in-band UpdateBios command with client ME driver
                 installed.
   Check list  : 40X-IB
3. Fix         : Stress test OOB UpdateBios command would fail when uploading
                 BIOS to BMC.
   Description : Uploading BIOS image file to BMC would fail and receive message
                 "Request Entity Too Large". Add two changes to fix this issue.
                 1. Limit CURL maximum upload speed to 200 KB/s. 
                 2. Delay 30 seconds before uploading BIOS to BMC, in
                    order to let BMC clean up resources.
   Issue ID    : 93350
   Validation  : Stress test OOB UpdateBios command on the system with BMC FW
                 "SMT_X11AST2500_155" should complete normally.
   Check list  : 40X-OB-XX


v 2.1.0 (2018/08/24)
=======================
1. Fix         : Incorrect default value annotation for DAT BIOS configuration.
   Description : Default value annotations were incorrectly bound to current
                 value for DAT BIOS configuration.
   Issue ID    : Internal improvement
   Validation  : Change any BIOS setting current value to non-default value. 
                 Execute GetCurrentBiosCfg command to get current BIOS 
                 configuration. The setting default value annotation should be 
                 stick on default value.
   Check list  : 501-XX-XX


v 2.1.0 (2018/08/23)
=======================
1. Fix         : Cannot download file through SMI command 0xE6.
   Description : Downloading file through SMI command 0xE6 would get incorrect 
                 SMM buffer size.
   Issue ID    : Internal improvement
   Validation  : Executing in-band GetDefaultBiosCfg command on supporting SMM
                 buffer platforms in Windows should complete normally.
   Check list  : 502-IB 
2. Fix         : Client ME driver was falsely detected.
   Description : In-band UpdateBios command would falsely detect client ME 
                 driver and would throw excpetion on server platform in Windows.
   Issue ID    : Internal improvement
   Validation  : Executing in-band UpdateBios command on server platform in 
                 Windows without client ME driver should complete normally.
   Check list  : 40X-IB
3. Fix         : User password displayed in plain text in SUM logs.
   Description : For security concern, user password should replaced with 
                 asterisk symbols in SUM logs.
   Issue ID    : Internal improvement
   Validation  : Execute any OOB or multiple-node commands, the user password
                 in SUM logs should be replaced by asterisk symbols.
   Check list  : XXXX-OB-XX
4. Enhancement : User ID will be replaced with asterisk symbols.
   Description : For security consern, user ID will be replaced with asterisk
                 symbols.
   Issue ID    : Internal improvement
   Validation  : Execute any OOB or multiple-node commands, the user ID in SUM 
                 logs should be replaced by asterisk symbols.
   Check list  : XXXX-OB-XX
5. Enhancement : Improve exception message output format for UpdateBmc and 
                 UpdateBios commands.
   Description : Adjust the exception message output format.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
6. Fix         : Remove function name and line number in plain journal log.
   Description : Remove function name and line number in plain journal log.
   Issue ID    : Internal improvement
   Validation  : Execute any SUM command with journal feature on, function name
                 and line number should be gone in plain journal log.
   Check list  : XXXX-XX-XX


v 2.1.0 (2018/08/17)
=======================
1. Enhancement : Auto unlock SMM buffer in life scope for in-band BIOS related
                 commands.
   Description : Add resource guard mechanism to unlock SMM buffer for in-band
                 BIOS related commands.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 305-IB, 4XX-IB
2. Fix         : Handle signal "SIGPIPE" to prevent SUM crashing when uploading
                 file to BMC and not getting a response.
   Description : A socket on Linux is capable of signaling a SIGPIPE when the
                 connection on the other end closes. SUM must ignore this signal
                 to prevent abnormal termination.
   Issue ID    : 92312
   Validation  : Stress test OOB UpdateBmc command on X10DRS MB should complete
                 normally.
   Check list  : 70X-OB-XX
3. New Feature : Support AMD Naples platform for GetPsuInfo command.
   Description : Support AMD Naples platform for GetPsuInfo command.
   Issue ID    : 93041, 92669 
   Validation  : Executing GetPsuInfo command on H11 series MBs should complete
                 normally.
   Check list  : 309-XX-XX
4. New Feature : Add option --rc_path to specify SUM configuration file for all
                 SUM commands.
   Description : Add option --rc_path to specify SUM configuration file for all
                 SUM commands. 
   Issue ID    : Internal improvement
   Validation  : Executing SUM commands with option --rc_path, SUM will perform
                 task with the configuration in .sumrc file.
   Check list  : 104-XX-XX
5. New Feature : Support .sumrc file from SUM execution directory.
   Description : If executing SUM command with option --rc_path, SUM will search
                 .sumrc file in SUM execution directory first. If the file does
                 not exist, continue to search in user home directory. For this
                 case, user must rename "sumrc.sample" file to ".sumrc".
   Issue ID    : Internal improvement
   Validation  : Rename "sumrc.sample" file to ".sumrc" in SUM execution
                 directory, then execute SUM command, the resource settings
                 should be applied.
   Check list  : None
6. Enhancement : Prevent BIOS downgrade due to ME security issue.
   Description : If the SPS version of current BIOS is between 4.1.x.xxx and
                 4.0.4.294. SUM will prevent the BIOS downgrade to an earlier
                 version because of ME security issue.
   Issue ID    : #91460, #91512, #91856, #92254, #92108
   Validation  : First, Update BIOS "X11SPI8.614" on X11SPi-TF. Second,
                 executing UpdateBios command to update BIOS to "X11SPI7.C05"
                 will throw exception.
   Check list  : 413-XX-XX
7. New Feature : Add option --reset_pch to reset PCH and reboot managed system
                 for force downgrade BIOS.
   Description : If the SPS version of current BIOS is between 4.1.x.xxx and
                 4.0.4.294. SUM will prevent the BIOS downgrade to an earlier
                 version because of ME security issue. User must use options
                 --force_update and --reset_pch to force downgrade
                 BIOS.
   Issue ID    : #91460, #91512, #91856, #92254, #92108
   Validation  : V1. Update BIOS "X11SPI8.614" to X11SPi-TF.
                 V2. Executing OOB or in-band UpdateBios command to update BIOS
                     to "X11SPI7.C05" will throw exception. 
   Check list  : 413-XX-XX
8. New Feature : Add option --scan_rom for OOB GetBiosInfo command for acquiring
                 up-to-date BIOS information. 
   Description : SUM implemented scanning ROM function for acquiring up-to-date
                 BIOS information even user not power up the managed system.
   Issue ID    : Internal improvement
   Validation  : First, executing OOB UpdateBios command without option --reboot
                 under power off status. Second, Execute GetBiosInfo command
                 with option --scan_rom after BIOS has been updated. The BIOS
                 build date should be up-to-date.
   Check list  : 310-OB-XX
9. Enhancement : Initialize OpenSSL library when creating multiple OpenSSL
                 thread.
   Description : Library "libssl" should be initialized through calling
                 SSL_library_init if the program is running multi-threaded.
   Issue ID    : Internal improvement
   Validation  : Executing OOB UpdateBmc or UpdateBios commands should complete
                 normally.
   Check list  : 70X-OB-XX, 4XX-OB-XX
10.Fix         : Most of CMM tables would be lost for GetCmmCfg command.
   Description : Executing GetCmmCfg command will check license when creating
                 table, this check action would cause most of CMM tables to be lost
                 since all CMM license initial functions have been removed. 
   Issue ID    : Customer report
   Validation  : Executing GetCmmCfg command should complete normally and get
                 all available tables which needs to check license.
   Checklist   : 1301-OB-XX
11.Fix         : Catch string exception.
   Description : Catch string exception and convert to normal exception format
                 with exit code "unknown" and error code "NO_SET".
   Issue ID    : Internal improvement
   Validation  : When a string exception was throw, it should be converted to
                 normal exception format with exit code "unknown" and error
                 code "NO_SET".
   Check list  : None
12.New Feature : Correct duplicated error codes 403.1 to 403.5.
   Description : When the SUM connect to key server failure after executing any
                 in-band commands which needs license. An exception with
                 duplicated error code was thrown.   
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
13.Fix         : Sync SW FRU0 initialization logic with ACTool.
   Description : Send IPMI raw command to read SW FRU0, If completion code is
                 not 0x00, then initialize all SW FRU0 to 0xFF. If completion
                 code is 0x00, but all SW FRU0 data is 0x00, still initialize
                 the data to 0xFF.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 301-OB-XX
14.Fix         : Handle unexpected data length from SW FRU0 read command.
   Description : If response data length from SW FRU0 reading command is not
                 expected, SUM treats as no DCMS key rather than throwing
                 exception.
   Issue ID    : Customer report
   Validation  : With the following combination, this issue might happened.
                 MB: X10SLH-N6-ST031
                 Bios: v3.0 12/30/2015
                 BMC: v 2.26 12/31/2015
                 If the system has OOB key, CheckOOBSupport command should work
                 rather then throwing exception.
   Check list  : 301-OB-XX
15.Fix         : Miss to release mutex lock after SUM retrieved BMC version and
                 ID from image file.
   Description : Miss to release mutex lock after SUM retrieved BMC version and
                 ID from image file.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 307-OB-MM
16.Fix         : Add error handling when SMI comamnd E6 returns status 0x02 or
                 0x03.
   Description : When SMI comamnd E6 returns status 0x02(DAT file in BIOS can't
                 match BIOS.) or 0x03(No file in BIOS.), the thrown exception
                 message will not be empty.
   Issue ID    : 92412
   Validation  : When DAT file in BIOS can't match BIOS, executing in-band BIOS
                 management releated command will throw exception with error
                 message "DAT file in BIOS can't match BIOS".
   Checklist   : 50X-IB 
17.Fix         : Rename BMC type name for US's BMC FW.
   Description : Rename BMC type name of US's X11_ATEN_AST2500 BMC FW from
                 "X11_ATEN_AST2500" to "X11_ATEN_AST2500_2" since BMC type
                 "X11_ATEN_AST2500" has been defined for TW's "X11_ATEN_AST2500"
                 BMC FW.
   Issue ID    : Internal improvement
   Validation  : Use TW's X11_ATEN_AST2500 BMC FW to update BMC on X11DAi MB.
                 Exception with error message "X11_ATEN_AST2500_2 firmware image
                 is required for xx.xx.xx.xx" is expected.
   Check list  : 70X-OB-XX.
18.Fix         : Add update timeout exception for OOB BMC update.
   Description : Execute OOB UpdateBmc to update signed BMC with unsigned BMC
                 FW. BMC will stop update procedure because of FW verification
                 failure. However, SUM would continue to complete BMC update with
                 pseudo progress.
   Issue ID    : Internal improvement
   Validation  : Use unsigned BMC FW to update MB with signed BMC.
                 Exception should be throw after timeout(approximately 13 mins).
   Check list  : 70X-OB-XX
19.Enhancement : Revise help message of UpdateBios command.
   Description : Revise description of option --flash_smbios from "Overwrites
                 the SMBIOS data" to "Overwrites and resets the SMBIOS data".
   Issue ID    : Internal improvement
   Validation  : The description of option --flash_smbios has been changed in
                 help message of UpdateBios command.
   Check list  : 103-IB


v 2.1.0 (2018/07/26)
=======================
1. New Feature : Add error handling for OOB UpdateBios command when BMC returns
                 secure flash verification fail.
   Description : SUM will return specific error message(Secure Flash
                 verification fail) when updating from signed BIOS to unsigned
                 BIOS with BMC supporting secure flash BIOS.
   Issue ID    : Internal improvement
   Validation  : First, flash BMC FW which supports secure flash feature. 
                 Second, update signed BIOS on system. Third, update unsigned 
                 BIOS and it will throw error message(Secure Flash verification
                 fail).
   Check list  : 401-OB-XX
2. Fix         : Fix CBmcUser/CCmmUser user name comparsion from case 
                 insensitive to case sensitive.
   Description : Fix CBmcUser/CCmmUser user name comparsion from case 
                 insensitive to case sensitive.
   Issue ID    : Internal improvement
   Validation  : First, get BMC config by GetBmcCfg command. Second, create 
                 a new account which username is "admin". Third, executing 
                 ChangeBmcCfg command should success.
   Check list  : 802-XX-XX
3. Enhancement : IPAddr/NetMask/GateWay setting should not be applied if "IPSrc" 
                 setting is DHCP.
   Description : Skip to apply IPAddr/NetMask/GateWay setting if "IPSrc" setting
                 is DHCP
   Issue ID    : Internal improvement
   Validation  : First, get BMC configuration by GetBmcCfg command. 
                 Second, configure "IPSrc" setting of Network setting to DHCP
                 and run ChangeBmcCfg command to obtain an IP address A. Third,
                 update "IPSrc" setting of Network setting to Static, fill a 
                 static IP address B different from A. Then run ChangeBmcCfg 
                 command to apply IP address to static IP address B. Fourth, 
                 configure "IPSrc" of Network setting to DHCP, and keep IPAddr 
                 setting, IP address B. Five, "IPSrc" setting will be applied 
                 to DHCP. IP address would not keep IP address B.
   Check list  : 801-XX-XX, 802-XX-XX
4. Fix         : Add a new status code for in-band UpdateBios command on X11SSN.
   Description : Add an error handle for ME FDT locked during in-band UpdateBios 
                 command on X11SSN.
   Issue ID    : Internal improvement
   Validation  : Running in-band UpdateBios command with BIOS(X11SSN8.717) should 
                 work successfully.
   Check list  : 40X-IB
5. Enhancement : options --overwrite_cfg and --overwrite_sdr of UpdateBmc command
                 doesn't need to be bundled.
   Description : options --overwrite_cfg and --overwrite_sdr of UpdateBmc command
                 doesn't need to be bundled.
                 Remove some waring messages from Help
   Issue ID    : Internal improvement
   Validation  : Run UpdateBmc command with option --overwrite_cfg alone should
                 work. Similarly, run UpdateBmc command with option 
                 --overwrite_sdr alone should work.
   Check list  : 702-XX-XX, 703-XX-XX
6. Enhancement : Revise error message when in-band update BIOS for Purley 
                 with ME downgrade fail.
   Description : Revise error message when in-band update BIOS for Purley 
                 with ME downgrade fail and unlock SMM buffer.
   Issue ID    : Internal improvement
   Validation  : First, update BIOS(X11SPI8.614) on Purley. Second, 
                 downgrading BIOS(X11SPI8.226) with SPS: 4.0.04.294 will 
                 throw error message, improper security setting.
   Check list  : 40X-IB
7. Fix         : Fix default CMOS 70/71 value for in-band UpdateBIOS command
                 with option --clear_me_mng_cmos.
   Description : Fix default CMOS 70/71 value for in-band UpdateBIOS command 
                 with option --clear_me_mng_cmos.
   Issue ID    : Internal improvement
   Validation  : Run in-band UpdateBios command with option --clear_me_mng_cmos. 
                 CMOS 70/71 values will be set to (0x00, 0x01).                
   Check list  : 409-IB
8. Fix         : Add workaround for B2SS2 to prevent BMC from returns wrong
                 SDR length.
   Description : Add workaround for B2SS2 to prevent BMC from returns wrong 
                 SDR length.
   Issue ID    : Internal improvement
   Validation  : CheckSensorData command can display information without 
                 repeated last item on B2SS2-F with BIOS:B2SS28.516 and 
                 BMC:3.50.
   Check list  : 304-OB-XX
9. Fix         : Fix file name parsing failed issue.
   Description : Fix file name parsing failed issue, length of single word
                 (path + file name) is greater than 75 characters.
   Issue ID    : #92263, 92295, 92325, 92645
   Validation  : Run GetDmiInfo command with option "-l" with long single word 
                 greater than 75 characters of system list file with content 
                 "test" only. It will throw exception immediately. 
                 TC112 should pass.
   Check list  : 601-XX-XX
10.Enhancement : Skip unnecessary BMC feature flags download retry for some 
                 X10 BMC FWs.
   Description : BMC FW V2.15(Grantley), V2.52(MicroBlade), V3.23(SuperBlade)
                 and previous versions do not support BMC feature flags. BMC 
                 feature flags download retry is unnecessary. Remove space from 
                 BMC FW version.
   Issue ID    : Customer report
   Validation  : Executing OOB SUM commands will be finished faster 
                 significantly with BMC FW "SMT_X10_167" on X10SRH-CF.
   Check list  : XXX-OB-XX 
11.Enhancement : Throw exception if CMM is detected for GetPsuInfo and 
                 UpdatePsu commands.
   Description : Throw exception if CMM is detected for GetPsuInfo and 
                 UpdatePsu commands.
   Issue ID    : Internal improvement
   Validation  : SUM will throw excpetion if CMM is detected for GetPsuInfo 
                 and UpdatePsu commands.
   Check list  : 1401-OB-XX, 309-OB-XX
12.New Feature : Add to check if BMC and BIOS support OEM FID by feature flags
   Description : Check if BMC and BIOS support OEM FID by feature flags. 
                 In-band and OOB GetBiosInfo command with "--showall" option 
                 will show OEM FID inforamtion.
   Issue ID    : Internal improvement
   Validation  : Flash BIOS which does not support OEM FID. Running In-band/OOB 
                 GetBiosInfo command with "--showall" option should not 
                 display OEMFID information and SUM is finished immediately. 
                 Run in-band/OOB GetBiosInfo command with "--showall" option 
                 by 6/22 released SUM takes much longer time to be finished.
   Check list  : 308-XX-XX
13.Fix         : Fix file path issue to avoid in-band error in Ubuntu.
   Description : Fix file path issue to avoid in-band error in Ubuntu.
   Issue ID    : Internal improvement
   Validation  : All in-band commands can work in Ubuntu.
   Check list  : XXX-IB
14.New feature : Add SetBiosPassword command.
   Description : SetBiosPassword command allows user to configure BIOS
                 Administrator password.
   Issue ID    : Customer request
   Validation  : The new BIOS Administrator password by executing
                 SetBiosPassword command will take effect after reboot.
   Check list  : 506-XX-XX
15.Enhancement : Check BMC feature flags for UpdatePsu command if system 
                 has LCMC.
   Description : Check BMC feature flags for UpdatePsu command if system 
                 has LCMC.
   Issue ID    : Internal improvement
   Validation  : Pick a system with LCMC and update a BMC firmware without 
                 enabling LCMC PSU FW update bit in feature flags. 
                 Excuting UpdatePsu command will throw an exception.
   Check list  : 1401-OB-XX	
16.Fix         : Increase delay time from 10 to 20 seconds before uploading 
                 BMC FW for OOB UpdateBmc command.
   Description : Increase delay time from 10 to 20 seconds before uploading 
                 BMC FW for OOB UpdateBmc command.
   Issue ID    : #92312
   Validation  : Board Product Name: X10DRS + BMC: REDFISH_X10DRS_4U_219.bin. 
                 UpdateBmc command will not be terminated during uploading FW 
                 stage.		 
   Check list  : 701-OB-XX, 702-OB-XX


v 2.1.0 (2018/06/22)
=======================
1. Fix         : In-Band UpdateBios command flash wrong block
                 if verification fail and retry flash.
   Description : For in-Band UpdateBios command, if a flashed 
                 block verification is failed, SUM will attempt 
                 to flash the block again. However, the current 
                 offset had been moved to the next block. 
                 Therefore, all the subsequent blocks will
                 be flashed shiftly.
   Issue ID    : 90579
   Validation  : Executing in-band UpdateBios command should not fail.
   Check list  : 4XX-IB
2. Fix         : Power up retry count set up wrong.
   Description : Executing ChangeBiosCfg command with --reboot option
                 should retry up to four times to power up the managed system
                 when power up fail. The current logic trigger once might cause
                 update fail.
   Issue ID    : Internal improvement
   Validation  : Executing ChangeBiosCfg command with 
                 --reboot option should not fail. 
                 When the manage system takes a long time
                 to boot the system.
   Check list  : NONE
3. Fix         : Inaccurate message was shown when UpdateBios 
                 command had been done.
   Description : Inaccurate message was shown when UpdateBios 
                 command had been done.
   Issue ID    : Internal improvement
   Validation  : Execute UpdateBios and UpdateCMM should be show 
                 is updated for when UpdateBios command had been done.
   Check list  : 140x-OB-MM
4. Fix         : Add board ID 096C to list of containing FPGA in NC.
   Description : Add board ID 096C to list of containing FPGA in NC.
   Issue ID    : 90208
   Validation  : Debug TC320 on X11DGO-T should be pass.
                 Execute UpdateBios command with "--preserve_mer" and 
                 "--reboot" options. BIOS settings should not
                 be kept and will load to default.
   Check list  : 140x-OB-MM
5. Enhancement : Improve UpdatePsu command help message
   Description : Improve UpdatePsu comannd help message
   Issue ID    : Internal Improvement
   Validation  : Help message of UpdatePsu command will 
                 show message "PSU module address in HEX format 
                 (Gets PSU module slave address from GetPsuInfo command.)"
   Check list  : 103-IB
6. Enhancement : Throw exception if no power supply detected
   Description : Throw exception if no power supply detected
                 through PMBus
   Issue ID    : 91415
   Validation  : Plug-out PMBus connector and execute GetPsuInfo 
                 command. SUM will throw excpetion and show message
                 "No power supply is detected. Please check 
                 PMBus is connected on the managed system."
   Check list  : 309-OB,309-OB-MM
7. Fix         : Changing host name in OEM LAN configuration 
                 was not taken effect.
   Description : Execute ChangeBmcCfg command missing setting hostname.
   Issue ID    : Internal Improvement
   Validation  : Changing host name in OEM LAN configuration 
                 should take effect after executing ChangeBmcCfg command. 	
   Check list  : 802-OB-MM
8. Enhancement : Update openssl headers to 1.0.2p-dev.
   Description : Update openssl headers to 1.0.2p-dev.
   Issue ID    : Internal Improvement
   Validation  : NONE  
   Check list  : NONE
9. Fix         : Reload RMCP session after uploading file.
   Description : If not reloaded RMCP session after the uploading 
                 BMC FW, subsequent procedures may fail.
   Issue ID    : 91082  
   Validation  : Debug TC 201,212,226,228,237 and 410 
                 b10dri8.305 with SMT_B10IPMI_349_REDFISH.bin 
                 on B10DRC should be pass.
   Check list  : 70X-XX-XX
10.Fix         : Neglect to unlock SMM buffer when in-band 
                 UpdateBios write flash failed.
   Description : Neglect to unlock SMM buffer when in-band 
                 UpdateBios write flash failed.
                 SMM Buffer should be unlocked before throwing exception.
   Issue ID    : 91460
   Validation  : Executing in-band updateBios with BIOS "X11DPG8.614_32MB"
                 would fail with SMM buffer unlocked. Then, executing 
                 in-band UpdateBios again will not show SMM buffer locked 
                 error message. 
   Check list  : 402-IB
11.Enhancement : Print progress dot in GetPsuInfo command output.
   Description : Print progress dot in GetPsuInfo command output.
   Issue ID    : Internal improvement
   Validation  : Progress dots should be printed in GetPsuInfo command output.
   Check list  : 309-OB-MM
12.Enhancement : Improve PSU update duration.
   Description : Reduce delay time for flash operation. 
   Issue ID    : Internal improvement
   Validation  : Executing UpdatePSU command should be finished faster 
                 significantly.
   Check list  : 1401-XX-MM
13.Fix         : Add power input/output electric current data 
                 for CheckSensorData command.
   Description : Power ipunt/output electric current data can not be parsed and 
                 showed on X10DGO/X11DGO.
   Issue ID    : 89462, 90688
   Validation  : Power input/output electric current data should be shown in
                 CheckSensorData command output on X10DGO.
   Check list  : 304-OB-MM
14.Enhancement : Skip unnecessary BMC feature flags download retry for some 
                 X10 BMC FWs.
   Description : BMC FW V2.15(Grantley), V2.52(MicroBlade), V3.23(SuperBlade) 
                 and previous versions do not support BMC feature flags. BMC 
                 feature flags download retry is unnecessary.
   Issue ID    : Customer report 
   Validation  : Executing OOB SUM commands will be finished faster 
                 significantly with BMC FW "SMT_X10_167" on X10SRH-CF.
   Check list  : XXX-OB-XX
15.Enhancement : Extend number of NVMe SSD devices displayed. 
   Description : Extend maximum number of NVMe SSD devices in one group of an 
                 NVMe controller from 12 to 18 displayed. Extend maximum number
                 of NVMe SSD devices on one controller from 24 to 32.
   Issue ID    : Customer report 
   Validation  : GetNvmeInfo command is capable of displaying up to 18  
                 NVMe SSD devices in a group of an NVMe controller and up to 32
                 devices on one NVMe controller.
   Check list  : 1109-OB-MM
16.Fix 	       : Release token messages in multi-node was not generated 
                 in the mlist log file.
   Description : Release token messages in multi-node was not generated 
                 in the mlist log file.
   Issue ID    : Internal improvement
   Validation  : Release token messages should be generated after executing 
                 UpdateBios or UpdateRaidController with hidden option 
                 "--release_token".
   Check list  : 412-OB-MM
17.Enhancement : SubNetMask, DefaultGateWayAddr and VLAN fields in LAN table 
                 of BMC configuration can be customized for in-band 
                 ChangeBmcCfg command.
   Description : SubNetMask, DefaultGateWayAddr and VLAN fields in LAN table 
                 of BMC configuration can be customized for in-band 
                 ChangeBmcCfg command.
   Issue ID    : Internal improvement
   Validation  : SubNetMask, DefaultGateWayAddr and VLAN fileds can be 
                 customized in LAN table of BMC configuration.
   Check list  : 802-IB
18.Fix 	       : Delay for ME update status polling is too small. NMI kernel 
                 message will be flooding when in-band UpdateBios on a 
                 specific version of customized INTEL BIOS.
   Description : Added 100ms delay for ME update status polling for in-band
                 UpdateBios command.
   Issue ID    : INTEL reported. 
   Validation  : None
   Check list  : 401-IB
19.Fix 	       : PMBUS and temperature scan stopped if enter ROM mode failed
                 when updating PSU FW.
   Description : Enable PMBUS and temperature scan if enter ROM mode failed 
                 when updating PSU FW.
   Issue ID    : Internal improvement 
   Validation  : PMBUS and temperature scan will be enabled if enter ROM mode
                 failed.
   Check list  : 402-IB 


v 2.1.0 (2018/05/17)
=======================
1. Enhancement : Rename "PWS Revision" to "PWS Module Revision" in GetPsuInfo
                 command output.
   Description : Rename "PWS Revision" to "PWS Module Revision" in GetPsuInfo
                 command to prevent confusion.
   Issue ID    : Internal improvement
   Validation  : "PWS Module Revision" should be displayed in GetPsuInfo command
                 output.
   Check list  : 309-XX-XX
2. Enhancement : Route debug log to file output.
   Description : Debug messages will be routed from stderr output to journal 
                 file output.
   Issue ID    : Internal improvement
   Validation  : Build SUM with debug flag turned on. Executing UpdateBios 
                 command with journal log activated, debug messages should be
                 output to journal journal core file.
   Check list  : XXX-XX-XX
3. New Feature : Support new RSTe physical HDD mapping index format from TAS.
   Description : Physical HDD mapping index contained only physical slot number.
                 In TAS 1.5.2, Physical HDD mapping index contains physical slot
                  number and logical index.
   Issue ID    : Internal improvement
   Validation  : Setup a SUT with TAS 1.5.2 or after and RSTe. Executing
                 CheckSystemUtilization command should complete normally.
   Check list  : 303-OB-XX 
4. Enhancement : Add program and data flash validation and failed retry for
                 UpdatePsu command.
   Description : Add program and data flash validation. If valiadtion fails,
                 SUM will retry up to twice to re-write and re-validate.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 1401-XX-XX
5. Fix         : Fix carry porblem for UpdatePsu command.
   Description : Carry problem would occur when calculating PSU flash begin
                 address.
   Issue ID    : Internal improvement
   Validation  : Using the PSU FW with data padded problem to update PSU should
                 complete normally.
   Check list  : 1401-XX-XX
6. Fix         : Incorrect update PSU block was sent to write command issue.
   Description : Write command for PSU block update might write over 16 bytes at
                 once.
   Issue ID    : Internal improvement
   Validation  : Using the PSU FW with data padded problem to update PSU should
                 complete normally.
   Check list  : 1401-XX-XX
7. Enhancement : Improve OOB UpdatePsu command output.
   Description : Porting OOB UpdateBios command output to improve OOB UpdatePsu
                 command output. 
   Issue ID    : Internal improvement
   Validation  : Executing OOB UpdatePsu command should complete normally and 
                 consistent to OOB UpdateBios command output style.
   Check list  : 1401-OB-XX, 401-OB-XX
8. Enhancement : Add more detailed information to journal file for BMC/CMM
                 command group.
   Description : Add more detailed information to journal file for BMC/CMM
                 command group.
   Issue ID    : Internal improvement
   Validation  : Executing BMC related commands with journal log activated
                 should complete normally, and the core file should contain
                 more detailed information for debugging.
   Check list  : 70X-XX-XX, 80X-XX-XX, 120X-OB-XX, 130X-OB-XX
9. Fix         : The journal information was displayed before banner.
   Description : The journal information was displayed before banner.
   Issue ID    : Internal improvement
   Validation  : Execute SUM command with journal turned on. The journal 
                 information should be displayed after banner.
   Check list  : XXXX-XX-XX
10.Fix         : Revise AD timeout range to [10:30] seconds for BMC/CMM
                 configuration.
   Description : BMC team change the AD timeout range, so SUM needs to revise
                 accordingly.
   Issue ID    : Internal improvement
   Validation  : Executing ChangeBmcCfg/ChangeCmmCfg command with invalid AD
                 timeout should throw exception.
   Check list  : 80X-XX-XX, 130X-XX-XX
11.Fix         : Remove string "Will be skipped if value is 0" in AD table from
                 BMC/CMM XML file description.
   Description : Value "0" is invalid for AD timeout field. It will not be 
                 skipped when AD service is set to enabled. Remove misleading 
                 description.
   Issue ID    : Internal improvement
   Validation  : Execute GetBmcCfg/GetCmmCfg command to get BMC/CMM
                 configuration, the AD table description should not contain
                 comment "Will be skipped if value is 0".
   Check list  : 801-XX-XX, 1301-OB-XX
12.Enhancement : AD, LDAP and RADIUS services were disabled unconditionally
                 when dependency checking.
   Description : AD, LDAP or RADIUS service will be disabled only when its 
                 status is modified to disabled in XML configuration.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 802-XX-XX
13.Fix         : Fix hostname support checking error.
   Description : Completion code judgement error after sending hostname support
                 checking command.
   Issue ID    : Internal improvement
   Validation  : Executing ChangeBmcCfg/ChangeCmmCfg command on BMC/CMM with
                 FQDN supported should complete normally.
   Check list  : 802-XX-XX, 1302-OB-XX
14.New Feature : Support RAID controller update through I2C interface.
   Description : RAID CGIs have been revised to support RAID controller update
                 through I2C.
   Issue ID    : Internal improvement
   Validation  : Executing UpdateRaidController command with IPMI FW
                 "REDFISH_X10_371" sould complete normally.
   Check list  : 1104-OB-XX
15.New Feature : Add hidden option --release_token for UpdateRaidController
                 command.
   Description : Add hidden option --release_token for UpdateRaidController
                 command.
   Issue ID    : None
   Validation  : Executing UpdateRaidController command with option
                 --release_token should release the update token. 
   Check list  : 1111-OB-XX
16.Fix         : Fix UpdateBios command with --release_token not working issue.
   Description : The root cause was illegal memory access caused undefined 
                 behavior. SUM might skip token release then. Simply add a 
                 workaround to fix this issue. 
   Issue ID    : Internal improvement
   Validation  : Executing UpdateBios command with option --release_token should
                 release the update token.
   Check list  : 412-OB-XX
17.Fix         : Missing error message in exception in BIOS management inband 
                 command group.
   Description : The exception with error code 65.2 is missing error message in
                 BIOS management inband command group.
   Issue ID    : Internal improvement
   Validation  : The exception with error code 65.2 should dump error message.
   Check list  : 305-IB, 4XX-IB, 50X-IB, 60X-IB
18.New Feature : Support HMAC_SHA512 with secret key for in-band license check.
   Description : Support HMAC_SHA512 with secret key for in-band license check.
   Issue ID    : None
   Validation  : None
   Check list  : None
19.New Feature : Add DMI type 38 parsing to check if BMC is exists for in-band 
                 license check.
   Description : Add DMI type 38 parsing to check if BMC is exists for in-band 
                 license check.
   Issue ID    : None
   Validation  : None
   Check list  : None
20.Enhancement : SUM checks if BMC module exists first before using alternative
                 BMC KCS protocol to download DMI BIN file.
   Description : SUM checks if BMC module exists first before using alternative
                 BMC KCS protocol to download DMI BIN file.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 60X-IB
21.Enhancement : Add LAN MAC information for CheckSystemUtilization command.
   Description : Add LAN MAC information for CheckSystemUtilization command.
   Issue ID    : None
   Validation  : LAN MAC information will be displayed in CheckSystemUtilization
                 command output.
   Check list  : 303-OB-XX
22.New Feature : Add battery backplane(BBP) control for CMM. 
   Description : Add battery backplane(BBP) control for CMM.
   Issue ID    : None
   Validation  : CMM supports BBP after CMM FW "SMT_CMMFW_327_REDFISH". Execute
                 GetCmmCfg command to get CMM configuration first. "BBPCONTROL"
                 field will show in CMM configuration in power config table.
                 Executing ChangeCmmCfg can enable or disable the "BBPCONTROL".
   Check list  : 130X-OB-XX
23.Enhancement : Add Advanced Event Log table for CMM/BMC.
   Description : Add Advanced Event Log table for CMM/BMC. BMC supports both
                 "AC Power on Event log" and "FIFO Event Log" while CMM only 
                 supports "AC Power on Event log".
   Issue ID    : None
   Validation  : Executing GetBmcCfg/GetCmmCfg to get BMC/CMM configuration,
                 "ACPowerOnEventLog" and "FIFOEventLog" fields will be shown in
                 "AdvanceEventLog" table in BMC configuration. CMM configuration
                 only has "ACPowerOnEventLog" field.
   Check list  : 80X-XX-XX, 130X-OB-XX
24.Fix         : Fix exception handling defect. 
   Description : When try-catch exception handling, completion code in exception
                 is critical for workarond. Incorrect completion code might 
                 cause workaround failure and unexpected outcome.
   Issue ID    : None
   Validation  : None
   Check list  : None
25.New Feature : Add new defined sensor numbers support for GetEventLog command.
   Description : Support sensor number 0x54~57, 0x5F and 0xFF for sensor type 
                 0x0D.
   Issue ID    : None
   Validation  : None
   Check list  : None
26.Fix         : Failed to parse enclosured ID in event log.
   Description : Event data 2 in event log has defined new format. In new
                 format, the lower four bits are the physical drive number while
                 the higher four bits are the logical drive number.  
   Issue ID    : None
   Validation  : Exexute GetEventLog command to get event log. The enclosured ID
                 should be consistent with BMC web.
   Check list  : 901-XX-XX
27.New Feature : Support multiple assets in one add-on card.
   Description : Support multiple assets in one add-on card.
   Issue ID    : None
   Validation  : Install an add-on card with multiple assets on the system.
                 Executing CheckAssetInfo command should display multiple asset
                 in one add-on card.
   Check list  : 302-OB-XX
28.Enhancement : Add confirm_timout parameter in .sumrc file.
   Description : Add confirm_timout parameter in .sumrc file.                  
   Issue ID    : 89206
   Validation  : Extend confirm_timeout in .sumrc file long enough to execute 
                 LoadDefaultBiosCfg command under full loading. The message
                 "Status: The BIOS configuration is updated for XXX.XXX.XXX.XXX"
                 should be shown at the end of command execution.
   Check list  : 504-IB-XX
29.Enhancement : Support HII op-codes EFI_IFR_STRING_REF1_OP and 
                 EFI_IFR_MATCH_OP.
   Description : Support HII op-codes EFI_IFR_STRING_REF1_OP and 
                 EFI_IFR_MATCH_OP.
   Issue ID    : 89704, 90770
   Validation  : Executing GetCurrentBiosCfg command should complete normally on
                 X11SCE-F and X11SCH-LN4.
   Check list  : 501-XX-XX
30.New feature : Add OEM FID feature for GetBiosInfo command.
   Description : OEM FID is designed to show more internal FW information.
   Issue ID    : None
   Validation  : Executing GetBiosInfo command with --showall option will print
                 OEM FID information.
   Check list  : 308-XX-XX


v 2.0.1 (2018/04/20)
=======================
1. Enhancement : Chipset platform (CSP) level BIOS setting cannot be preserved
                 by UpdateBios command with --preserve_setting option for 
                 non-Purley platform with HII.
   Description : SUM supported CSP mapping language ID CSPPL prefix which was
                 designed to dedicatedly support Purley platform. Now, SUM
                 added a workaround to cover mapping IDs starting with CSP to
                 support non-Purley platform with HII.
   Issue ID    : 89781, 89648, 89781
   Validation  : Executing UpdateBios command with --preserve_setting option on
                 non-Purley platform with HII. The chipset platform settings 
                 defined in mapping language document maintained by BIOS team 
                 should be preserved after BIOS update.
   Check list  : 407-XX-XX
2. Enhancement : Add onborad NIC FW version in CheckAssetInfo command output.
   Description : Add onborad NIC FW version in CheckAssetInfo command output.
   Issue ID    : Internal improvement
   Validation  : The onborad NIC FW version should be printed in CheckAssetInfo
                 command output.
   Check list  : 302-OB-XX
3. Fix         : Add SMC RAKP auto detection.
   Description : Support SMC RAKP protocol.
   Issue ID    : Internal improvement
   Validation  : Enable SMC RAKP via BMC web first. Executing OOB command should 
                 pass security authentication.
   Check list  : XXX-OB-XX
4. Enhancement : Remove MCTP support checking in UpdateRaidController command.
   Description : In addition to MCTP, RAID controller update is planning to 
                 support I2C protocol.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
5. Fix         : Vendor/SubVendor name missing in CheckAssetInfo command output
                 under multi-node mode.
   Description : In multi-node mode, environment variable $SUM_HOME should be 
                 common across all threads. Thread level environment variable 
                 $SUM_HOME might be not set properly. Invalid environment 
                 variable $SUM_HOME cause Vendor/SubVendor name missing.
   Issue ID    : Internal improvement
   Validation  : Vendor/SubVendor name should be shown correctly in 
                 CheckAssetInfo command output in multi-node mode.
   Check list  : 302-OB-MM
6. Fix         : Prevent throwing exception for IPMI command 0x30 0x70 0x70
                 unimplemented in some systems.
   Description : Even IPMI command 0x30 0x70 0x70 is not implemented in some 
                 systems, exception should not be thrown.
   Issue ID    : Customer report
   Validation  : Executing GetCmmCfg command should complete normally.
   Check list  : 1301-OB-XX
7. Enhancement : Remove 'Boot' table in CMM configuration file.
   Description : Remove 'Boot' table in CMM configuration file.
   Issue ID    : Internal improvement
   Validation  : Execute GetCmmCfg command to get CMM configuration. 'Boot' 
                 table should be disappeared.
   Check list  : 1301-OB-XX
8. Enhancement : Adjust power status polling interval as three seconds after
                 sending power control commands.
   Description : Extend power status polling interval from one second to
                 three seconds after sending software shutdown, chassis shutdown
                 and power up.
   Issue ID    : None
   Validation  : Executing OOB SUM command with --reboot option should complete
                 normally.
   Check list  : 402-OB-XX, 403-OB-XX, 404-OB-XX, 405-OB-XX, 406-OB-XX, 
                 407-OB-XX, 503-OB-XX, 504-OB-XX, 505-OB-XX, 602-OB-XX,
                 902-OB-XX, 1001-OB-XX, 1002-OB-XX, 1105-OB-XX


v 2.0.1 (2018/04/03)
=======================
1. Fix         : UpdateBios command with --preserve_setting could not preserve
                 BIOS setting configuration after BIOS update.
   Description : UpdateBios command with --preserve_setting could not preserve
                 BIOS setting configuration after BIOS update for Purley and
                 Naples platforms.
   Issue ID    : 89781
   Validation  : Executing UpdateBios command with --preserve_setting option on
                 Purley or Naples platform. The setting(s) defined in the
                 mapping language document maintained by TW BIOS team should be
                 preserved after BIOS update.
   Check list  : 407-XX-XX
2. Enhancement : Add NIC FW version for CheckAssetInfo command.
   Description : Add NIC FW version for CheckAssetInfo command.
   Issue ID    : Customer request
   Validation  : The NIC FW version should be printed in CheckAssetInfo command
                 output.
   Check list  : 302-OB-XX


v 2.0.1 (2018/03/31)
=======================
1. Enhancement : Add ten seconds delay after ME reset for in-band BIOS update.
   Description : The system might be rebooted unexpectedly during in-band
                 UpdateBios command with --flash_smbios option.
   Issue ID    : 85477, 89452
   Validation  : Executing in-band UpdateBios command with --flash_smbios option
                 on X11DAi-N, B11DPT or B11QPi should complete normally.
   Check list  : 403-IB
2. Enhancement : Show rebooting status message instead of exception when confirm
                 flag timeout.
   Description : With --reboot option, some systems require more than 300
                 seconds default timeout to confirm file update status.  When
                 confirm flag timeout reaches, SUM will show "being updated"
                 status instead of exception.
   Issue ID    : 89206
   Validation  : Debug TC220 and TC308 under full loading should pass.
   Check list  : 504-OB-XX
3 .Enhancement : TpmProvision command is not supported on the platform after
                 Purley.
   Description : SUM will stop TpmProvision command and throw exception after
                 Purley platform.
   Issue ID    : None
   Validation  : Executing TpmProvision command on the platform after Purley
                 should report unsupported.
   Checklist   : 1001-OB-XX, 1002-OB-XX
4. Fix         : Inaccurate exception message for error code "119.28".
   Description : Executing UpdateBios command will throw exception with the
                 inaccurate exit code, description and error code in the
                 following three situations:
                 1.Both feature flags "Preserve SMBIOS" and "Program NVRAM" are
                   off.
                 2.Feature flag "Preserve SMBIOS" is off and --preserve_nv
                   option is assigned.
                 3.Feature flag "Program NVRAM" is off and --flash_smbios option
                   is assigned.
   Issue ID    : Customer report
   Validation  : Executing UpdateBios command in the above three situations,
                 the exit code, description and error code should be "109",
                "This operation is prohibited" and "119.28", respectively.
   Check list  : 401-IB, 402-IB, 403-IB, 404-IB
5. Fix         : The CheckAssetInfo command is only supported by BMC.
   Description : Restrictions OOB CheckAssetInfo command is executed on CMM
                 machine.
   Issue ID    : Internel improvement
   Validation  : Executing OOB CheckAssetInfo command on CMM machine should
                 terminate and throw exception.
   Check list  : 302-OB-XX
6. Fix         : HII string package parsing error.
   Description : Improper UCS2 string termination parsing rule caused exception
                 thrown.
   Issue ID    : 89702
   Validation  : Executing GetCurrentBiosCfg command should complete normally.
   Check list  : 501-XX-XX
7. Enhancement : Extend polling RAID controller update progress timeout from 20
                 to 50 minutes.
   Description : RAID controller update is going to support I2C interface.
                 Extend the polling timeout to 50 minutes as required.
   Issue ID    : Internal improvement
   Validation  : RAID controller update should support up to 50 minutes polling
                 progress timeout.
   Check list  : 1104-OB-XX, 1105-OB-XX


v 2.1.0 (2018/03/23)
=======================
1. New feature : Support PSU update on system with LCMC.
   Description : BMC adds a new IPMI OEM commad set 0x30 0x70 0x7E to
                 support UpdatePsu command on system with LCMC. 
   Issue ID    : None
   Validation  : Executing UpdatePsu command on system with LCMC should
                 complete normally.
   Check list  : None
2. Enhancement : Add retry 5 times when PSU failed to enter ROM mode.
   Description : Add retry 5 times when PSU failed to enter ROM mode.
   Issue ID    : None
   Validation  : None
   Check list  : None
3. Enhamcement : PMBUS and temperature sensor scan will be suspended during 
                 PSU update.
   Description : Stop PMBUS and temperature sensor scan before PSU update begins
                 and re-start services after PSU update completes.
   Issue ID    : None
   Validation  : None
   Check list  : None
4. New feature : Add --rescue option for UpdatePsu command.
   Description : If PSU update fails and the power LED on PSU is off, executing
                 UpdatePsu command with options --address, --file and --rescue
                 should continue and succeed.
   Issue ID    : None
   Validation  : If UpdatePsu command fails, executing UpdatePsu again with 
                 --rescue option, the PSU should be rebooted and the power LED
                 on the PSU should be on.  
   Check list  : None
5. Enhancement : Rename option --log_path and --log_level to --journal_path and
                 --journal_level, respectively.
   Description : Rename option --log_path and --log_level to --journal_path and
                 --journal_level, respectively. 
   Issue ID    : None
   Validation  : V1. Executing SUM command with --log_path or --log_level option
                     should report unrecognized option.
                 V2. Executing SUM command with --journal_path or 
                     --journal_level option should complete normally.
   Check list  : None
6. Enhancement : Show warning if --journal_path option is specified and 
                 --journal_level is assigned to silent.
   Description : If --journal_level option is assigned to silent, --journal_path
                 option will be ignored and show warning message.
   Issue ID    : None
   Validation  : None
   Check list  : None
7. Enhancement : Add delay 5 seconds after PSU enters ROM mode for UpdatePsu 
                 command.
   Description : Add delay 5 seconds after PSU enters ROM mode for UpdatePsu 
                 command.
   Issue ID    : None
   Validation  : None
   Check list  : None
8. New feature : Add PSU ROM mode checking alternative.
   Description : If IPMI command 0x06 0x52 0x07 0x16 0x05 0xEC (get PSU ROM and
                 IC version) returns invalid data length, SUM will count on 
                 number of PSUs to check PSU ROM mode status.
   Issue ID    : None
   Validation  : None
   Check list  : None
9. Enhancement : The temporary folder for journal will be removed.
   Description : The temporary folder generated for journal level debug or 
                 higher will be removed before SUM exits.
   Issue ID    : None
   Validation  : Executing SUM command with --journal_level option debug, only 
                 one core file is created in journal path.
   Check list  : XXX-XX-XX
10.Enhancement : TpmProvision command is not supported on the platform after
                 Purley.
   Description : SUM will stop TpmProvision command and throw exception after
                 Purley platform.
   Issue ID    : None
   Validation  : Executing TpmProvision command on the platform after Purley 
                 should report unsupported.
   Check list  : None
11.Enhancement : Show HDD information when HDD controller mode is IDE.
   Description : GetSataInfo command will show HDD information when HDD 
                 controller mode is IDE.
   Issue ID    : None
   Validation  : HDD information with controller in IDE mode will be shown in 
                 GetSataInfo command output.
   Check list  : None
12.Enhancement : Show rebooting status message instead of exception when confirm
                 flag timeout.
   Description : With --reboot option, some systems require more than 300 
                 seconds default timeout to confirm file update status.  When 
                 confirm flag timeout reaches, SUM will show "being updated"
                 status instead of exception.
   Issue ID    : 89206
   Validation  : Debug TC220 and TC308 under full loading should pass.
   Check list  : None


v 2.0.1 (2018/03/08)
=======================
1. Fix         : Segmentation fault issue in UpdateBios command with 
                 --preserve_setting option.
   Description : When setting Password is set, SUM attempts to preserve 
                 password to new BIOS.  In the procedures, improper pointer cast 
                 caused segmentation fault.  Use static_cast instead to prevent.
   Issue ID    : Internal improvement
   Validation  : Set 'Administrator Password' in BIOS first.  Executing 
                 UpdateBios command with --preserve_setting option should 
                 complete normally.
   Check list  : 407-XX-XX
2. Fix         : 'std::bad_alloc' issue in UpdateBios command with 
                 --preserve_setting option.
   Description : When parsing local BIOS firmware image, SUM had been revised to
                 only parse EFI sections EFI_SECTION_COMPRESSION, 
                 EFI_SECTION_GUID_DEFINED and EFI_SECTION_RAW to ignore 
                 unexpected EFI sections.
   Issue ID    : 87804
   Validation  : For X11SCA MB, executing UpdateBios command with --file 
                 X11SCA_T201802091341.ROM and --preserve_setting options should 
                 complete normally.
   Check list  : 407-XX-XX
3. Enhancement : Preserving setting to new BIOS is limited to SMCI defined
                 preservable setting candidates.
   Description : SMCI BIOS team defines three mapping string prefixes, 'COMMN',
                 'CSPPL' and 'SMCBL' to indicate preservable settings. If a
                 setting mapping string does not match any of the above three
                 prefixes, this preservation feature is not supported to this
                 setting.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None


v 2.0.1 (2018/03/02)
=======================
1. Fix         : Fix infinite loop scenario of the CheckSystemUtilization
                 command.
   Description : If there is no partition on the last hard disk. An infinite
                 loop would cause SUM not exit.
   Issue ID    : Internal improvement
   Validation  : Executing CheckSystemUtilization command should complete
                 normally. 
   Check list  : 303-OB-XX
2. Fix         : Add skipping ROM size checking workaround for H11 series.
   Description : Due to OFBD TC 0x55 unimplemented in H11 series, using OFBD TC
                 0x55 command will obtain BIOS and ME regions size equal to 0.
                 Therefore, ROM size checking can't be supported for H11 series.
   Issue ID    : 88615, 88516 
   Validation  : Executing in-band UpdateBios command should complete normally.
   Check list  : 401-IB
3. Fix         : In-band UpdateBios would cause system hang after ME update is
                 finished and ME is reset.
   Description : Add 5 seconds delay before ME reset solved this issue.
   Issue ID    : Internal improvement
   Validation  : Executing in-band UpdateBios command on B11DPT should complete
                 normally.
   Check list  : 401-IB
4. Enhancement : TpmProvision command failed on Purley for new BIOS with new
                 setting name.
   Description : BIOS setting "SMC BIOS-Based TPM provision Support" has been
                 renamed to "SMCI BIOS-Based TPM provision Support". SUM 
                 is revised to support both setting names.
   Issue ID    : Internal improvement
   Validation  : Executing TpmProvision command on X11SPi-TF with BIOS
                 "X11SPI8.226" should complete normally.
   Check list  : 1001-OB-XX
5. Fix         : Help message in the BIOS XML configuration was inconsistent
                 with BIOS Setup.
   Description : Show help message from opRef instead of opFORM for BIOS
                 configuration.
   Issue ID    : Internal improvement
   Validation  : Executing GetCurrentBiosCfg or GetDefaultBiosCfg command to get
                 BIOS configuration, the help message should consistent with
                 BIOS Setup.
   Check list  : 501-XX-XX, 502-XX-XX
6. Fix         : HII BBS Priorities was lacking of duplication checks.
   Description : HII BBS Priorities was lacking of duplication checks. 
   Issue ID    : Internal improvement
   Validation  : Firstly, change 'Boot Option #1' and 'Boot Option #2' options 
                 to the same option string in the same BBS Priorities menu.  
                 Then, executing ChangeBiosCfg command should throw exception to
                 indicate that the boot options are duplicated.
   Check list  : 503-XX-XX
7. Enhancement : Add workaround to allow 'Disable' duplications for boot options
                 in BBS Priorities menus.
   Description : The boot option string for disabling a boot device can be
                 'Disabled' or 'Disable' for BBS Priorities releated settings in
                 differnt BIOS. They are allowed to be duplicated. However,
                 'Disable' could not be duplicated.
   Issue ID    : Internal improvement
   Validation  : Firstly, change 'Boot Option #1' and 'Boot Option #2' options 
                 to 'Disable' in the same BBS Priorities menu. Then, executing 
                 ChangeBiosCfg command should complete normally.
   Check list  : 503-OB-XX
8. Fix         : The warning message was not shown when setting change was not
                 taken effect.
   Description : When a setting is in a menu without fulfill WorkIf condition,
                 the setting will not be changed. A warning message should 
                 be shown to notify user. 
   Issue ID    : Internal improvement
   Validation  : Firstly, change 'Boot mode select' to 'Legacy'.  Secondly, 
                 change 'Boot Option #1' setting to 'Disabled'('Disable') in 
                 'UEFI Application Boot Priorities' menu. Thirdly, executing 
                 ChangeBiosCfg command should complete with warning message 
                 indicating that 'Boot Option #1' setting will not be taken 
                 effect. 
   Check list  : 503-OB-XX
9. Fix         : BMC would crash during BMC update from non-Redfish to Redfish
                 on MicroBlade and B10 series systems.
   Description : Update BMC procedure will trigger watchdog reboot. Disable
                 watchdog before updating BMC.
   Issue ID    : Customer report
   Validation  : V1. Executing UpdateBmc command to update BMC from
                 "SMT_MBIPMI_233" to "SMT_MBIPMI_261" on MicroBlade or B10
                 system should complete normally.
                 V2. Executing UpdateBmc command to update BMC from
                 "SMT_MBIPMI_261" to "SMT_348_REDFISH" on MicroBlade or B10
                 system should complete normally.
   Check list  : 70X-XX-XX
10.Fix         : Retrieve cold reset BMC operation after BMC update completed. 
   Description : BMC with firmware "SMT_MBIPMI_233" would not reset after
                 BMC update completed.
   Issue ID    : Internal improvement
   Validation  : Executing UpdateBmc command with firmware "SMT_MBIPMI_233.bin"
                 should complete normally.
   Check list  : 70X-XX-XX
11.Fix         : Password in BIOS setting only supports "Administrator Password"
                 and "User Password". 
   Description : Do not support HDD password for HII.
   Issue ID    : Internal improvement
   Validation  : Executing GetCurrentBiosCfg or GetDefaultBiosCfg command to get
                 BIOS configuration, HDD password should not be shown in BIOS
                 XML configuration.
   Check list  : 501-XX-XX, 502-XX-XX


v 2.1.0 (2018/02/14)
=======================
1. Enhancement : GetPsuInfo command requires SFT-OOB-LIC product key.
   Description : Instead of "SFT-DCMS-Single" product key, GetPsuInfo command
                 requires "SFT-OOB-LIC" product key.
   Issue ID    : Internal improvement
   Validation  : Prepare a system with only "SFT-OOB-LIC" prodcut key
                 activated.  Executing OOB/In-Band GetPsuInfo command should
                 pass license checking.
   Check list  : None
2. New Feature : Add in-band secure flash feature for Purley and later platforms.
   Description : Add in-band secure flash feature for Purley and later platforms.
   Issue ID    : None
   Validation  : On X11DPI-N or X11SRM platforms, firstly, flash a BIOS with 
                 signed BIOS image. Then, inband flashing with an unsigned
                 BIOS image should be prohibited.
   Check list  : None
3. Fix         : Optimization level of compilation flag changed from 3 to 1 
                 for FreeBSD.
   Description : Execute GetCurrentBiosCfg command in Purley MBs with FreeBSD 
                 shows "Invalid BIOS internal file" exception with O3 flag
                 on Purley BIOS.
                 Changing compilation flag from 03 to O1 fix this issue.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command in Purley MBs with FreeBSD
                 should complete normally   
   Check list  : None
4. Enhancement : Increase retry interval for IPMI time-consuming commands.
   Description : Increase retry interval from 2 seconds to 5 seconds for IPMI 
                 time-consuming commands.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
5. Enhancement : UpdatePsu command does not support system with backplane (LCMC).
   Description : If the managed system with backplane (LCMC), an exception will 
                 be throw when executing UpdatePsu command.
   Issue ID    : Internal improvement
   Validation  : Prepare a system with backplane (LCMC). Excuting UpdatePsu 
                 command should be prohibited.
   Check list  : None
6. Enhancement : Remove SUM user guide chapter number mentioned in SUM message.
   Description : To prevent inconsistent chapter number between SUM user guide 
                 and messages, SUM only mentions chapter title in message.
   Issue ID    : Internal improvement
   Validation  : SUM user guide chapter number should not be mentioned when 
                 executing GetCurrentBiosCfg/GetBmcCfg/GetCmmCfg/GetDmiInfo
                 commands.
   Check list  : None
7. New Feature : SUM dumps debug and log files during execution.
   Description : To improve issue tracking ability, SUM could dump log files 
                 during execution by configuration or option.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
8. Enhancement : TpmProvision command does not support for Purley and later
                 platforms.
   Description : TpmProvision command does not support for Purley and later
                 platforms.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None


v 2.0.1 (2018/02/05)
=======================
1. Enhancement : NVMe information was not displayed correctly with TAS after
                 "TAS_1.5.1_build.171110". 
   Description : NVMe information was filtered out unexpectedly after
                 "TAS_1.5.1_build.171110".
   Issue ID    : Internel improvement 
   Validation  : Install NVMe SSD first. Executing CheckSystemUtilization
                 command with TAS built after 2017/11/10 should display NVMe
                 information.
   Check list  : 303-OB-MM
2. Fix         : Fix array out of bound issue.
   Description : Cppcheck found that the incorrect source code may lead to
                 illegal memory access.
   Issue ID    : Internel improvement
   Validation  : None
   Check list  : None
3. Enhancement : Skip file download support check if the managed system is
                 Grantley with wrong feature flags.
   Description : If the managed system is Grantley, and the BMC feature flags
                 version is greater than or equal to 1.4 but OOB command
                 version is greater than or equal to 1, an exception would be
                 throw. Now skip BIOS file download support check for Grantley. 
   Issue ID    : Internel improvement 
   Validation  : None
   Check list  : None 
4. Enhancement : Revise the exception messgae for all RAID related commands if
                 no RAID controller on managed system.
   Description : Fix exception message from "There no RAID controller detected 
                 on motherboard" to "There is no RAID controller detected on 
                 motherboard" for all RAID related commands.
   Issue ID    : Internel improvement 
   Validation  : If the managed system no any RAID controller, execute RAID 
                 related commands will throw exception with message "There is no
                 RAID controller detected on motherboard". 
   Check list  : 1101-IB, 1102-IB, 1103-IB, 1106-IB, 1107-IB, 11XX-OB-XX 
5. Fix         : Failed to get SMM buffer data length in Windows when
                 locking/unlocking SMM buffer.
   Description : Execute in-band GetDmiInfo and EditDmiInfo commands on B11DPT
                 with Windows would throw exception.
   Issue ID    : 87824
   Validation  : Executing GetDmiInfo and EditDmiInfo commands on B11DPT with
                 Windows should complete normally.
   Check list  : 60X-IB
6. Enhancement : Add BIOS ROM size check to prevent in-band BIOS updates between
                 32 and 64 MB BIOS. 
   Description : BIOS should not be in-band updated between 32 and 64 MB because
                 different size BIOS have different ROM layout.
   Issue ID    : Internel improvement 
   Validation  : In-band BIOS update from 32 to 64 MB BIOS and vice versa should 
                 be terminated.
   Check list  : 40X-IB
7. Fix         : Fix BMC major version using binary encoding.
   Description : Fix BMC major version using binary encoding, then masking bit 7. 
   Issue ID    : Internel improvement
   Validation  : None
   Check list  : None
8. Enhancement : Add UDP thread safety protection. 
   Description : Add UDP thread safety protection. 
   Issue ID    : 84886 
   Validation  : In multiple mode stress test(more than two nodes), executing
                 OOB LoadDefaultBiosCfg command with option --reboot should
                 complete normally.
   Check list  : 504-OB-MM
9. Enhancement : Enhance OOB BIOS update stability. 
   Description : Enhance OOB BIOS update stability.
   Issue ID    : 84886 
   Validation  : In multiple mode stress test(more than two nodes), executing
                 OOB UpdateBios command with option --reboot should complete
                 normally.
   Check list  : 40X-OB-MM
10.New feature : Add a hidden option --bypass_jpme2 to skip FDT check and
                 update ME region for in-band UpdateBios command.
   Description : In-band UpdateBios with option "--bypass_jpme2" will skip FDT
                 check and continue updating ME region.
   Issue ID    : None
   Validation  : None
   Check list  : 410-IB 
11.New feature : Add a hidden option --unlock_smmbuffer to release SMM buffer
                 lock status.
   Description : In-band BIOS update failure may cause the SMM buffer be locked.
   Issue ID    : None 
   Validation  : None 
   Check list  : 411-IB


v 2.0.1 (2018/01/08)
=======================
1. Enhancement : Support non-ASCII string for DMI related commands. 
   Description : Execute ChangeDmiInfo using the file containing the ASCII
                 string first. Executing GetDmiInfo command would fail because
                 Because non-ASCII string parsing is not supported.
   Issue ID    : Internel improvement 
   Validation  : Executing ChangeDmiInfo and GetDmiInfo commands using the file
                 containing the ASCII string should complete normally. 
   Check list  : 601-XX-XX, 602-XX-XX
2. Fix         : Clear the SMI command 0x24 cleanly.
   Description : SMI commands 0x24 was not cleared cleanly when in-band upload
                 file.
   Issue ID    : Internel improvement
   Validation  : None
   Check list  : None 


v 2.0.1 (2018/01/05)
=======================
1. Fix         : Fix help message for UpdateBios command.
   Description : Fail to initial release token mask variable when showing help
                 message and show critical warning message. 
   Issue ID    : Internal improvement 
   Validation  : Execute UpdateBios command with option -h should not show
                 critical warning message right after the help message.
   Check list  : 40X-OB-XX
2. Fix         : Fix license requirement for in-band GetDmiInfo and
                 ChangeDmiInfo commands
   Description : Did not check license requirement if get DMI information through
                 alternative mechanism.
   Issue ID    : Internal improvement
   Validation  : V1. Deactivate product keys from managed system. Executing
                     GetDmiInfo and ChangeDmiInfo commands will throw exception.
                 V2. Activate product key. Execute in-band GetBiosInfo command
                     first with SUM 1.6.2. Executing in-band GetDmiInfo or
                     ChangeDmiInfo command should check OOB product key, then
                     complete normally through BMC KCS, and show message "Query
                     through KCS interface".
   Check list  : 305-IB, 601-IB, 602-IB
3. Fix         : Executing in-band GetBiosInfo command will cause subsequent
                 EditDmiInfo command failed.
   Description : In-band GetBiosInfo command caused BIOS to clear DMI
                 information, so executing in-band EditDmiInfo command after the
                 previous operation would fail.
   Issue ID    : Customer report
   Validation  : Execute in-band GetBiosInfo command first with SUM 1.6.2.
                 Executing in-band EditDmiInfo command should complete normally
                 through BMC KCS, and show message "Query through KCS
                 interface".
   Check list  : 603-IB, 604-IB
4. Fix         : Remove SMI commands 20 and 24 when in-band upload and download
                 file.
   Description : BIOS configuration would be changed after executing 
                 GetCurrentBiosCfg commmand and rebooting.
   Issue ID    : Customer report
   Validation  : Change BIOS option "Quiet Boot" from Enabled to Disabled, then
                 execute GetCurrentBiosCfg command and reboot, the option
                 "Quient Boot" value would not be changed.
   Check list  : 501-IB
5. Enhancement : Add 5 secs delay before SMI command 24 (Disable).
   Description : Executing GetBiosInfo command would cause kernel panic on
                 X11SAA.
   Issue  ID   : Internal improvement
   Validation  : Executing GetBiosInfo command should complete normally on
                 X11SAA.
   Check list  : 305-IB, 40X-IB
6. Fix         : Skip service enable/disable for Linux/FreeBSD for in-band
                 UpdateBmc command.
   Description : Enable TAS service after in-band UpdateBmc command would fail.
                 SUM would not exit and return to command line.
   Issue ID    : Internal improvement 
   Validation  : On X11SAE-f, executing in-band UpdateBmc command should
                 complete normally.
   Check list  : 70X-IB
7. Fix         : Fix use type code 0x5C to prevent BIOS downgrade issue.
   Description : In-Band UpdateBios was failed on X11SSQ.
                 Added checking signature length mechanism for GetOEMPattern
                 interface and remove SGI project workaround ($FID).
   Issue ID    : 87246
   Validation  : Executing in-band UpdateBios command on X11SSQ with Skylake CPU
                 should complete normally.
   Check list  : 40X-IB


v 2.0.1 (2017/12/27)
=======================
1. Enhancement : License free for CMM command group.
   Description : License free for CMM command group.
   Issue ID    : Internal improvement
   Validation  : CMM command group can be executed without license.
   Check list  : 120X-XX, 130X-XX
2. Fix         : Executing in-band GetBiosInfo command will cause subsequent
                 GetDmiInfo and ChangeDmiInfo commands failed.
   Description : In-band GetBiosInfo command caused BIOS to clear DMI
                 information, so executing in-band GetDmiInfo or ChangeDmiInfo
                 command after the previous operation would fail.
   Issue ID    : Customer report
   Validation  : Execute in-band GetBiosInfo command first with SUM 1.6.2.
                 Executing in-band GetDmiInfo or ChangeDmiInfo command should
                 complete normally through BMC KCS, and show message "Query
                 through KCS interface".
   Check list  : 305-IB, 601-IB, 602-IB
3. Fix         : Do not display CPU ID if the CPU ID is garbled.
   Description : Garbled CPU ID was shown on K1 MBs when executing
                 in-band GetBiosInfo or UpdateBios command.
   Issue ID    : 85625, 85626
   Validation  : Executing in-band GetBiosInfo or UpdateBios command with K1
                 BIOS will not display CPU ID.
   Check list  : 305-IB, 40X-IB
4. Enhancement : Support K1 MBs prevention downgrade for BIOS update.
   Description : Add a workaround to match the shorter signature ($FID) of K1
                 MBs for support prevention downgrade function.
   Issue ID    : 85625, 85626
   Validation  : Prevention downgrade proccess should work normally on K1 MBs.
   Check list  : 40X-IB
5. Fix         : Can not get DMI information in UEFI Windows or Linux.
   Description : DMI information entry point varies in UEFI and non-UEFI OS,
                 but SUM searched hard coding entry point. In Windows, Use new
                 API 'GetSystemFirmwareTable' to get DMI information package,
                 this API supports both UEFI and non-UEFI Windows.
                 In UEFI Linux, find the systab file in the path
                 /sys/firmware/efi or /proc/efi/systab, then find the correct
                 entry point in the file contents by anchor string "SMBIOS3" or
                 "SMBIOS".
   Issue ID    : Internal improvement 
   Validation  : Executing in-band UpdateBios command should complete normally
                 in UEFI Windows or Linux.
   Check list  : 40X-IB 
6. New feature : Support new IPMI raw command for enabling force BIOS update.
   Description : Support IPMI raw command set "30 A0 33" for enabling force BIOS
                 update. SUM will send IPMI raw command "30 70 C7 01" first, if
                 failed, switch to send IPMI raw command "30 A0 33".
   Issue ID    : Internal improvement
   Validation  : Executing OOB UpdateBios command with option --force_update
                 should complete normally on X11DGQ, and the ME region should be
                 flashed.
   Check list  : 402-OB-XX
7. Fix         : US side Purley MBs can not in-band update BIOS built from 7.Axx
                 to 7.B2x or later.
   Description : System would be bricked after executing UpdateBios command with
                 option --reboot. The root cause is that BIOS compares FDT
                 bundled with FDR and MER update. So add a workaround to poll the
                 status, then continue the process if update completed. 
   Issue ID    : 40X-IB
   Validation  : Executing in-band UpdateBios command on X11DGQ to update BIOS
                 from HPGQA107 to HPGQB297 should complete normally and reboot
                 successfully.
   Check list  : 402-IB
8. Fix         : BIOS configuration WorkIf dependency was not shown correctly.
   Description : Some WorkIf dependencies containing RC defined variable(s) were 
                 not shown in BIOS XML configuration in Purley MBs. 
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command in Purley MBs to get
                 current BIOS configuration. The WorkIf dependencies for BBS
                 Priorites related menus, "Console Redirection Settings" menu,
                 "Mirror mode" setting and "UEFI ARM Mirror" setting should be
                 shown.
   Check list  : 501-XX-XX


v 2.1.0 (2017/12/15)
=======================
1. New Feature : Add GetPsuInfo and UpdatePsu commands to manage PSU firmware.
   Description : Add GetPsuInfo command to display current PSU status and
                 UpdatePsu command to update PSU firmware.
   Issue ID    : None
   Validation  : None
   Check list  : None
2. New Feature : Add GetTpmInfo and TpmManage commands to manage TPM.
   Description : Add GetTpmInfo command to display current TPM status and
                  TpmManage command to do PPI-x use cases on the TPM module.
   Issue ID    : None
   Validation  : None
   Check list  : None
3. New Feature : Exit code 76 - Invalid TPM provision table file.
   Description : Exit code 76 - Invalid TPM provision table file.
   Issue ID    : ID
   Validation  : None
   Check list  : None
4. Enhancement : Improve the correctness of error messages.
   Description : EImprove the correctness of error messages.
   Issue ID    : ID
   Validation  : None
   Check list  : None


v 2.0.1 (2017/12/08)
=======================
1. Fix         : Fix BIOS event log can't be cleared by OOB ClearEventLog 
                 command.
   Description : Fix BIOS event log can't be cleared by OOB ClearEventLog 
                 command.
   Issue ID    : Internal improvement
   Validation  : Executing OOB ClearEventLog command with --reboot option.
                 Entering BIOS Setup after rebooting.  BIOS event log should be
                 cleared.
   Check list  : 902-OB-XX
2. Enhancement : Add token release handling in class destructor for protection.
   Description : Add token release handling in class destructor for protection.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
3. Enhancement : Add --release_token hidden option in OOB UpdateBios command.
   Description : Add --release_token hidden option in OOB UpdateBios command for
                 releasing upload and update tokens.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
4. Fix         : Fix in-band BMC update failure.
   Description : Fix in-band BMC update failure on BMC FW that has smaller KCS 
                 buffer size.
   Issue ID    : 85625, 85626
   Validation  : Flash BMC FW to a version with smaller KCS buffer size on K1SPi
                 MB first. Executing inband UpdateBmc command should complete 
                 normally.
   Check list  : 701-IB
5. Fix         : Add OpenSSL thread safe protection.
   Description : UpdateBios, UpdateBmc, UpdateCmm and UpdateRaidController 
                 commands add thread safe protection in multiple system mode.
   Issue ID    : 84886 
   Validation  : Executing UpdateBios/UpdateBmc/UpdateCmm/UpdateRaidController 
                 commands under stress should complete normally without 
                 unexpected termination.
   Check list  : 401-OB-MM, 701-OB-MM, 1201-OB-MM, 1104-OB-MM
6. Enhancement : Add BIOS downgrade prevention for Apollo Lake and Denverton
                 platforms.
   Description : Add BIOS downgrade prevention for Apollo Lake and Denverton
                 platforms.
   Issue ID    : None
   Validation  : Firstly, flash a BIOS with upgrade GUID key. Then, inband 
                 flashing a BIOS without upgrade GUID key should be prohibited.
   Check list  : 401-IB
7. New Feature : Add --skip_bbs option for ChangeBiosCfg command.
   Description : Add --skip_bbs option to ignore the BBS related menus in BIOS 
                 XML configuration file for ChangeBiosCfg command.
   Issue ID    : Internal improvement
   Validation  : Executing ChangeBiosCfg command with --skip_bbs option, the BBS 
                 related menus should be ignored.
   Check list  : 503-OB-XX
8. Fix         : The value of setting Numeric was updated to zero unexpectedly.
   Description : The value of setting Numeric was updated to zero unexpectedly 
                 when "numericValue" is a string with non-decimal character. 
   Issue ID    : Internal improvement
   Validation  : Modify attribute value of "numericValue" to a string with 
                 non-decimal character in BIOS XML configuration file.  
                 Executing ChangeBiosCfg command with the above file should 
                 throw exepction.
   Check list  : 503-OB-XX
9. Enhancement : Add "Slot Designation" field for AOC information in 
                 CheckAssetinfo command output.
   Description : Add "Slot Designation" field for AOC information in
                 CheckAssetinfo command output.
   Issue ID    : Internal improvement
   Validation  : Install an AOC on MB.  "Slot Designation" field should be shown
                 in CheckAssetInfo command output.
   Check list  : 302-OB-XX
10.Fix         : Improve OOB BIOS update procedure stability.
   Description : Sometimes SUM gets terminated when executing OOB UpdateBios
                 command.
   Issue ID    : 85477
   Validation  : Executing OOB UpdateBios command should complete normally 
                 without unexpected termination.
   Check list  : 401-OB-XX
11.Enhancement : Add retry when OpenSession handshake failure.
   Description : When OpenSession handshake failure, retry twice with one 
                 second interval.
   Issue ID    : Internal improvement
   Validation  : Executing OOB UpdateBios command should complete normally
                 without exception thrown.
   Check list  : 401-OB-XX
12.Fix         : Fix feature flags incorrect version comparison.
   Description : When feature flags version major verion is greater than one and 
                 minor version is less than four, incorrect version comparison 
                 will cause unexpected error.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
13.Fix         : Add feature flags download retry.
   Description : When feature flags download failure, retry six times with 15 
                 seconds internal.
   Issue ID    : Internal improvement
   Validation  : LoadDefaultBiosCfg, ChangeBiosCfg, ChangeDmiInfo commands 
                 should pass stress test.
   Check list  : 401-OB-XX
14.Enhancement : Skip trying to download BIOS feature flags for X10, Blade and
                 CMM systems.
   Description : No BIOS feature flags for X10, Blade and CMM systems.  SUM 
                 simply skips trying to download.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None


v 2.0.0 (2017/11/08)
=======================
1. Enhancement : Prevent BIOS downgrade in Purley platform.
   Description : Prevent downgrading from BIOS with upgrade GUID key to BIOS 
                 without upgrade GUID key.
   Issue ID    : Internal improvement
   Validation  : Firstly, flash a BIOS with upgrade GUID key. Then, inband 
                 flashing a BIOS without upgrade GUID key should be prohibited.
   Check list  : 40X-IB
2. Enhancement : Replace IPMI OEM commands with standard commands for BMC/CMM 
                 network configurations.
   Description : Replace IPMI OEM commands with standard commands for BMC/CMM 
                 network configurations. 
   Issue ID    : Internal improvement
   Validation  : Run SMSTC TC215 stress test with 100 cycles.  BMC MAC adddress 
                 should not be lost.
   Check list  : 802-XX-XX      
3. Fix         : Revise error message for UpdateBios command with 
                 --preserve_setting option.
   Description : Error messages for inband/OOB UpdateBios command with 
                 --preserve_setting option were incorrect. 
   Issue ID    : Internal improvement
                 option on a platform before Purley, error message 
                 "--preserve_setting option is only supported in Purley and 
                 later platforms." will be shown.
   Check list  : 407-XX-XX
4. Enhancement : Sync with SMCIPMITool MRC event log change.
   Description : Memory DIMM location was incorrect in Purley platform.
   Issue ID    : Internal improvement
   Validation  : For Purley, use IPMI raw command 0x0a 0x44 0x7B 0x06 0x02 0xCA 
                 0xC4 0x39 0x53 0x1A 0x00 0x04 0xCC 0xFE 0x6F 0x01 0x01 0xA5 to 
                 generate MRC event log.  The memory DIMM location in BMC event 
                 log from GetEventLog command output should be correct and 
                 consistent with BMC web.
   Check list  : 901-XX-XX
5. Fix         : Release upload token when "lock update token failure" happened.
   Description : Release upload token when "lock update token failure" happened. 
   Issue ID    : Internal improvement
   Validation  : Firstly, flash BMC FW SMT_X11AST2500_137.  Then, "lock update 
                 token failure" situation in OOB UpdateBios command should 
                 release upload token.   
   Check list  : 40X-OB-XX   
6. Enhancement : Rename "SID" to "Slot Number" in HDD section in 
                 CheckSystemUtilization command output.
   Description : Rename "SID" to "Slot Number" in HDD section in 
                 CheckSystemUtilization command for clarity.
   Issue ID    : Internal improvement
   Validation  : "Slot Number" instead of "SID" should be shown in HDD section 
                 in CheckSystemUtilization command ouptut.
   Check list  : 303-XX-XX
7. Fix         : Remove unnecessary OFBD command in inband GetBiosInfo command.
   Description : Remove unnecessary OFBD command in inband GetBiosInfo command. 
   Issue ID    : 83415
   Validation  : Firstly, executing inband GetBiosInfo command.  Then executing 
                 GetDmiInfo command should complete successfully.
   Check list  : 305-XX-XX, 601-XX-XX
8. Fix         : OOB UpdateBios command does not support on MB A1SRi/A1SAi.
   Description : OOB UpdateBios command does not support on MB A1SRi/A1SAi. 
   Issue ID    : Customer report
   Validation  : Executing OOB UpdateBios command on MB A1SRi/A1SAi should be 
                 prohibited.
   Check list  : 40X-XX-XX    
9. Fix         : Fix "Precentage used" and "Num err_log ertries" typos in NVMe
                 section in CheckSystemUtilization command output.
   Description : Fix "Precentage used" typo in NVMe section in
                 CheckSystemUtilization command output.
   Issue ID    : Internal improvement
   Validation  : "Percentage used" and "Num err_log entries" should be shown in
                 NVMe section in CheckSystemUtilization command ouptut.
   Check list  : 303-XX-XX 


v 2.0.0 (2017/10/27)
=======================
1. Enhancement : Add workaround for only one LAN mode supported in BMC.
   Description : When only one LAN mode supported in BMC, sending IPMI set
                 command 30 70 0C will get completion code 0x80. 
   Issue ID    : 81927
   Validation  : Executing ChangeBmcCfg command to change "LanMode" field should 
                 complete successfully.
   Check list  : 802-XX-XX
2. Enhancement : Add time update mode from blade system.
   Description : Add time update mode from blade system. 
   Issue ID    : Internal improvement
   Validation  : Modify "TimeUpdateMode" field to "Blade System" in CMM 
                 configuration.  Then, executing ChangeCmmCfg command should 
                 make the CMM time synchronized to blade system time.
   Check list  : 1302-OB-XX
3. Enhancement : Add workaround for BIOS sending inaccurate AOC serial number.
   Description : When AOC serial number mismatching from different sources, SUM
                 would not show accurate AOC slot location in CheckAssetInfo
                 command output. 
   Issue ID    : Internal improvement
   Validation  : Install AOC on MB.  Executing CheckAssetInfo command should 
                 show accuarate AOC slot location.
   Check list  : 302-OB-XX
4. Fix         : Fix WorkIf dependency not shown correctly.
   Description : WorkIf dependency containing RC defined variable was not shown 
                 in BIOS XML configuration in Purley-based MB. 
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command in Purley-based MB to get 
                 current BIOS configuration. The WorkIf dependency for setting 
                 "Erase Event Log" should be shown.
   Check list  : 501-XX-XX
5. Enhancement : Remove Quesion ID and form ID in BIOS XML configuration.
   Description : Quesion ID and form ID were for debug purpose.  Those 
                 information should invisible to customer.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command in Purley-based MB to get 
                 current BIOS configuration.  The tags "QuestionId" and "FormId"
                 should not be found.
   Check list  : 501-XX-XX
6. Enhancement : Rename attribute name "settingValue" to "numericValue" for 
                 setting Numeric.
   Description : "settingValue" is not dedicated to setting Numeric.  Instead,
                 "numericValue" is dedicated to setting Numeric.
   Issue ID    : Internal improvement
   Validation  : Execute GetCurrentBiosCfg command in Purley-based MB to get 
                 current BIOS configuration.  Setting Numeric should contain a
                 attribute name "numericValue" instead of "settingValue." 
   Check list  : 501-XX-XX
7. Enhancement : Add "SID" field in HDD section in CheckSystemUtilization 
                 command output.
   Description : Add "SID" field in HDD section in CheckSystemUtilization 
                 command output.
   Issue ID    : Internal improvement
   Validation  : Execute CheckSystemUtilization command.  The "SID" field 
                 should be shown in HDD section. 
   Check list  : 303-OB-XX
8. Enhancement : If patch #3033929 is not installed on Windows 2008, executing 
                 in-band GetBiosInfo command will fail.
   Description : If patch #3033929 is not installed on Windows 2008, SUM will 
                 remind user to install the patch.
   Issue ID    : Internal improvement
   Validation  : Execute in-band GetBiosInfo command on Windows 2008.  If patch
                 #3033929 is not installed, SUM will remind user to install the 
                 patch.
   Check list  : 305-IB
9. Enhancement : Add retry and timeout for IPMI OEM time-consuming commands.
   Description : Add retry every two seconds and 120 seconds timeout for IPMI 
                 OEM time-consuming commands.
   Issue ID    : 83990, 84407, 85018
   Validation  : Execute ChangeBmcCfg command should complete successfully.
   Check list  : 802-XX-XX
10.Enhancement : Before changing the target settings, disable its depending 
                 setting first.  Enable its depending setting back after the 
                 target settings are changed.
   Description : If a depended setting is not disabled before changing the 
                 target settings, it may cause unexpected error.
   Issue ID    : Internal improvement
   Validation  : Execute ChangeBmcCfg command should complete successfully.
   Check list  : 802-XX-XX
11.Enhancement : If a depended setting is disabled, any setting modifications
                 in the target settings will not take effect.
   Description : If a depended setting is disabled, any setting modifications
                 in the target settings will not take effect.
   Issue ID    : Internal improvement
   Validation  : In BMC configuration, when "TimeUpdateMode" is set as "Local",
                 any setting modifications in "DDNS" will not take effect.
   Check list  : 802-XX-XX
12.Fix         : When SNMP is changed from disabled to enabled, the SNMPV2 and 
                 SNMPV3 related settings could not be taken effect.
   Description : When SNMP is changed from disabled to enabled, the SNMPV2 and 
                 SNMPV3 related settings could not be taken effect.
   Issue ID    : Internal improvement
   Validation  : Make sure the SNMP status is disabled first.  Then, change SNMP
                 status from disabled to enabled and change SNMPV2/SNMPV3 
                 releated settings at the same.  SNMPV2/SNMPV3 releated settings
                 should take effect.
   Check list  : 802-XX-XX
   

v 2.0.0 (2017/09/30)
=======================
1. Fix         : Free invalid memory type warning in dumped kernel dmesg.
   Description : munmap range mismatch in virtual driver. 
   Issue ID    : Internal improvement
   Validation  : Executing inband command should complete successfully without
                 free invalid memory type warning dumped in kernel dmesg.
   Check list  : XXX-IB
2. Fix         : Support file type EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE
                 parsing in BIOS firmware image.
   Description : AMD BIOS firmware image contains file type 
                 EFI_FV_FILETYPE_FIRMWARE_VOLUME_IMAGE which was not processed
                 properly.
   Issue ID    : 84299, 83883
   Validation  : Executing UpdateBios command with --preserve_setting option on
                 H11 series MB should complete normally.  
   Check list  : 407-XX-XX
3. Fix         : In-band GetBiosInfo command failure.
   Description : Fixed type code 0x5C checking.
   Issue ID    : 84497, 84422, 84418, 84349, 84216, 84124, 
   Validation  : Executing in-band GetBiosInfo command should complete normally.
   Check list  : 305-IB
4. Enhancement : Enhance RAID configuration file comments.
   Description : If the value of a field does not reflect its current value, 
                 comments are added to info user.
   Issue ID    : Customer report
   Validation  : The downloaded RAID configuration file from GetRaidCfg command
                 should contain the enhanced comments.
   Check list  : 1106-XX-XX
5. Enhancement : System pmdll64.dll might be overwritten by the older one 
                 packed in SUM.
   Description : SUM might fail to locate system pmdll64.dll when system 
                 pmdll64.dll is installed by PnP. It caused system pmdll64.dll 
                 would be updated by the one packed in SUM unexpectedly. SUM has
                 been revised to check all system environment paths to locate 
                 system pmdll64.dll.
   Issue ID    : Internal improvement
   Validation  : Install pmdll64.dll by PnP install in Windows.  Executing 
                 inband GetBiosInfo command should complete successfully.
   Check list  : 305-IB
6. Fixed       : OOB UpdateBios progress might get stock.
   Description : SUM added pseudo progress workarounds to avoid OOB UpdateBios
                 progress getting stock.
   Validation  : Executing OOB UpdateBios command should complete successfully.
   Check list  : 40X-OB-XX
7. Enhancement : Add retries to make sure IPMI command has completed
   Description : If an IPMI command does not finish immediately, sending another
                 IPMI command will cause unexpected outcome.   
   Issue ID    : Internal improvement
   Validation  : Modify BMC configuration settings as many as possible first. 
                 Executing ChangeBmcCfg should complete successfully.
   Check list  : 802-XX-XX
8. New Feature : Exit code 155 - IPMI received invalid data.
   Description : Exit code 155 - IPMI received invalid data.
   Issue ID    : ID
   Validation  : None
   Check list  : None


v 2.0.0 (2017/09/19)
=======================
1. Enhancement : Add fields 'Controller name', 'Model', 'Disk size', 'Cylinders'
                 , 'Sectors', 'Tracks', 'Heads' and 'Interface type' in HDD 
                 category for CheckSystemUtilization command. 
   Description : Add fields 'Controller name', 'Model', 'Disk size', 'Cylinders'
                 , 'Sectors', 'Tracks', 'Heads' and 'Interface type' in HDD 
                 category for CheckSystemUtilization command. 
   Issue ID    : Internal improvement
   Validation  : Executing CheckSystemUtilization command with TAS installed 
                 should output the above fields in HDD category.
   Check list  : 303-OB-XX
2. Fix         : Fix in-band UpdateBios command hang on POST code B2 on Purley.
   Description : Fix memory overlapping issue in flash info version data 
                 structure.  Adjust BIOS update procedures: DMI restore first 
                 and disable flash later.
   Issue ID    : 84062
   Check list  : 402-IB
3. Enhancement : Add a workaround to support BIOS configuration BIN minor 
                 version change.
   Description : Separate two byte version for BIOS configuration BIN into one 
                 byte minor version and one byte major version.
   Issue ID    : Internal improvement
   Validation  : Prepare a BIOS configuration BIN with minor version 0x03 and 
                 major version 0x00.  Executing GetCurrentBioscfg command should
                 complete normally.
   Check list  : 501-XX-XX
4. Fix         : Properities in SNMP V2 in BMC configuration were changed 
                 incorrectly.
   Description : ROCommunity and ROWommunity properties in SNMP V2 in BMC 
                 configuration were changed incorrectly.
   Issue ID    : Customer report
   Validation  : ROCommunity and ROWommunity properties in SNMP V2 in BMC 
                 configuration should be able to be changed by ChangeBmcCfg 
                 command.
   Check list  : 802-XX-XX   
5. Enhancement : SNMP V2/V3 in BMC/CMM configuration changes will be skipped 
                 when SNMP V2/V3 status is disabled.
   Description : SNMP V2/V3 in BMC/CMM configuration changes will be skipped 
                 when SNMP V2/V3 status is disabled.
   Issue ID    : Customer report
   Validation  : Change properties in SNMP V2/V3 in BMC/CMM configuration and 
                 disable SNMP V2/V3.  The properties changed in SNMP V2/V3 
                 should not be taken effect.
   Check list  : 802-XX-XX , 1302-OB-XX
6. Enhancement : Rename product key from 'DCMS' to 'SFT-DCMS-Single'
   Description : Rename product key from 'DCMS' to 'SFT-DCMS-Single'
   Issue ID    : Customer report
   Validation  : Executing QueryProductKey command will get product key name
                 'SFT-DCMS-Single' if avaiable. 
                 should not be taken effect.
   Check list  : 202-XX-XX
7. Fix         : OOB commands might connect to a wrong IPv4 address.
   Description : If IPv4 contains 0s ahead number, a wrong IPv4 address mihgt 
                 be connected. For example 10.146.160.024 was mis-recognized as
                 10.146.160.20.
   Issue ID    : Internal improvement
   Validation  : Executing OOB command with IPv4 address containing 0s ahead 
                 number. The correct IPv4 address should be connected.
   Check list  : XXX-OB-XX
8. New Feature : Added a new software product key type for SFT-DCMS-SVC-KEY.
   Description : Added a new software product key type for SFT-DCMS-SVC-KEY.
   Issue ID    : Internal improvement
   Validation  : None 
   Check list  : None
9. Fix         : Fix segmentation falut for CheckAssetInfo command.
   Description : When no add-on device installed, it caused segementation fault.
   Issue ID    : 83238, 84124
   Validation  : Executing CheckAssetInfo command without add-on device 
                 installed on managed system should complete normally.
   Check list  : 302-OB-XX


v 2.0.0 (2017/09/07)
=======================
1. Enhancement : Add SMBIOS version auto-recognizing.
   Description : SUM will auto-recognize SMBIOS version. If the platform is 
                 before Purley, the SMBIOS version will be recognized as 2.8.0.
                 If the platform is Purley or later, the SMBIOS version will be 
                 recognized according to specified version in header first.  If
                 no version is specified in header, the version will be 
                 recognized according to SMBIOS type 4 or type 0 table length.
   Issue ID    : None
   Validation  : In CheckAssetInfo command output, the memory speed unit will 
                 be displayed in MT/s and MHz for SMBIOS version 3.1.1 and 
                 before SMBIOS version 3.1.1, respectively. 
   Check list  : 302-OB-XX
2. Fix         : OOB UpdateBIOS command will check LOCK_FW_UPLOAD flag for all 
                 platforms in uploading phase.
   Description : If two or more sessions execute UpdateBios command and upload 
                 BIOS file at the same time, all sessions would not be 
                 terminated.
   Issue ID    : Internal improvement
   Validation  : Use two or more sessions to execute UpdateBios command and 
                 upload BIOS file at the same time.  Only the first session 
                 entering upload file mode can continue while others will be 
                 terminated.
   Check list  : 40X-OB-XX
3. Fix         : Some forms/settings were not shown or hidden properly in BIOS 
                 XML configuration.
   Description : Setting option value might be extracted incorectlly and it 
                 caused wrong workif dependency evaluation.
   Issue ID    : Customer report
   Validation  : Executing GetCurrentBiosCfg command on Purley-based MB, form
                 "Hard Disk Drive BBS Priorities" should be generated in the 
                 BIOS XML configuration.
   Check list  : 501-XX-XX
4. Enhancement : Increase polling interval for BIOS update progress from two to
                 five seconds.
   Description : Increase polling interval for BIOS update progress from two to
                 five seconds.
   Issue ID    : 83238
   Validation  : Executing OOB UpdateBios command should work normally.
   Check list  : 40X-OB-XX
5. Fix         : Fix memory leak issue when getting invalid add-on network
                 device information on X10 MB.
   Description : SUM would occur segmentation fault if get invalid add-on
                 network device information on X10 MB.
   Issue ID    : 83457
   Validation  : Executing CheckAssetInfo command should work normally even get
                 invalid add-on network device information on X10 MB.
   Check list  : 302-OB-XX
6. Fix         : Fix in-band GetDmiInfo command failure right after in-band 
                 GetBiosInfo command executed.
   Description : If executing in-band GetDmiInfo command right after in-band 
                 GetBiosInfo command, exception was thrown.
   Issue ID    : Customer report
   Validation  : Execute GetBiosInfo command first.  Then, executing GetDmiInfo
                 command should work normally.
   Check list  : 305-IB
7. Enhancement : Increase the waiting time after creating logical RAID devices.
   Description : After SUM sends IPMI commmand to create RAID logical devices, 
                 RAID logical devices take more time to be created.
   Issue ID    : Internal improvement
   Validation  : Executing GetRaidCfg command should get the correct RAID
                 configuration after executing ChangeRaidCfg command to create
                 RAID logical devices.
   Check list  : 1106-OB-XX, 1107-OB-XX
8. Enhancement : Add BIOS update status code check before updating phase.
   Description : BIOS update procedures can be separated into uploading phase 
                 and updating phase.  Before polling update progress in updating
                 phase, SUM will check if entering updating phase first.   
   Issue ID    : Internal improvement
   Validation  : Executing OOB UpdateBios command should complete sucessfully.
   Check list  : 1106-OB-XX, 1107-OB-XX
9. Enhancement : Throw exception if MB is required to power off to update BIOS.
   Description : If MB dose not support BIOS update in power on status, 
                 exception will be thrown to remind user to power off the 
                 managed system before BIOS update.
   Issue ID    : Internal improvement
   Validation  : Executing OOB UpdateBios command in power on status with a 
                 managed system which does not support BIOS update in power on 
                 status. Exception should be thrown.
   Check list  : 1106-OB-XX, 1107-OB-XX   
10.Enhancement : Add option --skip_unknown to ignore unknown forms/settings in
                 BIOS configuration for ChangeBiosCfg command.
   Description : When --skip_unknown option is assigned in ChangeBiosCfg 
                 command, the unknown forms/settings in BIOS configuration file 
                 will be ignored with warning messages.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 503-XX-XX
11.New Feature : Add exit code 75 and description "Invalid BIOS internal file".
   Description : Add exit code 75 and description "Invalid BIOS internal file".
   Issue ID    : None
   Validation  : None
   Check list  : None
12.New Feature : Add exit code 150 and description 
                 "IPMI execution exception on slave CMM or unavailable".
   Description : Add exit code 150 and description
                 "IPMI execution exception on slave CMM or unavailable".
   Issue ID    : None
   Validation  : None
   Check list  : None
13.New Feature : Add exit code 151 and description
                 "IPMI execution exception on module not present".
   Description : Add exit code 151 and description
                 "IPMI execution exception on module not present".
   Issue ID    : None
   Validation  : None
   Check list  : None
14.New Feature : Add exit code 250 and description "Managed firmware error".
   Description : Add exit code 250 and description "Managed firmware error".
   Issue ID    : None
   Validation  : None
   Check list  : None
15.Fix         : Fix uploading token occupied issue in UpdateBios command.
   Description : SUM did not release uploading token in UpdateBios command 
                 before throwing exception.
   Issue ID    : Internal improvement
   Validation  : When an exception is thrown from UpdateBios command before 
                 finishing updating phase, executing UpdateBios command again 
                 should work normally.
   Check list  : 40X-OB-XX


v 2.0.0 (2017/08/24)
=======================
1. Enhancement : Print IPMI completion code and description in IPMI exception 
                 output.
   Description : Print IPMI completion code and description in IPMI exception 
                 output.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
2. Enhancement : Add BIOS update status check when polling BIOS update progress.
   Description : In addition to BIOS update progress, SUM will check update 
                 status.  If update status is not in expected status (Normal, 
                 BIOS is updating, Checking NVRAM and Erase flash), exception 
                 will be thrown.  If option --force_update is assgined, SUM 
                 will recognize error status (Failed to enter ME recovery mode) 
                 as expected status.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : 40X-OB-XX
3. Enhancement : Print BIOS update status code and description in exception
                 When the BIOS update fails.
   Description : Print BIOS update status code and description in exception
                 When the BIOS update fails.
   Issue ID    : Internal improvement
   Validation  : None
   Check list  : None
4. Fix         : Fix wrong physical drive RAID firmware state issue.
   Description : If the physical drive is already configured for a RAID, the
                 physical drive firmware state would always show
                 "Unconfigured good drive" even it had been configured.
   Issue ID    : Internal improvement
   Validation  : Execute GetRaidCfg command to query the physical drive
                 information which has been configured for a RAID. The physical
                 drive firmware state will be shown as "Configured good drive".
   Check list  : 1106-OB-XX
5. Fix         : Fix SMM buffer without releasing lock issue.
   Description : In UpdateBios command, after SMM buffer had been locked, SMM 
                 buffer was not unlocked before exception thrown.  Executing 
                 UpdateBios or GetBiosInfo command again will throw exception 
                 message "Can not access SMM communication buffer".
   Issue ID    : 82988
   Validation  : Excecuting UpdateBios command with a BIOS whose FDT is 
                 different from managed system's.  Exception thrown is expected
                 and executing GetBiosInfo command later should work normally.
   Check list  : 40X-OB-XX
6. Enhancement : Add 600 seconds timeout for CCURL and increase the polling
                 update progress timeout from 10 minutes to 12 minutes for 
                 UpdateBios command.
   Description : If package loss occured when SUM sending CGI to IPMI, it may 
                 take hours to report timeout.
   Issue ID    : 83238
   Validation  : Executing UpdateBios command on X11DPFR-SH MB should work
                 normally, even if package loss occurs.
   Check list  : 40X-OB-XX
7. New Feature : Implement GetPSUInfo and UpdatePSUFw commands in newly added 
                 PSU command group.  This command group is hidden currently.
   Description : Implement GetPSUInfo and UpdatePSUFw commands in newly added 
                 PSU command group.  This command group is hidden currently.
   Issue ID    : None
   Validation  : None
   Check list  : None
8. Fix         : Add fail retry when downloading file via IPMI OEM command from
                 remote system.
   Description : Downloading file from remote system might fail because the
                 reservation ID may become invalid during downloading chunk by 
                 chunk phase.  Retry was added to re-download whole file again.
   Issue ID    : 83027
   Validation  : Executing GetCurrentBiosCfg command should not throw exception.
   Check list  : 501-XX-XX
9. Fix         : Fix option -l checking error in some commands in multi-node 
                 mode.
   Description : In some multi-node commands, -l option was removed accidentally
                 and it caused option conflict exception thrown.
   Issue ID    : Internal improvement
   Validation  : Executing a command supporting option --file in multi-node mod 
                 with option --individually should work normally.
   Check list  : None


v 2.0.0 (2017/08/04)
=======================
1. Enhancement : TpmProvision command supports for TPM 2.0 on GreenLow and 
                 Purley.
   Description : TpmProvision command supports for TPM 2.0 on GreenLow and 
                 Purley.
   Issue ID    : 82556, 82536
   Validation  : Executing TpmProvision command with TPM 2.0 on GreenLow or 
                 Purley will complete successfully.
   Check list  : 1001-OB-XX
2. Fix         : Fix option checking for TpmProvision command.
   Description : Either --lock or --cleartpm option is required for 
                 TpmProvision command.
   Issue ID    : Internal improvement
   Validation  : Executing TpmProvision command without both --lock and 
                 --cleartpm options should throw exception.
   Check list  : 1001-OB-XX
3. Enhancement : Support space character in password in system list file.
   Description : Support space character in password in system list file.
   Issue ID    : Customer report
   Validation  : Firstly, set BMC password with space character.  Secondly, 
                 Fill the password with space character in system list file. 
                 Thirdly, executing multiple system command with the system list
                 file should pass password authentication.
   Check list  : XXXX-OB-XX
4. Enhancement : --image_url option is required for TpmProvision command.
   Description : --image_url option is required for TpmProvision command.
   Issue ID    : Internal improvement
   Validation  : Excecuting TpmProvision command without --image_url option
                 should throw exception.
   Check list  : 1001-OB-XX
   

v 2.0.0 (2017/08/02)
=======================
1. Fix         : Add Mutex protection when using WMI/PHYMEM to access KCS bus.
   Description : SUM might time out if two or more processes access KCS buffer 
                 at the same time.
   Issue ID    : None
   Validation  : Execute two SUM processes in Windows. One for in-band 
                 GetBmcInfo command and the other for GetBmcCfg command.  Both 
                 processes should be complete successfully.
   Check list  : 306-IB, 801-IB
2. Fix         : Capitalize the first character of each word in description in 
                 CheckSensorData command output.
   Description : SUM CheckSensorData command outputs different results with IPMI
                 web and SMCIPMITool in discrete sensor.
   Issue ID    : 82053
   Validation  : Plug PMBus cable. Excuting CheckSensorData command output 
                 should be consistent to IPMI web and SMCIPMITool.
   Check list  : 304-OB-XX
3. Fix         : Fix unable to resolve IPv6 hostname.
   Description : Fix unable to resolve IPv6 hostname when only IPv6 is
                 available on UpdateBios, UpdateBmc and UpdateCmm commands.
   Issue ID    : None
   Validation  : Manually add a pair of IPv6 and hostname in /etc/hosts in
                 Linux or C:\Windows\System32\drivers\etc\hosts in Windows to
                 create a IPv6 only DNS local cache. Then, executing OOB 
                 UpdateBios, UpdateBmc or UpdateCmmOOB command with the added 
                 hostname should complete normally.
   Check list  : 401-OB-XX, 701-OB-XX, 1201-OB-XX
4. Enhancement : TpmProvision command will be terminated if TXT function is not 
                 supported by CPU or TPM module 2.0 is detected.
   Description : TpmProvision command will be terminated if TXT function is not 
                 supported by CPU or TPM module 2.0 is detected.
   Issue ID    : None
   Validation  : Prepare a CPU without TXT function support.  Executing 
                 TpmProvision command will throw exception with exit code 38 and
                 stop provision procedures. 
   Check list  : 1001-OB-XX
5. Enhancement : Remove --force_clearlock option in TpmProvision command.
   Description : Remove --force_clearlock option in TpmProvision command.
   Issue ID    : None
   Validation  : Executing TpmProvision command with --force_clearlock option 
                 will throw exception. 
   Check list  : 1001-OB-XX   
6. Enhancement : Support TPM 1.2 lock for production on Purley platform.
   Description : Support TPM 1.2 lock for production on Purley platform.
   Issue ID    : None
   Validation  : Executing TpmProvision command with --lock yes option on Purley
                 MB will complete TPM provision procedures and lock TPM module.
   Check list  : 1001-OB-XX
7. Enhancement : TpmProvision command does not support option --lock no on
                 Purley platform.
   Description : TpmProvision command does not support option --lock no on
                 Purley platform.
   Issue ID    : None
   Validation  : Executing TpmProvision command with --lock no option on Purley
                 MB will throw exception.
   Check list  : 1001-OB-XX 


v 2.0.0 (2017/07/27)
=======================
1. Fix         : Fix ChangeRaidCfg command with ClearAll action doesn't work
                 properly if remove information tag in Raid config XML file.
   Description : Fix ChangeRaidCfg command with ClearAll action doesn't work
                 properly if remove information tag in Raid config XML file.
   Issue ID    : None
   Validation  : Remove information tag in Raid config XML file. Then execute
                 ChangeRaidCfg command with ClearAll action. Remote system
                 should clear all Logical Device.
   Check list  : 1107-XX-XX
2. Fix         : Fix SMI exception message can't display correctlly.
   Description : Fix SMI exception message can't display correctlly.
   Issue ID    : 82274
   Validation  : Executing inband UpdateBios command on Windows system,
                 exception message should display correctlly while BIOS doesn't
                 support virtual driver.
   Check list  : 401-IB
3. Fix         : Backward OOB compatible for featurflags of BIOS Flash
                 Parameter defined in version 1.3.
   Description : Flash Parameter is undefinded while BIOS support featurflags
                 version less then 1.3. It will cause SUM exception with
                 parameter not support and conflict.
   Issue ID    : None
   Validation  : Executing outband updateBIOS command on Greenlow platform with
                 BIOS released before 2016/04 should work properly.
   Check list  : 401-OB
4. Fix         : ChangeBiosCfg will erase SetBiosAction flag setting.
   Description : 1. SetBiosAction with BBS enabled.
                 2. GetCurrentBiosCfg, get file bios.cfg
                 3. ChangeBiosCfg with bios.cfg
                 4. GetCurrentBiosCfg again get file bios2.cfg,
                 all BBS legacy boot devices will dissappear in bios2.cfg
   Issue ID    : 82327
   Validation  : follow the procedure in Description, all BBS legacy boot
                 devices should be preserved
   Check list  : 503-OB, 503-IB
5. Fix         : TPM provision clear completion flag, display the error
                 message incorrectly.
   Description : Description in error message will be empty.
   Issue ID    : None
   Validation  : None
   Check list  : 1001-OB-XX


v 1.7.0 (2017/07/21)
=======================
1. Enhancement : Support TPM 1.2 EFI provision for Denverton platform.
   Description : Support TPM 1.2 EFI provision for Denverton platform.
   Issue ID    : None
   Validation  : Executing TpmProvsion command on Denverton platform with TPM
                 1.2 installed should complete normally.
   Check list  : 1001-OB-XX
2. Fix         : Revise to enable 'TPM State' item to avoid TCG command failure.
   Description : Revise to enable 'TPM State' item to avoid TCG command failure.
   Issue ID    : None
   Validation  : Firstly, manually disable 'TPM State' item. Executing
                 TpmProvision command will enable 'TPM State' item and complete
                 normally.
   Check list  : 1001-OB-XX
3. Fix         : Skip disabling 'PH Randomization' item if it does not exist.
   Description : Skip disabling 'PH Randomization' item if it does not exist.
   Issue ID    : None
   Validation  : Excecuting TpmProvision command with TPM 2.0 installed should
                 complete normally.
   Check list  : 1001-OB-XX
4. Fix         : Fix 'PW Consumption' reading unit incorrect issue.
   Description : The 'PW Consumption' reading unit should be Watts in
                 CheckSensorData command output.
   Issue ID    : 81031
   Validation  : Executing CheckSensorData command on B10DRC/X10DRC MB. The
                 'PW Consumption' reading unit should be Watts.
   Check list  : 304-XX-XX
5. Fix         : Changing 'NETWORK Drive Boot Order' could not take effect when
                 USB boot device is installed on remote system.
   Description : Changing 'NETWORK Drive Boot Order' could not take effect when
                 USB boot device is installed on remote system.
   Issue ID    : 82327
   Validation  : Firstly, change an 'NETWORK Drive Boot Order'.  The modified
                 NETWORK Drive Boot Order should take effect after executing
                 ChangeBiosCfg command on USB boot device installed system.
   Check list  : 503-XX-XX
6. Fix         : Changing 'NETWORK Drive Boot Order' from 'Disabled' could not
                 take effect.
   Description : Changing 'NETWORK Drive Boot Order' from 'Disabled' could not
                 take effect.
   Issue ID    : None; Internal improvement
   Validation  : Firstly, change an 'NETWORK Drive Boot Order' from 'Disabled'
                 to a valid device.  The modified 'NETWORK Drive Boot Order'
                 should take effect after executing ChangeBiosCfg command.
   Check list  : 503-XX-XX


v 2.0.0 (2017/07/14)
=======================
1. Fix         : Some visible forms and settings were not generated in BIOS XML
                 configuration.
   Description : The forms and settings under workif dependency with RC variable
                 evaluated to true should be visible to user.
   Issue ID    : 81146, 81949, 81977, 81934
   Validation  : Executing GetCurrentBiosCfg command on Purley-based MB, form
                 "Trusted Computing" should be generated in the BIOS XML
                 configuration.
   Check list  : 501-XX-XX
2. Fix         : Some BIOS setting modifications were not taken effect.
   Description : The modified settings under workif dependency evaluated to true
                 should be taken effect.
   Issue ID    : 81146, 81949, 81977, 81934
   Validation  : For Purley-based MB, modify "Boot Option #" settings and
                 execute ChangBiosCfg command.  The "Boot Option #" setting
                 modifications should be taken effect after rebooting.
   Check list  : 503-XX-XX
3. Fix         : Add another required power cycle for TpmProvision command.
   Description : It should be one more power cycle between clearing TPM
                 finished and TPM provision procedures.
   Issue ID    : None; Internal improvement
   Validation  : Install TPM 1.2 module on Purley-based MB.  Executing
                 TpmProvision command should complete normally.
   Check list  : 1001-OB-XX
4. Enhancement : Add --force_update option for in-band/OOB UpdateBmc command.
   Description : The intermediate BMC FW version 1.00 for AMD Naples platform
                 allows to be upgraded to the official version 1.10 and later.
   Issue ID    : 81826
   Validation  : Prepare H11 series MB with the intermediate BMC FW version
                 1.00.  BMC FW version 1.10 should be upgraded successfully by
                 excecuting in-band/OOB UpdateBmc command with --force_update
                 option.
   Check list  : 703-XX-XX
5. Enhancement : Apply SMBIOS 3.1.1 field into Type 4/17/9.
   Description : Apply SMBIOS 3.1.1 field into Type 4/17/9, the CheckAssetInfo
                 command can parse AMD CPU information and new memory speed
                 format now.
   Issue ID    : none
   Validation  : Executing CheckAssetInfo command will display AMD CPU
                 information and new memory speed format(MT/s).
   Check list  : 302-OB-XX


v 1.7.0 (2017/07/12)
=======================
1. Fix         : Ignore "UEFI OS" and "Windows Boot Manager" string when parsing
                 boot option.
   Description : First, Execute SetBiosAction command to enable BBS priorities
                 feature and reboot, and executing in-band GetCurrentBiosCfg in
                 UEFI Windows system may crash.
   Issue ID    : None; Internal improvement
   Validation  : Executing in-band GetCurrentBiosCfg in UEFI Windows system
                 should complete normally when BBS priorities is enabled.
   Check list  : 501-IB
2. Fix         : Executing SetBiosAction command causes the BIOS settings to be
                 restored to default.
   Description : Execute SetBiosAction command to disable BBS priorities
                 feature and reboot, the BIOS configuration will load default.
   Issue ID    : None; Internal improvement
   Validation  : Execute SetBiosAction command to disable BBS priorities
                 feature and reboot. The bios setting should only have the
                 specified settings changed, other current settings will be
                 retained.
   Check list  : 505-XX-XX


v 2.0.0 (2017/07/07)
=======================
1. Enhancement : UpdateBios command with --preserve_setting option requires
                 "SFT-OOB-LIC" product key.
   Description : Instead of "SFT-DCMS-Single" product key, UpdateBios command
                 with --preserve_setting option requires "SFT-OOB-LIC" product
                 key".
   Issue ID    : None; Internal Improvement
   Validation  : Prepare a Purley MB with only "SFT-OOB-LIC" prodcut key
                 activated.  Executing OOB/In-Band UpdateBios command with
                 --preserve_setting option should pass license checking.
   Check list  : 407-XX
2. Enhancement : Add MRC event log parsing rule for Purley platform.
   Description : Add MRC event log parsing rule and descriptions for Purley
                 platform.
   Issue ID    : None; Internal improvement
   Validation  : Manually generate MRC event log with 'Sensor Number' 0xFE for
                 Purley MB.  Executing GetEventLog comand will get MRC event
                 logs for Purley MB.
   Check list  : 901-XX-XX
3. Enhancement : Unicode character replaced with ASCII character workaround.
   Description : BIOS supports unicode while SUM currently supports ASCII only.
                 SUM converted unicode character into ASCII character
                 improperly.  Some tools (XMLStarlet) reported error on such
                 improperly converted unicode characters.
   Issue ID    : None; Internal improvement
   Validation  : Use BIOS with unicode characters in HII string package.  Using
                 XMLStarlet to manipulate BIOS XML configuration file from
                 GetCurrentBiosCfg command should work normally.
   Check list  : 501-XX-XX
4. Fix         : Fix physical memory address overflow issue when getting SMM
                 communication buffer.
   Description : Fix physical memory address overflow issue when getting SMM
                 communication buffer.
   Issue ID    : None
   Validation  : Excecuting in-band UpdateBios command should complete
                 normally.
   Check list  : 401-IB

5. Fix         : Adjust lock SMM buffer action to before OFBD command.
   Description : Adjust lock SMM buffer action to before OFBD command.
   Issue ID    : None
   Validation  : Excecuting in-band UpdateBios command should complete
                 normally.
   Check list  : 401-IB
6. Fix         : Add ECC memory location parsing rule for H11 series MB.
   Description : Add ECC memory location parsing rule for H11 series MB.
   Issue ID    : None
   Validation  : Use ipmitool raw command to generate ECC memory event log for
                 H11 series MB. The ECC memory location in event log should be
                 correct from executing GetEventLog command.
   Check list  : 901-XX-XX
7. Fix         : Executing TpmProvision command on X11SPM-TF failed randomly.
   Description : Executing TpmProvision command on X11SPM-TF failed randomly,
                 due to improper rebooting procedures.
   Issue ID    : 80028
   Validation  : Executing TpmProvision command on X11SPM-TF should not fail.
   Check list  : 1001-OB-XX
8. Enhancement : Sync the latest SMBIOS spec (Version: 3.1.1) for CPU
                 information.
   Description : Sync the latest SMBIOS spec (Version: 3.1.1) for CPU
                 information.
   Issue ID    : None
   Validation  : Executing CheckAssetInfo command on MB with AMD CPU.
   Check list  : 302-OB-XX
9. Fix         : Add unlocking SMM buffer before throwing exception.
   Description : Add unlocking SMM buffer before throwing exception.
   Issue ID    : None
   Validation  : None
   Check list  : None
10.Enhancement : Add supporting H11 series MB.
   Description : Register BMC GUID for supporting H11 series MB.
   Issue ID    : None
   Validation  : Executing GetBmcInfo command on H11 series MB should complete
                 normally.
   Check list  : 306-XX-XX
11. Enhancement: Improve table length checking mechanism for SMBIOS type 1.
   Description : Remove table length upper bound checking for SMBIOS type 1
                 for extensibility.
   Issue ID    : None; Internal improvement
   Validation  : None
   Check list  : None


v 1.7.0 (2017/06/29)
=======================
1. Fix         : Fix RAID configuration can’t be applied to a second RAID
                 controller issue.
   Description : If the system has a second RAID controller, and the user try to
                 modify the RAID configuration file to change the RAID
                 configuration of the second RAID controller, SUM will fail.
   Issue ID    : None
   Validation  : Modifying the RAID configuration file to change the RAID
                 configuration of second RAID controller should complete
                 normally.
   Check list  : None
2. Fix         : Exception will be thrown if the item "SumBbsSupportFlag" is not
                 found for SetBiosAction command.
   Description : If BIOS supports BBS priorities, the current BIOS configuration
                 should contain the item "SumBbsSupportFlag".  If this item
                 cannot be found in the current BIOS configuration, SUM will
                 throw exception.
   Issue ID    : None
   Validation  : Executing SetBiosAction command to set BBS priorities flag
                 will fail if the current BIOS configuration does not contain
                 the setting "SumBbsSupportFlag".
   Check list  : 505-XX-XX
3. Enhancement : Hide 'SumBbsSupportFlag' item in BIOS configuration file.
   Description : Hide 'SumBbsSupportFlag' item in BIOS configuration file.
   Issue ID    : None; Internal improvement
   Validation  : Execute SetBiosAction command to enable BBS priorities
                 feature and reboot.  Retrieve BIOS configuration file by
                 executing GetCurrentBiosCfg command.  The 'SumBbsSupportFlag'
                 item should not be included.
   Check list  : 505-XX-XX, 501-XX-XX
4. Enhancement : SetBiosAction command adds checking BBS priorities supported.
   Description : When executing SetBiosAction command, exception will be thrown
                 if BIOS does not support BBS priorities feature.
   Issue ID    : None; Internal improvement
   Validation  : Excecute SetBiosAction command with --BBS option on BIOS which
                 does not support BBS priorities feature.  Exception should be
                 thrown.
   Check list  : 505-XX-XX
5. Enhancement : Avoid segmentation fault when CMM FRU1 is empty.
   Description : When FRU1 is empty, executing GetCmmCfg command will cause
                 segmentation fault.
   Issue ID    : None; Internal improvement
   Validation  : Excecuting GetCmmCfg command on CMM with FRU1 empty should
                 complete normally.
   Check list  : 505-XX-XX
6. Enhancement : Add 'Product PartModel Number' field for CheckAssetInfo command
                 output.
   Description : Add 'Product PartModel Number' field for CheckAssetInfo command
                 output.
   Issue ID    : None
   Validation  : 'Product PartModel Number' field in 'System' group can be
                 found from CheckAssetInfo command output
   Check list  : 302-OB-XX



v 1.7.0 (2017/06/28)
=======================
1. Fix         : Add protection for CDatParser::parseVariableUnits if BIOS DAT
                 file contains empty setting names.
   Description : Executing GetCurrentBiosCfg command with BIOS "A1SAM7.419"
                 would get segementation fault message.
   Issue ID    : None
   Validation  : Executing GetCurrentBiosCfg command with BIOS "A1SAM7.419"
                 or later should complete normally.
   Check list  : None
2. Fix         : "Current Speed" field in network related categories in
                 CheckAssetInfo command result should not always display N/A.
   Description : Network Current Speed in CheckAssetInfo command result always
                 display N/A.
   Issue ID    : None;
   Validation  : Execute CheckAssetInfo command. If TAS is installed in the
                 remote system, "Current Speed" in network related categories in
                 command output should display the current speed instead of N/A.
   Check list  : 302-OB-XX

v 2.0.0 (2017/06/23)
=======================
1. Fix         : Executing UpdateRaidController command would get error message
                 on Grantley platform.
   Description : Executing UpdateRaidController command would get error message
                 on Grantley platform, since Grantley platform has no feature
                 flag, SUM should bypass BIOS feature flag judgement.
   Issue ID    : None;
   Validation  : Executing UpdateRaidController command to update RAID
                 controller on Grantley platform should complete normally.
   Check list  : None
2. Fix         : Fix BMC feature flag judgement failed issue.
   Description : Executing GetNvmeInfo command on Grantley platform would get
                 message "Get NVMe information function is not supported by this
                 platform", since Grantley platform has no feature flag,
                  but SUM would use empty BIOS feature flag to process BMC
                 download succeccfully flag.
   Issue ID    : None;
   Validation  : Executing GetNvmeInfo on Grantley platform should complete
                 normally.
   Check list  : None
3. Enhancement : Add Product PartModel Number field into CheckAssetInfo
                 command output.
   Description : Add Product PartModel Number field into CheckAssetInfo
                 command output.
   Issue ID    : None;
   Validation  : Executing CheckAssetInfo command should display Product
                 PartModel Number field.
   Check list  : None
4. Enhancement : Hide 'SumBbsSupportFlag' item in BIOS configuration file.
   Description : Hide 'SumBbsSupportFlag' item in BIOS configuration file.
   Issue ID    : None; Internal improvement
   Validation  : Excecute SetBiosAction command to enable BBS priorities
                 feature and reboot.  Retrieve BIOS configuration file by
                 executing GetCurrentBiosCfg command.  The 'SumBbsSupportFlag'
                 item should not be included.
   Check list  : 505-XX-XX, 501-XX-XX
5. Enhancement : SetBiosAction command adds checking BBS priorities supported.
   Description : When executing SetBiosAction command, throw exception if BIOS
                 does not support BBS priorities feature.
   Issue ID    : None; Internal improve
   Validation  : Excecute SetBiosAction command with --BBS option on BIOS which
                 does not support BBS priorities feature.  Exception should be
                 thrown.
   Check list  : 505-XX-XX


v 2.0.0 (2017/06/15)
=======================
1. Enhancement : Support new BIOS flash information.
   Description : Support new BIOS flash information.
   Issue ID    : 79452
   Validation  : Executing GetBiosInfo and UpdateBios commands on Purley
                 platform should complete normally.
   Check list  : 305-IB, 40X-IB


v 2.0.0 (2017/06/09)
=======================
1. New Feature : Add BIOS setting preservation feature for Purley platform. This
                 feature requires "SFT-DCMS-Single" product key.
   Description : Qualfied BIOS settings in managed system can be preserved to
                 new updated BIOS FW.
   Issue ID    : None
   Validation  : Executing UpdateBIOS command with --preserve_setting option
                 will preserve qualified BIOS setting to new updated BIOS FW.
                 At the same time, preserved BIOS settings will be logged in
                 preserved_setting.log for review.
   Check list  : 407-OB, 407-IB, 407-OB-MM
2. Fix         : Add parsing hour and minute fields of BIOS build date from BIOS
                 image.
   Description : Add parsing hour and minute fields of BIOS build date from BIOS
                 image.
   Issue ID    : None; Internal improvement
   Validation  : Executing UpdateBios command with --preserve_setting option,
                 qualified BIOS settings should be preserved to new updated
                 BIOS FW.
   Check list  : None
3. Fix         : Do not expose unencrypted new password and confirmed new
                 password in exception message when the two passwords are
                  mismatched.
   Description : If new password and confirmed new password are mismatched,
                 exception message should not expose the two unencrypted
                 passwords in error message for security concerns.
   Issue ID    : None
   Validation  : Set different new passowrd and confirmed new password in
                 BIOS configurationon.  Then, execute ChangeBiosCfg command and
                 the two unencrypted passwords should not be exposed in error
                 message.
   Check list  : 503-IB, 503-OB, 503-OB-MM
4. New Feature : Support BIOS password policy on Purley platform.
   Description : 1)'User Password' can not be set if 'Administrator Password'
                 is not set.
                 2)Clear 'User Password' if 'Administrator Password' is cleared.
   Issue ID    : 81045, 81146
   Validation  : Use BIOS which applies password policy to validate.
                 V1. Set 'User Password' when 'Administrator Password' is not
                     set. Then, 'User Password' should not take effect.
                 V2. Set 'Administrator Password' and 'User Password' first.
                     Then, 'User Password' should be cleared if
                     'Administrator Password' is cleared.
   Check list  : 503-IB, 503-OB, 503-OB-MM
5. Fix         : Fix BIOS setting unexpectedly taking effect issue.
   Description : If a setting with WorkIf dependency dynamically evaluted as
                 false, the modified setting should not take effect.
   Issue ID    : None
   Validation  : Set "SEL Components" setting to 'Disabled'. Any changes for
                 "Erase SEL" setting should not take effect, since "Erase SEL"
                 setting is able to change only when "SEL Components" is
                 'Enabled'.
   Check list  : 503-IB, 503-OB, 503-OB-MM
6. Enhancement : Add TPM provision support for Purley platform.
   Description : Add TPM provision support for Purley platform.
   Issue ID    : None
   Validation  : Executing TpmProvision command on Purley platform should
                 complete normally.
   Check list  : 1001-OB, 1002-OB, 1001-OB-MM, 1002-OB-MM
7. Fix         : Fix ClearEventLog command failed issue.
   Description : Executing ClearEventLog command got error message on Purley
                 platform issue.
   Issue ID    : None
   Validation  : Executing ClearEventLog command on Purley platform should
                 clear both BMC and BIOS event logs normally.
   Check list  : 902-IB, 902-OB, 902-OB-MM


v 1.7.0 (2017/06/09)
=======================
1. Fix         : Fix the software product key expired date for later than year
                 2038 would show error message issue in Windows.
   Description : Activate software product key would show error message in
                 Windows if expiration date is later than year 2038, it was
                 caused by time_t overflow.
   Issue ID    : None
   Validation  : Activating a software product key with an expiration date later
                 than year 2038 should complete normally.
   Check list  : 201-OB, 201-OB-MM
2. Enhancement : Display "Serial number" field in "HDD" section in
                 CheckSystemUtilization command output.
   Description : Display "Serial number" field in "HDD" section in
                 CheckSystemUtilization command output.
   Issue ID    : None
   Validation  : Executing CheckSystemUtilization command, serial number for
                 each hard disk drive should be displayed in "Serial number"
                 field in "HDD" section.
   Check list  : 303-OB, 303-OB-MM
3. Enhancement : Revise product key requirement for RAID related commands in
                 help message.
   Description : Revise product key requirement for RAID related commands in
                 help message.
   Issue ID    : None
   Validation  : Executing RAID related commands with -h option,
                 "SFT-DCMS-Single" will be specified in Node Product Key
                 Required section.
   Check list  : 1101-OB, 1102-OB, 1103-OB, 1104-OB, 1105-OB, 1106-OB, 1107-OB,
                 1101-IB, 1102-IB, 1103-IB, 1106-IB, 1107-IB, 1101-OB-MM,
                 1102-OB-MM, 1103-OB-MM, 1104-OB-MM, 1105-OB-MM, 1106-OB-MM,
                 1107-OB-MM
4. Enhancement : Assign default file name for error log when executing GetBmcCfg
                 /GetCmmCfg/GetRaidCfg commands without --file option.
   Description : Assign default file name for error log when executing GetBmcCfg
                 /GetCmmCfg/GetRaidCfg commands without --file option.
   Issue ID    : None
   Validation  : Executing GetBmcCfg/GetCmmCfg/GetRaidCfg commands without
                 --file option, check the file name for error log.
   Check list  : 1106-IB, 1106-OB, 1106-OB-MM, 801-IB, 801-OB, 801-OB_MM,
                 1301-OB, 1301-OB-MM
5. Fix         : Fix unable to resolve IPv6 hostname.
   Description : Fix unable to resolve IPv6 hostname when only IPv6 is
                 available.
   Issue ID    : None
   Validation  : Manually add a pair of IPv6 and hostname in /etc/hosts in
                 Linux or C:\Windows\System32\drivers\etc\hosts in Windows to
                 create a IPv6 only DNS local cache. Then, executing OOB 
                 commands.
                 with the added hostname should complete normally.
   Check list  : 301-OB, 301-OB-MM
6. Fix         : Revise local RAID ROM file parsing rules.
   Description : Revise local RAID ROM file parsing rules to void to handle
                 problematic ROM file.
   Issue ID    : None
   Validation  : None
   Check list  : 301-OB, 301-OB-MM
7. Enhancement : UpdateBios command with --force_update option applies user's
                 flashing BIOS options.
   Description : When executing UpdateBios command with --force_update option,
                 SUM will apply user's flashing BIOS options regardless feature
                 flags.
   Issue ID    : None
   Validation  : Using BIOS X11DPi-515 revision which does not support 
                 programming NVRAM/MER and preserving SMBIOS by feature flags.
                 Then executing UpdateBios command with --force_update option, 
                 NVRAM/MER and SMBIOS will be flashed and preserved, 
                 respectively.
   Check list  : 406-IB, 406-OB, 406-OB-MM
8. Fix         : Fix SetBiosAction command option parsing failed issue
   Description : When executing SetBiosAction command with correct --BBS yes/no
                 option, SUM should not throw exception.
   Issue ID    : 80985
   Validation  : Executing SetBiosAction command with --BBS yes/no option should
                 complete normmaly.
   Check list  : 407-IB, 407-OB, 407-OB-MM


v 2.0.0 (2017/06/02)
=======================
1. Enhancement : BBS priorities can be set for non-Purley platform MBs.
   Description : "Hard Disk Drive" and "NETWORK Drive BBS Priorities" can be set
                 in BIOS configuration file with ChangeBiosCfg command update to
                 managed system for non-Purley platform MBs..
   Issue ID    : None
   Validation  : Firstly, execute SetBiosAction command with --BBS yes option to
                 enable BBS priorities feature for non-Purley platform.
                 Secondly, execute GetCurrentBiosCfg command to get BIOS
                 configuration with BBS priorities items. Thirdly, edit boot
                 orders in the file and save it. Forthly, execute ChangeBiosCfg
                 command to update BIOS configuration for managed system.  The
                 managed system should boot according to the new boot orders.
   Check list  : 503-IB, 503-OB and 503-OB-MM


V 1.7.0 (2017/05/25)
=======================
1. Enhancement : Display more detailed NVMe SMART information.
   Description : Display more detailed NVMe SMART information.
   Issue ID    : None
   Validation  : When remote target installed NVMe hard drive, executing
                 CheckSystemUtilization command should display more
                 detailed SMART information on NVMe section.
   Check list  : 1109-OB, 1110-OB, 1109-OB-MM, 1110-OB-MM
2. Enhancement : Add BMC/CMM type judgement for OOB BMC related commands.
   Description : Restrictions OOB BMC related commands are executed on CMM
                 machine.
   Issue ID    : None
   Validation  : Execute BMC related commands on CMM machine.
   Check list  : 70X-OB, 80X-OB, 70X-OB-MM, 80X-OB-MM
3. New Feature : Add BIOS management command "SetBiosAction".
   Description : The user can control BBS priority settings display/hidden in
                 BIOS configuration text file.
   Issue ID    : None
   Validation  : Executing SetBiosAction command with option --BBS yes/no should
                 complete normally.
   Check list  : None


V 1.7.0 (2017/05/23)
=======================
1. Fix         : Fix the software product key expired date for later than year
                 2038 would show error message issue.
   Description : Activate software product key would show error message if
                 expiration date is later than year 2038, it is caused by time_t
                 overflow.
   Issue ID    : None
   Validation  : Activating a software product key with an expiration date later
                 than year 2038 should complete normally.
   Check list  : 20X-OB, 20X-IB, 20X-OB-MM
2. New Feature : Add a new software product key type for DCMS-CALL-HOME.
   Description : Add a new software product key type for DCMS-CALL-HOME.
   Issue ID    : None
   Validation  : 20X-OB, 20X-OB-MM
3. Fix         : Fix ClearProductKey command help message display incorrectly.
   Description : ClearProductKey command help message display incorrectly with
                 an exception.
   Issue ID    : 103-IB
   Validation  : Execute ClearProductKey command with -h option should display
                 help message normally.
   Check list  : None
4. Enhancement : Revise array ID can't duplicate limitation when creating RAID.
   Description : Create two or more RAIDs that can reuse "-1" as the array ID,
                 the correct array ID will be assigned after the RAID is
                 established.
   Issue ID    : 1107-OB, 1107-IB, 1107-OB-MM
   Validation  : Using the array ID of -1 to create two or more RAIDs at the
                 same time should complete normally.
   Check list  : None
5. Enhancement : SUM accepts uppercase option "-H" to display help information.
   Description : SUM accepts uppercase option "-H" to display help information.
   Issue ID    : 102-IB, 103-IB
   Validation  : Execute SUM with option "-H"" should display help information.
   Check list  : None
6. Fix         : Fix CheckSystemUtilization command not end properly.
   Description : CheckSystemUtilization command can not end properly
                 when last hard drive has no partition.
   Issue ID    : None
   Validation  : Execute CheckSystemUtilization command should display hard
                 drive and partition information and end properly.
   Check list  : 303-OB, 303-OB-MM
7. Fix         : Reorder the network-related tables in BMC/CMM configuration.
   Description : Set 'IPSrc' from 'Static' to 'DHCP' in BMC/BMC configuration
                 would be an error. Since 'IPSrc' has been set to 'DHCP' but
                 SUM still attempts to connect BMC with the old 'Static' IP.
                 This would lead to fail to connect BMC/CMM.
   Issue ID    : None
   Validation  : Executing ChangeBmcCfg/ChangeCmmCfg command to set 'IPSrc' from
                 'Static' to 'DHCP' in BMC/CMM configuration should complete
                 normally.
   Check list  : 802-OB, 802-IB, 802-OB-MM, 130X-OB, 130X-OB-MM
8. Fix         : Fix executing GetCmmCfg command would get error message issue.
   Description : Execute GetCmmCfg command would get error message, since access
                 to the incorrect software FRU.
   Issue ID    : None
   Validation  : Executing GetCmmCfg command should complete normally.
   Check list  : 1301-OB, 1301-OB-MM


V 2.0.0 (2017/05/23)
=======================
1. Fix         : Fix multi-thread on multi-node issue.
   Description : When executing GetCurrentBiosCfg/ GetDefaultBiosCfg/
                 LoadDefaultBiosCfg/ ChangeBiosCfg commands with multi-node mode
                 using at least two nodes may fail with random error codes.
   Issue ID    : None
   Validation  : Executing GetCurrentBiosCfg/ GetDefaultBiosCfg/
                 LoadDefaultBiosCfg/ ChangeBiosCfg commands with multi-node mode
                 using at leaset two nodes should complete normally.
   Check list  : 50X-OB-MM
2. Fix         : Fix OOB UpdateBios/UpdateBmc commands failed on X11DP Xinan
                 team's MBs.
   Description : When executing OOB UpdateBios/UpdateBmc commands for X11DP MBs,
                 SUM reported error message 'Other user is updating. Please try
                 again later'. Use X10 CGI for X11DP Xinan team's BMC to fix.
   Issue ID    : 79218
   Validation  : Executing OOB UpdateBios command on X11DPL-i should complete
                 normally.
   Check list  : 40X-OB, 70X-OB, 40X-OB-MM, 70X-OB-MM
3. Enhancement : Prevent preserving NVRAM and flashing SMBIOS at the same time
                 caused by feature flags not supported.
   Description : When feature flags do not support programming NVRAM, SUM will
                 preserve NVRAM by default.  Similarly when feature flags do
                 not support preserving SMBIOS, SUM will flash SMBIOS by
                 default. However, when preserving NVRAM and flashing SMBIOS
                 are set at the same time, SUM will throw exception.
   Issue ID    : None
   Validation  : Execute UpdateBios command on managed system with BIOS
                 version X11DPi-N17.515 (Programing NVRAM and Preserving SMBIOS
                 feature flags are off) on X11DPi. Exception should be thrown.
   Check list  : 401-XB, 402-XB
4. Fix         : Modify duplicate field name in BMC configuration.
   Description : The field "ServerAddress" is used repeatedly in two different
                 setting groups "RADIUS" and "LDAP" in BMC configuration, lead
                 to parse the old BMC setting error occurred.
   Issue ID    : None
   Validation  : Executing GetBmcCfg and ChangBmcCfg commands should complete
                 normally.
   Check list  : 801-OB, 802-OB, 801-IB, 802-IB, 801-OB-MM, 802-OB-MM
5. Enhancement : Revise the help message for the GetSataInfo command.
   Description : Revise the message as "Get SATA HDD information under on-board
                 AHCI controller from target system."
   Issue ID    : None
   Validation  : Executing GetSataInfo command with option -h will show "Get
                 SATA HDD information under on-board AHCI controller from
                 target system."
   Check list  : 1108-OB, 1108-OB-MM


V 1.7.0 (2017/05/03)
=======================
1. Fix         : Fix Checking type 7 length error for full SMBIOS file.
   Description : Some BIOS use SMBIOS 3.1.1, due to type 7 table length
                 has changed, it will cause parsing SMBIOS error.
   Issue ID    : None
   Validation  : Executing CheckAssetInfo command on H11 MBs should complete
                 normally.
   Check list  : 302-OB, 302-OB-MM


V 1.7.0 (2017/04/28)
=======================
1. Fix         : Fix the typos and description in the RAID configuration.
   Description : Fix the typos from "Logical" to "Logical".
   Issue ID    : None
   Validation  : Execute GetRaidCfg command to get current RAID configuration,
                 all typos have been fixed.
   Check list  : 1106-OB, 1106-IB, 1106-OB-MM
2. Enhancement : Adjust the order of the Span field and add some comments for
                 "PhysicalDriveList" field.
   Description : Adjust the order of the Span field and add some comments for
                 "PhysicalDriveList" field in the RAID configuration, makes it
                 easier for the user to complete the setup.
   Issue ID    : None
   Validation  : Execute GetRaidCfg command to get current RAID
                 configuration, the order of Span fild of RAID configuration
                 and has changed.
   Check list  : 1106-OB, 1006-IB and 1106-OB-MM
3. Fix         : Fix can not get nested RAID level information issue.
   Description : Fix can not get nested RAID level information issue.
   Issue ID    : None
   Validation  : Execute GetRaidCfg command should be able to get nested RAID
                 level information.
   Check list  : 1106-OB, 1006-IB and 1106-OB-MM
4. Enhancement : Change the mechanism of Windows service control in SUM and
                 windows driver.
   Description : WinPE does not support Windows service control commands, and
                 uses Windows API to control Windows service instead.
   Issue ID    : Customer report
   Validation  : Execute SUM inband commands on WinPE can work normally.
   Check list  : XXX-IB
5. Enhancement : Replace Windows driver from SUPERBMC with phymem and add the
                 protection mechanism to prevent other services from accessing
                 BMC at the same time for inband UpdateBmc command.
   Description : Replace Windows driver from SUPERBMC with phymem and add the
                 protection mechanism to prevent other services from accessing
                 BMC at the same time for inband UpdateBmc command.
   Issue ID    : None
   Validation  : Executing inband UpdateBmc command for Windows should complete
                 normally.
   Check list  : 70X-IB


V 2.0.0 (2017/04/26)
=======================
1. Fix         : Fix can not stop Windows service issue.
   Description : SUM can not stop SUPERBMC service if system installed and
                 started SD5 service already.
   Issue ID    : None
   Validation  : Executing inband UpdateBmc command on a Windows system with SD5
                 and SUPERBMC services should complete normally.
   Check list  : 70X-IB


V 1.7.0 (2017/04/25)
=======================
1. Fix         : Fix GetFanModeFlag issue when executing GetCMMCfg command.
   Description : Fix GetFanModeFlag issue when executing GetCMMCfg command.
   Issue ID    : None
   Validation  : Executing GetCMMCfg command should complete normally.
   Check list  : 1301-OB, 1301-OB-MM


V 2.0.0 (2017/04/20)
=======================
1. Fix         : Fix OOB updating BIOS with --flash_smbios option did not flash
                 SMBIOS issue.
   Description : If OOB updating BIOS with --flash_smbios option, the DMI
                 configuration did not restore default values.
   Issue ID    : None
   Validation  : Executing UpdateBIOS command with --flash_smbios option, the
                 DMI information will restore default values.
   Check list  : 403-OB, 403-OB-MM
2. Fix         : Fix dynamic library required for FreeBSD.
   Description : FreeBSD executable doesn't depend on libstdc++
   Issue ID    : #79235
   Validation  : V1. Use ldd to check FreeBSD executable, it will not depend
                     on libstdc++.
                 V2. Execute SUM with invalid options, it will terminate
                     without coredump.
   Check list  : None
3. Enhancement : Increase the timeout for stopping "ThinAgentService" service.
   Description : It did not have enough time to stop "ThinAgentService" in
                 Windows.
   Issue ID    : None
   Validation  : Executing inband UpdateBmc command as early as Windows console
                 is ready to use.
   Check list  : 70X-IB
4. Fix         : Fix OOB updating BIOS issue for X11DPL MB.
   Description : When executing OOB UpdateBios command for X11DPL MB, SUM
                 showed "Other user is updating. Please try again later.".
   Issue ID    : #79218
   Validation  : Excuting OOB UpdateBios command for X11DPL MB should complete
                 successfully.
   Check list  : 40X-OB, 40X-OB-MM


V 2.0.0 (2017/04/12)
=======================
1. Fix         : Fix executing SUM privilege issue in Linux and FreeBSD.
   Description : All SUM commands executed by non-root privilege in Linux and
                 FreeBSD may stop with error messages.
   Issue ID    : None
   Validation  : Executing SUM by non-root privilege in Linux and FreeBSD should
                 complete normally.
   Check list  : XXX-IB, XXX-OB, XXX-OB-MM


V 2.0.0 (2017/04/10)
=======================
1. Enhancement : Support both "x-AMI" and "x-UEFI-AMI" string package language
                 for AmiMappingLanguage.
   Description : AMI tool 30.7 generates "x-UEFI-AMI" string package language
                 name while AMI tool 29 and before generates "x-AMI" string
                 package language name.
   Issue ID    : NONE
   Validation  : Run SUM GetCurrentBiosCfg command sucessfully without getting
                 error message.
   Check list  : 501-IB, 501-OB
2. Fix         : Fix getting "CurrentPassword is incorrect" error message when
                 executing SUM ChangeBiosCfg command.
                 BIOS command.
   Description : When BIOS Administrator/User password had been set, user always
                 got 'CurrentPassword is incorrect' error message.
   Issue ID    : 78752, 78723, 78715, 78691, 78625, 78367, 78247, 76427
   Validation  : Run SUM ChangeBiosCfg command with Administrator/User password
                 set. It should work normally.
   Check list  : 503-IB, 503-OB, 503-OB-MM
3. Enhancement : BIOS password hash algorithm changed.
   Description : BIOS password hash algorithm has been changed to SHA256 from
                 SHA1 after BIOS team updating AMI build tool.
   Issue ID    : 78723
   Validation  : Change BIOS Administrator password by SUM ChangeBiosCfg
                 command with reboot twice. When entering BIOS Setup, the new
                 password should work.
   Check list  : 503-IB, 503-OB, 503-OB-MM


V 1.7.0 (2017/04/06)
=======================
1. Fix         : Fail to get AOC slot information via IPMI raw command.
   Description : When executing CheckAssetInfo command, if SUM gets slot
                 information via IPMI raw command, SUM will throw exception.
   Issue ID    : None
   Validation  : Use AOC with VPD supported, and program old version
                 VPD data for AOC LAN controller. Then executing SUM
                 CheckAssetInfo command, the AOC slot information should be
                 shown normally.
   Check list  : 302-OB, 302-OB-MM
2. Enhancement : Feature flag domanates OOB UpdateBios command functions.
   Description : Check if preserving ME, preserving NVRAM or flashing SMBIOS is
                 supported in feature flag. If not, ignore corresponding
                 --preserve_mer, -preserve_nv or --flash_smbios user options
                 when OOB Updating BIOS.
   Issue ID    : None; Internal improvement
   Validation  : V1. If updating ME is not supproted in feature flag, SUM will
                     preserve ME region even without --preserve_mer option.
                 V2. If updating NV is not supproted in feature flag, SUM will
                     preserve NV block even without --preserve_nv option.
                 V3. If preserving SMBIOS is not supproted in feature flag,
                     SUM will flash SMBIOS even without --flash_smbios option.
   Check list  : 40X-OB,40X-OB-MM
3. Fix         : Give a buffer size when downloading file via SMI command.
   Description : Give a buffer size when downloading file via SMI command
                 "0xE6", to prevent BIOS returning "buffer overflow" message.
   Issue ID    : 76266
   Validation  : V1. Run in-band GetBiosInfo command, the command should be
                     executed normally.
                 V2. Run in-band GetCurrentBiosCfg command, the command should
                     be executed normally.
   Check list  : 305-IB, 501-IB
4. Enhancement : RAID related commands accept SFT-DCMS-Single key only.
   Description : RAID related commands accept SFT-DCMS-Single key only.
   Issue ID    : None
   Validation  : All RAID commands will fail without SFT-DCMS-Single key.
   Check list  : None
5. Enhancement : Change SDR temperature item display rule.
   Description : If temperatue item gets reading, high/low limits will show "0"
                 instead of "N/A".
   Issue ID    : None
   Validation  : V1. Run CheckSensorData command, if temperature item has no
                     reading, will show "N/A" in high/low limit.
                 V2. Run CheckSensorData command, if temperature item gets
                     reading, will show 0 in high/low limit.
   Check list  : 304-OB, 304-OB-MM
6. New Feature : Support Denverton platform.
   Description : Support Denverton platform.
   Issue ID    : None
   Validation  : None
   Check list  : None
7. Enhancement : Change the mechanism of Windows service control in SUM and
                 windows driver.
   Description : WinPE does not support Windows service control commands, and
                 uses Windows API to control Windows service instead.
   Issue ID    : Customer report
   Validation  : Executing SUM inband commands on WinPE can work normally.
   Check list  : XXX-IB


V 1.7.0 (2017/03/27)
=======================
1. Enhancement : Add checking CMOS value mechanism for in-band UpdateBios
                 command.
   Description : Check CMOS 0x50/0x51 and 0x70/0x71 value when running in-band
                 UpdateBios command, to prevent user executing UpdateBios
                 command repeatedly if reboot is needed so that force ME into
                 manufacturing/flash mode.
   Issue ID    : Customer issue
   Validation  : V1. Excecute SUM in-band UpdateBios command on Greantley (or
                     Greenlow/Purley platform) with SPS ME, and use BIOS which
                     FDT different from current BIOS. Excecute in-band
                     UpdateBios again after compare FDT, the request should be
                     rejected.
                 V2. Excecute SUM in-band UpdateBios command on Greantley(or
                     Greenlow/Purley platform) with client ME. Excecute SUM in-
                     band update BIOS command again after critical warnning
                     message is shown, the command request should be rejected.
   Check list  : 408-IB, 409-IB
2. Enhancement : Revise the message of restarting system after executing in-band
                 UpdateBios command.
   Description : Revise the message of restarting system after executing in-band
                 UpdateBios command.
   Issue ID    : None
   Validattion : V1. Excecute in-band UpdateBios command with --reboot option,
                     it should get "The system will restart after five seconds
                     for the changes to take effect!" message when updating is
                     finished.
                 V2. Excecute in-band UpdateBios command without --reboot
                     option, it should get "Must power cycle or restart the
                     system for the changes to take effect!" message when
                     updating is finished.
   Check list  : 40x-IB
3. Fix         : Fix in-band updating from old BIOS(doesn't support 0xE7)
                 on FreeBSD.
   Description : SUM will load kernel module sum_bios.ko when in-band updating
                 BIOS from old BIOS which doesn't support 0xE7.
   Issue ID    : None
   Validation  : Run in-band updating BIOS from an old BIOS on FreeBSD
                 successfully.
   Check list  : 401-IB


V 2.0.0 (2017/03/03)
========================
1. Fixed       : Form name case inconsistent in variant BIOS versions.
   Description : Form name 'Change SMBIOS Event Log Settings' in some BIOS
                 versions is 'Change Smbios Event Log Settings'.  SUM added
                 case insensitive workaround to prevent failing to find the
                 parent form of setting 'Erase Event Log'.
   Issue ID    : 77442
   Validation  : Executing ClearEventLog command should complete without error
                 messages in variant BIOS versions.
   Check list  : 902-IB, 902-OB, 902-OB-MM
2. Fixed       : Invalid BIOS configuration file checking.
   Description : When invalid BIOS configuration file is assigned, SUM will
                 report error messages.
   Issue ID    : 77082, 75344
   Validation  : When invalid BIOS XML configuration file is assigned in
                 ChangeBiosCfg command, SUM should report error messages.
   Check list  : 503-IB, 503-OB, 503-OB-MM
3. Added       : Setting with $SMCUNHIDE$ can be changed unconditionally by SUM.
   Description : $SMCUNHIDE$ signatrue is designed to indicate that settings
                 can be changed by SUM but hidden in BIOS setup.
   Issue ID    : 77428, 77599
   Validation  : In X11SPI.216, settings 'Memory corrected Error Enabling' and
                 'PCI AER Support' contain $SMCUNHIDE$ in help message.  They
                 can be changed by SUM, but are not visible in BIOS setup.
   Check list  : 503-IB, 503-OB, 503-OB-MM
4. Added       : Boot Option can not duplicate.
   Description : Boot Option can not duplicate, otherwise, an exception will be
                 thrown
   Issue ID    : None
   Validation  : Add duplicate options in BIOS xml file, then run changebioscfg
                 An exception should be thrown.
   Check list  : 503-OB, 503-IB, 503-OB-MM
5. Changed     : Reduce negation operator in WorkIf expression in BIOS XML
                 configuration file.
   Description : Translate negative logical expression to equivalent positive
                 logical expression for better human readability.
   Issue ID    : None
   Validation  : There is no negation operator '!' right ahead left parentheses
                 '(' in WorkIf expression.
   Check list  : None


V 1.7.0 (2017/02/21)
========================
1. Added       : Support new HDD type RSTe, NVMe, LSI.
   Description : Suppurt TAS 1.4.0 new RAID hdd type RSTe, NVMe, LSI.
   Issue ID    : None;
   Validation  : Command CheckSystemUtilization should display new RAID type
                 in HD scetion.
   Check list  : 303-OB, 303-OB-MM
2. Changed     : Show help message when command option check exceptions occur.
   Description : Show help message when command option check exceptions occur.
   Issue ID    : None; Internal improvement
   Validation  : check each command with wrong options and should display
                 command help message.
   Check list  : None
3. Added       : Add two hidden options to list/clear CMOS value
   Description : Add --list_me_mng_cmos and --clear_me_mng option for
                 inband UpdateBios command to list/clear CMOS value.
   Issue ID    : None
   Validation  : Executing UpdateBios command with --file and
                 --list_me_mng_cmos option will list current CMOS value, if
                 command with --file and --clear_me_mng_cmos option will clear
                 the CMOS value to 0x00. --file and --list_me_mng_cmos or
                 --clear_me_mng_cmos option need to be used together since
                 --file was required option for UpdateBios command.
   Check List  : 408-IB, 409-IB
4. Added       : Add print information/configuration function for
                 GetDefaultBiosCfg, GetCurrentBiosCfg, GetDmiInfo, and
                 GetRaidCfg commands.
   Description : Settings or configuration will ouput to screen if executing
                 GetDefaultBiosCfg, GetCurrentBiosCfg, GetDmiInfo and
                 GetRaidCfg commands without --file option.
   Issue ID    : None; Internal improvement
   Validation  : All settings or configuration will output to screen directly
                 if executing GetDefaultBiosCfg, GetCurrentBiosCfg, GetDmiInfo
                 and GetRaidCfg commands without --file option.
   Check List  : None
5. Fixed       : ChangeRaidCfg command can accept DCMS key only.
   Description : SUM will reject to change RAID cfg if DCMS key is unavailable.
   Issue ID    : None; Internal improvement
   Validation  : V1. Change RAID cfg will failed if no DCMS key.
                 V2. Change RAID cfg will success if has DCMS key.
   Check List  : 1106-IB, 1106-OB, 1106-OB-MM
6. Fixed       : Wrong CMOS value was written.
   Description : When executing UpdateBios command, wrong CMOS value was
                 written.  When rebooting, BIOS recognized as inproper downgrade
                 operation and stopped.
   Issue ID    : 77809
   Validation  : Inband UpdateBios procedures can finish successfully.
   Check List  : 40X-IB
7. Fix         : Fix BIOS ID can not found in rom file issue.
   Description : By default, using the 4k bytes block size to resolve the
                 BIOS ROM file may cause the BIOS ID information out of
                 boundary. Change the parsing method to prevent the BIOS ID
                 information from exceeding the boundary.
   Issue ID    : 77309
   Validation  : Does not occur can not find the BIOS ID when executing
                 UpdateBios command.
   Check List  : 40X-IB, 40X-OB, 40X-OB-MM


V 1.6.2 (2017/01/26)
========================
1. Fixed       : InBand UpdateBios does not clear BIOS configuration when
                 --preserve_mer option is used.
   Description : OFBD type code 51 returnStatus was set as 0 when
                 --preserve_mer option is used. New SUM fixed return status
                 to 15. Otherwise TC320 would fail to clear BIOS configuration
   Issue ID    : None
   Validation  : Run SMSTC TC320 with latest ATT which support --preserve_mer
                 option should pass.
   Check List  : 405-IB
2. Fixed       : Add retry mechanism to, resend IPMI command to BMC when get
                 wrong compeletion code from BMC.
   Description : SUM sends IPMI raw command but IPMI does not respond.
   Issue ID    : None
   Validation  : None, SUM improve by itself.
   Check List  : None
3. Fixed       : Add protection mechanism to IPMI general file download
                 function.
   Description : When SUM get wrong response from BMC, SUM will show error
                 message to avoid program abnormal terminate.
   Issue ID    : None
   Validation  : None
   Check List  : None


V 1.6.2 (2017/01/20)
========================
1. Fixed       : Fix SNMP service status issue, SNMP service will enable when
                 changing SNMP related configuration.
   Description : SNMP service will be "Enabled" when SUM sending ipmi raw
                 command to set SNMP related configuration.
   Issue ID    : 75082
   Validation  : Execution changeBmcCfg command will not change SNMP
                 configuration status if the SNMP service status is "Disable".
   Check list  : 80X-IB, 80X-OB, 80X-MM
2. Fixed       : Fix E-mail address to support both "-" and "+" characters
                 before "@" character.
   Description : Using "+" or "-" character before the "@" in E-mail address
                 character will get error message.
   Issue ID    : Customer report
   Validation  : "+" and "-" characters can be used in the Email related fields
                 of the BMC configuration file.
   Check list  : 80X-IB, 80X-OB, 80X-OB-MM
3. Added       : Support alias field name function for BMC configuration file.
   Description : The following is the field name that changed after SUM 1.6.2,
                 "SNMPIPAddr" changed to "SNMPAddr", "ServerIP" changed to
                 "ServerAddr", "PrimaryServerIP" changed to
                 "DomainControllerServerAddress1", "SecondaryServerIP changed to
                 "DomainControllerServerAddress2", "ThirdServerIP changed to
                 "DomainControllerServerAddress3", "IPAddr" changed to
                 "ServerAddress". If the user uses SUM 1.6.2 or later to execute
                 "changebmccfg" command with BMC configuration file which
                 created by SUM 1.6.1, it will get error message.
   Issue ID    : Customer report
   Validation  : SUM 1.6.2 or later can update BMC configuration with the BMC
                 configuration file created by SUM 1.6.1.
4. Fixed       : Improvement getEventLog command performance from 8 seconds to
                 2 seconds.
   Description : Each time the geteventlog command is executed, it takes
                 8 seconds.
   Issue ID    : Customer report
   Validation  : The time to execute the geteventlog command will be reduced
                 from 8 seconds to 2 seconds.
   Check list  : 90X-IB, 90X-OB, 90X-OB-MM


V 1.6.2 (2017/01/06)
========================
1. Added       : Rejection mechanism of downgrade BIOS to SKYLAKE from KABYLAKE.
   Description : The BIOS of KABYLAKE platform can not compabile with BIOS
                 of SKYLAKE platform. SUM will detect BIOS ROM that will
                 be updated, and reboot to reject flash BIOS procedure.
   Issue ID    : None
   Validation  : V1. Downgrade BIOS to SKYLAKE from KABYLAKE BIOS with
                     KABYLAKE CPU, system should be restarted, and BIOS
                     will show warning message on screen and stop booting
                     procedure.
                 V2. Upgrade BIOS to KABYLAKE from SKYLAKE with SKYLAKE CPU,
                     the update BIOS procedure will be executed normally.
   Check list  : 40X-IB, 40X-OB, 40X-OB-MM
2. Changed     : Replaced SUPERBMC driver by windows WMI libraries.
   Description : Use WINDOWS built in WMI libraries to communicate with BMC
                 device, updateBmc in-band command use SUPERBMC driver,
                 GetBmcInfo/GetBmcCfg/ChangeBmcCfg in-band command use WMI
                 driver.
   Issue ID    : None
   Validation  : Execution commands of BMC management in in-band mode, these
                 commands should be run normally.
   Check list  : 70X-IB, 70X-OB, 70X-OB-MM, 80X-IB, 80X-OB, 80X-OB-MM
3. Changed     : Revise output message of in-band updateBios when BIOS FDT is
                 different.
   Description : Ask user use system reboot command to restart system.
   Issue ID    : None
   Validation  : Execution in-band UpdateBios command will showing critical
                 warning message if BIOS FDT is defferent.
   Check list  : 40X-IB
4. Fixed       : Fix SNMP service status issue, SNMP service will enable when
                 changing SNMP related configuration.
   Description : SNMP service will be "Enabled" when SUM sending ipmi raw
                 command to set SNMP related configuration.
   Issue ID    : 75082
   Validation  : Execution changeBmcCfg command will not change SNMP
                 configuration status if the SNMP service status is "Disable".
   Check list  : 802-IB, 802-OB, 802-OB-MM


V 1.6.2 (2016/12/20)
========================
1. Added       : Support FQDN format for AD/Radius/LDAP server address
                 setting for CMM/BMC configuration.
   Description : Support FQDN format for AD/Radius/LDAP server address related
                 settings for CMM/BMC configuration.
   Issue ID    : None
   Validation  : V1.Use FQDN/IP format to configure ServerAddress of
                    LDAP/Radius, and execute ChangeCmmCfg/ChangeBmcCfg command,
                    the related configuration item should be applied.
                 V2.Use FQDN/IP format to configure DomainContollerServerAddress
                    fielde for AD and execute ChangeCmmCfg/ChangeBmcCfg, the
                    related ould be applied.
   Check list  : 80X-IB, 80X-OB, 80X-OB-MM, 1302-OB, 1302-OB-MM
2. Added       : Show contents of CMM configuration file on screen when running
                 GetCmmCfg command without --file option.
   Description : When run GetCmmCfg command without --file option, the contents
                 of CMM configuration file will be shown on screen.
   Issue ID    : None
   Validation  : Execute GetCmmCfg command without --file option, the current
                 CMM configuration should be shown on screen.
   Check list  : 80X-IB, 80X-OB, 80X-OB-MM,110X-OB,120X-OB,110X-OB-MM,120X-OB-MM
3. Changed     : In-band UpdateBios command removes --manual_reboot option. The
                 --reboot option becomes optional rather than required as well.
                 When BIOS FDT is different or temporarily disable ME is
                 necessary, SUM will return exit code 254 and show warning
                 message for taking more necessary actions, i.e. restart system
                 and update BIOS again.
   Description : In-band UpdateBios command removes --manual_reboot option. The
                 --reboot option becomes optional rather than required as well.
                 When BIOS FDT is different or temporarily disable ME is
                 necessary, SUM will return exit code 254 and show warning
                 message for taking more necessary actions, i.e. restart system
                 and update BIOS again.
   Issue ID    : None
   Validation  : V1. Execute in-band BIOS updateBIOS with 2 different FDT BIOS
                     image, the warning message should be shown after compare
                     FDT. After restart system manually, and run in-band update
                     BIOS again, the BIOS should be updated normally.
                 V2. Execute in-band BIOS updateBIOS with 2 same FDT BIOS, SUM
                     will show "FDT is same, Update BIOS and ME(exclude FDT)
                     regions...." message and continue program BIOS and ME
                     region. After update BIOS, system will restart
                     automatically if the --reboot option is used.
   Check list  : 402-IB
4. Fixed       : Fail to retry in GetEventLog command.
   Description : SUM will throw C5 exception when mutiple sessions access the
                 same BMC host at the same time.
   Issue ID    : none; Internal improvement
   Validation  : Using two sessions to access same BMC host, the execution
                 result should be okay.
   Check list  : 901-OB, 901-IB, 901-OB-MM
5. Fixed       : QueryProductKey command issue that can not work for PURLEY or
                 later platform.
   Description : Execute queryProductKey command can not get product key when
                 producy key is enabled on PURLEY or later platform.
   Issue ID    : none; Internal improvement
   Validation  : Using SUM 1.6.2 to execute queryProductKey command when
                 product key is enabled.
   Check list  : 202-OB, 202-IB, 202-OB-MM
6. Fixed       : Revise output message format of GetCmmInfo command.
   Description : Execute GetCmmInfo command will receive wrong output format.
   Issue ID    : none; Internal improvement
   Validation  : Execute GetCmmInfo command for CMM host, then will get CMM
                 information.
   Check list  : 307-OB, 307-OB-MM
7. Fixed       : Fix command option support issue of updateBMC/updateCMM
                 command.
   Description : Execute updateBMC command with "--overwrite_cfg" option will
                 get error message.
   Issue ID:   : Customer report.
   Validation  : Using SUM 1.6.2 to execute updateBmc command with
                 "--overwrite_cfg" option can update BMC successfully.
   Check list  : 70X-IB, 70X-OB, 70X-OB-MM
8. Added       : Error message when ISO file name exceed 255 characters.
   Description : Error message when ISO file name exceed 255 characters.
   Issue ID    : none;
   Validation  : when ISO image file name exceed more then 255 characters
                 SUM will show error message.
   Check list  : none
9. Fixed       : GetEventLog command segmentation fault
   Description : GetEventLog command will segmentation fault when having no
                 privilege to overwrite file.
   Issue ID    : none;
   Validation  : V1 - Create event.log, owner=root, mode=444
                 V2 - Execute OOB GetEventLog with --overwrite --file event.log.
                      Check the error message
   Check list  : 901-OB, 901-OB-MM
10.Fixed       : GetBmcCfg command will success when no privilege to overwrite
                 file.
   Description : GetBmcCfg command will success when no privilege to overwrite
                 file.
   Issue ID    : none;
   Validation  : V1 - Create bmc.xml, owner=root, mode=444
                 V2 - Execute OOB GetBmcCfg with --overwrite --file bmc.xml
                      Check the error message
   Check list  : 801-OB
11.Fixed       : In-band get/change BmcCfg windows limitation 244 bytes
   Description : Get/change BmcCfg in windows will show error message if
                  hostname exceeds 244 bytes
   Issue ID    : none;
   Validation  : V1. Fill long hostname in BMC, check error message after
                     in-band getting bmcconfig in windows
                 V2. Fill long hostname in BMC config, check error message
                     after in-band changing bmcconfig in windows
   Check list  : 801-IB, 802-IB


V1.8.0 (2016/12/16)
========================
1. Changed     : DMI version uses a fixed number 0001.
   Description : Originally DMI version number came from BIOS. Now, use a fixed
                 DMI version number instead.
   Issue ID    : none
   Validation  : GetDmiInfo command should always return DMI verion 0001
                 EditDmiInfo and ChangeDmiInfo command only accept verion
                 0001 DMI config file
   Check list  : 601-IB, 602-IB, 603-IB, 604-IB, 601-OB, 602-OB, 603-OB, 604-OB
2. Added       : Specify file encoding method.
   Description : Specify BIOS XML configuration file character encoding as
                 ISO-8859-1
   Issue ID    : none
   Validation  : The BIOS XML configuration file from GetCurrentBiosCfg and
                 GetDefaultBiosCfg shoud contain an encoding attribute at the
                 beginning.
   Check list  : none
3. Fixed       : Partial BIOS setting default values were not parsed correctly.
   Description : Partial BIOS setting default values were not parsed correctly.
   Issue ID    : none
   Validation  : Use LoadDefaultBiosCfg command with --reboot option.  Use
                 GetCurrentBiosCfg command to get the current BIOS
                 configuration.  All current setting values should be consistent
                 with default values.
   Check list  : 504-IB, 504-OB, 504-OB-MM, 501-IB, 501-OB, 501-OB-MM
4. Changed     : BIOS XML configuration layout changed.
   Description : BIOS XML configuration is generated according to form layout
                 in HII.
   Issue ID    : none
   Validation  : Use GetCurrentBiosCfg command to get XML configuration.
                 Use GetCurrentBiosCfg command to get the current BIOS
                 configuration.  Check if the generated forms in XML
                 configuration are consistent wtih forms in BIOS setup GUI.
   Check list  : 501-IB, 501-OB, 501-OB-MM


V1.8.0 (2016/11/03)
========================
1. Added       : Add support for Purley MB.
   Description : Purley MB uses HII for BIOS configuration. SUM only supports
                 HII after V1.8.0.
   Issue ID    : none, HII is a new feature in BIOS.
   Validation  : none
   Check list  : none
2. Added       : CheckAssetInfo command supports On-board/Add-on PCI devices.
   Description : CheckAssetInfo now shows On-board/Add-on PCI devices.
   Issue ID    : none
   Validation  : Insert Add-on card and execute CheckAssetInfo
                 On-board/Add-on PCI devices will show in the output
   Check list  : 302-OB, 302-IB, 302-OB-MM
3. Changed     : Change command name from GetCurrentBiosCfgTextFile to
                 GetCurrentBiosCfg and GetDefaultBiosCfgTextFile to
                 GetDefaultBiosCfg
   Description : In Purley MB, change the command name since SUM now uses xml
                 format instead of plain text file.
   Issue ID    : none
   Validation  : none
   Check list  : 101, 102, 103, 501-OB, 502-OB, 501-IB, 502-IB, 501-OB-MM,
                 502-OB-MM
4. Changed     : Text file of GetCurrentBiosCfg/ChangeBiosCfg/GetDefaultBiosCfg
                 will be xml in Purley MB.
   Description : GetCurrentBiosCfg/ChangeBiosCfg/GetDefaultBiosCfg will now
                 generating file format in xml.
   Issue ID    : none
   Validation  : Execute GetCurrentBiosCfg, modify the following setting values
                 in the xml file.
                 Numeric : MECI
                 Checkbox : Quiet Boot (Appeare twice in xml)
                 Option : Bootup NumLock State
                 String : Station IP Address (Modify related settings in WorkIf
                 so the new setting value can take effect)
                 Password (User) (Known BIOS issue : After
                 reboot, you have to input the old User password
                 first, and then after another reboot you can input new
                 User password)
                 Execute ChangeBiosCfg with the modified xml file
                 Execute GetCurrentBiosCfg again, check the value is modified
                 Execute GetDefaultBiosCfg and check the setting value is the
                 same as default value
   Check list  : 501-OB, 502-OB, 503-OB, 501-IB, 502-IB, 503-IB, 501-OB-MM,
                 502-OB-MM, 503-OB-MM
5. Fixed       : GetEventLog command segmentation fault.
   Description : GetEventLog command will segmentation fault when having no
                 privilege to overwrite file.
   Issue ID    : none;
   Validation  : V1. Create event.log, owner=root, mode=444.
                 V2. Execute OOB GetEventLog with --overwrite --file event.log.
                     Check the error message.
   Check list  : 901-OB, 901-OB-MM
6. Fixed       : GetBmcCfg/GetRaidCfg command will success when no privilege to
                 overwrite file.
   Description : GetBmcCfg/GetRaidCfg command will success when no privilege to
                 overwrite file.
   Issue ID    : none;
   Validation  : V1. Create bmc.xml, owner=root, mode=444.
                 V2. Execute OOB GetBmcCfg with --overwrite --file bmc.xml
                     Check the error message.
   Check list  : 801-OB, 801-OB-MM


V 1.7.0 (2016/10/21)
========================
1. Fixed       : OOB reboot would fail to do software shutdown.
   Description : In GUI mode, software shutdown counting down time would be 60
                 seconds which is same as SUM retry time. In this case, OS
                 would recount down when SUM retry. Then, software shutdown
                 would never start. New SUM use 86 seconds as count down time.
                 This can fix the issue.
   Issue ID    : none; SSM team Tony Lin reported.
   Validation  : Execute OOB UpdateBios command for SUT with RedHat 6 GUI OS
                 SUM would successfully software shutdown OS.
   Check list  : 402-OB, 402-OB-MM


V 1.7.0 (2016/10/07)
========================
1. Added       : UpdateRAIDController command, Update LSI 3108 RAID controller
                 through OOB.
   Description : Add new command UpdateRaidController to update LSI 3108
                 RAID controller FW.
   Issue ID    : None, new supporting feature.
   Validation  : V1. Run UpdateRAIDController to update LSI 3108 controller FW
                     through OOB.
                 V2. SUM will throw exception when run UpdateRaidController
                     command with in-band usage.
                 V3. SUM will reject UpdateRaidController command when ROM
                     file size is greater than 16MB.
   Check list  : 1104-OB, 1105-OB, 1104-OB-MM, 1105-OB-MM
2. Added       : GetRaidControllerInfo command, get RAID controller information
                 from target system, both are supported by OOB/in-band.
   Description : Add new command GetRaidControllerInfo to get RAID controller
                 information.
   Issue ID    : None, new supporting feature.
   Validation  : V1. Run GetRaidControllerInfo to get LSI 3108 RAID controller
                     information.
                 V2. Run GetRaidControllerInfo command with --file option to
                     get current RAID controller information and ROM file
                     firmware information.
   Check list  : 1103-OB, 1103-IB, 1103-OB-MM
3. Added       : Get/ChangeRAIDCfg command, get and change RAID configuration
                 from traget system, both are supported by OOB/in-band.
   Description : Get and change RAID configuration form/to target system.
   Issue ID    : None, new supporting feature.
   Validation  : V1. Run GetRaidCfg to get current RAID configuration file
                     from target system.
                 V2. Run ChangeRaidCfg to apply new RAID configuration for
                     target system.
   Check list  : 1106-IB, 1107-IB, 1106-OB, 1107-OB, 1106-OB-MM, 1107-OB-MM
4. Added       : GetSataInfo command, get SATA HDD information from specified
                 target system.
   Description : Run GetSataInfo to get SATA HDD information from target
                 system.
   Issue ID    : None, new supporting feature.
   Validation  : V1. Run GetSataInfo to get SATA HDD information from target
                     system.
                 V2. Run GetSataInfo on Grantley or before platform, SUM will
                     reject this command and throw exception.
   Check list  : 1108-OB, 1108-OB-MM
5. Added       : GetNvmeInfo command, get NVMe SSD device information from
                 specified target system.
   Description : Run GetNvmeInfo command to get NVMe SSD information from
                 target system.
   Issue ID    : None, new supporting feature.
   Validation  : V1. Run GetNvmeInfo command to get NVMe SSD information from
                     target system.
                 V2. Power off system and run GetNvmeInfo command, SUM will
                     reject this command and throw exception.
   Check list  :
6. Added       : TpmProvision command add TPM 2.0 supporting for Grantley/
                 Greenlow platform.
   Description : SUM does support TPM1.2/2.0 provision on Grantley/Greenlow
                 platform.
   Issue ID    : None
   Validation  : V1. Run TpmProvision command with TPM1.2/2.0 on Grantley/
                     Greenlow platform, TPM can be provisioned and TXT
                     function will be enabled normally.
                 V2. Run TpmProvision command with --force_clearlock option
                     for TPM 1.2 on Greenlow/Grantley platform, SUM will
                     reject this command and throw exception.
                 V3. Run TpmProvision command without --lock option for TPM
                     1.2/2.0 on Grantley/Greenlow platform, SUM will
                     reject this command and throw exception.
                 V4. Run TpmProvision command with --lock option and option
                     value is "no" for TPM 2.0 on Greenlow, SUM will reject
                     this command and throw exception.
                 V5. Run TpmProvision command with --lock option and option
                     value is "yes" for TPM 2.0 on Grantley platform, SUM
                     will reject this command and throw exception.
                 V6. Run TpmProvision command with --lock option, option
                     value is "yes" and without --force_clearlock for locked
                     TPM 2.0 on Greenlow, SUM will reject this command and
                     throw exception.
                 V7. Assign wrong TPM ISO package path for --image_url option
                     , SUM will interrupt this command and throw exception.
   Check list  : 1101-OB, 1101-OB-MM
7. Added       : IPv6 supporting for SUM OOB functions.
   Descroption : SUM has supported OOB command with IPv4/v6 format since 1.7.0.
   Issue ID    : None
   Validation  : Run OOB command and assign IPv4/v6 format for -i option.
   Check list  : XXX-OB, XXX-OB-MM
8. Changed     : The --image_url option of TpmProvision command needs share
                 point path of provision image package.
   Description : Before SUM v1.7.0, the --image_url option needs be assigned
                 complete share point path and ISO image name of TPM provision
                 ISO package. SUM v1.7.0 and later, this option just be
                 assigned share point path of TPM provision ISO package.
   Issue ID    : None
   Validation  : Same as V7 of item 6.
   Check list  : 1001-OB, 1002-OB, 1001-OB-MM, 1002-OB-MM
9. Fixed       : GetEventLog command segmentation fault
   Description : GetEventLog command will segmentation fault when having no
                 privilege to overwrite file.
   Issue ID    : none;
   Validation  : V1 - Create event.log, owner=root, mode=444
                 V2 - Execute OOB GetEventLog with --overwrite --file event.log.
                      Check the error message
   Check list  : 901-OB, 902-OB-MM
10.Fixed       : GetBmcCfg/GetRaidCfg command will success when no privilege to
                 overwrite file
   Description : GetBmcCfg/GetRaidCfg command will success when no privilege to
                 overwrite file
   Issue ID    : none;
   Validation  : V1 - Create bmc.xml, owner=root, mode=444
                 V2 - Execute OOB GetBmcCfg with --overwrite --file bmc.xml
                      Check the error message
   Check list  : 801-OB, 801-OB-MM


V 1.6.1 (2016/09/01)
========================
1. Added       : Get/ChangeBmcCfg command added HostName field for LAN table
   Description : Added HostName field for LAN table. It would take effect
                 when DHCP/DNS are configured correctly.
   Issue ID    : none; Yagnesh Ashara reported request from customer.
   Validation  : Execute GetBmcCfg command to get bmccfg.xml file
                 Revise BmcCfg/OemCfg/LAN/HostName field
                 Execute ChangeBmcCfg command with the revised bmccfg.xml file
                 Execute GetBmcCfg command to get updated bmccfg_update.xml
                 bmccfg_update.xml should contain updated host name
   Check list  : 80X-OB-XX
2. Added       : Get/ChangeBmcCfg command for LAN/IPAddr field supports
                 multiple system usage mode when only one single system is
                 managed.
   Description : Some SUM integration usage, e.g. SSM, would like to use
                 multiple system usage mode but manage only one single system.
                 IPAddr field would be skipped in original design in this case.
                 Now we enable this usage.
   Issue ID    : none; SSM team reported this usage.
   Validation  : V1. Execute GetBmcCfg command to get bmccfg.xml file
                 V2. Revise BmcCfg/OemCfg/LAN/IPAddr field and use static IP
                 V3. list one system in mlist.txt file.
                 V4. Execute ChangeBmcCfg command with the revised bmccfg.xml
                     file and with the mlist.txt file.
                 V5. Execute GetBmcCfg command to get updated bmccfg_update.xml
                     with new IP address.
                 V6. bmccfg_update.xml should contain updated IPAddr
   Check list  : 80X-OB-XX
3. Fixed       : Get/ChangeBmcCfg command fixed multirecord data memory invalid
                 read
   Description : Multirecord field offset count error. Fixed in this version
   Issue ID    : none; Self discovered
   Validation  : Execute GetBmcCfg command to get bmccfg.xml file with valgrind
                 No memory read error message
   Check list  : 80X-OB-XX




V 1.6.1 (2016/08/30)
========================
1. Added       : Get/ChangeBmcCfg command added HostName field for LAN table
   Description : Added HostName field for LAN table. It would take effect
                 when DHCP/DNS are configured correctly.
   Issue ID    : none; Yagnesh Ashara reported request from customer.
   Validation  : Execute GetBmcCfg command to get bmccfg.xml file
                 Revise BmcCfg/OemCfg/LAN/HostName field
                 Execute ChangeBmcCfg command with the revised bmccfg.xml file
                 Execute GetBmcCfg command to get updated bmccfg_update.xml
                 bmccfg_update.xml should contain updated host name
   Check list  : 80X-OB-XX
2. Added       : Get/ChangeBmcCfg command for LAN/IPAddr field supports
                 multiple system usage mode when only one single system is
                 managed.
   Description : Some SUM integration usage, e.g. SSM, would like to use
                 multiple system usage mode but manage only one single system.
                 IPAddr field would be skipped in original design in this case.
                 Now we enable this usage.
   Issue ID    : none; SSM team reported this usage.
   Validation  : V1. Execute GetBmcCfg command to get bmccfg.xml file
                 V2. Revise BmcCfg/OemCfg/LAN/IPAddr field and use static IP
                 V3. list one system in mlist.txt file.
                 V4. Execute ChangeBmcCfg command with the revised bmccfg.xml
                     file and with the mlist.txt file.
                 V5. Execute GetBmcCfg command to get updated bmccfg_update.xml
                     with new IP address.
                 V6. bmccfg_update.xml should contain updated IPAddr
   Check list  : 80X-OB-XX
3. Fixed       : Get/ChangeBmcCfg command fixed multirecord data memory invalid
                 read
   Description : Multirecord field offset count error. Fixed in this version
   Issue ID    : none; Self discovered
   Validation  : Execute GetBmcCfg command to get bmccfg.xml file with valgrind
                 No memory read error message
   Check list  : 80X-OB-XX

V 1.6.1 (2016/08/18)
========================
1. Fixed       : ChangeBmcCfg command would cause FRU data altered
   Description : ChangeBmcCfg command can manage FRU data in BMC
                 Chassis: if there is no Chassis data in FRU,
                 ChangeBmcCfg command would create it. But SGI FRU does
                 not define Chassis. In this fix, SUM will not redundantly
                 create it.
                 Multirecord: if there is multirecord data in BMC, SUM
                 will truncate it. In this fix, SUM will restore it.
   Issue ID    : none; found it when doing SGI K1SPI OEM project support
   Validation  : V1. dump SGI fru using SMCIPMITool as fru_sgi.bin
                 V2. use SUM GetBmcCfg command to get bmccfg.xml file
                 V3. use SUM ChangeBmcCfg command to change from bmccfg.xml file
                 V4. dump SGI fru using SMCIPMITool as fru_sgi_changed.bin
                 V5. diff fru_sgi.bin and fru_sgi_changed.bin should be
                     identical
                 Backup fru command:
                 java -jar SMCIPMITool.jar <IP> <ID> <PASSWD> ipmi frubackup
                 fru_sgi.bin
   Check list  : 80X-OB-XX



V 1.6.1 (2016/08/05)
========================
1. Fixed       : In-Band UpdateBios command in JPME2LESS procedure CMOS bug
   Description : CMOS is incorrectly cleared when JPME2LESS procedure finished
                 In this SUM, do not clear CMOS then.
   Issue ID    : 72091, 72491
   Validation  : X11SSA-F SMSTC ECO test from 5.C30 to 6.620 BIOS should pass
   Check list  : 402-IB
2. Fixed       : In-Band UpdateBios command cannot proceed for some Client ME
                 platform, such as C7Z270-CG.
   Description : ME Disabling feature flag bit mask setting incorrect.
   Issue ID    : 72880
   Validation  : C7Z270-CG can perform in-band UpdateBios command.
   Check list  : 402-IB
3. Fixed       : TpmProvision command does not un-mount ISO image after throwing
                 exceptions
   Description : SUM would un-mount ISO when exception occurs
   Issue ID    : 72091
   Validation  : TC218+TC219 should pass when TPM module is not Installed
   Check list  : 1001-OB
4. Fixed       : Set LAN Cfg sometimes would failed to receive response form BMC
   Description : SUM would workaround by treating it as pass since BMC could
                 become temporary un-available after this setting.
   Issue ID    : 72704
   Validation  : Under ECO testing, TC215 should pass
   Check list  : 802-OB
5. Fixed       : In-band command sometimes encountered process locking false
                 alarm in Linux.
   Description : Discard PID locking. Use flock instead.
   Issue ID    : none; customer reported through Edmund Soo
   Validation  : Do sum in-band UpdateBios command at the same time.
                 One should execute success one should fail.
                 Do sum in-band GetDefaultBiosCfgTextFile command at the same
                 time. Both should execute success sequentially.
   Check list  : 402-IB, 502-IB
6. Added       : Usage notice for OOB UpdateBios command
   Description : It is recommended to shutdown managed system before executing
                 OOB UpdateBios command.
   Issue ID    : none. Curtis Walker suggested from customer reported issue.
   Validation  : Check SUM user guide and help message for UpdateBios command
   Check list  : 103, 402-OB
7. Added       : SUM user guide added network usage requirement for OOB
   Description : SUM would require network protocol/port for OOB usage.
                 Added this information in user guide.
   Issue ID    : none. Software marketing suggested from customer requests.
   Validation  : Check SUM user guide
   Check list  : none



V 1.6.1 (2016/07/06)
========================
1. Fixed       : Buffer overflow issue when run ActivateProductKey command and
                 expiration date is assigned.
   Description : The core dump will happen when output string of transformation
                 is larger than output buffer
   Validation  : Run ActivateProductKey command and assign expiration date for
                 product key.
   Check list  : 201-OB
2. Fixed       : FAIL to checking product key issue when run ActivateProductKey
                 command.
   Description : Product key checking fail when run ActivateProductKey command
                 and expriation date of key is assigned.
   Validation  : Assign an expiration date for product key and run
                 ActivateProductkey command with this product key.
   Check list  : 201-OB
3. Fixed       : TpmProvision command throw exception with non-user-friendly
                 message when TPM is not isntalled on X11UP MB.
   Description : Show exit code 36: Required device does not exist instead.
   Issue ID    : none; Management SW Support team: Sam Yang reported
   Validation  : Run TpmProvision command on X11UP MB without TPM plugged.
   Check list  : 1001-OB-XX, 1002-OB

V 1.6.1 (2016/06/24)
========================
1. Fixed       : libcurl login failed for special username and password
   Description : special characters, e.g. + plus sign, in username or password
                 could cause libcurl login failed. Use curl_easy_escape to
                 overcome this situation.
   Issue ID    : none; hardware team Ray Shie reported
   Validation  : OOB UpdateBios or UpdateBmc using special username or password
                 including plus sign character
   Check list  : 402-OB, 701-OB
2. Fixed       : libcurl login failed when ServicePort is supported but
                 ServiceEnabling command is not supported
   Description : O.E.M. BMC has this situation that could cause SUM throw
                 unexpected exception. We add support check for this.
   Issue ID    : none; Marketing James Chiang reported from OIST OEM project
   Validation  : OOB UpdateBios or UpdateBmc using OIST OEM BMC FW
   Check list  : 402-OB, 701-OB
3. Fixed       : In-Band UpdateBios throw exception when Updating ME message
                 contains Error words.
   Description : AFUDOS error code is 0 in this situation. In this fix, SUM
                 removed message checking which seems to be over-killing.
   Issue ID    : 71631
   Validation  : Run TC320 and SUM does not throw exception.
   Check list  : 402-IB
4. Fixed       : TpmProvision would fail if "Security Device Support" has been
                 disabled before testing
   Description : This SUM would detect and enable it if it is not enabled.
   Issue ID    : 71758
   Validation  : Run TC218 and TC415 should pass on X10 Grantley.
   Check list  : 1001-OB-XX, 1002-OB-XX


V 1.6.1 (2016/06/04)
========================
1. Fixed       : Openssl thread safe issue
   Description : libcurl use openssl for https connection. Openssl is thread
                 safe only if mutex callbacks are defined. This might affect
                 multi-mode usage for OOB UpdateBios and OOB UpdateBmc commands
   Issue ID    : none; Khushali Shah from SW management software support team
                 reported
   Validation  : OOB UpdateBios or UpdateBmc using -l option with as many server
                 as possible
   Check list  : 402-OB-MM, 701-OB-MM
2. Fixed       : Retry Getting BMC WEB page
   Description : BMC WEB availability could be minutes after availability UDP.
                 Added 10 * 20 seconds retry for BMC WEB availability. This
                 could improve user experience.
   Issue ID    : none; self-improved
   Validation  : Unit reset BMC and then run OOB UpdateBios or UpdateBmc command
   Check list  : 402-OB, 701-OB
3. Fixed       : CheckAssetInfo command for system network interface count
                 exceeds actual lan count
   Description : BIT6 is indicator of 10G interface. MASK out BIT6~BIT7 for LAN
                 count in command 0x30 0x21
   Issue ID    : none; self-improved
   Validation  : Run CheckAssetInfo command on X10QBi. System Network Interface
                 content should match actual hardware configuration.
   Check list  : 302-OB
4. Fixed       : In-Band UpdateBios read/check BIOS boardid twice
   Description : read/check BIOS boardid only need to do once but Original SUM
                 do twice for re-entrance usage. Now, we improved it to do only
                 once.
   Issue ID    : none; self-improved
   Validation  : Run in-band UpdateBios command on X10 Grantley or X11 platforms
                 SUM will do BIOS boardid checking only once.
   Check list  : 402-IB
5. Fixed       : In-band UpdateBios command spends much time on K1SPI.
   Description : Replaced all system call by SystemNoshell to improve
                 in-band update BIOS speed.
   Issue ID    : none; self-improved
   Validation  : Run in-band UpdateBios command on K1SPI platform
                 SUM will do it in roughly 10 minutes improved from 16 minutes


V 1.6.1 (2016/05/19)
========================
1. Fixed       : Removed disabling PC6/7 workaround procedure for in-band
                 UpdateBios
   Description : X11UP removed this procedure and X10 BIOS has revision that
                 could cause CMOS 50/51 initial value unexpected. So, SUM
                 removed this procedure to accomodate changes.
   Issue ID    : 70977
   Validation  : none
   Check list  : 402-IB
2. Fixed       : Improve in-band UpdateBmc robustiness
   Description : When polling in-band UpdateBmc status, if received first
                 non-zero completion code, SUM threw exception. Now, do not
                 throw and continue polling until timeout. Will show last
                 completion when it does timeout.
   Issue ID    : none; customer reported.
   Validation  : none
   Check list  : 70X-IB


V 1.6.1 (2016/04/27)
========================
1. Fixed       : Fix wrong meassage is shown on command line when run SUM OOB
                 command with multiple systems.
   Description : The wrong command message is shown when run SUM OOB command
                 with multiple system.
   Issue ID    : none; self-improved
   Validation  : Run SUM OOB command with -l/-u/-p parameter.
   Check list  : 20x-OB-MM,30x-OB-MM,40x-OB-MM,50x-OB-MM,60x-OB-MM
                 ,70x-OB-MM,80x-OB-MM,90x-OB-MM,100x-OB-MM
2. Changed     : Increase max retry times of verify_bios_region function when 
                 run in-band update BIOS to 5 times from 2 times.
   Validation  : Run in-band UpdateBIOS command, and check result of verify BIOS
                 region stage.


V 1.6.1 (2016/04/21)
========================
1. Fixed       : Fix BIOS configuration related command failed on Windows
   Description : Replace VC compiler flags /O2 with /O1 to fix failed command
   Issue ID    : none; self-improved
   Validation  : Execute BIOS configuration command on Windows successfully
   Check list  : 501-OB, 503-OB
2. Fixed       : Revise error message for error code 294.1
   Description : Original message, "Error occur when run disable PC6/7
                 workaround procedure", changed  to "CMOS initial value invalid
                 for JPME2LESS procedure."
   Issue ID    : 70401
   Validation  : none
   Check List  : 40x-IB
3. Fixed       : B10DRi TPMprovision failed
   Description : Command 30 a0 11 set/get is performed in TPMprovision command
                 There is a delay between set and get to workaround BMC FW
                 Original delay is 1 second. For B10DRi, delay 1 second would
                 fail. In this fix, we extend delay to 3 seconds.
   Issue ID    : 70413
   Validation  : Run SMSTC TC218 for B10DRi
   Check List  : 1002-XX
4. Fixed       : Fix general file download exception handling causing BMC/BIOS
                 feature flag bin is empty defect
   Description : When the target file is not exist, general file download
                 command 30 A0 06 (PrepareFileDownloadDone) is required to retry
                 to get completion code 0xCC.  The original code existed a
                 defect when there is a delay time between command 30 A0 05
                 (PrepareFileDownload) and the first subsequent command 30 A0 06
                 (PrepareFileDownloadDone), the exception would be thrown and
                 then ignored in the parent try-catch handling.  In this fix,
                 the first subsequent command 30 A0 06 is combined into loop
                 statements.
   Issue ID    : none
   Validation  : Execute SUM GetDefaultBiosCfgTextFile command and Error Code
                 283.8 is not reported
   Check List  : 502-OB
5. Fixed       : Username/password begins with special character
   Description : Fix username/password begins with '-' or '/'
   Issue ID    : None
   Validation  : Run OOB commands with username/password begins with '-' or '/'
   Check List  : xxx-OB


V 1.6.1 (2016/03/18)
========================
1. Fixed       : In-Band UpdateBios would fail on X10 DP when FDT is the same
   Description : In last release, we added PC6/7 workaround disabling procedure
                 This will have a side-effect of throwing exception 294.1 in
                 JPME2Less procedure when FDT is the same. Fix this issue in
                 this release. For X11 UP, if PC6/7 workaround disabling
                 procedure is not implemented, this issue will happen and SUM
                 can fix it as well.
   Validation  : Execute in-band command on X10DP using the same BIOS. SUM
                 should pass.
   Issue ID    : 69422, 69880
   Check List  : 40x-IB


V 1.6.1 (2016/03/10)
========================
1. Added: In-band commands requires SHA-2 Code Signing Support Windows.
   Description : SHA1 algorithm is no longer supported by Microsoft.
   Validation  : Execute in-band command on Win7/Win2008 R2 without SHA2 patch,
                 SUM will show exception message
   Issue ID    : none; self-improved
   Check List  : 701-IB
2. Fixed       : Get wrong value from CMOS 0x50 when run in-band update BIOS
                 command.
   Description : Get wrong value from CMOS 0x50 when run in-band update BIOS
                 command, it will cause SUM to do compare FDT again after first
                 time reboot.
   Issue ID    : #69006
   Validation  : Run in-band update BIOS command between 2 different FDT BIOS.
                 It will work normally.
   Check List  : 40x-IB
3. Fixed       : Added PC6/7 workaround disabling procedure into in-band update
                 BIOS procedure.
   Description : New BIOS apply PC6/7 wrokaround, it will cause system hang 
                 after in-band update BIOS. SUM added this procedure to disable
                 PC6/7 workaround for new BIOS.
   Issue ID    : #69422
   Validation  : update BIOS to older BIOS from applied PC6/7 workaround,
                 it will work normally.
   Check list  : 40X-IB
4. Changed     : Skip "Security Device Support" item when run TPMprovision
                 command with cleartpm option
   Description : When running TPMprovision with cleartpm option,
                 the "Security Device Support" will be hidden
                 if "Security Device Support" is disabled.
   Issue ID    : None
   Validation  : Disable "Security Device Support" and execute TPMProvision
                 with cleartpm option. It will work normally.
   Check list  : 100X-OB


V 1.6.0 (2016/01/28)
========================
1. Fixed       : Fix in-band updateBMC will be interrupted by I/O event 
                 accidentally
   Description : In-band update BMC will throw exception with some I/O event
   Validation  : Switch KVM or drag console between dual screen when in-band
                 Updating BMC without error
   Issue ID    : none; self-improved
   Check List  : 701-IB
2. Fixed       : Fix in-band updateBMC fail when update on X11 MBs, update 
                 libBmcUpdate library so that it can pass when update X11 BMC 
                 FW.
   Description : When update BMC FW on X11 MB, BMC will check GUID from flash, 
                 it will cause SUM get some error results when use old 
                 libBmcUpdate library.
   Issue  ID   : 68378, 68403
   Check  List : 701-IB
   Validation  : Use latest version SUM to update SMT_X11_112 or later BMC FW 
                 and verify its result.
3. Added       : In-band UpdateBMC updating timeout to be 600 seconds
   Description : When update BMC FW, there will be a timeout 600 seconds in 
                 updating stage
   Issue  ID   : None
   Check  List : 701-IB
   Validation  : None
4. Added       : Add KCS driver retry(15 times) to prevent receiving response
                 failed, when updating BMC.
   Description : Add driver level retry to prevent receiving response failed
                 accidentally.
   Check List  : none;
   Issue ID    : none; self-improved


V 1.6.0 (2015/12/28)
========================
1. Fixed       : In-band update BIOS is too slow issue.
   Descript    : Improve in-band update ME region speed.
   Issue ID    : None
   Check List  : 40x-IB
2. Fixed       : Invalid memory initialization action for VPD data.
   Description : Use invalid memory initialization action to initiate
                 memory.
   Issue ID    : None
   Check List  : 302-OB
3. Fixed       : Search ATENs_FW instead of ATEN in BMC FW binary file for build
                 date
   Description : Search ATEN in BMC FW binary file for build date, in
                 REDFISH_X10_326.bin, would parse the wrong bytes generating
                 invalid build date
   Validation  : OOB updateBMC with REDFISH_X10_326.bin
   Issue ID    : 68095
   Check List  : 701-OB, 702-OB
4. Fixed       : Client ME driver conflict with update ME procedure issue.
   Description : OS hang on ME updating step when run SUM update BIOS command if
                 client ME driver is detected on server platform.  SUM will 
                 throw an exception and instruct user how to remove this 
                 confliction.
   Validation  : Install intel client ME driver on server platform, and run SUM
                 updateBios command,the exception and instruction will be thrown
                 , please follow instruction to remove intel client ME driver 
                 and try updateBIOS again.
   Issue ID    : 66920
   Check List  : 40x-IB
5. Fixed       : CVPD would have memory leak if exception is thrown
   Description : If the VPD file is in wrong format, an exception will be
                 thrown, resulted in memory leak
   Check List  : Run SUM CheckAssetInfo command with the VPD in wrong format
   Issue ID    : none;


V 1.6.0 (2015/12/11)
========================
1. Fixed       : For some BIOS, board ID search could be incorrect
   Description : Some BIOS have $FID signature outside of BIOS boot block
                 which was generated by BIOS compress utility. This would
                 cause SUM captured wrong position of $FID signature and
                 thus reported wrong board id.
                 BIOS team provide solution to search from BIOS BOOT block
                 merely to avoid this situation: i.e. search from tail to
                 head. SUM implemented this solution in this version
   Check List  : In-Band/OOB GetBiosInfo/UpdateBios command
   Issue ID    : none;
2. Fixed       : If std::exception happened, SUM will be terminated abnormally
   Description : Added catch for std::exception in SUM main program to exit
                 gracefully
   Check List  : none;
   Issue ID    : none; self-improved
3. Fixed       : Regular expression support for e-mail address does not work
                 in FreeBSD
   Description : in ChangeBmcCfg command, bad SMTP/SenderEmail address would be
                 false-alarmed in FreeBSD
                 This is because \w regular expression brief is not supported
                 Changed to use [0-9a-zA-Z] instead to fix this issue
   Validation  : Edit with correct e-mail address for SMTP/SenderEmail
                 ChangeBmcCfg command should work
                 Edit with in-valid e-mail address for SMTP/SenderEmail
                 ChangeBmcCfg command will fail
   Check List  : GetBmcCfg/ChangeBmcCfg command
   Issue ID    : 67688
4. Fixed       : Supported LanMode in bmccfg.xml file might be incorrect
   Description : BMC FW did not implement command 30 70 0C 02 for LanMode
                 support check. SUM added work around solution by checking
                 exception board ID lists as below.
                 Work around solution when (Get Supported command) returned
                 Completion Code 0xCC:
                 By default, treated Data 1 as 0x07 (ALL supported)
                 If MB board ID falls into the exception list, treated Data 1
                 as 0x02 (only support onboard LanMode)
                 Board ID exception list: C7X99(0x0856), C7Z97(0x084C),
                 X10SRA(0x0857), A1SRM_LN7F(0x085A)
5. Added       : Parsing AOC card slot type and slot number from VPD
                 ReadOnly region
   Description : slot type and slot number are in VDP ReadOnly region
                 instead of ReadWrite region
   Check List  : Run SUM CheckAssetInfo command with the VPD having
                 slot type and slot number in ReadOnly region
   Issue ID    : none;
6. Fixed       : Inband update BIOS conflicts with MEIx64 service in windows
   Description : Add manual action message to prevent system hang if
                 MEIx64 service is detected.
   Validation  : Install 'Intel Management Engine Component' in Win2012,
                 on X10-DP board, reboot and run inband update BIOS will show
                 manual action required message.
   Check List  : Inband UpdateBios command in windows
   Issue ID    : 66920;
7. Fixed       : When credential file is larger than 128 entries, SUM will
                 segmentation fault
   Description : Receive a credential file larger than 128 entries
                 put the credential file into SUM_HOME/credential directory
                 Execute CheckOOBSupport command on non-activated MB
                 SUM will not segmentation fault
   Check List  : All license related commands
   Issue ID    : none; customer reported
8. Added       : InBand driver for FreeBSD system
   Description : Added support InBand driver for FreeBSD system
   Validation  : 1. Select OS specific BSD driver and copy into SUM_HOME
                 2. Do in-band BIOS management commands on FreeBSD OS
                    with BIOS which does not support E7 command, e.g.
                    BIOS built prior to 2013/11, would work.
   Check List  : 4xx-IB
   Issue ID    : none; customer requested
9. Added       : Internal tool added support for Restore On AC Power Lost
   Description : Non-F MB deos not support get change BIOS configuration
                 due to license checking issue.
                 Added change this item support in internal tool for BIOS
                 team's purpose of testing.
   Validation  : run this feature on Non-F MB should work
                 run this feature on F MB required OOB key
   Check List  : none;
   Issue ID    : none; BIOS testing team requested
10.Fixed       : CLZ77 decompress could segmentation fault if input data has
                 invalid offset/length
   Description : Added Exception handling to protect this error. Will throw
                 Exception in this case instead of segmentation fault.
   Validation  : Use internal tool to gen credential file
                 use hex editor to modify one byte
                 use SUM to run license related commands
                 SUM will not segmentation fault
   Check List  : OOB license related commands.
   Issue ID    : none; self improved
11.Added       : Delay 5 seconds for inband --reboot option
   Description : in-band command with --reboot option could cause command
                 terminate ungracefully, e.g. exit code from ssh could be 255,
                 customer might have no way to examine the status and take
                 some actions. Now it would delay 5 seconds to reboot OS after
                 sum exit gracefully.
   Validation  : use ssh connection to run in-band commands with --reboot option
                  SUM exit code would be 0 and system will be reboot within 5
                  seconds
   Check List  : all in-band commands with --reboot options
   Issue ID    : none; self-improved


V1.6.0 (2015/11/20)
========================
1. Fixed       : Auto-activation method does not work for X9
   Description : Credentail file for auto-activation method in item 3 of
                 V1.6.0 2015/11/19 does not work for X9 system.
   Validation  : Validation using item 3 of V1.6.0 2015/11/19 would work
                 on X9 system.
   Check List  : All license related commands
   Issue ID    : none


V1.6.0 (2015/11/19)
========================
1. Changed     : In-Band Linux driver push everything except memory management
                 to user space
   Description : Linux kernel module is GPL license, there are customers asking
                 for source code of linux driver. We push all our domain
                 knowlege to sum user space. Only left memory management part
                 for customer. Customer can use this source code to compile on
                 their own customized Linux kernel.
   Validation  : 1. Use a BIOS that was build before 2013/10.
                 2. Copy new built drivers to SUM_HOME
                 3. In-band BIOS management commands should still work
                 4. This SUM should also be compatible with old driver
   Check List  : 305-IB, 4XX-IB, 5XX-IB
2. Added       : Support RHEL4 officially
   Description : BAIDU request to have SUM run on RHEL4u3. We revised few
                 source codes and compile/link on RHEL4u3.
   Validation  : Run OOB/In-Band commands on RHEL4 should work
   Check List  : ALL
3. Added       : Auto-activation from credential files
   Description : There are customers who like to use SUM but does not like
                 to do ActivateProdcutKey command for already purchased
                 MBs. Here SUM provided a method to auto-activate product keys
                 from credential files.
                 1. Software PM use internal tool -GenCredential command to
                    compress and encrypt MAC;Key list file into a credential
                    file and provide it to customers.
                 2. Customer put the credential file into SUM_HOME/credential
                    folder
                 3. When executing license related commands, SUM will check if
                    license check can pass. If failed, SUM will search and
                    match from credential files to activate product key. If not
                    matched, SUM will show exception with exit code 80. If
                    matched, SUM will activate product key and continue to
                    execute the original license related command.
    Validation : Provide credential file using internal tool
                 Deactivate product keys from MB
                 run SUM license related command should work
                 run SUM license related command from MB that is not listed in
                 the credential file, the result should be failed.
    Check List : License related commands
4. Added       : Support ARM lib for BIOS configuration functions
   Description : IPMI team need to add BIOS configuration update features in
                 Redfish FW. SUM split BIOS configuration related libraries as
                 libBiosCfg and libBase for this purpose. These lib can cross
                 compile on ARM platform with compiler tool chains provided
                 from IPMI team. SUM can provide the libraries and header files
                 for IPMI's development of RedFish BIOS configuration features
                 We have package named libBiosCfg_V1.0_YYYYMMDD.tar.gz with
                 1. libBiosCfg.a
                 2. libBase.a
                 3. ReleaseNotes.txt
                 4. src/libBiosCfg/ with header files
                 5. src/libBase/ with header files
                 6. src/examples/ with example source codes
   Validation  : none. Wait for IPMI team's RedFish feature for validation
   Check List  : none. IPMI team will use this in RedFish FW
5. Fixed       : InBand UpdateBmc for X9 in FreeBSD could segmentation fault
   Description : Memory allocation problem for strstr usage
   Validation  : Added one extra byte when doing memory allocation can solve
   Check List  : 70x-IB
   Issue ID    : none;
6. Fixed       : Build BMC driver superbmc.sys by nmake.
   Description : Originally, build superbmc.sys by MSBuild, it will cause
                 BSOD when run IB BMC related commands if IPMI device is
                 not present.
   Validation  : Run sum license related in-band commands on Windows OS
                 with non-F MB will not cause system blue screen
   Check List  : 70x-IB, 80x-IB, 90x-IB 306-IB
   Issue ID    : none; self-discovered
7. Fixed       : C7-series MB claim no support for OOB Update BIOS
   Description : C7 MB uses client ME which does not support OOB Update BIOS
   Validation  : Run OOB UpdateBios onf C7 series MB will show exit code 38
   Check List  : 401-OB
   Issue ID    : 64303

V1.6.0 (2015/11/06)
========================
1. Added       : UpdateBmc/UpdateBios commands support OOB usage through AMI
                 Rainer/Hermon BMC FW
   Description : Originally not supported by 1.6.0, now support it
   Validation  : Run UpdateBmc command on X9/B9 AMI FW should work with/without
                 --overwrite_cfg option
                 Run UpdateBios command on X9/B9 AMI FW should work with/without
                 --flash_smbios option
                 One of B9DRI/P/7/6/E MBs
                 One of B9DRG/-E/-X/-3M or B9DRT MBs
                 X9DRW-iF
   Check List  : 40x-OB, 70x-OB
   Issue ID    : none;
2. Added       : TPM provision support X11 Greenlow platform
   Description : TPM provision support X11 Greenlow platform using new TPM
                 provision ISO file.
                 TPM_yyyymmdd.zip
                 TPM_yyyymmdd/
                 ReleaseNotes.txt
                 EFI/
                 TPM_yyyymmdd.ISO
                 TPM_Lock_yyyymmdd.ISO
                 DOS/
                 TPM_DOS_yyyymmdd.ISO
                 TPM_DOS_Lock_yyyymmdd.ISO
                 Currently, we support two platforms
                 X10 Grantley server platform with TPM 1.2
                 TPM_yyyymmdd.ISO and TPM_Lock_yyyymmdd.ISO
                 X11 Greenlow client platform with TPM 1.2
                 TPM_DOS_yyyymmdd.ISO and TPM_DOS_Lock_yyyymmdd.ISO
   Validation : a. run TpmProvision command on X10 Grantley platform using
                   TPM_yyyymmdd.ISO/TPM_Lock_yyyymmdd.ISO files should work
                b. run TpmProvision command on X11 Greenlow platform using
                   TPM_DOS_yyyymmdd.ISO/TPM_DOS_Lock_yyyymmdd.ISO should work
                   run TPM_DOS_Lock_yyyymmdd.ISO twice should show TPM has been
                   locked.
   Check List  : 1001-OB, 1002-OB, 1001-OB-MM, 1002-OB-MM
   Issue ID    : X11 greenlow server platforms
3. Added       : UpdateBmc command added --overwrite_sdr option
   Description : Default is to preserve sdr, now added this option for
                 customer usage
   Validation  :
       Optional Arguments
        --overwrite_cfg
          Overwrites current BMC configurations including network settings
          using factory default values in the given BMC image file. This might
          cause IPMI connection lost.
          For ATEN BMC FW or AMI Hermon BMC FW, this option requires
          --overwrite_sdr option.
        --overwrite_sdr
          Overwrites current BMC SDR data
          For AMI BMC FW, this option requires --overwrite_cfg option.
   Check List  : 70x-XX-XX
   Issue ID    : none; customer reported
4. Changed     : Added detection of client ME platform and claim not supported
                 for OOB BIOS Update
   Description : INTEL client ME does not support BMC command to put into
                 recovery mode. Will check MEDisabling feature and claim
                 not supported OOB Update if MEDisabling feature flag is raised
   Validation  : run OOB UpdateBios Command on X11SAE-F, X11SAT-F,
                 X11SSZ-(Q)F/LN4F, X11SBA-(LN4)F. will have exit code 38
                 function not supported.
   Check List  : -OB
   Issue ID    : none; self-improved
5. Changed     : Showing format of add-on card information when run
                 CheckAssetInfo command and get error VPD data.
   Description : SUM will how N/A(Fail reseason) if VPD data error or can not
                 parse.
   Validateion : none
   Check List  : 302-OB
   Issue ID    : none, enhanced
6. Fixed       : Memory leak/segmentation fault in multiple user usage
   Description : There could be memory leak when using -l option with more
                 than tens of nodes. Fix memory leak by using object instance
                 instead of manual control.
                 Fix segmentation fault by disable SIGNAL in libcurl option
   Validation  : run every oob command with -l option and more than 10 nodes
   Check List  : XXX-OB-MM
   Issue ID    : 66615;
7. Fixed       : Added exception handling for OOB CheckSensorData revoked IPMI
                 session
   Description : IPMI session will be revoked if there is a new IPMI session
                 if the current IPMI session is revoked, it will
                 delay 15 seconds and retry again at most 5 times
   Validation  : 1. run OOB CheckSensorData
                 2. run another OOB CheckSensorData, with the same BMC IP
                 Both CheckSensorData should pass
   Check List  : 304-OB
   Issue ID    : none; self-improved
8. Fixed       : Windows driver phymem issue.
   Description : It could cause BOSD when run in-band BIOS related command(s).
                 Add capability to indicate the Phymem64.sys is fixed BSOD
                 issue or not.
   Validation  : Run In-band BIOS related command(s) to verify this issue.
   Check List  : 301-IB, 401-IB ~ 405-IB, 501-IB~504-IB, 601-IB~604-IB.
   Issue ID    : windows in-band related tests

9. Fixed      : Windows DLL Superdll_ssm32/64 issue.
   Description : It will cause BMC related command(s) can not work. Root cause is
                 the old driver can not be load when driver buffer size less than
                 superdll buffer size.
   Validation  : a. Run GetBmcInfo command with 1.4.2 20150923 package
                 b. Run GetBmcInfo command with this package should work
   Check List  : 701-IB, 702-IB, 801-IB, 802-IB, 901-IB, 902-IB.
   Issue ID    :
10. Added      : Phymem driver version control mechanism.
   Description : Replace original phymem driver if the driver version of system
                 less than 2.0.1.0.
   Validation  : 1) Run older version of SUM in-band BIOS command in system
                    first, and run this version SUM in-band BIOS command, it
                    will be run successfully.
                 2) Run "sc qc phymem" under command prompt, and check its bin
                    path field, it will be pointed to sum/driver/ folder
   Check List  :  301-IB, 401-IB ~ 405-IB, 501-IB~504-IB, 601-IB~604-IB
11. Fixed      : MountIsoImage command does not work for Windows
   Description : Quotation mark should be trimmed in Windows
   Validation  : Run sum command below to check if it works correctly
                 sum.exe -l slist.txt -c MountIsoImage --image_url
                 '\\10.135.15.109\lab\TPM.iso' --id lab --pw 1234
   Check List  : 1003-OB-MM
   Issue ID    : 66554


V1.6.0 (2015/10/16)
========================
Major Validation Notes:
  Enabling SMSTC pass on X11 platform except known limitations

  Please test on SMSTC for X11 platform MB with below configuration
  [SMSTC]: 1.3.6 or later
  [ATT]: 20151016 or later
  [SUM]: SUM package 1.6.0 20151016 or later
  [BMC]: Mars team's FW SMT_X11_0.53 or later; or
         Xinan team's FW SMT_X11IPMI_222 or later
  [BIOS] BIOS team's BIOS of build date 2015/10/13 or later with fix of
         1. Patch system hang after flash BIOS.
         2. Update Intel SI pacakge 1.6.0.0
         3. Update SPS 4.0.3.68


1. Added       : Add limitation for run TPM provision command on Greenlow
   Description : Show exception when run TPM provision command on Greenlow.
   Validation  : Run TpmProvision command on X11 Greenlow platform.
   Check List  : 1001-OB, 1002-OB
   Issue ID    : none;
2. Changed     : Remove exception message when can not get LanCount from VPD.
   Description : Show N/A(Can't get information from VPD) message.
   Validation  : Run SUM CheckAssetInfo command with Qlogic LAN Card.
   Check List  : 302-OB, 302-OB-MM
   Issue ID    : none; customer reported
3. Fixed       : OOB UpdateBmc/UpdateBios is not stable
   Description : Added below page get command before uploading BMC/BIOS image.
                 FW will release memory for image upload.
                 BMC update:
                     url+redirCGI?url_name=main_fw_upload
                 BIOS update:
                     url+redirCGI?url_name=main_bios_upload
   Validation  : Run OOB UpdateBios/UpdateBmc should work on X11SSW
   Check List  : 402-OB, 701-OB
   Issue ID    : 66140
4. Fixed       : Virtual Media cannot work from GetBmcCfg/ChangeBmcCfg
   Description : Load IPMI settings to default and rung GetBmcCfg and
                 ChangeBmcCfg, SUM will throw exception. Because default
                 Action is change and SUM check if it is mountable. Fix
                 this by skipping format check for Change action
   Validation  : 1. Use command 30 41 to load default BMC configuration
                 2. Run GetBmcCfg command and dump file to bmccfg.xml
                 3. Run ChangeBmcCfg command using the dumped bmccfg.xml file
                    The result should pass
                 Run debug TC214/TC412 on SMSTC will pass
   Check List  : 80X-OB
   Issue ID    : 66240
5. Fixed       : Added exception handling for revoked ipmi generalfiledownload
                 session
   Description : Download will be revoked if there is a new download session
                 if the generalfiledownload session is revoked, it will
                 delay 15 seconds and retry generalfiledownload again at most
                 5 times
   Validation  : 1. run OOB GetCurrentBiosCfgTextFile
                 2. run another OOB GetCurrentBiosCfgTextFile, the same BMC IP
                 Both GetCurrentBiosCfgTextFile should pass
   Check List  : 501-OB
   Issue ID    : none; self-improved
6. Fixed       : CUtil::isFileExisted() bug for Windows
   Description : Replaced stat function by GetFileAttributesA() API.
   Validation  : run In-Band update Bios command with jumperless/MEDisabling function.
   Check List  : 401-IB, 402-IB, 403-IB, 404-IB, 405-IB,
   Issue ID    : none;
7. Fixed       : MountIsoImage command could timeout
   Description : Original timeout is 12 seconds, now change to 120 seconds
   Validation  : Run SMSTC debug 215;216;217 should pass
   Check List  : 80X-OB
   Issue ID    : none; self-improved

V1.6.0 (2015/10/07)
========================
1. Changed     : FreeBSD does not require installing gcc
   Description : Originally FreeBSD 10.x or later required install gcc 4.2.0
                 Now remove this dependency by statically link libgcc and
                 libstdc++
   Validation  : Remove GCC in FreeBSD 10.x and run sum command can work
   Check List  : none
   Issue ID    : none; customer reported
2. Changed     : Refactor feature flag classes
   Description : Refactor design of feature flag so that it would be easier
                 for future revision adoption
   Validation  : none
   Check List  : none
   Issue ID    : none; self-improved
3. Fixed       : [Windows] In-Band update BIOS does not work
   Validation  : Run in-band UpdateBios command on Windows should work
   Check List  : 401-IB
   Issue ID    : none; self-discovered
4. Fixed       : In-Band update BIOS sometimes does not work when FDT
                 is different or MEDisabling feature is enabled
   Validation  : Run in-band UpdateBios command for jumperless feature
                 stress should work
   Check List  : 401-IB
   Issue ID    : none; self-discovered
5. Fixed       : GetBmcCfg/ChangeBmcCfg would failed when IKVM/VM services
                 are disabled
   Validation  : SUM do exception check device status when services are
                 disabled. Added dependency requirement in Virtual Media
                 table in bmccfg.xml file
   Check List  : 80X-0B
   Issue ID    : none; self-discovered
6. Fixed       : Added release notice for user to OOB update BMC/BIOS using
                 SUM version 1.4.2
   Validation  : Release note, user guide added this notice
   Check List  : none
   Issue ID    : none; Max suggested
7. Fixed       : In-band GetBmcCfg will fail for Virtual Media table
   Validation  : run in-band GetBmcCfg command on X11 platform should work
   Check List  : none
   Issue ID    : none;

V1.6.0 (2015/10/02)
========================
1. Changed     : SUM package is no longer released with TAS package inside
   Description : CheckSystemUtilization command requirement in release note
                 added, required TAS (Thin Agent Service):
                 TAS_1.0.1_20150605.zip, SUM package is no longer released
                 with TAS package inside
   Validation  : Check TAS does not exist in the SUM package, User Guide is
                 edited accordingly
   Check List  : none
   Issue ID    : none
2. Added       : Support FreeBSD x86_64 7.1 or later
   Description : Added support for FreeBSD x86_64 since 7.1
                 TAS has not supported FreeBSD, so CheckSystemUtilization does
                 not support FreeBSD yet.
   Validation  : Run all SUM command, except CheckSystemUtilization for FreeBSD
                 SUT, should work for FreeBSD 7.1 or later
   Check List  : ALL
   Issue ID    : none; customer requested
3. Added       : In-Band update BIOS for MEDisabling feature
   Validation  : Run In-band update BIOS command on X11SSQ/X11SBA/C7 100 series
                 MB, the program will have the same behavior as jumperless
                 solution except that
                 1. There is no FDT comparing. The behavior is similar to FDT
                    is different situation, i.e. system will need to reboot
                    twice.
                 2. Originally jumperless message was
                    a. FDT the same:
                       "FDT is same, Update BIOS and ME(exclude FDT) regions...."
                    b. FDT different:
                       "FDT is different"
                    Now for ME disabling feature the message is
                    "ME firmware is in normal mode currently, will reboot system and put ME into flash mode"
   Check List  : 40X-IB
   Issue ID    : 65808, 65455, 65603, 64828, 64816
4. Fixed       : OOB CheckAssetInfo for System LAN information would fail on
                 X11 platform
   Validation  : 1. Run CheckAssetInfo command for all SUM supported MB with FW
                 2. The LAN/IPMI MAC Address information will be shown
   Check List  : 302-OB in SUM CheckList rev 1.6
   Issue ID    : none
5. Fixed       : InBand UpdateBmc command Check Status never fail
   Description : After InBand UpdateBmc Check status retry does not
                 throw exception when timeout happen. Will throw exception
                 if timeout happened.
   Validation  : none
   Check List  : 70X-IB in SUM CheckList rev 1.6
   Issue ID    : none
6. Fixed       : In-Band GetBmcCfg command does not work for Virtual Media
                 table
   Validation  : In-band GetBmcCfg command will fail for VM shared host command
                 Added support check for this command. If return completion
                 code is CA, will assert not supported and do not show it for
                 user
   Check List  : 801-IB, 802-IB
   Issue ID    : TC_313 of 62270, 65204, 65688
7. Fixed       : In-Band update BIOS for jumperless procedure failed to provide
                 ROM file path for FIRST reboot
   Validation  : If ROM file path does not begin with "./" or "../"
                 and is not an absolute path, jumperless update will not be
                 able to find the rom file image
                 1. create a folder "img" in sum_home
                 2. copy BIOS ROM file "rom.img" to this folder
                 3. run in-band update BIOS with below command for FDT
                    different case or MEDisabling case
                    ./sum -c UpdateBios --file img/rom.img
                    After first reboot, the latest log file in the folder
                    "/var/log/supermicro/" will not show cannot find the BIOS
                    image file error message
   Check List  : 401-IB
   Issue ID    : none; Self-discovered
8. Fixed       : In-Band update BIOS for jumperless procedure will show full
                 log file name on screen output
   Validation  : For FDT different or MEDisabling case, will show full log file
                 name on screen output, so that customer can trace the log in
                 next reboot easily. Example message:
                 "BIOS will be updated after system reboot, The update log will
                 be save to 
                 /var/log/supermicro/sum_jumperless_update_20151001085546.log"
   Check List  : 401-IB
   Issue ID    : none. Improvement.


V1.6.0 (2015/09/18)
========================
1. Changed     : OOB UpdateBios/UpdateBmc remove JAVA dependency. Now SUM does
                 not require JAVA at all.
   Description : OOB UpdateBios/UpdateBmc mimic WEB Update flow by using
                 LibCurl. AMI FW is not supported.
   Validation  : Run OOB BMC/BIOS update, the result should be passed
   Check List  : 40X-OB-XX, 70X-OB-XX
   Issue ID    : none; remove dependency
2. Added       : Check DCMS license support X11 FW GUID
   Description : Commands that require DCMS license will be supported for X11
   Validation  : Run licensed command result will be pass
   Check List  : 302-OB
   Issue ID    : 64828, 64853, 64882, 64886, 62270, 65321, 65242, 64892, 64828
                 65204
3. Added       : InBand UpdateBmc command support X11 FW
   Description : Integrate X11 FW update flow into SUM
   Validation  : Run InBand UpdateBmc command will pass for X11 FW
   Check List  : 70X-IB
   Issue ID    : non, added support
4. Fixed       : Added retry after in-band UpdateBmc to polling bmc status
                 Fixed program erorr code repetition
   Description : X10DRS 0.60 FW
   Validation  : Run in-band UpdateBmc command for X10DRS from 0.60 to 0.61
   Check List  : 302-OB
   Issue ID    : none; customer reported
5. Fixed       : Added retry power up for OOB BIOS Update on X10DRFR from power
                 off status
   Description : It takes 1minute and 20 seconds to power up the system after
                 OOB UpdateBios. This was timed-out in previous version. Added
                 retry to 2 minutes in this version.
   Validation  : Run OOB UpdateBios command for X10DRFR from power off status
                 The result should be pass.
   Check List  : 302-OB
   Issue ID    : TC219 of issue 65040
6. Fixed       : [Windows] In-band ActivateProductKey for SFT-DCMS-LIC or
                 SFT-SUM-LIC would fail
   Description : Windows driver maximum buffer size changed from 64 to 128
   Validation  :a. In Windows, check file information of superbmc.sys
                    Version 2.1.0.0 can be shown.
                b. Run in-band ActivateProductKey for SFT-DMCS-LIC and
                   query will pass
   Check List  : 201/202-IB
   Issue ID    : 64403
7. Fixed       : Fix error which access invalid char array position when run
                 SUM CheckAssetInfo command with Valgrind tool.
   Description : Tested and passed for CheckAssetInfo command with Valgrind.
   Validation  : Run valgrind ./sum -i IP -u ADMIN -p ADMIN -c CheckAssetInfo,
                 test passed
   Check List  : 302-OB
   Issue ID    : none; SSM team reported
8. Fixed       : mount ISO image path checking with regular expression in
                 Windows
   Description : regular expression would fail with valid ISO URL path
   Validation  : Run mountIsoImage with URL
   Check List  : 1003-OB
   Issue ID    : none; SSM team reported
9. Fixed       : Enabling AD/LDAP/RADIUS in BMC config are mutual exclusive
   Description : AD/LDAP/RADIUS can't be enabled at the same time
   Validation  : 1. GetBmcCfg
                 2. Enable AD
                 3. run changeBmbCfg command.
                 4. set AD action to "None", set ADEnable to "Disable" and Enable LDAP in BMC config
                 5. Run ChangeBmcCfg command with the new bmc config file
                 6. GetBmcCfg back, AD is disabled, LDAP is enabled
   Check List  : 802-OB
   Issue ID    : none; Added support
10. Fixed      : Fix can't flash BMC for X10 REDFISH FW >= v3 .
   Description : Updated SMCIPMItool to add support for OOB flash BMC using SSL port
   Validation  : Update BMC to X10 V3.xx (RedFish) and use ipmi raw command 30 41 to
                 load default. RedFish FW will default enable ssl redirection.
                 Update BMC again, the result should pass.
   Check List  : 701-OB
   Issue ID    : 64615
11. Fixed      : Fix flash BMC sometimes will show IO exception error
   Description : Updated SMCIPMItool to fix IO exception error when update BMC
   Validation  : Run ./sum -i IP -u ADMIN -p ADMIN -c updateBmc without IO
                 exception error
   Check List  : 701-OB
   Issue ID    : 64450
12. Fixed      : Fix can't flash BMC if http and ssl redirection are disabled
   Description : Added retry using -ssl option of SMCIPMITool if default
                 non-ssl http failed
   Validation  : Disable http and ssl redirection
                 UpdateBMC command should still work
   Check List  : 701-OB
   Issue ID    : 64615
13. Fixed      : Inband UpdateBmc command supports MicroBlade/SuperBlade FW
   Description : Tested and passed for these two FW. Open the usage for these
                 two FW
   Validation  : Run in-band UpdateBmc command on B1/B10 systems
   Check List  : 70X-IB
   Issue ID    : none; Added support

V1.6.0 (2015/07/31)
========================
1. Added       : All commands added feature support check
   Description : X11 FW/BIOS will support feature flag
                 SUM support feature flag specification V1.1
                 If BIOS/IPMI support feature flag and claim feature not
                 supported, SUM will hiccup error with exit code 38
                 Exit Code 38: Function is not supported
   Validation  : Check if SUM behavior match sum_internal tool ouptut.

    #./sum_internal -CHECKFEATUREFLAG <IP> <ID> <PASSWD>
      This will get the feature flag via OOB.

    #./sum_internal -CHECKFEATUREFLAG SMI
      This will get the BIOS feature flag via SMI command.

    #./sum_internal -CHECKFEATUREFLAG KCS
       This will get the feature flag via IPMI KCS interface.

    Supermicro Update Manager Internal Tool (for UEFI BIOS) V1.6.0 (2015/07/24)
    (x86_64)
    Copyright (C) 2013 Super Micro Computer, Inc. All rights reserved.
    IPMI Feature flags Version.... 1.0
    BIOS Feature flags Version.... 1.0

    [Platform Identification]
    Platform.... Greenlow
    BMC Deivce Present.... Yes
    
    [Product Key Management]
    Support SFT-OOB-LIC.... Yes
    Support Software FRU.... Yes
    Support Feature toggle.... No

    [BIOS Management]
    Support OOB update BIOS.... Yes
    Support JPME2less function.... Yes
    Support OOB BIOS configuration functions.... Yes
    Support In-Band BIOS configuration.... Yes
    Support OOB DMI edit.... Yes
    Support In-Band DMI edit.... Yes
    Support OOB persistent DMI/BIOS configuration.... Yes
    Support In-Band persistent DMI/BIOS configuration.... Yes
 
    [BMC Management]
    Support Update BMC.... Yes
    Support BMC platform and verion information.... Yes
    Support BMC Configuration.... Yes
    Support VM parameters for ISO image.... No

    [System Check]
    Support Full SMBIOS information.... Yes
    Support VPD information.... Yes
    Support FRU1 data and synchronization.... Yes
    Support System information and utilization.... Yes
    Support Reading add-on network interface sensor data.... Yes
    Support Reading PCH SATA information.... No
    Support Reading Avago LSI SATA information.... No
    Support Setting Avago LSI SATA information.... No
    Support NVME information.... No
    Support JBOD information.... No

    [System Event Log]
    Support Intel RC event Log reading and clearing.... Yes

    [Application]
    Support TPM provision automation.... Yes
    Support ISO mount and unmount.... Yes

   Check List  : none
   Issue ID    : none; New BIOS(X11)/IPMI(X10/X11) will support feature flag
2. Added       : CheckAssetInfo command added "System Network Interface" and
                 "IPMI Network Interface" fields
   Description : SUM will add below message in CheckAssetInfo command output
                                System Network Interface
                                ====================================
                                     [LAN(1)] MAC Address: 00:25:90:59:D9:8A
                                     [LAN(2)] MAC Address: 00:25:90:59:D9:8B

                                IPMI Network Interface
                                ====================================
                                     MAC Address: 00:25:90:59:D9:9A
   Validation  : 1. Run CheckAssetInfo command for all SUM supported MB with FW
                 2. The LAN/IPMI MAC Address information will be shown
   Check List  : 302-OB in SUM CheckList rev 1.6
   Issue ID    : none; customer requested
3. Added       : UpdateBmc command added --overwrite_cfg option
   Description : For ATEN ASPEED FW, SUM can support --overwrite_cfg option for
                 UpdateBmc command. When option applied, BMC configuration will
                 be overwritten as factory default of new BMC FW.
   Validation  : 1. use --overwrite_cfg option for UpdateBmc command
                 2. For X9 FW, SUM will hiccup error message with exit code 7
                    Exit Code 7: Option Conflict
                 3. For X10/B1/B10/A1/MicroCMM FW, SUM will erase original
                    BMC configuration to default
   Check List  : 702-XX-XX in SUM CheckList rev 1.6
   Issue ID    : none; customer requested
4. Added       : Get/Edit/ChangeDmiInfo commands support dynamic DMI
   Description : 1. Check if required types are missing
                 2. Only support BIOS reported types
   Validation  : 1. GetDmiInfo to check if this SYCO is supported by BIOS
                 2. If supported, SUM can revise it by EditDmiInfo command
                 3. If supported, SUM can change it by ChangeDmiInfo command
                 4. If not supported, SUM will throw exception if user intend
                    to Edit/Change it from command line/text file
   Check List  : 60X-XX-XX in SUM CheckList rev 1.6
   Issue ID    : none; X11 BIOS will not support SYCO
5. Added       : Get/Edit/ChangeDmiInfo commands added support for Chassis
                 Location item in Base Board item type category if BIOS can
                 support it
   Description : This item was not supported by AMI BIOS. Now it can be
                 supported. SUM was revised to support this item now. When
                 BIOS support it, SUM can expose it to users.
   Validation  : 1. GetDmiInfo to check if this item is supported by BIOS
                 2. If supported, SUM can revise it by EditDmiInfo command
                 3. If supported, SUM can change it by ChangeDmiInfo command
                 4. If not supported, SUM will throw exception if user intend
                    to Edit/Change it from command line/text file
   Check List  : 60X-XX-XX in SUM CheckList rev 1.6
6. Added       : All licensed commands added Feature Toggled On checking
   Description : Customer can toggle on/off licensed commands by command
                 30 70 78 01/00 through inband kcs interface. SUM will check
                 if features are toggled on or off. If feature is toggled off,
                 SUM will hiccup error message with exit code 12.
                 Exit Code 12: Function access denied
   Validation  : Test according to SUM)FeaturesTogglingSpecification_V1.0
   Check List  : none
   Issue ID    : none; New IPMI(X10/X11) will support feature toggling
7. Added       : CheckOOBSupport added "Feature Toggled On" checking
   Description : Customer can toggle on/off licensed features as described in
                 validation notes item 4. SUM will show the toggled status in
                 the [Key] field. If feature not supported, SUM will show N/A
                 If toggled OFF, Product Key Activated item will show N/A
   Validation  : 1. Test for feature flag V1.1 non-supported FW, SUM will show
                    Feature Toggled On as N/A.
                 2. Test for feature flag V1.1 supported FW, SUM will show
                    a. Feature Toggled On as Yes/No when feature is toggled
                       ON/OFF
                    b. When feature is toggled OFF, Product Key Activated item
                       will show N/A
   Check List  : 301-XX in SUM CheckList rev 1.6
   Issue ID    : none; New IPMI(X10/X11) will support feature toggling
8. Added       : MountIsoImage command supports http image server
   Description : Originally only support samba and windows share server with
                 URL/UNC format. Now support http server with http:// format
   Validation  : MountIsoImage over http image server will work
                 HTTP format:
                     'http://<host name or IP>/<shared point>/<file path>'
                 Example:
                 ./sum -i 10.134.15.168 -u ADMIN -p ADMIN -c MountIsoImage
                 --image_url
                 'http://free.nchc.org.tw/linuxmint/isos/stable/17.1/linuxmint-17.1-cinnamon-32bit.iso'
   Check List  :  1003-OB, 1004-OB in SUM CheckList rev 1.6
   Issue ID    : none; Customer requested; New IPMI FW(X10/X11) will support it
9. Fixed       : Process locking issue
   Description : Originally, ps | grep is used for pid check
                 grep will not exact match pid causing pid conflict
                 Now use ps -p pid
   Validation  : Run new SMSTC with eco mode
   Check List  : XX-IB
   Issue ID    : 63931
10. Fixed      : In-band update BIOS hang for X9 platform
   Description : removed feature flag checking to avoid double enabling and
                 disabling paring issue
   Validation  : Run inband UpdateBios command on X9 MB
   Check List  : 402-IB
   Issue ID    : 63572
11. Fixed      : Memory DMI parsing for extended size
   Description : CheckAssetInfo command for memory size is reported as 0 when
                 memory size is larger than 32GB - 1MB
   Validation  : Install Memory DIM whose size is 32GB or larger
                 Run CheckAssetInfo command
   Check List  : 302-OB
   Issue ID    : 63874

V1.5.0 (2015/06/26)
========================
1. Added       : [1.5.0] added EditDmiInfo command
   Description : EditDmiInfo command can edit a local dmi file using
                 --item_type, --item_name to identify a DMI item
                 --shn short name can also be used to identify a item
                 use --value or --default to edit the value or load default
                 use --file to specify the file to be edited
                 Only edited items will be updated/added in the edited file
   Validation  : Use EditDmiInfo command to edit a file
                 Use ChangeDmiInfo command to change from the edited file
                 Use GetDmiInfo command to check the edited items are updated
   Check List  : SUM_Checklist_rev1.5a, 604-XX-XX
   Issue ID    : none
2. Added       : [1.5.0] added Chassis information for FRU table
   Description : For GetBmcCfg/ChangeBmcCfg commands, SUM allowes users to edit
                 Chassis information in FRU table.
   Validation  : GetBmcCfg to get bmccfg.xml
                 Chassis inforamtion is available in FRU table for update
                 Revise Chassis information
                 ChangeBmcCfg
                 GetBmcCfg, the revised chassis information is shown
   Check List  : SUM_Checklist_rev1.5a, 801-OB, 802-OB
   Issue ID    : none
3. Added       : In-Band UpdateBios enabled hidden option --manual_reboot
   Description : SSM team would like to have reboot control for In-Band
                 UpdateBios command under JPME2Less usage condition
                 SUM enabled this --manual_reboot option as provided for
                 TWITTER. We however does not make it exposed in help message
                 and UserGuide since its a special hidden option only for
                 our company internal usage
   Validation  :
                In normal case, when using this option for UpdateBios command, user can
                manually reboot system after UpdateBios success
                   In cases when BIOS ME FDT region is different, an exception with exit code
                   254 will be thrown. Users need to do Manual reboot twice according to
                   instruction in the error message:
                   REBOOT TWICE IS REQUIRED
                   FIRST REBOOT: required NOW. BIOS will go into manufacturing mode
                           after boot into OS, SUM will automatically start updating BIOS
                           update log will be continuously saved to
                           /var/log/supermicro/ (for Linux); #SUM_HOME/log/ (for Windows)
                           with file name sum_jumperless_update_YYYYMMDDhhmmss.log
                           the timestamp is the time when SUM starts updating BIOS
                           If the below message is shown in the log:
                           Must power cycle the system for the changes to take effect!
                           ,the BIOS update procedure is SUCCESS
                   SECOND REBOOT: required IMMEDIATELY after update SUCCESS at 
                           FIRST REBOOT  this will load BIOS back to normal mode
   Check List  : ./sum -c UpdateBios --file <BiosImageFile> --manual_reboot
   Issue ID    : none
4. Added       : [1.5.0] added log support when rare exceptions occur
   Description : SUM support logging for rare exceptions and log to sum.log
                 file in SUM_HOME directory
                 SUM uses pantheior library to do the logging.
   Validation  : none
   Check List  : none
   Issue ID    : none
5. Fixed       : [1.5.0] For Old FW, Getting BIOS files will fail.
   Description : Downloading BIOS files remainder size exceeds data size
                 Old FW will not work around for this error and give wrong data
                 SUM fix this by issuing correct remainder size
   Validation  : none
   Check List  : SUM_Checklist_rev1.5a, 502-IB
   Issue ID    : none
6. Fixed       : [1.5.0] After updating BMC certification, ChangeBmcCfg command
                 will fail
   Description : Need a session reload after BMC reboot.
   Validation  : GetBmcCfg to get bmccfg.xml
                 Update BMC certification in bmccfg.xml
                 run ChangeBmcCfg with the revised bmccfg.xml
   Check List  : SUM_Checklist_rev1.5b, 801-OB, 802-OB
   Issue ID    : none
7. Fixed       : [1.5.0] FRU information removed 32 byte length limitation
   Description : SUM checks total FRU inforamtion after parsing xml file.
                 Throw exception only if total data size exceeds fru size 256
   Validation  : GetBmcCfg to get bmccfg.xml
                 Update BMC FRU table to exceeds 32 bytes for a given field
                 ChangeBmcCfg will work
                 Add more data to fields, eventually, sum will throw exception
                 by indicating that FRU information exceeds SW FRU size before
                 updating the bmccfg.xml.
   Check List  : SUM_Checklist_rev1.5b, 801-OB, 802-OB
   Issue ID    : none
8. Fixed       : [1.5.0] Connection retry issue
   Description : SUM only retry UDP connection but not in RMCP level this will
                 cause connection timeout.
                 Fixed by adding RMCP+ level retry by catching UDP error and
                 then increasing RMCP+ sequence number for a RMCP+ retry
                 Retry parameters: UDP retry 2 times each time for 7 seconds
                 RMCP retry for 5 times
   Validation  : Unplug IPMI network cable
                 Run SUM OOB command
                 Plug back IPMI network cable
                 Network connection should be recovered
   Check List  : SUM_Checklist_rev1.5b, 302-OB
   Issue ID    : 62076
9. Fixed       : [1.5.0] User Guide added parenthesis for syntax in added
                 in-band commands
   Description : As in-band is supported for more commands in 1.5.0, user guide
                 should add parenthesis for usage syntax of -i -u -p options to
                 indicate it's optional
   Validation  : Check User Guide in the released package for added in-band
                 commands
   Check List  : none
   Issue ID    : 62575
10. Fixed       : [1.5.0] Clear/ActivateProductKey command output when key does
                 not exist or already exists
   Description : When key already exists, activate same key will be success but
                 has special message to indicate key already exists
                 When key does not exist, clear that product key will be
                 success but have special message to indicate key does not
                 exist
   Validation  : Clear product key in the managed system
                 Clear the same product key again
                 Activate product key in the managed system
                 Activate the same product key again
   Check List  : SUM_Checklist_rev1.5b: 201-OB, 203-OB
   Issue ID    : 62578
11. Fixed      : [1.5.0] B9 Hermon/Ranier FW CheckProductKey will failed
   Description : B9 FW does not support SW FRU node product key but command
                 30 68 14/ 30 68 15 (checking SW FRU node product key)
                 returned 0x00 completion code
                 SUM will check target FW GUID instead of using 30 68 14
                 checking for B9 FW
   Validation  : Execute GetDefaultBiosCfgTextFile command on B9DRT/X9DRD
                 /X10SRL. The results will pass.
   Check List  : SUM_Checklist_rev1.5b: 502-OB
   Issue ID    : none, self discovered

V1.4.1 (2015/06/16)
========================
1. Added       : Added usage notes to reference SUM User's Guide
   Description : GetBmcCfg, GetDefaultBiosCfgTextFile,
                 GetCurrentBiosCfgTextFile, and GetDmiInfo command output files
                 added message to reference usage sections in SUM User's Guide.
   Validation  : Execute commands and check output files
   Check List  : SUM_Checklist_rev1.5a, 801-OB, 802-OB
   Issue ID    : none, enhance for usage
2. Fixed       : CPU type identification for in-band updatebios
   Description : Byte operation logic order is undefined when judging CPU
                 ID. Result could be un-expected, e.g. for X10DRW-i with
                 Broadway CPU. Fixed this by adding parenthesis.
   Validation  : In-band UpdateBios for X9 Romley, X10 Denlow, X10 Grantley
                 X10 GrangeVille
   Check List  : SUM_Checklist_rev1.4d, 801-OB, 802-OB
   Issue ID    : none
3. Fixed       : TpmProvision for non-TXT BIOS will fail
   Description : Some BIOS support TPM but not TXT. In this situation SUM
                 reported fail to enable TXT. In this version, we fix it by
                 skipping TXT enabling when BIOS does not present this item.
   Validation  : Run TpmProvision command  will success on X10SRA-F with
                 5.521 BIOS
   Check List  : 1001-OB, 1002-OB
   Issue ID    : 62204
4. Fixed       : CheckSystemUtilization does not work correctly for RHEL7.1
   Description : For OS name and Memory utilization, TAS fixed its reporting
                 message.
   Validation  : Install new TAS 20150605 on RHEL 7.1
                 Run SUM CheckSystemUtilization command
   Check List  : SUM_Checklist_rev1.4d, 303-OB
   Issue ID    : 61786, 61787


V1.4.1 (2015/05/20)
========================
1. Added       : Support JPME2-less solution for BroadWell CPU on Grantley
                 platform and D1500 CPU on GranteVille platform
   Description : Added new criteria for JPME2-less solution support check
   Validation  : 1. Get a X10SDV MB
                 2. In-band Update BIOS between X10SDV5.313, X10SDV5.515
                 3. Get a X10 Grantley MB
                 4. In-band Update BIOS between two BIOS that have different
                    FDT
   Check List  : SUM_Checklist_rev1.5a, 402-IB
   Issue ID    : none
2. Added       : Appendix D Third-Party Software
   Description : Customers might have concerns about EULA (End User License
                 Agreement). At current stage, we added an Appendix to
                 eliminate such a concern. Ultimately, PM will work out a
                 formal EULA standard work.
   Validation  : User Guide section Appendix D Third-Party Software is added
   Check List  : none
   Issue ID    : none, customer requested/PM suggested

V1.5.0 (2015/05/13)
========================
1. Changed     : Remove java requirement for all commands except OOB UpdateBios
                 and UpdateBmc commands
   Description :
                 1. Use C++ RMCP lib revised from Ty Lee's C++ library to do
                    IPMI command communication instead of using SMCIPMITool.jar
                    and SMCIPMIToold.jar
                 2. Implemented C++ library for actool java counter part. No
                    dependency on JAVA for actool function: SW FRU license
                    check
                 3. Only the UpdateBios and UpdateBmc command still dependes on
                    java
   Validation  : 1. There is no actool folder in SUM_HOME
                 2. Without SMCIPMITool.jar, sum can still work for all OOB
                    commands except UpdateBios and UpdateBmc commands
                 3. Without SMCIPMIToold.jar, sum can still work for all
                    multiple system usage of OOB commands except UpdateBios and
                    UpdateBmc commands
   Check List  : SUM_Checklist_rev1.5a, XXX-OB, XXX-OB-MM
   Issue ID    : none
2. Changed     : Remove tool dependency of lUpdate for UpdateBmc command
   Description : Originally, in-band BMC update required tools/bmc/lUpdate
                 executable for X9 ATEN BMC Update. Now remove this dependency
   Validation  : There is no tool folder in SUM_HOME
                 UpdateBmc command can work for X9 ATEN BMC FW
   Check List  : SUM_Checklist_rev1.5a, 701-IB
   Issue ID    : none
3. Added       : ActivateProductKey command added support for SW FRU
                 node product keys
   Description : Originally, ActivateProductKey command only supports
                 SFT-OOB-LIC node product key. Now it supports 344 bytes ASCII
                 string formatted SW FRU  node product keys, including SFT-DCMS-LIC,
                 SFT-SUM-LIC, SFT-SSM-LIC, SFT-SD5-LIC, SFT-SCM-LIC,
                 SFT-SPM-LIC and SFT-DCMS-Single
   Validation  : There is no actool folder in SUM_HOME
                 ActivateProdcutKey command can work for SW FRU  node product keys
                 using both OOB and in-band modes.
   Check List  : SUM_Checklist_rev1.5a, 201-OB, 201-IB
   Issue ID    : none
4. Added       : QueryProductKey command
   Description : 1. QueryProductKey command can work to query the node product
                    keys activated on the managed system.
                 2. The output format will contain the following information.
                    Each line is a node product key activated in the managed
                    system. In each line, the first field is the key index
                    while the second field is the key name. Except OOB key, all
                    key have extra fields describing detailed attributes.
                 3. Example output:
                 [0] OOB
                 [1] DCMS, version: none, invoice: none, creation date: 2014/03/10 09:51:38(Key is good.)
                 [2] SUM, version: none, invoice: none, creation date: 2014/09/10 09:51:38(Key is expired.)
                     Number of product keys: 2
   Validation  : 1. There is no actool folder in SUM_HOME
                 2. QueryProdcutKey command can work for both OOB and SW FRU
                    keys using both OOB and in-band modes.
   Check List  : SUM_Checklist_rev1.5a, 202-XX-XX
   Issue ID    : none
5. Added       : ClearProductKey command
   Description : 1. ClearProductKey command can work to clear the node product keys
                    activated on the managed system.
                 2. Either --key_name or --key_index option is required
                 3. The activated key name or key index values can be found in
                    the output of QueryProductKey command output
   Validation  : 1. There is no actool folder in SUM_HOME
                 2. Activate node product keys in the managed system
                 3. QueryProductKey
                 4. ClearProductKey by key name or key index
   Check List  : SUM_Checklist_rev1.5a, 203-XX-XX, 204-XX-XX
   Issue ID    : none
6. Fixed       : OOB UpdateBios command does not work for X9DRTH5.116 BIOS
   Description : The $FID signature is close to 8k boundary. SMCIPMITool does
                 not recognize it. Revised SMCIPMITool to load extra 8k block
                 when this condition is matched.
   Validation  : OOB UpdateBios for X9DRTH5.116 BIOS
   Check List  : SUM_Checklist_rev1.5a, 402-OB
   Issue ID    : 61428

V1.4.1 (2015/05/07)
========================
1. Fixed       : Sometimes SMCIPMITool will throw exception when checking SW
                 product key
   Description : When IPMI FW is first initialized for SW FRU, the default
                 value would be 0x00 instead of 0xFF. SMCIPMITool did not
                 skip 0x00 value and thus causing check license failed.
                 New SMCIPMITool fix this issue by skipping 0x00 SW FRU0 value
   Validation  : Program BMC using SPI tools
                 Activate DCMS license for this BMC
                 Use SUM OOB GetDmiInfo command, the result will pass.
   Check List  : 601-OB
   Issue ID    : none customer reported

V1.4.1 (2015/04/15) (Engineering Version)
========================
1. Fixed       : Sometimes -l option will fail when GetDmiInfo without using
                 --overwrite option
   Description : SSM team reported stress test for this situation will
                 cause segemntation fault
   Validation  : run stress test for the situation, there will be no error
   Check List  : 601-OB-MM without --overwrite
   Issue ID    : none, SSM team reported
2. Fixed       : GetBmcCfg command can support 32 characters for
                 /BmcCfg/StdCfg/Fru/ string items
   Description : Company data has 21/24 length for some fields
                 Extend lenght to 32 as work around
   Validation  : Program FRU data with 32 characters for some fields
                 Run GetBmcCfg/ChangeBmcCfg command will work
   Check List  : 801-OB/802-OB
   Issue ID    : none, customer reported

V1.4.1 (2015/04/01)
========================
1. Changed     : superbmc.sys driver use new version control method
   Description : replace original method with standard driver version control
                 method. Version is 2.0.0.0
   Validation  : a. In Windows, check file information of superbmc.sys
                    Version 2.0.0.0 can be shown.
                 b. SUM in-band commands can run normally in Windows
   Check List  : 502-OB
   Issue ID    : none. Co-work with SSM team, SSM team requested.
2. Fixed       : Memory Manufacturing date is changed to use AssetTag field
   Description : Per customer request, manufacturer field should not be changed
                 BIOS will use AssetTag field for manufacutring date.
                 SUM will do backward compatibility as well. UI has no change.
   Validation  : CheckAssetInfo output will not be changed for new BIOS
   Check List  : 302-OB
   Issue ID    : none. Customer requested
3. Fixed       : TPM provision will failed when TPM state is disabled
   Description : SUM added Enable TPM state in procedure before
                 clearing TPM step to remedy this situation
   Validation  : TPM provision will work
   Check List  : 1001-OB
   Issue ID    : 60660
4. Fixed       : Sometimes in-band UpdateBios will fail in Windows
   Description : Sometimes failed at compare FDT. Change load pmdll procedure
                 to fix this issue. Load superbmc.sys in pmdll
   Validation  : Run in-band UpdateBios in Windows
   Check List  : 402-IB
   Issue ID    : none, self discovered
5. Fixed       : For Windows, Get/ChangeBmcCfg will failed at FRU MfgDate
   Description : Fixed FRU MfgDate parsing error in Windows
   Validation  : Adjust timezone/MfgDate field
                 Use GetBmcCfg/ChangeBmcCfg command in Windows
   Check List  : 801-OB, 802-OB
   Issue ID    : None, SSM team reported

V1.5.0 (2015/03/20)
========================
1. Added       : Support in-band usage for more commands
   Description : Per customer request, SUM 1.5.0 added more in-band usage
                 support for commands:
                 a. System Check: CheckOOBSupport
                 b. BMC Management: GetBmcInfo/UpdateBmc/GetBmcCfg/ChangeBmcCfg
                    In-band BMC update only support X9/X10 ATEN BMC FW Update
                    In-band BMC update required tools/bmc/lUpdate
                    executable for X9 ATEN BMC Update
                 c. EventLog Management: GetEventLog/ClearEventLog
   Validation  : In-band usage for these commands should work in both Linux and Windows
   Check List  : SUM_Checklist_rev1.5.xlsx: CLI 301-IB/306-IB/701-IB/801-IB/802-IB/901-IB/902-IB
   Issue ID    : none. Customer requested

2. Changed     : Updated superbmc.sys/superdll_ssm64.dll/pmdll64.dll
   Description : (same as validation item 1 in V1.4.1 (2015/03/20)) Provide
                 Validation steps here
   Validation  : a. Use GetBmcCfg command to get BmcCfg.xml file
                 b. Generate ssl certification file and private key file
                 c. Specify ssl certification public and private key in
                    BmcCfg.xml with xml path
                    OemCfg/Certification/Configuration/CertFile and PrivKeyFile
                 d. Use ChangeBmcCfg command with revised BmcCfg.xml file
                 SUM should work
   Check List  : 801-IB/802-IB
   Issue ID    : none. Customer requested

V1.4.1 (2015/03/20)
========================
1. Changed     : Updated superbmc.sys/superdll_ssm64.dll/pmdll64.dll
   Description : 1. pmdll64.dll open setBMCTimeout API for SUM usage
                   SUM need to check BMC response when doing ChangeBmcCfg
                   in-band command
                   Windows superdll_ssm64.dll open such interface for SUM usage
                 2. superbmc.sys support faster KCS access
                 3. Version control for superbmc.sys versioned as 1.0
                    pmdll64.dll/superdll_ssm64.dll/superbmc.sys added version
                    and capability control API
                    SUM use this API to control supermbc.sys version
   Validation  : Refer to validation item 2 for V 1.5.0 (2015/03/20)
   Check List  : 801-IB/802-IB
   Issue ID    : none. Customer requested
2. Fixed       : ChangeBmcCfg command for FRU string fields does not accept 17
                 characters
   Description : Customer has case that use 17 characters as Board Product Part
                 SUM will extend to support 20 characters.
   Validation  : a. Use GetBmcCfg command to get BmcCfg.xml file
                 b. Use 20 characters in string field for StdCfg/Fru/Configuration/
                 c. Use ChangeBmcCfg command with the revised BmcCfg.xml file
                 SUM should work
   Check List  : 801-XX/802-XX
   Issue ID    : none. Customer requested
3. Fixed       : GetBmcCfg command will fail for B10DRG-IBF
   Description : a. Fixed SUM does not parse lan support flag correctly
                 b. BMC FW does not response command 30 70 0C 02 correctly
   Validation  : a. Use GetBmcCfg command to get BmcCfg.xml file
                 b. Use 20 characters in string field for StdCfg/Fru/Configuration/
                 c. Use ChangeBmcCfg command with the revised BmcCfg.xml file
                 SUM should work
   Check List  : 801-XX/802-XX
   Issue ID    : none. Customer requested
4. Fixed       : In-Band check license will fail for software FRU
   Description : SUM does not judge license response correctly. Fixed it.
   Validation  : a. Deactivate all product key in BMC
                 b. Activate SW DCMS key in BMC
                 c. Use in-band GetDefaultBiosCfgTextFile command
                 SUM should work
   Check List  : 502-IB
   Issue ID    : 60332
5. Fixed       : OOB license check will have Exception: 0 error
   Description : SMCIPMITool does not pack latest actoolp.jar
                 Update SMCIPMItool with latest actoolp.jar
                 SMCIPMITool version: V2.14.0(Build 150318)
   Validation  : a. Activate DCMS-Single license
                 b. Run GetDefaultBiosCfgTextFile command
   Check List  : 501-OB
   Issue ID    : 60372, 60373, 60374, 60375
6. Fixed       : Windows PE3 does not detect Administrator level correctly
   Description : SUM throw exception even when user is Administrator
                 Windows PE3 should have Shell32.lib included
                 a. Use WINAPI IsUserAnAdmin() to implement
                    CUtil::isHavingAdministratorPrivilege()
                 b. Link executable with Shell32.lib to get WINAPI
                    IsUserAnAdmin()
   Validation  : a. Login PE3 as Administrator
                 b. Run GetDefaultBiosCfgTextFile command
   Check List  : 501-OB
   Issue ID    : none; Customer reported

V1.4.1 (2015/03/06)
========================
1. Changed     : SUM windows version compiled with pure 64 bits compiler
   Description : a. SUM windows x86_64 package originally compiled using 32 bit
                    compiler. To support pure 64 bit environemtn for Windows
                    PE3, SUM windows x86_64 program/dll/drivers is pure 64 bit
                    software
                 b. SUM windows can be run on pure 64 bit PE3 Windows. It will
                    not run on 32 bit environment.
                 c. DLL changed: pmdll32.dll => pmdll64.dll;
                    superdll_ssm32.dll => superdll_ssm64.dll
                 d. For PE3 OS, java cannot be installed at run-time. Users
                    need to build PE3 OS with JDK 1.6.0 or later.
   Validation  : Running SUM commands on pure 64 bit Windows environment, e.g.
                 Windows PE3, there should be no problem.
                 Running SUM commands on 32 bit Windows environment will fail.
   Check List  : *-OB, *-IB, *-MM
   Issue ID    : none. Customer requested
2. Added       : SUM_INTERNAL support 32bit Windows Server 2003 sp2 or later.
   Description : BIOS team build server is 32 bit Windows Server 2003 R2.
                 SUM_INTERNAL used new APIs that only supported since 2008.
                 To support BIOS team, we build special versioned SUM_INTERNAL
                 that use old library.
   Validation  : Run SUM_INTERNAL commands in 32bit Windows Server 2003
   Check List  : none
   Issue ID    : none; BIOS team reported
3. Fixed       : BIOS board ID check for non-F MB
   Description : For non-F MB, recently build BIOS will hang when receiving
                 0xE6 command with sub-command 0x01. SUM will skip this command
                 and use scanning rom method instead to bypass this issue.
   Validation  : With C7Z97OC3 latest BIOS, run sum in-band UpdateBios command
                 Result should be passed.
   Check List  : 402-IB
   Issue ID    : 60176
4. Fixed       : UpdateBmc for files with space character
   Description : UpdateBmc command does not work for image file path that
                 contains white space character. Fixed this issue.
   Validation  : With BMC image rom file stored in folders that contains white
                 space character, run sum OOB UpdateBmc command.
   Check List  : 701-OB
   Issue ID    : SSM team reported
5. Fixed       : root privilege check for in-band commands
   Description : In-band SUM commands requires root/Administrator privilege
                 Will show error message if user is lack of privilege.
   Validation  : Use non-root/Administrator privilege accounts to execute SUM
                 in-band commands. SUM will show error message.
   Check List  : 305-IB, 501-IB
   Issue ID    : none
6. Fixed       : Actool special handling for SWID data when clearing/querying
   Description : Some FW does not initialize SW FRU data as 0xFF correctly.
                 This will cause actool clear/query issue. Actool does special
                 handling for those FW.
                 1. Clear Key: reset specified SW FRU no matter what SWID is
                    0xff or not.
                 2. Query Key: Skip checking product key when SWID equals 0 in
                    product key list Ac(SW FRU[0]) to improve query
                    performance (SWID 0 is reserved.)
                 3. SMCIPMITool also updated actoolp.jar library
                 4. SUM updated actool and SMCIPMITool
   Validation  : Populate SW FRU ID list with 0x00 content. Run actool query
                 and clear command to check logic and performance
   Check List  : 501-OB
   Issue ID    : none. Customer reported
7. Fixed       : GetEventLog command does not show correctly for OEM events
                 with sensor type C6~C8
   Description : SMCIPMITool added support for those sensor type. SUM updated
                 SMCIPMITool for this support.
   Validation  : AC power-on MB will generate C8 event log. Use SUM GetEventLog
                 command to check if event can be parsed and shown correctly.
   Check List  : 901-OB
   Issue ID    : none. Self-discovered


V1.4.1 (2015/02/11)
========================
1. Changed     : Pack new tool sets to fix issues
   Description : a. TAS: V1.0.1 2015/02/05
                 b. actool: 2015/02/10
                 c. SMCIPMITool: 2015/02/10
   Validation  : check if tools are updated or added
   Check List  : none
   Issue ID    : none
2. Fixed       : [ SUM 1.4.1 ] Inband change BIOS config fail.
   Description : Added protection for checking boot device in such situation
                 The BIOS configuration bin file content has lots of invalid
                 data which is same as that in NVM designed in DAT file. In
                 such situation, SUM access wrong memory when checking BOOT
                 device.
   Validation  : With x10sll5.116 BIOS on X10SLL-F MB
                 1. run in-band/OOB GetCurrentBiosCfgTextFile to current.txt
                 2. run in-band/OOB ChangeBiosCfg command with current.txt
   Check List  : 501-OB, 503-OB
   Issue ID    : 59697
3. Fixed       : CheckSystemUtilization exception at HDD partition
   Description : When HDD partition name is too long, TAS will not report
                 correctly causing SUM parsing failure. New TAS revision added
                 lenght to 256 for this protection.
   Validation  : With the HDD configuration as in issue 59447
                 1. Install new TAS
                 2. run CheckSystemUtilization command
                 3. HDD information should be shown correctly
   Check List  : 303-OB
   Issue ID    : 59447
4. Fixed       : CheckSystemUtilization version is N/A for CBURN RHEL 6.6
   Description : CBURN RHEL 6.6 removed lsb_release command. TAS will be
                 terminated in this situation.
                 New TAS changed optimization level as none to protect this
                 situation. Also, new TAS cover this situation to show correct
                 OS version
   Validation  : With the CBURN configuration as in issue 59814
                 1. Install new TAS
                 2. run CheckSystemUtilization command
                 3. OS information should be shown correctly
   Check List  : 303-OB
   Issue ID    : 59814
5. Fixed       : In-Band Update BIOS does not preserve SMBIOS for X10QBL
   Description : Added jumperless solution for this MB with Board ID 0853
   Validation  : 1. Program X10QBL with latest BIOS and afudos 5.x
                 2. Run SUM in-band GetDmiInfo command to get dmi.txt file
                 3. Revise dmi.txt file and use SUM in-band ChangeDmiInfo
                    command and reboot system to change dmi.
                 4. Run SUM in-band GetDmiInfo command to check if dmi is
                    updated
                 5. Run SUM in-band update BIOS command and reboot to update
                    BIOS and preserve SMBIOS
                 6. Run SUM in-band GetDmiInfo command to get dmi and check if
                    content is preserved
   Check List  : 601-IB, 602-IB, 402-IB
   Issue ID    : 59408
6. Fixed       : Multiple system usage for GetCurrentBiosCfgTextFile command
                 sometimes throw exception:
                 1. Exception:Format version do not match! 0x00 != 0x57
                 2. Exception:Given final block not properly padded
   Description : SUM multiple system usage use multiple thread client to run
                 tasks through SMCIPMIToold server. SMCIPMIToold server
                 integrate actoolp.jar for SW FRU license check. When more than
                 two system is managed, these two kinds of exception message
                 sometimes will happen. Actool fixed thread safe issue for this
                 usage case. SMCIPMITool updated for this fix.
   Validation  : 1. Run SUM GetCurrentBiosCfgTextFile command with -l option
                    to manage at least 2 systems.
                 2. Repeat 1 for at least 10 times consecutively
                 3. There should be no exception thrown.
   Check List  : 501-OB-MM
   Issue ID    : 59757
7. Fixed       : SUM command does not work on X9 AMI FW
   Description : actool will throw incorrect exception for X9 AMI FW SWFRU
                 support check. This will cause SMCIPMITool failed to execute.
                 New Actool throw right exception to fix this issue.
                 New SMCIPMITool updated actoolp library.
   Validation  : 1. Run SUM GetCurrentBiosCfgTextFile on X9 AMI FW
                 2. There should be no exception thrown.
   Check List  : 501-OB
   Issue ID    : none
8. Fixed       : Two users run SUM in-band BIOS management command at the same
                 time will cause SUM behavior un-predictible
   Description : New SUM will add mutex and try lock protection to serialize
                 in-band BIOS management commands. Waiting timeout
                 is 30 seconds.
   Validation  : 1. Prepare two consoles. In one console run in-band SUM
                    GetBiosInfo command. In the other console, run in-band
                    GetCurrentBiosCfgTextFile command. The first one will be
                    successfully finished. The later one will wait for first
                    one and then be finished successfully.
                 2. Prepare two consoles. In one console run in-band SUM
                    UpdateBios command. In the other console, run in-band
                    GetCurrentBiosCfgTextFile command. The first one will be
                    successfully finished. The later one will wait for 30
                    seconds and then throw exception with exit code 107.
   Check List  : 305-IB, 402-IB, 501-IB, 601-IB
   Issue ID    : none, customer reported operation error.
9. Fixed       : Get/ChangeBmcCfg command: /OEM/LAN/LanMode support check is
                 missing for SKUs without dedicated lan.
   Description : 1. New OEM sub-command is defined for LanMode support flags
                 input: 0x30 0x70 0x0C 0x02
                 response:
                   completion code: 0x00
                              data: Bit 0: dedicated,
                                    Bit 1: shared,
                                    Bit 2: bonding
                   completion code: 0xCC
                              data: treated as 0x07
                 2. SUM added this to determine which lan mode is supported
                    in the /OEM/LAN/LanMode item
   Validation  : 1. Prepare a MB with IPMI but without dedicated LAN, e.g.,
                    X10DRS
                 2. Use SUM GetBmcCfg command to get bmccfg.xml file
                 3. The dedicated mode is not listed in /OEM/LAN/LanMode item
   Check List  : 801-OB, 802-OB
   Issue ID    : 59445
10. Fixed      : SUM does not execute when program path contains spaces
   Description : SUM cannot detect this and thus cannot find external used
                 files or tools. Fixed the issue in this release.
   Validation  : 1. run sum with absolute path which contains spaces
                 2. Run sum CheckOOBSupport command
                 3. Run sum in-band UpdateBios command
                 4. There should be no error
   Check List  : 301-OB, 402-IB
   Issue ID    : none. SSM team Jack/Jesse reported


V1.4.1 (2015/01/28)
========================
1. Changed     : Pack new tool sets to fix issues
   Description : 1. actool.sh
                 2. windows driver:
                    a. update pmdll32.dll
                    b. added superdll_ssm32.dll
                    c. added superbmc.sys
                 c. TAS: V1.0.1 2015/01/28
   Validation  : check if tools are updated or added
   Check List  : none
   Issue ID    : none
2. Fixed       : SUM cannot detect JAVA version for openjdk 1.8
   Description : For openjdk version 1.8, the output format is different
                 Command "java -version" has returned this:
                 openjdk version "1.8.0_25"
                 SUM will parse this output string and detect version correctly
   Validation  : Use openjdk 1.8 and run SUM OOB command
   Check List  : 301-OB
   Issue ID    : none, customer reported
3. Fixed       : SUM cannot ChangeBmcCfg for bmccfg.xml generated from
                 GetBmcCfg command
   Description : In default, IPControlRule number 0 is used to demonstrate
                 the usage of IPControlRule. SUM will skip rule 0 and added
                 comment to explain this situation.
   Validation  : 1. Use OEM raw command 0x30 0x41 to load default BMC config
                 2. Use SUM GetBmcCfg command to get bmccfg.xml
                 3. Use SUM ChangeBmcCfg command with bmccfg.xml
                 4. There should be no error message
   Check List  : 801-OB, 802-OB
4. Fixed       : SUM does not parse DAT file correctly
   Description : If there are non-designed FORMs in the text file, SUM should
                 skip those forms; otherwise, parsing will be incorrect
                 SUM will fix this issue by skipping those forms.
                 sum_internal will filter out those forms. BIOS can use this
                 new internal tool to build DAT file correctly.
   Validation  : With X10SLE4.C11 BIOS on X10SLE=F R1.01 MB
                 1. SUM command GetCurrentBiosCfgTextFile to get current.txt
                 2. revise network stack option in current.txt
                 3. SUM command ChangeBiosCfg with current.txt and --reboot
                 4. After reboot, use SUM command GetCurrentBiosCfgTextFile
                 5. The configuration for Network Stack is as expected.
   Check List  : 501-OB, 503-OB
   Issue ID    : 59311
5. Fixed       : actool.sh does not accept key file with relative path name
   Description : Added warning message if actool.sh is used in this situation
                 Please use absolute path and file name for -l or --listfile
                 option value if you do not run actool.sh in the same directory
                 as actoolp.jars
   Validation  : 1. run actool.sh from different directory and use relative
                    path name for key file
                    ./actool/actool.sh -l key.txt -c Activate
                 2. There should be warning message and actool.sh will exit
   Check List  : none
   Issue ID    : 59245
6. Fixed       : [SUM 1.4.1 for windows] Random-Inband changebioscfg will fail
   Description : Added protection for return length from windows driver
                 Use superbmc.dll and superbmc.sys driver to prevent bus
                 conflict between software: SD5, SUM, TAS
   Validation  : 1. In windows environment, install latest SD5 and TAS
                 2. Stress run sum command: GetCurrentBiosCfgTextFile
                 3. reboot system
                 4. Stress run sum command: GetCurrentBiosCfgTextFile
   Check List  : 501-IB
   Issue ID    : 59241, 59242
7. Fixed       : [ SUM 1.4.1 for windows ] Inband Changebios fail
   Description : Added protection for driver unloading. phymem.sys
                 is used for SUM and TAS. SUM will stop TAS and unload old
                 versioned phymem.sys when detected. There is a resource
                 unloading issue in this process. SUM fix this in this revision
   Validation  : 1. In windows environment, install TAS version:  TAS 1.0.1 
                    20141210
                 2. reboot system
                 3. run SUM command: GetCurrentBiosCfgTextFile
                 4. In windows environment, install latest TAS version
                 5. repeat step 2 and 3
                 6. There should be no error
   Check List  : 501-IB
   Issue ID    : 59132

V1.4.1 (2015/01/09)
========================
1. Fixed       : GetDefaultBiosCfgTextFile will not parse DAT successfully
   Description : CPortability::safeGetLine does not clear input line before
                 getline. Fixed in this revision
   Validation  : Use command GetDefaultBiosCfgTextFile to check this issue
   Check List  : 501-OB, 502-OB
   Issue ID    : 58674
2. Fixed       : Actool cannot be used from different path
   Description : Execute actool.sh or actool.bat from different path will
                 fail. Now they can be executed from different path.
                 Package new actool into sum
   Validation  : Execute actool.sh or actool.bat from different path
   Check List  : none
   Issue ID    : 58559
3. Fixed       : Actool has no message when key file is empty
   Description : Use actool.sh or actoo.bat to activate product key.
                 Will show There is no product key in list file!
   Validation  : Execute actool.sh or actool.bat to activate product key
                 for empty list file. Error message will be shown.
   Check List  : none
   Issue ID    : 58560
4. Fixed       : Actool has error message when executed from diffrent path
   Description : Use actool.sh or actoo.bat to query product key. Error message
                 appears:
                 log4j:ERROR Attempted to append to closed appender named
                 [LOGFILE].
                 New actool fix this issue
   Validation  : Execute actool.sh or actool.bat to query product key from
                 different path. Error message dissappeared
   Check List  : none
   Issue ID    : 58872
5. Fixed            : TAS / SD5 driver conflicts
   Description : if windows driver doesn't support SMI, TAS / SD5 would stop
                 then restart, update TAS driver
   Validation  : install both TAS / SD5 in windows , then using SUM with inband
                 command, TAS build date 2015/01/09
   Check List  : 305-IB
   Issue ID    : 58835
6. Changed     : Use new actool
   Description : new actool build at 201412XX fixed issue 58559 and 58560,
                 and 58872
   Validation  : none
   Check List  : none
   Issue ID    : none
7. Changed     : modified XML configuration comments for
                 /BmcCfg/OemCfg/IPControl table
   Description : modified XML configuration comments for
                 /BmcCfg/OemCfg/IPControl table, and set the rule number to
                 0 if the table is empty
   Validation  : use GetBmcCfg command, check the xml content
   Check List  : 801-OB, 802-OB
   Issue ID    : 58346, 58709

V1.4.1 (2014/12/12)
========================
1. Changed     : GetBmcCfg/ChangeBmcCfg command bmccfg.xml file original oem
                 config for NTP changed to DateTime. NTPEnabling changed to
                 TimeUpdateMode. Supported modes: local/NTP/CMM
   Description : CMM systems support blades to update time from CMM. Original
                 BMC configuration xml file design only for NTP enable/disable
                 Now we need to support CMM update mode. So, we changed NTP
                 configuration to DateTime and original item NTPEnabling
                 changed to UpdateTimeMode. Also added datetime information
                 item in this xml table for reference.
   Validation  : Use command GetBmcCfg/ChangeBmcCfg for CMM clock supported
                 MB, TimeUpdateMode with CMM option should be available
   Check List  : 801-OB, 802-OB
   Issue ID    : 57979
2. Changed     : Use SMCIPMITool V2.13.0(Build 141210)
   Description : SMCIPMITool to support preserve configuration update for
                 flashw command
   Validation  : execute java -jar SMCIPMITool.jar to check version and build
                 date
   Check List  : none
   Issue ID    : 58259
3. Changed     : Use TAS 1.0.1 20141210
   Description : TAS to support SLES patch version information
   Validation  : Check TAS package build date in the SUM package
   Check List  : none
   Issue ID    : 58840
4. Added       : GetBmcCfg/ChangeBmcCfg command bmccfg.xml file FanMode config
                 in DeviceControl config added support for SmartCooling mode
   Description : Some MB support SmartCooling fan mode. SUM added this fan mode
                 support if MB support it.
   Validation  : For SmartCooling supported MB/CPU, use SUM GetBmcCfg and
                 ChangeBmcCfg command. The bmccfg.xml file can support this
                 fanmode option.
   Check List  : 801-OB, 802-OB
   Issue ID    : 58346
5. Added       : GetBmcInfo/UpdateBmc commands support B9_AMI_Hermon FW
   Description : B9_AMI has two branches: Rainer and hermon. Previously, SUM
                 only support Rainer. Now SUM added support for Hermon.
                 Supported MB: B9DRT, B9DRG, B9DRG-E, B9QR7, B9DRG-3M, B9DRG-X
                 New SMCIPMITool.jar required
                 To support preserve config, new IPMI FW is required (2.52)
   Validation  : Use GetBmcInfo and UpdateBmc commands for one of the listed MB
                 Information and functions should work correctly.
   Check List  : 701-OB
   Issue ID    : 58259
6. Fixed       : CheckSystemUtilization does not support SLES OS patch
   Description : SLES 11 and SLES 11 patch 3 are not distiguished in OS version
                 field from the output message of CheckSystemUtilization cmd.
                 New TAS agent can report this information and SUM can thus
                 show it correctly.
   Validation  : Install new TAS agent on managed SUT.
                 Run CheckSystemUtilization command to check the patch version
   Check List  : 303-OB
   Issue ID    : 58840
7. Fixed       : sum.exe -h > output.txt will fail
   Description : console width error when output is redirected. added
                 protection in such case
   Validation  : execute "sum.exe -h > output.txt" in windows, SUM will run
                 normally.
   Check List  : 102
   Issue ID    : 58468
8. Fixed       : CheckAssetInfo command core dump when FullSmbios is missing
                 but VPD exists
   Description : In some MB, FullSmbios file is not available while vpd file is
                 available. In this situation, SUM will core dump. SUM added
                 protection in such error situation.
   Validation  : Use CheckAssetInfo command in the issue reported FW, SUM will
                 not core dump.
   Check List  : 302-OB
   Issue ID    : 58346
9. Fixed       : In Windows, parsing text file will get error when getting
                 new line in dmi file
   Description : Use safeGetLine in CPortability to avoid such situation. In
                 Windows, end of line character is 0x0D 0x0A while in Linux it
                 is 0x0A only. So, we replace geline API by
                 CPortability::safeGetLine to handle such an platform dependent
                 situation.
   Validation  : Use SUM ChangeDmiInfo command for Windows editor revised dmi
                 file. SUM will parse it correctly.
   Check List  : 601-OB, 602-OB
   Issue ID    : none


V1.4.1 (2014/11/27)
========================
1. Added       : Added support Windows Server 2008 (x86_64) or later
   Description : Release both Linux x86_64 and Windows x86_64 package since
                 this release
                 1. Added Macros in source code for OS dependent part
                 2. Automated build and test for these two OS
                 3. Release two separate package for these two OS
                    sum_v.v.v_Linux_x86_64_yyyymmdd.tar.gz
                    sum_v.v.v_Win_x86_64_yyyymmdd.tar.gz
                 SUM_Internal also support these platform as well as
                 Linux x86_32 platform. All packed in one package
                 sum_internal_v.v.v_yyyymmdd.tar.gz
   Validation  : Download from project board for these three packages
   Check List  : none
   Issue ID    : Customer request
2. Fixed       : For BCP revised BIOS, revised default setting do not reflect
                 on GetDefaultBiosCfgTextFile and LoadDefaultBiosCfg command
   Description : BIOS added BCP revised defaults.bin file in the DAT file and
                 increment DAT header version from 0 to 1
                 SUM get this defaults.bin file and show the revised default.
                 BIOS provides SMCBiosActionFlag (16 bits) BIT0 for loading
                 default BIOS configurations. SUM use this flag in
                 LoadDefaultBiosCfg command to let BIOS load default
   Validation  : Use AMI BCP tool to revise BIOS which support DAT version 1
                 Update BIOS using this revised BIOS
                 GetDefaultBiosCfgTextFile reflect the revised default value
                 Change BIOS settings for those revised default value
                 LoadDefaultBiosCfg will load back BCP revised default value
   Check List  : 502-**, 504-**
   Issue ID    : Customer reported since X9 Romley

3. Fixed       : GetBmcCfg will segmentation fault for X9 AMI FW
   Description : When getting boot mode flag with command 30 70 70 00 X9 AMI
                 FW does not return any value causing SUM parse failed. Fix
                 SUM for this condition.
   Validation  : Use GetBmcCfg command for X9 AMI FW
   Check List  : 801-OB
   Issue ID    : 58132
4. Fixed       : dmi.txt file description is not clear enough for usage
   Description : Added example usage in dmi.txt file
   Validation  : Use GetDmiInfo command to get dmi.txt file
                 Usage example is shown at the beginning
   Check List  : 601-OB
   Issue ID    : none, customer reported
5. Changed     : CheckAssetInfo command added version field for CPU, Add-on for
                 NetworkInterface
   Description : CPU version field contains more detailed information to
                 identify CPU asset
                 Network Intefrace only support Add-on devices. So add this
                 wording.
   Validation  : Use CheckAssetInfo command to check the output message
   Check List  : 302-OB
   Issue ID    : 58095, 58051
6. Changed     : Use TAS 1.0.1 20141124 for TAS issue fix
   Description : 1. Fix version isn't correct on RHEL 7
                 2. Add arch in OS version
   Validation  : Use CheckSystemUtilization command to check the output message
   Check List  : 303-OB
   Issue ID    : 58097, 58103, 58098
7. Added       : UserGuide CheckSensorData command added notice for PS and
                 Chassis Intru sensor output message
   Description : 4 byte raw data is presented in these sensor output reading
                 Jim said its only for debug purpose. Users only need to check
                 if sensor status is okay.
   Validation  : Check UserGuide notes for command CheckSensorData
   Check List  : none
   Issue ID    : 58096
8. Added       : UserGuide Appendix C Platform Feature Support Matrix
   Description : Users might use non-supported command for their managed system
                 Added help notice in SUM help and refer to UserGuide Appendix
                 C for platform support matrix
   Validation  : Check UserGuide Appendix C
                 Check sum help message in Command Usage section
   Check List  : 102
   Issue ID    : 58132

V1.4.1 (2014/11/07)
========================
1. Changed     : Added Macros for windows compilability
   Description : Added Macros so that sum can be compiled in windows
                 _WIN32 is the keyword for configuration
   Validation  : checkout and compile in windows using eclipse kepler with vc
                 2010 express
   Check List  : none
   Issue ID    : none
2. Changed     : Change wording from Product Key to "Node Product Key"
   Description : In order to distinguish product key activation nature between
                 LimeLM and SFT-OOB-LIC/SW FRU methods, use
                 "Software Product Key" for LimeLM method and
                 "Node Product Key" for SFT-OOB-LIC/SW FRU method
   Validation  : 1. Execute command CheckOOBSupport and check output message
                 2. Check help message of command ActivateProductKey
                 3. Check User guide wording
   Check List  : 201-OB, 301-OB
   Issue ID    : none
3. Fixed       : SMCIPMITool sometimes will throw exception when checking OOB
                 license
   Description : SMCIPMITool open session and call actool for actions. Session
                 will timeout when actool execution is too slow (1 minutes) due
                 to network. After that SMCIPMITool will throw timeout
                 exception. New SMCIPMITool will close session before calling
                 actool and open session again after finishing calling actool.
                 Use SMCIPMITool 2.13.0 (Build 141105)
   Validation  : Execute GetDefaultBiosCfg command on slow network for stress,
                 SMCIPMITool will not throw exception now.
   Check List  : 502-OB
   Issue ID    : none
4. Fixed       : JAVA version is not detected correctly
   Description : From feedback of customer IOWA univeristy, in some environment
                 "Picked up _JAVA_OPTIONS: -Xmx3g" message is hicked up when
                 "java -version" command is called. In such situation, SUM
                 cannot parse java version correctly.
   Validation  : Execute SUM on systems with/without java and check if JRE
                 check logic is correct.
   Check List  : 301-OB
   Issue ID    : none
5. Fixed       : SMCIPMITool throw warning message when executing UpdateBmc
                 command
   Description : Side effect of integration with actool from SMCIPMITool. New
                 SMCIPMITool correct such side effect.
   Validation  : Execute UpdateBmc command with -v option to check if warning
                 message still apears.
   Check List  : 701-OB-**
   Issue ID    : 57664
6. Fixed       : CheckSystemUtilization does not get correct OS version for
                 SLES 11 SP3
   Description : TAS does not report correctly for that OS version. Use new TAs
                 1.0.1 20141028 to fix this issue.
   Validation  : Install new TAS on SLES 11 SP3 and use CheckSystemUtilization
                 SUM command. OS version should match.
   Check List  : 303-OB
   Issue ID    : none
7. Fixed       : In-band command does not support node product keys:
                 SFT-DCMS-Single, SFT-SUM-LIC
   Description : Fixed by using command 30 6a to check these license activation
                 Update support matrix to 0.8d
   Validation  : Clear SFT-OOB-LIC product key by command 30 70 f2
                 Execute in-band GetDefaultBiosCfg command should fail
                 Activate one of SFT-DCMS-Single or SFT-SUM-LIC
                 Execute in-band GetDefaultBiosCfg command should success
   Check List  : 502-IB
   Issue ID    : none
8. Fixed       : CheckAssetInfo command show UUID byte order mismatched
   Description : Fixed byte ordering presentation
   Validation  : Use ChangeDmiInfo command to revise and populate UUID
                 Use CheckAssetInfo command to get UUID
                 Use dmidecode or GetDmiInfo to get UUID
                 The obtained UUID should be matched
   Check List  : 302-OB
   Issue ID    : none
9. Fixed       : GetEventLog will throw exception if log count is 0
   Description : Fixed by checking this boundary condition
   Validation  : Use commnad ClearEventLog
                 Use command GetEventLog
                 No exception will be found
   Check List  : 901-OB
   Issue ID    : none
10. Added      : Added driver: Ubuntu12.04_x86_32_3.11.0-26-generic#45~precise1
   Description : For customer ONLINE's usage.
   Validation  : Execute in-band updatebios command using that driver and 32 bit
                 versioned SUM which was provided through e-mail.
   Check List  : 402-IB
   Issue ID    : none
11. Added      : Exit code 11
   Description : Exit code 11: Invalid command line data
   Validation  : Exit code 11: Execute command mountisoimage and provide
                 invalid image url
   Check List  : 1003-OB
   Issue ID    : none


V1.4.1 (2014/10/03)
========================
1. Fixed       : CheckSystemUtilization system date time is incorrect
   Description : The get getTimeStamp API in SUM called wrong command: called
                 get memory utilization. So the date time is always wrong.
                 Changed command enumeration fixed this issue.
   Validation  : Use CheckSystemUtilization command
   Check List  : 303-OB
   Issue ID    : 56910
2. Fixed       : CheckAssetInfo will show SlotType/SlotID as N/A for on card
                 NICs
   Description : New VPDTool will program VB tag for SlotType/SlotID. BIOS will
                 set values to each VPD. SUM will parse and show accordingly.
                 SUM will show Slot Type and Slot Location correctly
   Validation  : Use CheckAssetInfo command on X10DRU for AOC-2UR68-i2XT
   Check List  : 302-OB
   Issue ID    : none
3. Fixed       : CheckAssetInfo showed memory speed 0MHz when memory speed as
                 0 MHz instead of unknown.
   Description : SUM called wrong API when checking boundary value 0 MHz. Will
                 use correct API and show speed as unknown when speed value is
                 0000.
   Validation  : Use CheckAssetInfo command for
                   MEM: Samsung PC3-14900E memory
                   MB: A1SA7-2750F rev 1.01
                   IPMI: 1.67
                   BIOS: 09/26/2014
                   Memory speed in BIOS: 'Auto'
   Check List  : 302-OB
   Issue ID    : 57055
4. Fixed       : In-Band UpdateBios on RHEL 7.0 x86_64 will sometimes hang and
                 show broken pipe message
   Description : Added user guide notice to suggest adjusting ssh connection
                 timeout value for both client and server side when doing
                 in-band UpdateBios command
   Validation  : Prepare RHEL 7.0 x86_64 OS and X10 grantley platform MB
                 Adjust ssh timeout setting on both client and server sides
                 to have timeout value longer than execution time, typically
                 30 minutes.
                 Use Carl test script with command "loop 308" to do stress
                 in-band UpdateBios command.
   Check List  : 402-IB
   Issue ID    : 56387
5. Added       : BMC configuration file for FanMode support PEU3 fan mode
   Description : BMC support PUE3 fan mode since 1.70 FW. SUM will support it
   Validation  : Get X10DRU MB, Use BMC FW 1.70
                 Use GetBmcCfg command to get BMC configuration file.
                 PUE Optimal changed as PUE2 Optimal
                 PUE3 Optimal is added as well
   Check List  : 801-OB, 802-OB
   Issue ID    : 57034, 56244


V1.4.1 (2014/09/25)
========================
1. Changed     : Used new TPM ISO images
   Description :
                 * TpmProvision: require to use with ISO images
                    TPM_20140925.iso or TPM_Lock_20140925.iso
   Validation  : Download TPM_20140925.iso or TPM_Lock_20140925.iso files
   Check List  : none
   Issue ID    : none
2. Fixed       : grepX64.efi will hang if string lenght exceeds 1000 characters
   Description : new grepX64.efi fix this issue by using dynamic allocate
   Validation  : Download TPM_20140925.iso or TPM_Lock_20140925.iso files
                 Run TpmProvision command on X10DRT-H MB
   Check List  : 1001-OB
   Issue ID    : 56563


V1.4.1 (2014/09/24)
========================
1. Changed     : Remove TPM ISO images from package. Added requirement notice
                 instead
   Description : There are legal issues to pack these iso images in SUM package
                 It was decided to remove these ISO images from package. If
                 customer needed these packages, they need to sign contracts.
                 * TpmProvision: require to use with ISO images
                    TPM_20140909.iso or TPM_Lock_20140909.iso
                 Uploaded these ISO images to project board for download
   Validation  : Download TPM_20140909.iso or TPM_Lock_20140909.iso files
                 No more tpm iso in SUM package.
   Check List  : none
   Issue ID    : none
2. Changed     : TpmProvision command skip steps 3, 4, 5 (take ownership,
                 enable tpm). So, sum does not require Pending Operation item
                 in Trusted Computing menu any more
   Description : Simplified provision steps to below
                  1) Enable "Security Device Support" item, reboot
                  2) clear TPM, reboot
                  3) run TPM provision procedure under UEFI shell, reboot
                  4) Enable "TPM State" item, reboot
                  5) Enable "TXT Support" item reboot
   Validation  : Download TPM_20140909.iso or TPM_Lock_20140909.iso files
                 Use TpmProvision command to test
   Check List  : 1001-OB
   Issue ID    : none
3. Fixed       : in-band UpdateBios sometimes hang in RHEL 7.0 x86_64
   Description : disable watchdog and me/mei drivers to fix this problem
   Validation  : run in-band stress test to see if this issue still happens
                 use sum_test script with loop option for case 308
                 ./sum_test Cfg.txt loop 308
   Check List  : 402-IB
   Issue ID    : 56387
4. Fixed       : in-band UpdateBios has abnormal message in RHEL 7.0 x886_64
                 with minimal installation
   Description : in-band updatebios command used lspci command to check chipset
                 id for platform check. RHEL7.0 minimal installation does not
                 contain lspci tool. Will use linux default APIs to scan PCI
                 device instead to fix this issue.
   Validation  : Install RHEL 7.0 x86_64 minimal installation
                 Run in-band updatebios command
   Check List  : 402-IB
   Issue ID    : 56704
5. Fixed       : actool and SMCIPMITool will check and disable log4j warning
                 message when necessary
   Description : actool and SMCIPMITool will fix by adding disable check
                 actool.sh has build date 20140924
                 SMCIPMITool.jar has build date 140924
   Validation  : Use UpdateBios command with -v option, log4j warning message
                 does not appear
                 execute ./actool.sh to check build date
                 execute java -jar SMCIPMITool.jar to check build date
   Check List  : 402-OB
   Issue ID    : none
6. Fixed       : sometimes checksum check in SUM will be wrong for vpd.bin file
                 and FullSmbios.bin file
   Description : Compare between char and unsigned char would be failed when
                 value is more than 128. Cast to unsigned char before compare.
   Validation  : Use CheckAssetInfo command for MB with more two AOC lan card.
   Check List  : 302-OB
   Issue ID    : none
7. Fixed       : CheckAssetInfo and TpmProvision command cannot work when
                 debug_level=1 in SMCIPMITool.properties
   Description : Enabling debug_level=1 in SMCIPMITool.properties can print
                 raw command that is used by SMCIPMITool.jar However, sometimes
                 the output message is too large to keep and key information
                 will not be able be recorded for SUM to function normally.
                 Now, use better message control to overcome this problem.
   Validation  : Execute: echo "debug_level=1" > SMCIPMITool.properties
                 Execute CheckAssetInfo and TpmProvision command
                 Command can execute normally.
   Check List  : 302-OB, 1001-OB
   Issue ID    : none


V1.4.1 (2014/09/16)
========================
1. Fixed       : License check will not pass on X9 AMI FW
   Description : actool and SMCIPMITool will fix by adding support check
   Validation  : 1. Use programmer to burn BMC chip
                 2. Run SUM commands that required OOB license on X9 AMI MB
                 3. Packed actool and SMCIPMITool have built date 20140916.
   Check List  : *-OB-**
   Issue ID    : 56543, 56544, 56545

2. Fixed       : SUM does not support BIOS configuration item value for more
                 than 4 bytes
   Description : SUM API CUtil::charToHex and CUtil::hexToChar were revised to
                 support more than 4 bytes. So, BIOS configuration related
                 command can still work for item values more than 4 bytes.
                 For example: MSR 610 PKG_TURBO_PWR_LIM, Width = 08
   Validation  : run BIOS configuration related tests
   Check List  : *-OB-**
   Issue ID    : 55769, 56151

3. Fixed       : SMCIPMITool sometimes time out in 60 seconds
   Description : Retry will be 7.5 seconds * 12 RMCP retry
   Validation  : Run SMCIPMITool raw command on non-existing IP
                 Check timeout is 7.5 seconds * 12
   Check List  : none
   Issue ID    : none


V1.4.1 (2014/09/12)
========================
1. Fixed       : License check will not pass when BMC is re-burn
   Description : actool and SMCIPMITool will initialize SW FRU after BMC
                 is re-burn and creates SW FRU
   Validation  : 1. Use programmer to burn BMC chip
                 2. Run SUM commands that required OOB license on X10 platform
                 3. Packed actool and SMCIPMITool have built date 20140912.
   Check List  : *-OB-**
   Issue ID    : none


V1.4.1 (2014/09/11)
========================
1. Fixed       : License check will not pass in X9/B1 platform
   Description : actool and SMCIPMITool added support check for X9/B1
                 platform so that behavior will be normal instead of throwing
                 exception.
   Validation  : Run SUM commands that required OOB license on X9/B1 platform
                 Packed actool and SMCIPMITool have built date 20140911.
   Check List  : *-OB-**
   Issue ID    : none


V1.4.1 (2014/09/09)
========================
1. Fixed       : Fix CheckSystemUtilization will have wrong utilization value
                 Fix CheckSystemUtilization will segmentation fault when TAS is
                 not installed
   Description : Use Kepler compiler in build system to fix wrong utliization
                 issue
                 Check null string value for CheckSystemUtilization command to
                 fix segementation fault issue when TAS not installed.
   Validation  : Install new TAS package.
                 Use SUM CheckSystemUtiliztion command when TAS is installed
                 or not installed.
   Check List  : 303-OB-XX
   Issue ID    : 56147
2. Fixed       : Fix support check in actoolp.jar
   Description : For SW FRU support check, actooplp.jar will have better error
                 handling
   Validation  : Run CheckOOBSupport command on X9/X10 old/latest FW
   Check List  : 301-OB-XX
   Issue ID    : none
3. Fixed       : TpmProvision failed because "Pending Operation" check is case
                 sensitive.
   Description : TpmProvision to set Take Ownership value for item
                 "Pending Operation" will use case insensitive check
   Validation  : Run TpmProvision command
   Check List  : 303-OB-XX
   Issue ID    : 55284
4. Fixed       : TpmProvision failed because "TPM provision" flag is not raised
   Description : Should be test false alarm using old TPM.iso file.
   Validation  : Run TpmProvision command with packaged TPM.iso TPM_Lock.iso file
   Check List  : 303-OB-XX
   Issue ID    : 56084


V1.4.1 (2014/09/05)
========================
1. Fixed           : Fix double free bug.
   Description : When this bug happens it free FullSMBios BIN file data buffer
                 twice. Revise Smbios.cpp to fix it.
   Validation  : Use SUM GetBiosInfo or UpdateBios command.
   Check List  : 305-OB-XX or 40X-OB
   Issue ID    : 56304
2. Changed     : Add isSecurityDevieEnabled method to detect Security Devie is
                 enabled or not.
   Description : It needs to enable Security Devie before detecting the TPM
                 status. If it is enabled, then don't enable it again. If it is
                 not enabled, then enable it and then detect the TPM status.
   Validation  : Use SUM TpmProvision command.
   Check List  : 1001-OB
   Issue ID    : none
3. Fixed       : Revise script to fix path issue for creating log file in ram
                 disk in TpmProvision Iso Image (lock version).
   Description : It needs to have Intel utility in UEFI sheel to create log file
                 for checking lock status of TPM module.
   Validation  : Use SUM TpmProvision command with lock Iso Image (Ex: ./sum -i
                 IP -u ID -p PW -c TpmProvision --image_url 'smb://SharedPoint/
                 TPM_Lock.iso' --reboot).
   Check List  : 1001-OB
   Issue ID    : 56084
4. Fixed       : Fix CheckSystemUtilization segmentation fault due to lenght
                 more than 32 bytes.
   Description : New KCS interface command in SMCIPMITool.jar has 32-byte limi-
                 tation. Revise CUtil::charToHex API to avoid this limitation.
   Validation  : Use SUM CheckSystemUtilization command.
   Check List  : 303-OB-XX
   Issue ID    : 55680, 55284(Test Case 726)
5. Changed     : Use SMCIPMITool/SMCIPMIToold V1.12.0beta(Build 140904)
   Description : Use updated SMCIPMIToold for more stable multiple system mana-
                 gement (When checking SW license do not check if it is Grantely
                 through ME.)
   Validation  : execute: java -jar SMCIPMIToold.jar. Used port will be shown
                 on the screen
                 execute: telent localhost port
                 type 'ver' in telnet shell
                 SMCIPMIToold version will be shown on screen
   Check List  : none
   Issue ID    : 56335, 56170


V1.4.1 (2014/09/04)
========================
1. Fixed       : actool name is actoolp instead of actool
   Description : SUM call actool.jar instead of actoolp.jar
                 should be actoolp.jar
   Validation  : use new license of SUM, DCMS-Single to validate
                 SUM CheckAssetInfo command
   Check List  : 302-OB
   Issue ID    : none
2. Fixed       : actool cannot work on non-fru 255 FW
   Description : FW has not implemented FRU 255 function
                 actool will fail in this situation
   Validation  : use new license of SUM, DCMS-Single to validate
                 SUM CheckAssetInfo command
   Check List  : 302-OB
   Issue ID    : none
3. Fixed       : Add post complete timeout flag to 20 minutes
   Description : In TpmProvision command, several boots are performed
                 SUM polling POST complete for 20 minutes
   Validation  : Use SUM TpmProvision command
   Check List  : 1001-OB
   Issue ID    : none


V1.4.1 (2014/09/03)
========================
1. Changed     : Use new TPM.iso and TPM_Lock.iso
   Description : Image size is smaller (from 3xMB to 8 MB)
                 New TPM iso files implement setting post complete flag
                 mechanism so that TpmProvision command can detect POST
                 complete and upload next BIOS setting when POST completes.
                 New TPM iso files implement detecting TPM lock flag.
                 Fixed: if USB drive is plugged in the MB, the TPM iso files
                 cannot create ramdisk problem by using new ramdisk tool.
   Validation  : Use the new TPM iso files from this package. Check the image
                 size. Run TpmProvision command to check if another setting is
                 uploaded only when POST completes. Plug a USB drive to the MB
                 to check if the TpmProvision command can still work. Use a
                 locked TPM to check SUM will detect TPM locked.
   Check List  : 1001-OB-XX
   Issue ID    : 55926, 56084
2. Changed     : --cleartpm option require ISO image file
   Description : To check BIOS POST complete, we need the mount the ISO image
                 file: either TPM.iso or TPM_Lock.iso would be fine.
   Validation  : Use the new TPM ISO files from this package. Use --cleartpm
                 option with TpmProvision command. --image_url is required.
                 Check help message and user guide
   Check List  : 1001-OB-XX
   Issue ID    : none
3. Changed     : Boot configuration in GetBmcCfg/ChangeBmcCfg command will
                 support new BIOS booting version 0x01
   Description : BIOS designed boot version 0x01 to support more UEFI boot
   Validation  : Run GetBmcCfg/ChangeBmcCfg command on old BIOS and new BIOS
                 the exposed boot device type will be different.
   Check List  : 80X-OB
   Issue ID    : none
4. Changed     : Use actool 20140902 to check SUM-SW, DCM-single-SW license
   Description : * Actool 20140902 can check SUM-SW and DCM-single-SW license
                 * Use SW FRU 255 to keep encrypted original MAC address and a
                   timestamp.
                 * Revise "query" command to double check the secret data of SW
                   product key. If secret data exists and is not valid, then
                   show "(Key is not good.)" for the specific SW product key.
                 * Revise setKeyCreationDate() and setExpirationDate() to use
                   "(date.getTime()/1000)*1000)" to remove the milli-second part
                    and make sure IPMI FW could do the same checking for secret
                    data.
                 * update 3 jar files:
                   1. IPMIlib.jar (v1.2 20140828)
                   2. SSMCommon-2.1-build.915-20140828182140.jar
                   3. SSMIpmiCommon-2.1-build.1079-20140902112632.jar
   Validation  : License SUT using SUM-SW or DCM-single-SW product keys with
                 / without expiration date
                 Use SUM CheckOOBSupport command to check the activation status
                 Change MAC/IPMI date time to check if license can still work
                 This feature need FW support.
   Check List  : 301-OB
   Issue ID    : none
5. Fixed       : CheckAssetInfo for Memory speed use current speed
   Description : Originally use max speed. Should use current speed instead
   Validation  : Change memory speed in BIOS setup => Advanced=> chipset
                 => northbirdge => memory
                 Use CheckAssetInfo command to check the memory speed
                 Note: memory speed should not be changed too much otherwise
                       BIOS might not boot. In this case, you need to clear
                       CMOS
   Check List  : 302-OB-XX
   Issue ID    : 55747
6. Fixed       : CheckAssetInfo, GetBmcCfg memory leak
   Description : There are memory leak in these commands
   Validation  : use valgrind tool as below
                 valgrind --max_stackframe=6000000 ./sum -i <IP> -u <ID> -p
                 <PASSWD> -c CheckAssetInfo
                 valgrind --max_stackframe=6000000 ./sum -i <IP> -u <ID> -p
                 <PASSWD> -c GetBmcCfg --file bmccfg.xml --overwrite
   Check List  : 801-OB, 302-OB
   Issue ID    : none
7. Fixed       : TAS KCS limit
   Description : Old TAS command does not consider KCS data bus width limit is
                 40 bytes; New TAS command will consider this.
   Validation  : Use new TAS package 1.0.1 with CheckSystemUtilization command
   Check List  : 303-OB
   Issue ID    : none
8. Fixed       : FanMode/IPAccessControl/WebSession support check
   Description : FanFlag all zero, IPAccessControl completion code 80h, WebSession logic
   Validation  : Run GetBmcCfg/ChangeBmcCfg command on B10 firmware will pass
   Check List  : 80X-OB
   Issue ID    : none
9. Fixed       : Jumperless solution support SLES and Ubuntu OS
   Description : Inband BIOS update jumperless solution supports these two OS
   Validation  : Run inband UpdateBIOS command should work on SLES and Ubuntu
   Check List  : 402-IB
   Issue ID    : none


V1.4.0 (2014/08/05)
========================
1. Changed     : When LDAP/AD/RADIUS table disabled, its attributes will be
                 skipped
   Description : Though raw commadn is not consisten, SUM will make the
                 skipping rule consistent as the web GUI does
   Validation  : Use Get/ChangeBmcCfg command for LDAP/AD/RADIUS tables
                 Revise attribute values and disable tables. Then ChangeBmcCfg.
                 Then GetBmcCfg. The revised attributes will not change.
   Check List  : 801-OB-XX, 802-OB-XX
   Issue ID    : 54229, 54230
2. Changed     : Use TAS 1.0.0 20140805
   Description : SUM pack new TAS package
   Validation  : Extract SUM package and check TAS package file name
   Check List  : none
   Issue ID    : none
3. Fixed       : Certification update sometimes failed
   Description : Added sleep 3 seconds between uploading cert file and key file
   Validation  : Use new cert and key file to update SSL certification
                 The certification date should change
   Check List  : 801-OB-XX, 802-OB-XX
   Issue ID    : none
4. Fixed       : TAS will conflict with SD5 in windows environment
   Description : The MEM/IO port drivers conflict between TAS and SD5 in
                 windows environment. New TAS package will use driver that
                 solves thread safe problem.
   Validation  : Install TAS in windows environment. Then use ipmicfg to check
                 if ipmicfg and TAS can work together. Better verify with SD5
                 together.
   Check List  : 303-OB-XX
   Issue ID    : none
5. Fixed       : RHL7 version information is not shown from TAS
   Description : TAS fixed by showing the version
   Validation  : Use CheckSystemUtilization command to get version information
                 from managed system running RHL7 OS.
   Check List  : 303-OB-XX
   Issue ID    : 55283


V1.4.0 (2014/07/31)
========================
1. Changed     : Added exit code 36/37
   Description : When using TpmProvision command, SUM will check if TPM module
                 is installed or broken.
                 Exit code 36: Required device does not exist
                 Exit code 36: Required device does not work
   Validation  : Use TpmProvision command without TPM module
   Check List  : 1001-OB-XX
   Issue ID    : 55005
2. Changed     : Pack TAS 1.0.0 20140731 into SUM
   Description : New TAS package fixed issues
   Validation  : Install new TAS and verify below issues
   Check List  : 1001-OB-XX, 1003-OB-XX
   Issue ID    : 55283, 54891
3. Changed     : SAMBA server password should not contains space character
   Description : BMC FW prohibit password from using space character. SUM will
                 filter it before action.
   Validation  : Use TpmProvision and MountIsoImage commands with password
                 consisting of space characters.
   Check List  : 1001-OB-XX, 1003-OB-XX
   Issue ID    : none
4. Changed     : Help message revision per Arun's suggestion
   Description : Added underline for Function Group and Command Names
                 Added space line below Command Names
                 Added comma between command names
   Validation  : Execute ./sum or ./sum -h to see the output message
   Check List  : 101, 102
   Issue ID    : none
5. Changed     : Use SMCIPMITool/SMCIPMIToold V2.11.0.1(Build 140730)
   Description : Use updated SMCIPMIToold for more stable multiple system
                 management
   Validation  : execute: java -jar SMCIPMIToold.jar. Used port will be shown
                 on the screen
                 execute: telent localhost port
                 type 'ver' in telnet shell
                 SMCIPMIToold version will be shown on screen
   Check List  : none
   Issue ID    : none
6. Fixed       : Multiple system update BIOS will fail in A1SA2 for more than
                 20 nodes
   Description : Added retry protection for tcp and added synchronization for
                 SortedMap
   Validation  : Use SUM commands and -l option for at least 20 nodes
   Check List  : 301-OB-MM, 402-OB-MM
   Issue ID    : 52961
7. Fixed       : Multiple system update BIOS will use too much memory at the
                 beginning
   Description : Serialize ROM image pre-processing before sending command to
                 SMCIPMIToold.jar
   Validation  : Use SUM commands and -l option for at least 20 nodes
   Check List  : 301-OB-MM, 402-OB-MM
   Issue ID    : none


V1.4.0 (2014/07/28)
========================
1. Changed     : Remove actool and SW SUM license usage
   Description : BMC has not supported this function to be compatible with OOB
                 So remove actool usage until BMC integration complete
   Validation  : SUM User guide remove information about SW SUM license usage
   Check List  : none
   Issue ID    : 54493
2. Changed     : Pack TAS 1.0.0 20140725 into SUM
   Description : New TAS package fixed issues
   Validation  : Install new TAS and verify below issues
   Check List  : 1001-OB-XX, 1003-OB-XX
   Issue ID    : 54497, 54489, 54495
3. Fixed       : In-band update BIOS with --reboot option and ssh connection
                 the exit code is 255
   Description : Some OS will close ssh connection before return exit code when
                 reboot system command is issued. SUM user guide added notices
                 in the end of SUM Exit Code section for user's notice.
   Validation  : Check user guide has added this information
   Check List  : none
   Issue ID    : 55004
4. Fixed       : Connection to BMC sometimes get Can't login message
   Description : Added retry when Can't login message received
   Validation  : Use CheckOOBSupport command stress test
   Check List  : 301-OB-X
   Issue ID    : 54974
5. Fixed       : SUM jumperless solution does not work in RHL7
   Description : Jumperless solution do update in the next syste reboot when
                 FDT is different. RHL7 requires LSB (Linux Dependency based
                 Boot) init script. SUM revised init script to accomodate RHL7
                 OS.
   Validation  : Use in-band jumperless update for two BIOS rom with different
                 FDT.
   Check List  : 402-IB
   Issue ID    : none
6. Fixed       : SUM in-band update BIOS will segmentation fault in X9 system
   Description : Due to memory double free problem. SUM fix it in this release
   Validation  : Use in-band update BIOS command on X9DRD-iF MB
   Check List  : 402-IB
   Issue ID    : none


V1.4.0 (2014/07/17)
========================
1. Changed     : when product key expired, check oob support will show expired
                 and key information
   Description : SUM SW product key support expiration date. SUM will show
                 one of the No/OOB/SUM/SUM(expired) value in the
                 Product Key Activated field for CheckOOBSupport command
   Validation  : Activate SW SUM product key with expired date. Use
                 CheckOOBSupport command to see the output message.
   Check List  : 301-OB-XX
   Issue ID    : none
2. Changed     : TpmProvision/MountIsoImage command argument option changed
   Description : Original argument is too long. Now use --image_url, --id
                 --pw to replace samba image access parameters
                 Two format of image url is supported: URL/UNC
                 URL: 'smb://<ip or host name>/SharedPoint/FilePath'
                 UNC: '\\<ip or host name>\SharedPoint\FilePath'
   Validation  : Setup samba shared folder in Windows/Linux
                 Get Tpm.iso from project board of SUM
                 Use TpmProvision/MountIsoImage command to check if
                 function can work
                 Check User Guide has updated the usage.
                 Check -h -c output help message for these two commands
   Check List  : 1001-OB-XX, 1003-OB-XX
   Issue ID    : none
3. Changed     : Pack TAS 1.0.0 into SUM
   Description : Although TAS package is large, to facilitate distribution of
                 software, SUM will still pack it into the released package
   Validation  : Setup samba shared folder in Windows/Linux
                 Get Tpm.iso from project board of SUM
                 Use TpmProvision/MountIsoImage command to check if
                 function can work
                 Check User Guide has updated the usage.
                 Check -h -c output help message for these two commands
   Check List  : 1001-OB-XX, 1003-OB-XX
   Issue ID    : none
4. Changed     : CheckAssetInfo command message change for unit
                 'MHZ' => ' MHz'; 'MB' => ' MB'
   Description : To match the output of dmidecode
   Validation  : Use command CheckAssetInfo and check output message
   Check List  : 302-OB-XX
   Issue ID    : none
5. Changed     : Use SMCIPMITool 2.11.0 <build 140704>
   Description : Use new SMCIPMITool
   Validation  : java -jar SMCIPMITool.jar to check the version and build date
   Check List  : none
   Issue ID    : none
6. Added       : Support MicroBlade/SuperBlade(B10) firmware update in UpdateBmc and
                 GetBmcInfo command
   Description : Added support for these platforms
   Validation  : Use command UpdateBmc and GetBmcInfo to check function
   Check List  : 306-OB-XX, 701-OB-XX
   Issue ID    : none

V1.4.0 (2014/07/11)
========================
1. Added       : Added Mount/Umount/TPMProvisioning application commands
   Description : Special application OOB commands are provided to facilitate
                 system management.
   Validation  : Use command MountIsoImage, UnmountIsoImage and TpmProvision to
                 check if command work properly. See user guide for usage.
   Check List  : 10xx-OB-XX
   Issue ID    : none
2. Added       : Added X10 Grantley in-band update BIOS support
   Description : X10 Grantley in-band BIOS update requires jumperless procedure
                 SUM add this procedure to support jumerless update.
   Validation  : Use in-band update BIOS command with --reboot option for
                 Grantley platform
   Check List  : 402-IB
   Issue ID    : 52956, 52963
3. Added       : Added SUM SW product key checking support
   Description : actool is added for new SUM SW product key check support
   Validation  : Activate using actool and use SUM to execute license required
                 commands
   Check List  : XXXX-OB-XX
   Issue ID    : none
4. Added       : Added element for /BmcCfg/OemCfg/SMTP, NTP, DDNS, ALERT, AD,
                 LDAP, RADIUS, IPAccessControl, Certification, WebSession,
                 UIControl in Get/ChangeBmcCfg command
   Description : SMTP, NTP, DDNS, ALERT, AD, LDAP, RADIUS, IPAccessControl,
                 Certification, WebSession, UIControl settings are added for
                 configuration
   Validation  : Use commnad GetBmcCfg and ChangeBmcCfg for latest X10 BMC FW
   Check List  : 80X-OB-XX
   Issue ID    : none
5. Added       : Added element for /BmcCfg/OemCfg/LAN/DNSAddr in
                 Get/ChangeBmcCfg command
   Description : DNS setting is added for configuration
   Validation  : Use commnad GetBmcCfg and ChangeBmcCfg for latest X10 BMC FW
   Check List  : 80X-OB-XX
   Issue ID    : none
6. Changed     : CheckAssetInfo Memory "Manufacturing Date" wording
   Description : Change to be "Manufacturing Date (YY/WW)"
   Validation  : Use commnad CheckAssetInfo and see the output
                 Check UserGuide example
                 Check Design Spec Example
   Check List  : 302-OB-XX
   Issue ID    : 54153
7. Changed     : CheckSystemUtilization will have HDD, NIC number starts from 1
                 instead of 0
   Description : HDD/NIC instance count starts from 1
   Validation  : Install latest TAS and execute CheckSystemUtilization command
                 HDD/NIC count from 1 instead of 0
   Check List  : 303-OB-XX
   Issue ID    : none
8. Changed     : add boot device USB support
   Description : Boot device support in BMC configuration xml file will add
                 X10 grantley supported boot device type
   Validation  : Use command GetBmcCfg to download bmccfg.xml file. The boot
                 device support legacydevice and uefidevice
                 Check if the managed system can boot into specified device
                 type in grantley platform after ChangeBmcCfg command.
   Check List  : 303-OB-XX
   Issue ID    : none

9. Fixed       : [ SUM 1.3.0 - TAS 0.0.4 ] CheckSystemUtilization information
                 is different with SUT.
   Description : Total space contains reserved space. Utilization should not
                 include those space. TAS 1.0.0 and this SUM will fix the issue
   Validation  : Install TAS 1.0.0 and use SUM CheckSystemUtilization command
   Check List  : 303-OB-XX
   Issue ID    : 54495, 54497
10. Fixed      : [ SUM 1.3.0 ] Change BMC configuration fail.
   Description : When disabling IKVM, VirtualMedia should be disabled as well.
                 SUM will add below comments and fix this issue in the next
                 release.
             <IKVM>Disable</IKVM>
             <!--Enable/Disable-->
             <!--When IKVM is disabled, VirtualMedia should also be disabled.-->
             <VirtualMedia>Disable</VirtualMedia>
             <!--Enable/Disable-->
             <!--When IKVM is disabled, VirtualMedia should also be disabled.-->
   Validation  : Enable IKVM and VM from WEB and then use SUM to disable these
                 two service by GetBmcCfg and ChangeBmcCfg command
   Check List  : 80X-OB-XX
   Issue ID    : 54229, 54230
11. Fixed      : [ SUM 1.3.0 ] There are not informations about TAS in SUM user
                 guide.
   Description : Will add installation guide for TAS package.
   Validation  : Check requirement and installation guide in user guide
   Check List  : none
   Issue ID    : 54519
12. Fixed       : Fixed memory leak problem in GetBmcInfo command
   Description : Memory leak is fixed for GetBmcInfo command
   Validation  : Use commnad GetBmcInfo and valgrind debug tool
   Check List  :
   Issue ID    : none
13. Fixed       : Fixed memory leak problem in throwing exception
   Description : sum_exit function use exit() function which could cause memory
                 still reachable problem
   Validation  : Use valgrind --max-stackframe=60000000 ./sum -c haha to check
                 if there is any memory leak
   Check List  : none
   Issue ID    : none


V1.3.0 (2014/06/09)
========================
1. Changed     : CheckAssetInfo remove CPU: Max Speed information.
   Description : Max Speed is in fact MAX CPU socket speed not CPU speed
                 SD5 removed this inform previously. So SUM remove this also.
   Validation  : Excecute CheckAssetInfo command, CPU Max Speed disappeared
   Check List  : 302-OB-XX
   Issue ID    : none
2. Changed     : GetEventLog command buffer size original 40960 now 512*Entry#
   Description : When BMC log is full (512 logs), SUM cannot get all event log
                 due to buffer size too small. Only 200 logs are shown.
   Validation  : Populate the BMC event log to 512 events. Excecute GetEventLog
                 command. All events should be shown.
   Check List  : 901-OB-XX
   Issue ID    : none
3. Chnaged     : CheckSystemUtilization HDD part will link HDD/Partition
                 relation
   Description : Originally HDD/Parition link is not exists; Now link them.
   Validation  : Install to the managed system with new TAS package included
                 in SUM and execute CheckSystemUtilization command in the
                 managing system.
   Check List  : 303-OB-X
   Issue ID    : 53836
4. Changed     : CheckSystemUtilization HDD partition usage use MB/GB/TB units
   Description : Originally only use MB, now use MB/GB/TB with 2 digits
                 precision depends on threshold.
   Validation  : Install to the managed system with new TAS package included
                 in SUM and execute CheckSystemUtilization command in the
                 managing system.
   Check List  : 303-OB-X
   Issue ID    : 53836
5. Added       : CheckSystemUtilization HDD smart status will be shown
   Description : smartctl to check physical HDD status
   Validation  : Install to the managed system with new TAS package included
                 in SUM and execute CheckSystemUtilization command in the
                 managing system.
   Check List  : 303-OB-X
   Issue ID    : 53836
6. Fixed       : UserGuide for KeyManagement says OOB only
   Description : Should say OOB and In-Band instead
   Validation  : Check UserGuide.
   Check List  : none
   Issue ID    : none


V1.3.0 (2014/05/16)
========================
1. Changed     : Rename CheckInventory command to CheckAssetInfo
   Description : Inventory imply warehouse items or items that are not in-use
                 but ready for sell. So, change to CheckAssetInfo
   Validation  : Use CheckInventory command will fail. Use CheckAssetInfo will
                 success.
   Check List  : SUM_Checklist_rev1.3b: 302-OB
   Issue ID    : none
2.  Changed    : User guide updated for SUM 1.3 features
   Description : Major revision of user manual for SUM 1.3 features
   Validation  : Read through user manual to see if the usage is clearly
                 explained.
   Check List  : none
   Issue ID    : none
3. Changed     : Use short help message for ./sum or ./sum -h command, Show
                 command specific help message by ./sum -h -c <Command Name>
                 syntax
   Description : As command number expands, SUM needs a summarize help message
                 and detailed command usage help.
   Validation  : Use ./sum or ./sum -h will show short help message. Use ./sum
                 -h -c <Command Name> will show help message for this command.
   Check List  : SUM_Checklist_rev1.3c: 401-OB-MM
   Issue ID    : none
4. Changed     : Product key required for every information of
                 CheckSystemUtilization, CheckAssetInfo, GetBmcCfg,
                 ChangeBmcCfg, GetEventLog commands
   Description : Comply to new SUM Feature Matrix r4
   Validation  : Revoke product key using oem command 30 70 f2.
                 These command will not work after revoke.
   Check List  : SUM_Checklist_rev1.3c: 302-OB, 801-OB, 802-OB, 901-OB
   Issue ID    : none
5. Changed     : No license check for OOB CheckSensorData and in-band
                 GetBiosInfo commands.
   Description : Comply to new SUM Feature Matrix r4
   Validation  : Revoke product key using oem command 30 70 f2.
                 CheckSensorData still work for OOB usage.
                 GetBiosInfo command will still work for in-band usage.
   Check List  : SUM_Checklist_rev1.3c: 304-OB, 305-IB
   Issue ID    : none
6. Changed     : AMS(Agentless Management Serivce) package name changed as TAS
                 (Thin Agent Service)
   Description : AMS is in-fact thin agent. So, change to a fitting name.
   Validation  : Check SUM User Guide and packed package name for TAS in SUM
   Check List  : none
   Issue ID    : none
7. Changed     : Copy right year advanced to 2014
   Description : SUM copy right year advance to 2014
   Validation  : Use any SUM command, copy right year changed to 2014
   Check List  : SUM_Checklist_rev1.3c: 101
   Issue ID    : none
8. Changed     : CheckAssetInfo output format changed
   Description : Per SSM team's request for easier integration of SUM and SSM,
                 we changed CheckAssetInfo output message format
                 1.        Use [] parentheses for device instance.
                 2.        Use () parentheses for instance count
                 3.        One information per line
   Validation  : Use CheckAssetInfo command X10 Grantley MBs.
   Check List  : SUM_Checklist_rev1.3b: 302-OB
   Issue ID    : none
9. Changed     : CheckAssetInfo CPU signed trademark using unicode
   Description : Originally, CPU trademark using R character, now use unicode.
   Validation  : Use CheckAssetInfo command X10 Grantley MBs.
   Check List  : SUM_Checklist_rev1.3b: 302-OB
   Issue ID    : 53041
10.Changed     : CheckAssetInfo for Network Interface supports only using
                 VPD Utility 1.1.1 or later when writng VPD information.
   Description : VPD programming structure changed. So SUM will follow latest
                 VPD specifictaion since VPD Utility 1.1.1
   Validation  : Use CheckAssetInfo command for X10 Grantley MBs.
                 Use VPD Utility 1.1.1 or later to program VPD information
   Check List  : SUM_Checklist_rev1.3b: 302-OB
   Issue ID    : 53041
11.Changed     : CheckSystemUtilization format changed similar to
                 CheckAssetInfo requirement
   Description : 1.        Use [] parentheses for device instance.
                 2.        Use () parentheses for instance count
                 3.        One information per line
   Validation  : CheckSystemUtilization output format changed as described
   Check List  : SUM_Checklist_rev1.3c: 303-OB
   Issue ID    : none
12.Changed     : CheckSystemUtilization for NIC utilization will show <1% when
                 utilization is less than one percent
   Description : It's not easy to see network utilization to become larger than
                 one percent. So use <1% instead
   Validation  : CheckSystemUtilization output message changed as described
   Check List  : SUM_Checklist_rev1.3c: 303-OB
   Issue ID    : none
13.Changed     : Get/ChangeBmcCfg output message fewer new lines
   Description : Originally, each oem command will have a new line, now reduce
                 number of new lines to be more user friendly.
   Validation  : Use Get/ChangeBmcCfg command in slow network environment. The
                 output message has less new lines.
   Check List  : SUM_Checklist_rev1.3b: 801-OB, 802-OB
   Issue ID    : none
14.Changed     : Boot Device, Boot Order, Boot Mode Select, Boot menu checking
                 are case insensitive
   Description : For better robustiness, SUM will use case insensitive check
                 for special menu/items.
   Validation  : Use ChangeBiosCfg command will work.
   Check List  : SUM_Checklist_rev1.3c: 503-OB
   Issue ID    : none
15.Changed     : Use SMCIPMITool.jar V2.9.2(Build 140502)
   Description : Use new SMCIPMITool.jar file
   Validation  : run java -jar SMCIPMITool.jar, V2.9.2(Build 140502) is shown
                 on the screen
   Check List  : None
   Issue ID    : None
16.Changed     : Use TAS V0.0.2
   Description : Use new TAS package
   Validation  : See TAS file name in SUM_HOME
   Check List  : None
   Issue ID    : None
17.Added       : Added In-band usage for ActivateProductKey command
   Description : ActivateProductKey supports in-band usage now.
   Validation  : Use in-band ActivateProdcutKey command will work
   Check List  : SUM_Checklist_rev1.3b: 201-IB
   Issue ID    : none
18.Added       : CheckAssetInfo add Memory build date field
   Description : Originally, memory build yy/ww information is shown behind
                 memory manufacturer field. Now show in separate field.
   Validation  : Use CheckAssetInfo command for X10 Grantley MBs.
   Check List  : SUM_Checklist_rev1.3b: 302-OB
   Issue ID    : 53041
19.Added       : CheckSystemUtilization HDD usage field added used MB / Total
                 MB information
   Description : Add this information for HDD usage.
   Validation  : HDD used MB will be shown for CheckSystemUtilization command
   Check List  : SUM_Checklist_rev1.3c: 303-OB
   Issue ID    : none
20.Added       : CheckSystemUtilization NIC section added status field
   Description : Add this information for NIC usage.
   Validation  : NIC status will be shown for CheckSystemUtilization command
   Check List  : SUM_Checklist_rev1.3c: 303-OB
   Issue ID    : none
21.Fixed       : ChangeBiosCfg command will fail on X10 Grantley
   Description : Originally, Boot Mode Select is checked case sensitively. Now
                 checked case insensitively.
   Validation  : Use ChangeBiosCfg command will pass.
   Check List  : SUM_Checklist_rev1.3b: 503-OB
   Issue ID    : 53039, 52782, 52062, 51977
22.Fixed       : CheckLicense does not fail for non-supported system
   Description : Originally, ProductKey activation field will be yes for
                 non-supported systems like X8 MB. Now, will show no.
   Validation  : Use CheckOOBSupport command X8 MBs.
   Check List  : SUM_Checklist_rev1.3b: 301-OB
   Issue ID    : none
23.Fixed       : ClearEventLog command add exception for
                 Menu:   Change Smbios Event Log Settings
                 Item:     Erase Event Log
   Description : If no these menu/item, ClearEventLog will segmentation fault.
                 Now, check menu/item case insensitively. If not matched, show
                 exception.
   Validation  : Use ClearEventLog command will work now.
   Check List  : SUM_Checklist_rev1.3b: 902-OB
   Issue ID    : 53042
24.Fixed       : Multiple system BIOSupdate does not power up for some MB
   Description : Some MB needs retry of power on. Added this logic in
                 SMCIPMITool 2.9.2 2014/05/02 fix this problem.
   Validation  : Use UpdateBios command for multiple system will work.
   Check List  : SUM_Checklist_rev1.3b: 401-OB-MM
   Issue ID    : 53042
25.Fixed       : CheckAssetInfo UUID padding to 16 Bytes
   Description : Originally, UUID information length is not 16 bytes when there
                 are leading 0s. Now pad the UUID length to 16 bytes.
   Validation  : Use CheckAssetInfo command X10 Grantley MBs.
   Check List  : SUM_Checklist_rev1.3b: 302-OB
   Issue ID    : 53041
26.Fixed       : CheckSystemUtilization using reported time as local time
   Description : Originally use local time will have offset in hour. Now use
                 GMTTime will be correct time.
   Validation  : Use CheckSystemUtilization command. Sample time will be
                 correct.
   Check List  : SUM_Checklist_rev1.3c: 303-OB
   Issue ID    : none
27.Fixed       : Design document for TAS is exposed to user
   Description : New TAS package remove design document. Use readme.txt instead
   Validation  : unpack TAS package. Design spec is removed
   Check List  : none
   Issue ID    : 53107


V1.3.0 (2014/04/16)
========================
1. Changed     : BmcCfg Xml file, default action is Change
   Description : Original default action is None. Revise to use Change as
                 default action
   Validation  : Use GetBmcCfg command. The download file should have
                 action Change.
   Check List  : SUM_Checklist_rev1.3a: 801-OB
   Issue ID    : none
2. Fixed       : GetBmcCfg and ChangeBmcCfg does not work for X9 MB
   Description : Add support check and expose only configurations that are
                 supported.
   Validation  : Use GetBmcCfg and ChangeBmcCfg commands for X9/X10 MBs
   Check List  : SUM_Checklist_rev1.3a: 80X-OB, 80X-OB-MM
   Issue ID    : none


V1.3.0 (2014/04/14)
========================
1. Added       : Add command: CheckSystemUtilization (OOB only)
   Description : CheckSystemUtilization needs customer to install AMS package
                 in managed OS.
   Validation  : Install AMS package and use CheckSystemUtilization command
   Check List  : SUM_Checklist_rev1.3a: 303-OB, 303-OB-MM
   Issue ID    : none
2. Added       : Add AMS V0.0.1 software in SUM package.
   Description : CheckSystemUtilization needs customer to install AMS package
                 in managed OS. AMS support both Windows and Linux OS.
   Validation  : Install AMS package and use CheckSystemUtilization command
                 To install AMS package follow these steps:
                 1. Copy AMS_0.0.1_20140411.tar.gz to managed OS.
                 2. Unpack the included AMS package
                    tar -xzf AMS_0.0.1_20140411.tar.gz
                    cd AMS_0.0.1_20140411
                 For Linux OS,
                    1. Unpack the linux.tar.gz file
                       tar xzf linux.tar.gz
                       cd linux
                    2. Select and copy IPMIAMS file. Take 64 bit OS for example
                       cp 64/IPMIAMS ./
                    3. Execute install.sh script file
                       ./install.sh
                 For Windows OS,
                    1. Unpack the win.zip file
                    2. Double click  setup.exe file to install
   Check List  : SUM_Checklist_rev1.3a: 303-OB, 303-OB-MM
   Issue ID    : none
3. Added       : Add command: CheckSensorData (OOB only)
   Description : Check sensor reported reading in the managed system
   Validation  : Use CheckSensorData command
   Check List  : SUM_Checklist_rev1.3a: 304-OB, 303-OB-MM
   Issue ID    : none
4. Changed     : Use SMCIPMITool.jar V2.9.1(Build 140411)
   Description : Use new SMCIPMITool.jar file
   Validation  : run java -jar SMCIPMITool.jar, V2.9.1(Build 140411) is shown
                 on the screen
   Check List  : None .
   Issue ID    : None
5. Changed     : SUM does not use command 30 9b to check OOB support anymore
                 use 30 a0 11 instead
   Description : Command 30 9B is legacy, X10 still support this flag. However
                 suggest to skip this flag starting with SUM 1.3.0
   Validation  : Add debug_level=1 in SMCIPMITool.properties and use SUM
                 commands LoadDefaultBiosCfg with -v option. Command 30 9B
                 does not appear on the screen anymore
   Check List  : SUM_Checklist_rev1.3a: 504-OB
   Issue ID    : none
6. Changed     : ChangeBmcCfg output message will mimic ChangeBiosCfg output
                 Transactions will be logged in log file once error happens
                 Log file format: <BmcCfgFile>.log.<HostName>.DateTime_PID
                 If no errors, log file will be removed.
   Description : BmcCfg transaction is item by item not as BiosCfg transaction
                 which has only one transaction: all success or all fail. To
                 reduce risk of errors for BmcCfg, SUM better keep transaction
                 information while errors happen.
   Validation  : Execute SUM with ChangeBmcCfg command. Output message should
                 looks similar to ChangeBiosCfg. With -v option, transaction
                 will still be shown on screen output.
   Check List  : SUM_Checklist_rev1.3a: 802-OB
   Issue ID    : none
7. Changed     : BMC configuration text file adds "Action" attribute for first
                 two tier of tables, i.e. children and grand children of
                 /BmcCfg table. Supported actions are "None" and "Change"
   Description : To change tables in BMC configuration file, users must
                 consciously change the action attribute and know what they
                 themselves are doing.
   Validation  : Configuration items will take effect only when every ancestor
                 action attribute value is "Change".
   Check List  : SUM_Checklist_rev1.3a: 801-OB, 802-OB
   Issue ID    : none
8. Changed     : BMC configuration text file adds StdCfg and OemCfg table under
                 BmcCfg root table. OemCfg table can only be used for licensed
                 X10 BMC.
   Description : X10 BMC recently added Lan/ServiceEnabling/ServicePort/FanMode
                 tables. These OEM configuration requires efforts in BMC FW.
                 It requires license key as well. SUM will check license key
                 for OemCfg table get/change.
   Validation  : 1. Deactivate license. Then GetBmcCfg. Output file will
                    not have OemCfg table. Then revise action as "Change". Then
                    ChangeBmcCfg.
                 2. Activate license. Then GetBmcCfg. Output file will have
                    OemCfg table. Then revise action as "Change". Then
                    ChangeBmcCfg.
                 3. Deactivate license. Then ChangeBmcCfg with the revised
                    output file from  2. Product key exception will be shown on
                    screen
   Check List  : SUM_Checklist_rev1.3a: 801-OB, 802-OB
   Issue ID    : none
9. Changed     : GetEventLog output will replace long "-" line with empty line
   Description : Event separator was long ----- line. Now change to empty line
   Validation  : 1. Generate some IPMI events
                 2. Use GetEventLog command
                 3. The long ---- line will be replaced with empty line
   Check List  : SUM_Checklist_rev1.3a: 901-OB
   Issue ID    : none
10.Fixed       : GetEventLog command can parse BIOS generated QPI/MRC errors
   Description : BIOS will put-in a copy of QPI/MRC events to BMC. SUM can show
                 these events with GetEventLog command.
   Validation  : MRC error: remove Memory and power up the MB. MRC error will
                 be shown on both BMC "Server Health"->"Event Log" web page and
                 SUM can show the event log by GetEventLog command
                 QPI error currently don't have standard way to reproduce.
   Check List  : SUM_Checklist_rev1.3a: 502-OB, 502-IB
   Issue ID    : 51751
11.Fixed       : Network interface is N/A
   Description : With AOC-STG-i2T, VPD Utility 1.0.3, SUM can show Network
                 interface information using CheckInventory command
   Validation  : Plug AOC-STG-i2T NIC to MB. Use VPD Utility 1.0.3 to write SN,
                 PN, and PCB data. Power up MB. Use SUM CheckInventory command
                 Network Interface information should be shown on screen.
   Check List  : SUM_Checklist_rev1.3: 302-OB
   Issue ID    : 51692, 51995
12.Fixed       : Produce some random name file
   Description : Random file will be generated when CheckInventory throw error
   Validation  : None
   Check List  : SUM_Checklist_rev1.3: 301-OB
   Issue ID    : 52061
13.Fixed       : Add DEVICE_BUFFER_SIZE checking when getting in-band file from
                 BIOS
   Description : Double free error when getting in-band DMI binary file
   Validation  : Use BIOS X10SRL_T20140305133501 and GetDmiInfo in-band command
   Check List  : SUM_Checklist_rev1.3a: 601-IB
   Issue ID    : 51725
14.Fixed       : When system name is repeated in system list file, throw error
   Description : System name should not be repeated in system list file. If
                 repeated, throw exception and show error.
   Validation  : Repeated list system name in system list file and use -l
                 option for any OOB command. SUM will throw exception and show
                 error.
   Check List  : SUM_Checklist_rev1.3a: XXX-OB-MM
   Issue ID    : none
15.Fixed       : When BIOS default value is incorrect, throw exception
   Description : GetDefaultBiosCfgTextFile will throw exception if DAT file
                 default value format is incorrect
   Validation  : Use BIOS X10DRFF_T201403071517.bin and command
                 GetDefaultBiosCfgTextFile
   Check List  : SUM_Checklist_rev1.3a: 502-OB, 502-IB
   Issue ID    : 51751
16.Fixed       : Multiple system usage will segmentation fault when managing
                 more than 20 nodes
   Description : Some API is not thread safe and exception throwing causes
                 memory leak. Use thread safe API and fix memory leak
   Validation  : Use -l option and run SUM commands for more than 20 systems
   Check List  : SUM_Checklist_rev1.3a: *-OB-MM
   Issue ID    : none


V1.3.0 (2014/02/27)
========================
1. Added       : Added OOB commands: GetBmcInfo, UpdateBmc, GetBmcCfg,
                 ChangeBmcCfg, CheckInventory, GetEventLog, ClearEventLog
   Description : CheckInvetory/GetEventLog/ClearEventLog only for X10 DP MBs
   Validation  : Check help message and use the commands
   Check List  : SUM_Checklist_rev1.3: 7xx-OB, 7xx-OB-MM, 8xx-OB, 8xx-OB-MM,
                 9xx-OB, 9xx-OB-MM, 301-OB, 301-OB-MM, 304-OB, 304-OB-MM
   Issue ID    : None
2. Added       : Added BIN/DAT file mismatch checking when downloading DAT/BIN
                 files for BIOS configuration
   Description : Some BIOS has problems in uploading BIN/DAT file to BMC. SUM
                 will check if both of them are built at the same date time. If
                 not, exception will be thrown
   Validation  : Use GetCurrentBiosCfg command. If BIOS has problem, exception
                 will be thrown.
   Check List  : SUM_Checklist_rev1.3: 5xx-OB, 5xx-OB-MM
   Issue ID    : None
3. Added       : Added DAT item offset value exceeds variable size exception
   Description : Some BIOS has problems in DAT file. The offset value will
                 exceeds the variable size. The SUM will crash in such case.
                 Add exception handling for this case.
   Validation  : Use GetCurrentBiosCfg command. If BIOS has problem, exception
                 will be thrown.
   Check List  : SUM_Checklist_rev1.3: 5xx-OB, 5xx-OB-MM
   Issue ID    : None
4. Changed     : Use SMCIPMITool.jar V2.7.0.1(Build 140226)
   Description : Capable of parsing BIOS generated event log
   Validation  : use GetEventLog command
   Check List  : 9xx-OB, 9xx-OB-MM
   Issue ID    : none

V1.2.0 (2014/01/15)
========================
1. Fixed       : "BIOS configuration commands not working correctly in SUM" for
                 MB X9DRH-iF
   Description : When no default value is given from BIOS, BIOS Configuration related
                  commands will not work correctly.
   Validation  : Do BIOS configuration related commands on X9DRH-iF MB
   Check List  : 50X-XX-XX
   Issue ID    : 50248
2. Fixed       : "[SUM Multi-Machine] The process does not complete during
                 update BIOS with sum V1.2.0(2013/12/31) on multiple system."
   Description : PrintProgress flag mis-used for multi-machine solution.
   Validation  : Do Multi-Machine related commands
   Check List  : XXX-OB-MM
   Issue ID    : 50006
3. Fixed       : Progress message has lots of dots and space.
   Description : PrintProgress message revised in 2013/12/31 release
   Validation  : Do OOB related commands with -v option
   Check List  : XXX-OB
   Issue ID    : None
4. Fixed       : Document page title invalid in User Guide
   Description : Some page title in UserGuide was not changed.
   Validation  : UserGuide page title is revised as Supermicro Update Manager
   Check List  : UserGuide
   Issue ID    : None

V1.2.0 (2013/12/31)
========================
1. Fixed       : "[SUM In_Band issue]Do not preserve dmi info after BIOS update
                 on X9SCi-LN4F." (IssueID=49874)
   Description : When SKU support both ME flashing methods (block-by-block,
                 type-by-type), default should use type-by-type method.
   Validation  : Do in-band BIOS update command on X9SCi-LN4F MB
   Check List  : 402-IB
   Issue ID    : 49874

V1.2.0 (2013/12/20)
========================
1. Added       : Special release for Linux x86_32
   Description : SUM and driver to be used in x86_32 system
   Validation  : All commands to be executed in Linux x86_32
   Check List  : Every 1st priority item
   Issue ID    : none

V1.2.0 (2013/12/4)
========================
1. Fixed       : ChangeDmiInfo command will not work if there are multiple
                 handles for a DMI type.
   Description : New BIOS support multiple handles for a DMI type. GetDmiInfo
                 will show two power supply items. SUM did not work for more
                 than two items when using ChangeDmiInfo command.
   Validation  : ChangeDmiInfo command should work normally.
   Check List  : 602-OB, 602-IB, 602-OB-MM
   Issue ID    : 49277


V1.2.0 (2013/11/14)
========================
1. Fixed       : ActivateProductKey command does not work when managing
                 multiple systems.
   Description : Use -l option with ActivateProductKey command
   Validation  : Function should work normally.
   Check List  : 201-OB-MM
   Issue ID    : none
2. Fixed       : Incorrect error message when using directory name as a file
                 name input
   Description : Use directory name "direcotryname/" as file name input
   Validation  : Should show that the file name is a directory in the error
                 message.
   Check List  : 302-*, 401-*, 50x-*, 60x-*
   Issue ID    : none
3. Fixed       : "sum:xxxx freeing invalid memtype" message is shown in the
                 dmesg output when using in-band UpdateBios command
   Description : Execute in-band UpdateBios command; then execute dmesg -c
   Validation  : There should be no such error message appeared.
   Check List  : 401-IB
   Issue ID    : none


V1.2.0 (2013/11/06)
========================
1. Fixed       : Typo in MB Type "X9DRAW-7TPF" while updating BIOS with SUM
   Description : MB type should be "X9DRW-7TPF"
   Validation  : Use OOB UpdateBios command for MB X9DRW-7TPF
   Check List  : 401-OB
   Issue ID    : 41951
2. Fixed       : [ SUM ] Error exit code in "Invalid firmware image file test"
   Description : Exit code should be 62 instead of 82
   Validation  : Use OOB UpdateBios command with invalid file
   Check List  : 401-OB, 401-IB
   Issue ID    : 48507
3. Added       : Require product key activation for all In-Band commands except
                 "UpdateBios."
   Description : Only UpdateBios does not require product key activation
   Validation  : For every in-band command except UpdateBios, command can run
                 only when product key is activated. UpdateBios command does
                 not require product key activation.
   Check List  : 3xx-IB, 401-IB, 5xx-IB, 6xx-IB
   Issue ID    : none
4. Added       : Only support systems that have OOB-supported BMC firmware for
                 all In-Band commands except "UpdateBios."
   Description : Only UpdateBios does not require BMC firmware.
   Validation  : For every in-band command except UpdateBios, command can run
                 only when BMC JPB1 jumper is enabled. UpdateBios command does
                 not require BMC JPB1 jumper been enabled.
   Check List  : 3xx-IB, 401-IB, 5xx-IB, 6xx-IB
   Issue ID    : none
5. Added       : Add Summary information for status list in screen output and
                 log file when managing multiple systems
   Description : Add Summary for execution status before and after status list
   Validation  : Use -l option for every command, see status list on screen
                 output, there should be summary information. In log file, a
                 Summary section is added before status list section.
   Check List  : 201-OB-MM
   Issue ID    : none
6. Changed     : Use SMCIPMITool.jar V2.6.2.1(Build 131105)
   Description : 1.Revise MB Type typo for X9DRW-7TPF
   Validation  : use BIOS update command for X9DRW-7TPF
   Check List  : none
   Issue ID    : 41951


V1.2.0 (2013/10/02)
========================
1. Added       : GetDmiInfo and ChangeDmiInfo commands
   Description : Official release DMI edit related functions
   Validation  : Use GetDmiInfo and ChangeDmiInfo commands for OOB, IB and
                 OB-MM operation modes
   Check List  : 6xx-* items, 301-OB, 301-OB-MM
   Issue ID    : none
2. Added       : In-Band UpdateBios command for X10 platform
   Description : Support X10 platform for In-Band UpdateBios command
   Validation  : Use In-Band UpdateBios command for X10 platform
   Check List  : 4xx-IB items
   Issue ID    : 47466
3. Added       : Add OOB multi-machine concurrent execution function
   Description : Through machine list file, every OOB command can be executed
                 concurrently for every machines listed in the file.
   Validation  : Use all OB-MM function
   Check List  : *-OB-MM items
   Issue ID    : 44753
4. Changed     : Eliminate --me_type option
   Description : Auto select ME, MER, NONE options for In-Band UpdateBios
                 command
   Validation  : In-band UpdateBios command does not use --me_type option
   Check List  : 4xx-IB items
   Issue ID    : none
5. Fixed       : OOB causes BIOS to reset the number of active processor cores
                 to ALL
   Description : ChangeBiosCfg command will reset to default for current
                 settings that is in the BIOS setup menu but not exposed in the
                 BIOS setup text file
   Validation  : Use ChangeBiosCfg command
   Check List  : 503-* items
   Issue ID    : 48190
6. Changed     : Use SMCIPMITool.jar version 2.6.1 build 130917
   Description : 1.Updated "bios ver" command for AMI firmware. Enable this command when system is On.
                 2.Updated return code of "bios ver" command
   Validation  : Use bios ver command for AMI firmware.
   Check List  : none
   Issue ID    : none


V1.1.0 (2013/09/12)
========================
1. Added       : In-Band usage mode
   Description : Officially release In-Band BIOS update and BIOS configuration
                 update functions
   Validation  : Use all In-Band function
   Check List  : *-IB items
   Issue ID    : none
2. Changed     : Change "LoadFactoryDefault" command to "LoadDefaultBiosCfg"
   Description : We will have DMI/BMC configuration feature. To avoid
                 confusion, change LoadFactoryDefault command name.
   Validation  : Command name is changed.
   Check List  : *-IB items
   Issue ID    : 504-OB, 504-IB



V1.0.2 (2013/08/15)
========================
1. Fixed       : "Board ID mismatch during OOB BIOS flash" for MB X9SRL
   Description : Cannot UpdateBios for MB X9SRL because board ID mismatched
   Validation  : UpdateBios for MB X9SRL successfully
   Check List  : 401
   Issue ID    : 47272
2. Changed     : Use SMCIPMITool.jar V2.5.4.2(Build 130815)
   Description : Use new SMCIPMITool.jar file
   Validation  : run java -jar SMCIPMITool.jar, V2.5.4.2(Build 130815) is shown
                 on the screen
   Check List  : None 
   Issue ID    : None


V1.0.1 (2013/07/30)
========================
1. Fixed       : "Board ID mismatch during OOB BIOS flash" for MB X9DRL-iF
   Description : Cannot UpdateBios for MB X9DRL-iF because board ID mismatched
   Validation  : UpdateBios for MB X9DRL-iF successfully
   Check List  : 401
   Issue ID    : 46685
2. Fixed       : "Cannot disable multiple Boot Device" for [Boot] menu in BIOS
                 configuration text file
   Description : User cannot setup multiple disabled Boot Device.
   Validation  : User can setup multiple disabled Boot Device.
   Check List  : 501, 503
   Issue ID    : none
3.Changed      : Use SMCIPMITool.jar V2.5.4.1(Build 130730)
   Description : Use new SMCIPMITool.jar file
   Validation  : run java -jar SMCIPMITool.jar, V2.5.4.1(Build 130730) is shown
                 on the screen
   Check List  : None .
   Issue ID    : None


V1.0.0 (2013/06/25)
========================
1. Changed     : Rename program name as "sum" and use version number 1.0.0
   Description : Program name is renamed as "sum". Version is 1.0.0
   Validation  : Program name is "sum". Version is 1.0.0
   Check List  : 1. Help message
                 2. Release Note
                 3. User Guide
   Issue ID    : None


V1.0.2 (2013/06/03)
========================
1. Fixed       : In-band UpdateBIOS command cannot preserve SMBIOS for new BIOS
   Description : In-band UpdateBIOS will search for $SMC byte-by-byte to
                 preserve SMBIOS data correctly.
   Validation  : ./smcibu -c UpdateBios
   Check List  : SMBIOS data will be preserved.
   Issue ID    : 44721
2. Added       : (Stress) Add maximum of 90 seconds connection detection before
                 doing OOB tasks
   Description : Host is sometimes unreachable, we add connection detection
                 before doing any OOB task.
   Validation  : Do stress test for smcibu OOB functions.
   Check List  : Cannot find connection failure message.
   Issue ID    :  45027, 45035
3. Fixed       : (Stress) Exit Code 87 problem when filtering network retry
                 message
   Description : SMCIPMITool will output network retry message after receiving
                 UDP packets if RMCP+ session close failed. smcibu will filter
                 out this message so that this failure can be bypassed.
   Validation  : Do stress test for smcibu OOB functions.
   Check List  : No Exit code 87 can be found again.
   Issue ID    : none.
4. Fixed       : (Stress) Random issues in stress test
   Description : There are random issues when doing stress test of OOB tasks.
                 Similar issues are not reproducible in this new smcibu.
   Validation  : Do stress test for smcibu OOB functions.
   Check List  : No error can be found.
   Issue ID    : 45969, 45988, 45989, 45996, 45999, 46000
5. Added       : Add usage notice for --preserve_mer option.
   Description : --preserve_mer should be used cautiously. We add usage notice
                 for this option.
   Validation  : ./smcibu
   Check List  : The help message show usage notice for --preserve_mer option
   Issue ID    : 45892
6. Fixed       : Return correct exit code for SMCIPMITool.jar when using BIOS
                 getMACs command
   Description : When input error-formated parameters for BIOS getMacs command,
                 SMCIPMITool will return correct exit code instead of 0
   Validation  : java -jar SMCIPMITool.jar <IP> <ID> <PASSWD> bios getMacs
                 10.1.1.1 20.1.1.1 255.255.255.0 MyMacs.txt
   Check List  : exit code is 147
   Issue ID    : 45888
8. Fixed       : BiosUpdate command with --reboot will preserve smbios even when
                 --flash_smbios option is called.
   Description : SMCIPMITool parse reboot option conflict with flash smbios
                 option. New smcibu include new SMCIPMITool and parse the
                 argument correctly.
   Validation  : ./smcibu -i <IP> -u <ID> -p <PASSWD> -c UpdateBios --reboot
                 --flash_smbios
   Check List  : All smbios data will be restored to factory defaults
   Issue ID    : 45968
9. Changed     : Use thread safe temporary file creation APIs
   Description : smcibu will use thread safe mkstemp api instead of mktemp API
                 to create temp file. This will be more safe when doing multi-
                 machine tasks.
   Validation  : none
   Check List  : none
   Issue ID    : none
10.Changed     : Use SMCIPMITool.jar V2.5.2.4(Build 130611)
   Description : Use new SMCIPMITool.jar file
   Validation  : java -jar SMCIPMITool.jar
   Check List  : V2.5.2.4(Build 130611) is shown on the screen.
   Issue ID    : None
11.Fixed       : Stress test UpdateBios will fail exit code 82
    Description: When this problem happens, SMCIPMITool retry once for get BIOS
                 ROM info command for only 7.5 seconds. New SMCIPMITool retry
                 for BIOS ROM info command changed back to 30 seconds.
    Validation : Do stress test for smcibu OOB functions.
    Check List : Exit code 82 cannot be found
    Issue ID   : 45989, 45998



V1.0.1 (2013/05/29)
========================
1. Changed     : Change UpdateBios command options.
   Description : Option changed:
                 [--update_mer] => [--preserve_mer],
                 [--write_nv]   => [--preserve_nv],
                 [--preserve_smbios] => [--flash_smbios]
   Validation  : 1. Invoke smcibu UpdateBios command using invalid file and
                    check each old option and new option.
                    ./smcibu -i <IP> -u <User> -p <PASSWD> -c UpdateBios --file
                      <InvalidBiosFile> -v
   Check List  : 1. Each old option is invalid and each new option is valid.
                 2. If no option is given, these strings will appear on the
                    screen: "Option: NVRAM overwrite", "Option: ME region"
                    "Option: SMBIOS preserve"
                 3. If --preserve_mer is given, the string "Option: ME region"
                    will not be shown on the screen
                 4. If --preserve_nv is given, the string "Option: NVRAM
                    overwrite" will not be shown on the screen.
                 5. If --flash_smbios is given, the string "Option: SMBIOS
                    preserve" will not be shown on the screen
   Issue ID    : 44721
2. Added       : Add UI limitation for options [--preserve_nv] and
                 [--flash_smbios]
   Description : For UpdateBios command, we cannot allow user to use these two
                 options at the same time.
   Validation  : 1. Invoke smcibu UpdateBios command with these two options.
                    ./smcibu -i <IP> -u <User> -p <PASSWD> -c UpdateBios --file
                    <BiosFile> -v --preserve_nv --flash_smbios
   Check List  : 1. Exit code is 7 => Option Conflict
                 2. Error message:
                    Limitation: options [--preserve_nv] and [--flash_smbios]
                    cannot be used at the same time.
   Issue ID    : 44938, 44721
3. Changed     : Do not use ping as connection check. As we use it only for
                 name resolution, we change to use gethostbyname api.
   Description : Smcibu translated from host name to IP address by ping command
                 Now smcibu use gethostbyname api instead. Leave connection
                 check to SMCIPMITool
   Validation  : Unplug remote target before invoking any smcibu command.
   Check List  : There will be IPMI connect failed error message instead of
                 Host Unreachable error message.
   Issue ID    : 45035, 45779, 45781

4. Changed     : Reserve -I for future usage. Add UI filtering for upper case
                 -I option.
   Description : Before, we can use both -i and -I as option name of IPAddress
                 Now, -I is reserved for future usage as interface option. So,
                 we cannot allow user to use -I option.
   Validation  : Invoke any smcibu command with -I option for IPAddress.
   Check List  : There will be Option Conflict error message.
   Issue ID    : 44751
5. Added       : Add user privilege check. Only Administrator can do OOB tasks
   Description : smcibu will check user privilege level before invoking any OOB
                 tasks. If the user privilege level is not Administrator, there
                 will be clear error message.
   Validation  : 1. Create non-administrator user account in BMC.
                 2. Invoke any smcibu command using this account
   Check List  : There will be error message "Only users with the Administrator
                 level privileges can perform OOB tasks."
   Issue ID    : 44855
6. Fixed       : Revise help message and adapt to terminal window size.
   Description : Help message will break message line according to current
                 terminal window size. Error message will adapt to window
                 size as well.
   Validation  : 1. Shrink or Expand terminal window size and invoke smcibu
                    without arguments.
                    ./smcibu
                 2. Shrink or Expand terminal window size and invoke smcibu
                    with wrong options
                    ./smcibu --file
   Check List  : 1. The help message break message line according to changed
                    terminal window size.
                 2. The error message break message line according to changed
                    terminal window size
   Issue ID    : 44720
7. Fixed       : Add title color for warning, error, status and help message.
   Description : Use yellow color for waning, red color for error, bold text
                 for status message. Use bold text for section title in help
                 message.
   Validation  : 1. To validate warning and status color:
                    ./smcibu -i <IP> -u <User> -p <PWD> -c LoadFactoryDefault
                      -v
                 2. To validate error color:
                    ./smcibu --file
                 3. To validate help title Bold text:
                    ./smcibu
   Check List  : 1. WARNING is in yellow color. Status: and Note: are in bold
                    text.
                 2. <<<ERROR>>> is in red color
                 3. NAME, SYNOPSIS, OPTIONS, COMMANDS, EXAMPLES are in bold
                    text.
   Issue ID    : 44722
8. Fixed       : Remove ProductKey information from activate file.
   Description : SMCIPMITool.jar with Bios SetKeys command will append result
                 to Key file and generate activate file. The key is stored in
                 the activate file. New SMCIPMITool will not store key in the
                 activate file.
   Validation  : 1. Compose a key file with format: MAC;IP;Key
                 2. Use the command
                    java -jar SMCIPMITool.jar <IP> <ID> <PWD> bios setKeys
                    <KEY_FILE>
   Check List  : The generated log file will have the format: MAC;IP;Result
                 instead of the format: MAC;IP;KEY;Result
   Issue ID    : 45082
9. Fixed       : Revise update begin/done message for BIOS update and BIOS
                 configuration update.
   Description : Warning message is reduced to "Do not remove AC power from the
                 server." Other message becomes "Status" or "Note"
   Validation  : Invoke smcibu with commands
                 1. LoadFactoryDefault with/without --reboot
                 2. ChangeBiosCfg with/without --rebot
                 3. UpdateBios
   Check List  : Only one warning message "Do not remove AC power from the
                 server." is shown. Other message becomes "Status" or "Note"
   Issue ID    : None

10.Changed     : Use SMCIPMITool.jar V2.5.2.1(Build 130524)
   Description : Use new SMCIPMITool.jar file
   Validation  : java -jar SMCIPMITool.jar
   Check List  : V2.5.2.1(Build 130524) is shown on the screen.
   Issue ID    : None

11.Added       : Add java runtime environment check.
   Description : Check if JRE exists. Check if JRE version is 1.6.0 or later.
   Validation  : 1. Remove jdk. Check if smcibu report message correctly.
                 2. Install JDK 1.5.0. Check if smcibu report message correctly
                 3. Remove jdk and install JDK 1.6.0 or later. Check if smcibu
                    executes correctly.
   Check List  : 1. smcibu report "JRE was not found. Please install JRE "1.6.0
                    or later"."" Exit code = 86.
                 2. smcibu report JRE "1.6.0 or later" is required.  Exit code
                    = 86
                 3. smcibu executes correctly.
   Issue ID    : none

12.Added       : Add --reboot option for UpdateBios command.
   Description : Add --reboot option for UpdateBios command.
   Validation  : 1. Run smcibu UpdateBios command with --reboot option
                 2. Run smcibu UpdateBios command without --reboot option
   Check List  : 1. After Updating BIOS, target machine will be rebooted.
                 2. After Updating BIOS, will show message "You have to reboot
                    or power up the system for the changes to take effect"
   Issue ID    : none


v1.0.0 (2013/04/03)
========================
1. Added       : Append smcibu build date information to version information.
   Description : Add (yyyy/mm/dd) for build date information after version.
   Validation  : Execute any smcibu command
   Check List  : (yyyy/mm/dd) information is added after version information
   Issue ID    : none
2. Changed     : Use SMCIPMITool.jar 2.5.0
   Description : Use SMCIPMITool.jar file version 2.5.0 to extend network
                 retry timeout to 60 seconds.
   Validation  : java -jar SMCIPMITool.jar
   Check List  : V2.5.0 is shown on the screen.
3. Changed     : Change UI option to lower case in help and manual. But in
                 program, it is actually case insensitive.
   Description : UI options [-H, -V, -I, -U, -P, -C] changed to [-h, -v, -i,
                 -u, -p, -c]
   Validation  : 1. Execute ./smcibu with no any options to see the help
                 information
                 2. Execute any smcibu command with upper or lower case
                    options.
   Check List  : 1. lower case option name is shown in help message.
                 2. Both lower and upper case can be used normally.
   Issue ID    : none
4. Changed     : Change command specific options to long name.
   Description : --f => --file, --k => --key, --o => --overwrite, --n =>
                 --write_nv, --r => --preserve_smbios, --mer => --update_mer.
   Validation  : Execute smcibu commands to see if the option name is changed.
   Check List  : See if old option names do not work and new option names work.
   Issue ID    : none
5. Changed     : Extend protection time to 30 seconds for unplug and plug
                 network cable during smcibu execution.
   Description : Before V2.5.0 the protection time for unplug and plug
                 network cable is sometimes within 10 seconds, now it's safe
                 to unplug network cable for 30 seconds.
   Validation  : 1. Perform UpdateBios command for either AMI or ATEN firmware
                 2. Unplug network cable at upload or update stage for 30
                    seconds and plug back the network cable.
   Check List  : 1. After plug back the network cable for a while, the update
                    procedure continues.
   Issue ID    : none
6. Fixed       : Revise message in UserSetup.txt file.
   Description : Original: "Please key in 1-byte hexdecimal value."; Fixed:
                 "Please enter the value in 2 hexadecimal digits."
   Validation  : 1. Execute "GetCurrentBiosCfgTextFile" command to get the
                    UserSetup.txt file
   Check List  : 1. The term ""Please key in x-byte hexdecimal value."
                    disappeared.
                 2. The term "Please enter the value in x hexadecimal digits."
                    appeared
   Issue ID    : none
7. Fixed       : Revise warning message for LoadFactoryDefault command.
   Description : Original: "Updating BIOS configuration";  Fixed: "Loading BIOS
                  default configuration"
   Validation  : 1. Execute LoadFactoryDefault command
   Check List  : 1. The term in warning message is changed.
   Issue ID    : none
8. Fixed       : Revise warning message for ChangeBiosCfg, LoadFactoryDefault
                 and UpdateBios commands.
   Description : Original: "reboot"; Fixed: "reboot or power up".
   Validation  : 1. Execute the ChangeBiosCfg, LoadFactoryDefault and
                    UpdateBios commands.
   Check List  : 1. The term in warning message has been changed.
   Issue ID    : none
9. Fixed       : Revise message for ChangeBiosCfg, LoadFactoryDefault with
                 reboot option.
   Description : 1. When the update is success after reboot, original: "WARNING";
                    Fixed:"INFORMATION"
   Validation  : 1. Execute ChangeBiosCfg and LoadFactoryDefault commands with
                    reboot option.
   Check List  : 1. After system reboot, the final message show "*INFORMATION*"
                    instead of "*WARNING*"
   Issue ID    : none
10.Fixed       : Revise message for ChangeBiosCfg and LoadFactoryDefault
                 commands with reboot option.
   Description : When confirming BIOS configuration applied, original:
                 "Confirm"; Fixed: "Confirming"
   Validation  : 1. Execute ChangeBiosCfg and LoadFactoryDefault commands with
                    reboot option and -v option.
   Check List  : 1. message changed from "Confirm BIOS configuration applied"
                    to "Confirm BIOS configuration applied"
   Issue ID    : none


v1.00
========================
1. Changed     : Official release
   Description : Change version number to 1.00
   Validation  : execute ./smcibu
   Check List  : v1.00 is shown on the screen

v0.98
========================
1. Changed     : Use SMCIPMITool.jar 2.4.10.4
   Description : Use SMCIPMITool.jar file version 2.4.10.4 to support AMI FW
   Validation  : java -jar SMCIPMITool.jar
   Check List  : V2.4.10.4 is shown on the screen.

2. Removed     : Remove exit code 4, 31~59 and 80 in UserGuide.
   Description : These exit code never appears. So we remove them from User
                 Guide.
   Validation  : Open User Guide and read Appendix.
   Check List  : These exit codes are removed from the Appendix of User Guide.

3. Changed     : Support AMI BMC FW 2.11.6
   Description : There are issues for AMI BMC FW before 2.11.6
   Validation  : Use AMI BMC FW 2.11.6 and check the following fixed items.
   Check List  : Check item 4, 5, 6

4. Fixed       : For AMI FW, unplug and plug network cable during update BIOS,
                 the test result is fail.
   Description : Before AMI BMC FW 2.11.x, the network recovery time at update
                 stage is to0 long for smcibu and will cause network time out,
                 if we unplug and plug BMC network cable at the update stage.
   Validation  : 1. Use AMI BMC FW 2.11.6
                 2. Perform UpdateBios command
                 3. Unplug network cable at update stage for 20 seconds and
                    plug back the network cable.
   Check List  : 1. 30 seconds after plug back the network cable, the update
                    procedure continues.
   Issue ID    : 44153

5. Fixed       : For AMI FW, if we use wrong file for UpdateBios command, the
                 next UpdateBios command will fail.
   Description : Before AMI BMC FW 2.11.x, if we provide any text file for
                 UpdateBios command for the first time. Then any later
                 UpdateBios command will fail unless system is power cycled.
   Validation  : 1. Use AMI BMC FW 2.11.6
                 2. Perform UpdateBios command with wrong file for --f option.
                 3. After process terminated, do normal UpdateBios command with
                    correct BIOS file.
   Check List  : 1. At step 2, error message "Invalid BIOS file" is shown.
                 2. At step 3, the UpdateBios command can be executed correctly.
   Issue ID    : 44208

6. Fixed       : For AMI FW, if the smcibu is terminated or network connect
                 time out at update stage, the later update command will fail.
   Description : Before AMI BMC FW 2.11.x, if we stop the smcibu at update
                 stage, the later UpdateBios command will fail unless system is
                 power cycled.
   Validation  : 1. Use AMI BMC FW 2.11.6
                 2. Perform UpdateBios command and terminate the process at
                    update stage or unplug network cable at update stage for 3
                    minutes to force timeout.
                 3. Do normal UpdateBios command.
                 4. Sleep for 8 minutes.
                 5. Do normal UpdateBios command.
   Check List  : 1. At validation step 3, there will be message showing that
                    other users is updating.
                 2. At validation step 5, the command can be executed normally.
   Issue ID    : 44207




v0.97
========================
1. Changed     : Add "File xxx is created." output message for
                 "GetCurrentBiosCfgTextFile" and "GetDefaultBiosCfgTextFile"
                 commands when the command is executed successfully.
   Description : There was no output message of these two commands when they
                 are successfully executed. Will add "File xxx is created." in
                 this situation.
   Validation  : Execute these two commands.
   Check List  : Output message is displayed.

2. Fixed       : Support HostName usage for -I option
   Description : Using HostName was not supported
   Validation  : Execute any OOB commands and use hostnames in the -I argument
   Check List  : 1. If the HostName is an IP Address, it works as usual.
                 2. If the HostName is not a valid URL, it will show cannot
                    connect to address and return exit code 10
                 3. If the HostName is a valid URL but not a BMC address, it
                    will show IPMI connect failed and return exit code 145.
                 4. If the HostName is a valid URL for a BMC address, it will
                    work as usual.
   Issue ID    : None

3. Fixed       : UpdateBios output message for BMC whose product key is not
                 activated.
   Description : Use UpdateBios command for BMC that was not activated. The
                 output message will not simply say Product key is not
                 activated.
   Validation  : 1. Revoke BMC product key by using
                    java -jar SMCIPMITool.jar ip id passwd ipmi raw 30 70 f2
                 2. Execute smcibu oob command "UpdateBios"
   Check List  : 1. The program will return exit code 80.
   Issue ID    : None

4. Fixed       : UpdateBios output message when network time out happens.
   Description : Use UpdateBios command and disconnect network, output message
                 does not reflect failure of network connection.
   Validation  : 1. Execute smcibu oob command "UpdateBios"
                 2. Disconnect network sometime later.
   Check List  : 1. The program will return exit code 145.
                 2. There would be output message saying that network
                    connection failed.
   Issue ID    : 43155

5. Fixed       : [X9DRW] BIOS prepare timeout when I try to update BIOS when
                 system power off.
   Description : Fix UpdateBios command cannot work when remote target is
                 power off problem by using 30 a0 18 command to detect power
                 status correctly to avoid hand shake between BIOS and BMC
                 when system is power off.
   Validation  : 1. Power off the remote target.
                 2. Execute smcibu oob command "UpdateBios"
   Check List  : 1. The function works correctly.
   Issue ID    : 43156

6. Changed     : Use SMCIPMITool.jar 2.4.10.3
   Description : Use SMCIPMITool.jar file version 2.4.10.3 to fix smcibu issues
   Validation  : java -jar SMCIPMITool.jar
   Check List  : V2.4.10.3 is shown on the screen.


v0.96
========================

1. Fixed       : Using absolute path to invoke smcibu, program failed to find
                 SMCIPMITool.
   Description : When invoking smcibu from script using relative/absolute path,
                 the smcibu cannot find SMCIPMITool in smcibuHome directory.
   Validation  : Execute smcibu from directories other than smcibuHome.
   Check List  : The program can execute correctly.
   Issue ID    : None

2. Changed     : Change output format of command GetBiosInfo to be consistent
                 with command CheckOOBSupport by using "..." list.
   Description : Originally, GetBiosInfo use "=" representation, now we use
                 "..." representation for output message.
   Validation  : Execute GetBiosInfo command
   Check List  : "..." format is presented.
   Issue ID    : None

3. Changed     : In the screen output of CheckOOBSupport command, use
                 "BIOS build date" instead of "BIOS release date"
   Description : Originally, CheckOOBSupport command use the term
                 "BIOS build date", now we use "BIOS release date".
   Validation  : Execute CheckOOBSupport command
   Check List  : "BIOS release date" is presented.
   Issue ID    : None

4. Fixed       : For inband usage of UpdateBios command with --r option, error
                 message "ROM is occupied" is shown.
   Description : Kernel module mutex locking mechanism lock the module, when
                 --r option is used.
   Validation  : Use new kernel module and the smcibu tool to execute smcibu
                 updatebios command with --r option.
   Check List  : The program runs correctly and no error message is shown.
   Issue ID    : None

5. Changed     : Change -V option help message
   Description : Originally, -V use "Verbose output" help message. Now change
                 to "Displays the verbose output on the screen"
   Validation  : Execute smcibu without option
   Check List  : -V help message is changed to "Displays the verbose output on
                 the screen"
   Issue ID    : None

6. Fixed       : Using absolute path to invoke smcibu for local In-Band usage,
                 program failed to find bios.ko file.
   Description : When invoking smcibu for local In-Band usage from script using
                 relative/absolute path, the smcibu cannot find bios.ko file in
                 smcibuHome directory.
   Validation  : Execute smcibu local In-Band usage from directories other than
                 smcibuHome.
   Check List  : The program can execute correctly.
   Issue ID    : None


v0.95
========================

1. Added       : Show version information at header when smcibu is invoked.
   Description : Display version information when smcibu executes
   Validation  : Execute smcibu
   Check List  : Version information show up at the header of message output
   Issue ID    : None

2. Changed     : Supported short options: -H -V -I -U -P -C
   Description : Change the supported short options for new CLI usage
   Validation  : Invoke smcibu with the short options
   Check List  : 1. Invoke smcibu with no options to see the usage.
                 2. -H => show help , -V => verbose output, -I => host IP
                    -U => user name, -P => password, -C => command name
                 3. -v, -h, -f, -k, -R, -O options removed.
   Issue ID    : None

3. Changed     : Supported command specific long options: --f --k --o --r --n --mer
   Description : Change the supported long options for new CLI usage
   Validation  : Invoke smcibu with long options and their associated command
   Check List  : 1. see help message of smcibu by using ./smcibu with no options
                 2. Validate each usage.
                 3. --N, --R, --MER options removed.
   Issue ID    : None

4. Changed     : Remove the last line (OOB support...) of CheckOOBSupport output
                 message.
   Description : Remove the OOB support output message of CheckOOBSupport
   Validation  : Invoke smcibu with command CheckOOBSupport
   Check List  : 1. No line begins with "OOB Support....." on the screen
   Issue ID    : None

6. Removed     : Hide the help and usage for In-Band functionalities.
   Description : In-band usage information hidden from user
   Validation  : Both user guide and help message of smcibu
   Check List  : 1. No inband usage information is mentioned in smcibu execution
                 2. No inband usage information is mentioned in v0.95 UserGuide
   Issue ID    : None

7. Fixed       : Check BMC OOB support bug.
   Description : Fix BMC OOB support check failed in 0.94
   Validation  : Invoke smcibu with CheckOOBSupport command
   Check List  : 1. "BMC OOB support.......Yes" for latest version of BMC FW
   Issue ID    : None


v0.94
========================

1. Added       : Add "CheckOOBSupport" command for OOB usage
   Description : Add CheckOOBSupport command
   Validation  : Invoke smcibu with CheckOOBSupport command
   Check List  : OOB support information shown on screen
   Issue ID    : None

2. Added       : Add Local In-Band usage support
   Description : Add Local In-Band usage in smcibu
   Validation  : Invoke smcibu with no -H, -U, -P options
                 Obtain kernel module from RD.
   Check List  : 1. See v0.94 user guide for Local In-Band usage
                 2. All commands work except ActivateLicense, CheckOOBSupport
                    and UpdateBios with --MER option commands.
   Issue ID    : None

3. Changed     : Rename the command "ActivateLicense" to "ActivateProductKey" and
                 its related terms.
   Description : Rename License term to product key
   Validation  : See smcibu help message and use ActivateProductKey command
   Check List  : 1. Help message command name changed.
                 2. Invoke ActivateProductKey command to work
                 3. Invoke ActivateLicense command to see this command is removed
                 4. All terms about license is changed to product key in the v0.94
                    UserGuide
   Issue ID    : None


Technical Support
=================
Web Site:        www.supermicro.com
Headquarters:    support@supermicro.com
European Branch: support@supermicro.nl
Asian Branch:    support@supermicro.com.tw
