Michael Kubacki
1f161a7915
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 >
2024-02-26 20:46:12 +00:00
Mike Maslenkin
03d6569f70
MdeModulePkg: UsbRndis: get rid of magic values
...
Replace magic values used for checking Base Class, SubClass and Protocol
fields of USB Interface Descriptor.
Add definitions for Base Class EFh (Miscellaneous) and RNDIS subclass.
These definitions were taken from https://www.usb.org/defined-class-codes
Cc: Richard Ho <richardho@ami.com >
Cc: Rebecca Cran <rebecca@bsdio.com >
Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com >
2023-10-16 22:49:33 +00:00
Mike Maslenkin
e07948255c
MdeModulePkg: UsbNetwork: fix Ethernet functional descriptor processing
...
This patch fixes wrong condition because of UINT16 value to integer
promotion. NumberMcFilters is UINT16 value, so when bitwise shift operator
applied to small integer type, the operation is preceded by integral
promotion. This is described in MISRA-C:2004 guideline as Rule 10.5:
"If the bitwise operators ~ and << are applied to an operand of underlying
type unsigned char or unsigned short, the result shall be immediately cast
to the underlying type of the operand."
A simple fix for this issue would be the following:
if ((UINT16)(UsbEthFunDescriptor.NumberMcFilters << 1) == 0)
But this patch proposes to use bitwise AND operation with a proper bit mask
rather than shifting to prevent similar mistakes in future.
Cc: Richard Ho <richardho@ami.com >
Cc: Rebecca Cran <rebecca@bsdio.com >
Signed-off-by: Mike Maslenkin <mike.maslenkin@gmail.com >
2023-10-16 22:49:33 +00:00
Richard Ho
ff3382a51c
MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcNcm: Add USB Cdc NCM devices support
...
This driver provides UEFI driver for USB CDC NCM device
Signed-off-by: Richard Ho <richardho@ami.com >
Cc: Andrew Fish <afish@apple.com >
Cc: Leif Lindholm <quic_llindhol@quicinc.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Michael Kubacki <mikuback@linux.microsoft.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Tested-by: Tinh Nguyen <tinhnguyen@os.amperecomputing.com >
Acked-by: Hao A Wu <hao.a.wu@intel.com >
Reviewed-by: Rebecca Cran <rebecca@bsdio.com >
Reviewed-by: Tony Lo <tonylo@ami.com >
2023-07-13 17:18:40 +00:00
Richard Ho
5e400d22a0
MdeModulePkg/Bus/Usb/UsbNetwork/UsbCdcEcm: Add USB Cdc ECM devices support
...
This driver provides UEFI driver for USB CDC ECM device
Signed-off-by: Richard Ho <richardho@ami.com >
Cc: Andrew Fish <afish@apple.com >
Cc: Leif Lindholm <quic_llindhol@quicinc.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Michael Kubacki <mikuback@linux.microsoft.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Tested-by: Tinh Nguyen <tinhnguyen@os.amperecomputing.com >
Acked-by: Hao A Wu <hao.a.wu@intel.com >
Reviewed-by: Rebecca Cran <rebecca@bsdio.com >
Reviewed-by: Tony Lo <tonylo@ami.com >
2023-07-13 17:18:40 +00:00
Richard Ho
fc0d5922f1
MdeModulePkg/Bus/Usb/UsbNetwork/UsbRndis: Add USB RNDIS devices support
...
This driver provides UEFI driver for USB RNDIS device
Signed-off-by: Richard Ho <richardho@ami.com >
Cc: Andrew Fish <afish@apple.com >
Cc: Leif Lindholm <quic_llindhol@quicinc.com >
Cc: Michael D Kinney <michael.d.kinney@intel.com >
Cc: Michael Kubacki <mikuback@linux.microsoft.com >
Cc: Zhiguang Liu <zhiguang.liu@intel.com >
Cc: Liming Gao <gaoliming@byosoft.com.cn >
Cc: Hao A Wu <hao.a.wu@intel.com >
Cc: Ray Ni <ray.ni@intel.com >
Tested-by: Tinh Nguyen <tinhnguyen@os.amperecomputing.com >
Acked-by: Hao A Wu <hao.a.wu@intel.com >
Reviewed-by: Rebecca Cran <rebecca@bsdio.com >
Reviewed-by: Tony Lo <tonylo@ami.com >
2023-07-13 17:18:40 +00:00