Message ID | 20181129123129.25095-5-ard.biesheuvel@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | BaseTools: get rid of MAX_UINTN | expand |
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com> > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of > Ard Biesheuvel > Sent: Thursday, November 29, 2018 4:31 AM > To: edk2-devel@lists.01.org > Cc: Laszlo Ersek <lersek@redhat.com>; Gao, Liming <liming.gao@intel.com> > Subject: [edk2] [PATCH 4/6] BaseTools/DevicePath: use MAX_UINT16 as > default device path max size > > Replace the default size limit of IsDevicePathValid() with a value > that does not depend on the native word size of the build host. > > 64 KB seems sufficient as the upper bound of a device path handled > by UEFI. > > Contributed-under: TianoCore Contribution Agreement 1.1 > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> > --- > BaseTools/Source/C/DevicePath/DevicePathUtilities.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/BaseTools/Source/C/DevicePath/DevicePathUtilities.c > b/BaseTools/Source/C/DevicePath/DevicePathUtilities.c > index d4ec2742b7c8..ba7f83e53070 100644 > --- a/BaseTools/Source/C/DevicePath/DevicePathUtilities.c > +++ b/BaseTools/Source/C/DevicePath/DevicePathUtilities.c > @@ -62,7 +62,7 @@ IsDevicePathValid ( > ASSERT (DevicePath != NULL); > > if (MaxSize == 0) { > - MaxSize = MAX_UINTN; > + MaxSize = MAX_UINT16; > } > > // > @@ -78,7 +78,7 @@ IsDevicePathValid ( > return FALSE; > } > > - if (NodeLength > MAX_UINTN - Size) { > + if (NodeLength > MAX_UINT16 - Size) { > return FALSE; > } > Size += NodeLength; > -- > 2.19.1 > > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
diff --git a/BaseTools/Source/C/DevicePath/DevicePathUtilities.c b/BaseTools/Source/C/DevicePath/DevicePathUtilities.c index d4ec2742b7c8..ba7f83e53070 100644 --- a/BaseTools/Source/C/DevicePath/DevicePathUtilities.c +++ b/BaseTools/Source/C/DevicePath/DevicePathUtilities.c @@ -62,7 +62,7 @@ IsDevicePathValid ( ASSERT (DevicePath != NULL); if (MaxSize == 0) { - MaxSize = MAX_UINTN; + MaxSize = MAX_UINT16; } // @@ -78,7 +78,7 @@ IsDevicePathValid ( return FALSE; } - if (NodeLength > MAX_UINTN - Size) { + if (NodeLength > MAX_UINT16 - Size) { return FALSE; } Size += NodeLength;
Replace the default size limit of IsDevicePathValid() with a value that does not depend on the native word size of the build host. 64 KB seems sufficient as the upper bound of a device path handled by UEFI. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> --- BaseTools/Source/C/DevicePath/DevicePathUtilities.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.19.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel