* [PATCH v2] MdeModulePkg/SmiHandlerProfileInfo: Overflowed Array Index
@ 2020-04-03 4:24 Guomin Jiang
2020-04-03 4:32 ` Wang, Jian J
0 siblings, 1 reply; 2+ messages in thread
From: Guomin Jiang @ 2020-04-03 4:24 UTC (permalink / raw)
To: devel; +Cc: Jian J Wang, Hao A Wu, Eric Dong, Ray Ni
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2272
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2287
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2288
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2289
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2290
Index should be off-by one than size of array, so when check
array, the max index should less than size of array.
Cc: Jian J Wang <jian.j.wang@intel.com>
Cc: Hao A Wu <hao.a.wu@intel.com>
Cc: Eric Dong <eric.dong@intel.com>
Cc: Ray Ni <ray.ni@intel.com>
Signed-off-by: Guomin Jiang <guomin.jiang@intel.com>
---
.../SmiHandlerProfileInfo/SmiHandlerProfileInfo.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c b/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
index 0f7163160b..4153074b7a 100644
--- a/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
+++ b/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
@@ -382,7 +382,7 @@ SxTypeToString (
IN EFI_SLEEP_TYPE Type
)
{
- if (Type >= 0 && Type <= ARRAY_SIZE(mSxTypeString)) {
+ if (Type >= 0 && Type < ARRAY_SIZE(mSxTypeString)) {
return mSxTypeString[Type];
} else {
AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
@@ -407,7 +407,7 @@ SxPhaseToString (
IN EFI_SLEEP_PHASE Phase
)
{
- if (Phase >= 0 && Phase <= ARRAY_SIZE(mSxPhaseString)) {
+ if (Phase >= 0 && Phase < ARRAY_SIZE(mSxPhaseString)) {
return mSxPhaseString[Phase];
} else {
AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
@@ -432,7 +432,7 @@ PowerButtonPhaseToString (
IN EFI_POWER_BUTTON_PHASE Phase
)
{
- if (Phase >= 0 && Phase <= ARRAY_SIZE(mPowerButtonPhaseString)) {
+ if (Phase >= 0 && Phase < ARRAY_SIZE(mPowerButtonPhaseString)) {
return mPowerButtonPhaseString[Phase];
} else {
AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
@@ -457,7 +457,7 @@ StandbyButtonPhaseToString (
IN EFI_STANDBY_BUTTON_PHASE Phase
)
{
- if (Phase >= 0 && Phase <= ARRAY_SIZE(mStandbyButtonPhaseString)) {
+ if (Phase >= 0 && Phase < ARRAY_SIZE(mStandbyButtonPhaseString)) {
return mStandbyButtonPhaseString[Phase];
} else {
AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
@@ -483,7 +483,7 @@ IoTrapTypeToString (
IN EFI_SMM_IO_TRAP_DISPATCH_TYPE Type
)
{
- if (Type >= 0 && Type <= ARRAY_SIZE(mIoTrapTypeString)) {
+ if (Type >= 0 && Type < ARRAY_SIZE(mIoTrapTypeString)) {
return mIoTrapTypeString[Type];
} else {
AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
@@ -508,7 +508,7 @@ UsbTypeToString (
IN EFI_USB_SMI_TYPE Type
)
{
- if (Type >= 0 && Type <= ARRAY_SIZE(mUsbTypeString)) {
+ if (Type >= 0 && Type < ARRAY_SIZE(mUsbTypeString)) {
return mUsbTypeString[Type];
} else {
AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
--
2.25.1.windows.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] MdeModulePkg/SmiHandlerProfileInfo: Overflowed Array Index
2020-04-03 4:24 [PATCH v2] MdeModulePkg/SmiHandlerProfileInfo: Overflowed Array Index Guomin Jiang
@ 2020-04-03 4:32 ` Wang, Jian J
0 siblings, 0 replies; 2+ messages in thread
From: Wang, Jian J @ 2020-04-03 4:32 UTC (permalink / raw)
To: Jiang, Guomin, devel@edk2.groups.io; +Cc: Wu, Hao A, Dong, Eric, Ni, Ray
Reviewed-by: Jian J Wang <jian.j.wang@intel.com>
Regards,
Jian
> -----Original Message-----
> From: Jiang, Guomin <guomin.jiang@intel.com>
> Sent: Friday, April 03, 2020 12:25 PM
> To: devel@edk2.groups.io
> Cc: Wang, Jian J <jian.j.wang@intel.com>; Wu, Hao A <hao.a.wu@intel.com>;
> Dong, Eric <eric.dong@intel.com>; Ni, Ray <ray.ni@intel.com>
> Subject: [PATCH v2] MdeModulePkg/SmiHandlerProfileInfo: Overflowed Array
> Index
>
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2272
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2287
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2288
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2289
> REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2290
>
> Index should be off-by one than size of array, so when check
> array, the max index should less than size of array.
>
> Cc: Jian J Wang <jian.j.wang@intel.com>
> Cc: Hao A Wu <hao.a.wu@intel.com>
> Cc: Eric Dong <eric.dong@intel.com>
> Cc: Ray Ni <ray.ni@intel.com>
> Signed-off-by: Guomin Jiang <guomin.jiang@intel.com>
> ---
> .../SmiHandlerProfileInfo/SmiHandlerProfileInfo.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git
> a/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
> b/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
> index 0f7163160b..4153074b7a 100644
> ---
> a/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
> +++
> b/MdeModulePkg/Application/SmiHandlerProfileInfo/SmiHandlerProfileInfo.c
> @@ -382,7 +382,7 @@ SxTypeToString (
> IN EFI_SLEEP_TYPE Type
>
> )
>
> {
>
> - if (Type >= 0 && Type <= ARRAY_SIZE(mSxTypeString)) {
>
> + if (Type >= 0 && Type < ARRAY_SIZE(mSxTypeString)) {
>
> return mSxTypeString[Type];
>
> } else {
>
> AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
>
> @@ -407,7 +407,7 @@ SxPhaseToString (
> IN EFI_SLEEP_PHASE Phase
>
> )
>
> {
>
> - if (Phase >= 0 && Phase <= ARRAY_SIZE(mSxPhaseString)) {
>
> + if (Phase >= 0 && Phase < ARRAY_SIZE(mSxPhaseString)) {
>
> return mSxPhaseString[Phase];
>
> } else {
>
> AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
>
> @@ -432,7 +432,7 @@ PowerButtonPhaseToString (
> IN EFI_POWER_BUTTON_PHASE Phase
>
> )
>
> {
>
> - if (Phase >= 0 && Phase <= ARRAY_SIZE(mPowerButtonPhaseString)) {
>
> + if (Phase >= 0 && Phase < ARRAY_SIZE(mPowerButtonPhaseString)) {
>
> return mPowerButtonPhaseString[Phase];
>
> } else {
>
> AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
>
> @@ -457,7 +457,7 @@ StandbyButtonPhaseToString (
> IN EFI_STANDBY_BUTTON_PHASE Phase
>
> )
>
> {
>
> - if (Phase >= 0 && Phase <= ARRAY_SIZE(mStandbyButtonPhaseString)) {
>
> + if (Phase >= 0 && Phase < ARRAY_SIZE(mStandbyButtonPhaseString)) {
>
> return mStandbyButtonPhaseString[Phase];
>
> } else {
>
> AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Phase);
>
> @@ -483,7 +483,7 @@ IoTrapTypeToString (
> IN EFI_SMM_IO_TRAP_DISPATCH_TYPE Type
>
> )
>
> {
>
> - if (Type >= 0 && Type <= ARRAY_SIZE(mIoTrapTypeString)) {
>
> + if (Type >= 0 && Type < ARRAY_SIZE(mIoTrapTypeString)) {
>
> return mIoTrapTypeString[Type];
>
> } else {
>
> AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
>
> @@ -508,7 +508,7 @@ UsbTypeToString (
> IN EFI_USB_SMI_TYPE Type
>
> )
>
> {
>
> - if (Type >= 0 && Type <= ARRAY_SIZE(mUsbTypeString)) {
>
> + if (Type >= 0 && Type < ARRAY_SIZE(mUsbTypeString)) {
>
> return mUsbTypeString[Type];
>
> } else {
>
> AsciiSPrint (mNameString, sizeof(mNameString), "0x%x", Type);
>
> --
> 2.25.1.windows.1
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-04-03 4:32 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-04-03 4:24 [PATCH v2] MdeModulePkg/SmiHandlerProfileInfo: Overflowed Array Index Guomin Jiang
2020-04-03 4:32 ` Wang, Jian J
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox