In the context of the BaseTools, there is no such thing as a native word
size, given that the same set of tools may be used to build a firmware
image consisting of both 32-bit and 64-bit modules.
So update StrToIpv4Address() and StrToIpv6Address() to use UINT64
types instead of UINTN types when parsing strings.
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
{\r
RETURN_STATUS Status;\r
UINTN AddressIndex;\r
{\r
RETURN_STATUS Status;\r
UINTN AddressIndex;\r
EFI_IPv4_ADDRESS LocalAddress;\r
UINT8 LocalPrefixLength;\r
CHAR16 *Pointer;\r
EFI_IPv4_ADDRESS LocalAddress;\r
UINT8 LocalPrefixLength;\r
CHAR16 *Pointer;\r
//\r
// Get D or P.\r
//\r
//\r
// Get D or P.\r
//\r
- Status = StrDecimalToUintnS ((CONST CHAR16 *) Pointer, &Pointer, &Uintn);\r
+ Status = StrDecimalToUint64S ((CONST CHAR16 *) Pointer, &Pointer, &Uint64);\r
if (RETURN_ERROR (Status)) {\r
return RETURN_UNSUPPORTED;\r
}\r
if (RETURN_ERROR (Status)) {\r
return RETURN_UNSUPPORTED;\r
}\r
return RETURN_UNSUPPORTED;\r
}\r
return RETURN_UNSUPPORTED;\r
}\r
- LocalPrefixLength = (UINT8) Uintn;\r
+ LocalPrefixLength = (UINT8) Uint64;\r
} else {\r
//\r
// It's D.\r
//\r
} else {\r
//\r
// It's D.\r
//\r
- if (Uintn > MAX_UINT8) {\r
+ if (Uint64 > MAX_UINT8) {\r
return RETURN_UNSUPPORTED;\r
}\r
return RETURN_UNSUPPORTED;\r
}\r
- LocalAddress.Addr[AddressIndex] = (UINT8) Uintn;\r
+ LocalAddress.Addr[AddressIndex] = (UINT8) Uint64;\r
{\r
RETURN_STATUS Status;\r
UINTN AddressIndex;\r
{\r
RETURN_STATUS Status;\r
UINTN AddressIndex;\r
EFI_IPv6_ADDRESS LocalAddress;\r
UINT8 LocalPrefixLength;\r
CONST CHAR16 *Pointer;\r
EFI_IPv6_ADDRESS LocalAddress;\r
UINT8 LocalPrefixLength;\r
CONST CHAR16 *Pointer;\r
- Status = StrHexToUintnS (Pointer, &End, &Uintn);\r
+ Status = StrHexToUint64S (Pointer, &End, &Uint64);\r
if (RETURN_ERROR (Status) || End - Pointer > 4) {\r
//\r
// Number of hexadecimal digit characters is no more than 4.\r
if (RETURN_ERROR (Status) || End - Pointer > 4) {\r
//\r
// Number of hexadecimal digit characters is no more than 4.\r
}\r
Pointer = End;\r
//\r
}\r
Pointer = End;\r
//\r
- // Uintn won't exceed MAX_UINT16 if number of hexadecimal digit characters is no more than 4.\r
+ // Uint64 won't exceed MAX_UINT16 if number of hexadecimal digit characters is no more than 4.\r
//\r
ASSERT (AddressIndex + 1 < ARRAY_SIZE (Address->Addr));\r
//\r
ASSERT (AddressIndex + 1 < ARRAY_SIZE (Address->Addr));\r
- LocalAddress.Addr[AddressIndex] = (UINT8) ((UINT16) Uintn >> 8);\r
- LocalAddress.Addr[AddressIndex + 1] = (UINT8) Uintn;\r
+ LocalAddress.Addr[AddressIndex] = (UINT8) ((UINT16) Uint64 >> 8);\r
+ LocalAddress.Addr[AddressIndex + 1] = (UINT8) Uint64;\r
AddressIndex += 2;\r
} else {\r
//\r
// Get P, then exit the loop.\r
//\r
AddressIndex += 2;\r
} else {\r
//\r
// Get P, then exit the loop.\r
//\r
- Status = StrDecimalToUintnS (Pointer, &End, &Uintn);\r
- if (RETURN_ERROR (Status) || End == Pointer || Uintn > 128) {\r
+ Status = StrDecimalToUint64S (Pointer, &End, &Uint64);\r
+ if (RETURN_ERROR (Status) || End == Pointer || Uint64 > 128) {\r
//\r
// Prefix length should not exceed 128.\r
//\r
return RETURN_UNSUPPORTED;\r
}\r
//\r
// Prefix length should not exceed 128.\r
//\r
return RETURN_UNSUPPORTED;\r
}\r
- LocalPrefixLength = (UINT8) Uintn;\r
+ LocalPrefixLength = (UINT8) Uint64;\r
Pointer = End;\r
break;\r
}\r
Pointer = End;\r
break;\r
}\r