diff options
Diffstat (limited to 'NetworkPkg')
-rw-r--r-- | NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf | 7 | ||||
-rw-r--r-- | NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c | 3 | ||||
-rw-r--r-- | NetworkPkg/NetworkPkg.dec | 9 |
3 files changed, 17 insertions, 2 deletions
diff --git a/NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf b/NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf index 5c79237046..1ba9656df2 100644 --- a/NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf +++ b/NetworkPkg/Dhcp6Dxe/Dhcp6Dxe.inf @@ -4,6 +4,7 @@ # This driver produces EFI DHCPv6 Protocol which is used to get IPv6 addresses
# and other configuration parameters from DHCPv6 servers.
#
+# (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
# Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials
@@ -51,7 +52,7 @@ [Packages]
MdePkg/MdePkg.dec
MdeModulePkg/MdeModulePkg.dec
-
+ NetworkPkg/NetworkPkg.dec
[LibraryClasses]
UefiLib
@@ -73,5 +74,9 @@ gEfiDhcp6ProtocolGuid ## BY_START
gEfiIp6ConfigProtocolGuid ## TO_START
+
+[Pcd]
+ gEfiNetworkPkgTokenSpaceGuid.PcdDhcp6UidType
+
[UserExtensions.TianoCore."ExtraFiles"]
Dhcp6DxeExtra.uni
diff --git a/NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c b/NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c index e3349ee987..2525a32ff1 100644 --- a/NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c +++ b/NetworkPkg/Dhcp6Dxe/Dhcp6Utility.c @@ -1,6 +1,7 @@ /** @file
Dhcp6 support functions implementation.
+ (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
@@ -63,7 +64,7 @@ Dhcp6GenerateClientId ( //
// If System UUID is found from SMBIOS Table, use DUID-UUID type.
//
- if (!EFI_ERROR (NetLibGetSystemGuid (&Uuid))) {
+ if ((PcdGet8 (PcdDhcp6UidType) == Dhcp6DuidTypeUuid) && !EFI_ERROR (NetLibGetSystemGuid (&Uuid))) {
//
//
// The format of DUID-UUID:
diff --git a/NetworkPkg/NetworkPkg.dec b/NetworkPkg/NetworkPkg.dec index 6515844b2f..317cf41a1e 100644 --- a/NetworkPkg/NetworkPkg.dec +++ b/NetworkPkg/NetworkPkg.dec @@ -3,6 +3,7 @@ #
# This package provides network modules that conform to UEFI 2.4 specification.
#
+# (C) Copyright 2015 Hewlett-Packard Development Company, L.P.<BR>
# Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>
#
# This program and the accompanying materials are licensed and made available under
@@ -68,5 +69,13 @@ # @Prompt Private Key's size.
gEfiNetworkPkgTokenSpaceGuid.PcdIpsecUefiCertificateKeySize|0x3d5|UINT32|0x00000006
+[PcdsDynamicEx]
+ ## IPv6 DHCP Unique Identifier (DUID) Type configuration (From RFCs 3315 and 6355).
+ # 01 = DUID Based on Link-layer Address Plus Time [DUID-LLT]
+ # 04 = UUID-Based DHCPv6 Unique Identifier (DUID-UUID)
+ # 02 = DUID Assigned by Vendor Based on Enterprise Number [DUID-EN] (not supported)
+ # 03 = DUID Based on Link-layer Address [DUID-LL] (not supported)
+ gEfiNetworkPkgTokenSpaceGuid.PcdDhcp6UidType|4|UINT8|0x10000001
+
[UserExtensions.TianoCore."ExtraFiles"]
NetworkPkgExtra.uni
|