MdePkg: Define IPv4_ADDRESS and IPv6_ADDRESS in Base.h

Since the following patch needs to add API converting string
to IP address in BaseLib, define the IP address as base types
in Base.h.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
This commit is contained in:
Ruiyu Ni 2017-02-13 18:08:24 +08:00
parent 6e84fd6e97
commit ab4de5c8b4
2 changed files with 18 additions and 8 deletions

View File

@ -6,7 +6,7 @@
environment. There are a set of base libraries in the Mde Package that can environment. There are a set of base libraries in the Mde Package that can
be used to implement base modules. be used to implement base modules.
Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR> Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
@ -265,6 +265,20 @@ typedef struct {
UINT8 Data4[8]; UINT8 Data4[8];
} GUID; } GUID;
///
/// 4-byte buffer. An IPv4 internet protocol address.
///
typedef struct {
UINT8 Addr[4];
} IPv4_ADDRESS;
///
/// 16-byte buffer. An IPv6 internet protocol address.
///
typedef struct {
UINT8 Addr[16];
} IPv6_ADDRESS;
// //
// 8-bytes unsigned value that represents a physical system address. // 8-bytes unsigned value that represents a physical system address.
// //

View File

@ -1,7 +1,7 @@
/** @file /** @file
Defines data types and constants introduced in UEFI. Defines data types and constants introduced in UEFI.
Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR> Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>
Portions copyright (c) 2011 - 2016, ARM Ltd. All rights reserved.<BR> Portions copyright (c) 2011 - 2016, ARM Ltd. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under This program and the accompanying materials are licensed and made available under
@ -87,16 +87,12 @@ typedef struct {
/// ///
/// 4-byte buffer. An IPv4 internet protocol address. /// 4-byte buffer. An IPv4 internet protocol address.
/// ///
typedef struct { typedef IPv4_ADDRESS EFI_IPv4_ADDRESS;
UINT8 Addr[4];
} EFI_IPv4_ADDRESS;
/// ///
/// 16-byte buffer. An IPv6 internet protocol address. /// 16-byte buffer. An IPv6 internet protocol address.
/// ///
typedef struct { typedef IPv6_ADDRESS EFI_IPv6_ADDRESS;
UINT8 Addr[16];
} EFI_IPv6_ADDRESS;
/// ///
/// 32-byte buffer containing a network Media Access Control address. /// 32-byte buffer containing a network Media Access Control address.