diff options
author | Michael Kubacki <michael.kubacki@microsoft.com> | 2024-02-15 14:16:55 -0500 |
---|---|---|
committer | mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> | 2024-02-26 20:46:12 +0000 |
commit | 1f161a7915e1c2c65bfaf7091712e9628107b707 (patch) | |
tree | ffd5ed982ef14405f225332c9402d8ef669c94b0 /MdeModulePkg/Bus | |
parent | 68238d4f948069fc2c6b9cc13863bdced52a84d0 (diff) | |
download | edk2-1f161a7915e1c2c65bfaf7091712e9628107b707.zip edk2-1f161a7915e1c2c65bfaf7091712e9628107b707.tar.gz edk2-1f161a7915e1c2c65bfaf7091712e9628107b707.tar.bz2 |
MdeModulePkg/Bus/Usb/UsbNetwork: Check array index range before access
Checks that an offset used to access array elements is within the
expected range before accessing the array item.
Cc: Liming Gao <gaoliming@byosoft.com.cn>
Cc: Ray Ni <ray.ni@intel.com>
Cc: Rebecca Cran <rebecca@bsdio.com>
Cc: Richard Ho <richardho@ami.com>
Signed-off-by: Michael Kubacki <michael.kubacki@microsoft.com>
Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn>
Diffstat (limited to 'MdeModulePkg/Bus')
3 files changed, 3 insertions, 3 deletions
diff --git a/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcEcm/UsbEcmFunction.c b/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcEcm/UsbEcmFunction.c index 29f4508..0c1f252 100644 --- a/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcEcm/UsbEcmFunction.c +++ b/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcEcm/UsbEcmFunction.c @@ -769,7 +769,7 @@ ConvertFilter ( Count = sizeof (gTable)/sizeof (gTable[0]);
- for (Index = 0; (gTable[Index].Src != 0) && (Index < Count); Index++) {
+ for (Index = 0; (Index < Count) && (gTable[Index].Src != 0); Index++) {
if (gTable[Index].Src & Value) {
*CdcFilter |= gTable[Index].Dst;
}
diff --git a/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcNcm/UsbNcmFunction.c b/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcNcm/UsbNcmFunction.c index baa2225..ef01a6f 100644 --- a/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcNcm/UsbNcmFunction.c +++ b/MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcNcm/UsbNcmFunction.c @@ -855,7 +855,7 @@ ConvertFilter ( Count = sizeof (gTable)/sizeof (gTable[0]);
- for (Index = 0; (gTable[Index].Src != 0) && (Index < Count); Index++) {
+ for (Index = 0; (Index < Count) && (gTable[Index].Src != 0); Index++) {
if (gTable[Index].Src & Value) {
*CdcFilter |= gTable[Index].Dst;
}
diff --git a/MdeModulePkg/Bus/Usb/UsbNetwork/UsbRndis/UsbRndisFunction.c b/MdeModulePkg/Bus/Usb/UsbNetwork/UsbRndis/UsbRndisFunction.c index 2c0dcae..6d45a1b 100644 --- a/MdeModulePkg/Bus/Usb/UsbNetwork/UsbRndis/UsbRndisFunction.c +++ b/MdeModulePkg/Bus/Usb/UsbNetwork/UsbRndis/UsbRndisFunction.c @@ -803,7 +803,7 @@ ConvertFilter ( Count = sizeof (gTable)/sizeof (gTable[0]);
- for (Index = 0; (gTable[Index].Src != 0) && (Index < Count); Index++) {
+ for (Index = 0; (Index < Count) && (gTable[Index].Src != 0); Index++) {
if (gTable[Index].Src & Value) {
*CdcFilter |= gTable[Index].Dst;
}
|