diff options
author | Zhichao Gao <zhichao.gao@intel.com> | 2019-06-26 12:51:55 +0800 |
---|---|---|
committer | Eric Dong <eric.dong@intel.com> | 2019-06-27 09:20:53 +0800 |
commit | c54c85621826ace8684879fef9eb8ba7f49cfb54 (patch) | |
tree | ca6eb4bab4d0d30d7ccc5817f90b2ddb04f86f75 /BaseTools/Source/Python/Common/TargetTxtClassObject.py | |
parent | f426d8744f3f5321cd88b23cf6e93865d5d18e00 (diff) | |
download | edk2-c54c85621826ace8684879fef9eb8ba7f49cfb54.tar.gz edk2-c54c85621826ace8684879fef9eb8ba7f49cfb54.tar.bz2 edk2-c54c85621826ace8684879fef9eb8ba7f49cfb54.zip |
UefiCpuPkg/MpInitLib: MicrocodeDetect: Ensure checked range is valid
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1934
0x0 MicrocodeBegin MicrocodeEntry MicrocodeEnd 0xffffffff
|--------------|---------------|---------------|---------------|
valid TotalSize
TotalSize is only valid between 0 and (MicrocodeEnd - MicrocodeEntry).
So add '(UINTN)MicrocodeEntryPoint > (MAX_ADDRESS - TotalSize)' before
'((UINTN)MicrocodeEntryPoint + TotalSize) > MicrocodeEnd' to make sure
((UINTN)MicrocodeEntryPoint + TotalSize) wouldn't overflow.
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Laszlo Ersek <lersek@redhat.com>
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Zhichao Gao <zhichao.gao@intel.com>
Reviewed-by: Ray Ni <ray.ni@intel.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
Diffstat (limited to 'BaseTools/Source/Python/Common/TargetTxtClassObject.py')
0 files changed, 0 insertions, 0 deletions