/** @file\r
Driver Binding functions implementationfor for UefiPxeBc Driver.\r
\r
- Copyright (c) 2007 - 2011, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2007 - 2012, Intel Corporation. All rights reserved.<BR>\r
\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
EFI_IP6_MODE_DATA Ip6ModeData;\r
PXEBC_PRIVATE_PROTOCOL *Id;\r
EFI_SIMPLE_NETWORK_PROTOCOL *Snp;\r
+ UINTN Index;\r
\r
if (Private->Ip6Nic != NULL) {\r
//\r
goto ON_ERROR;\r
}\r
\r
+ //\r
+ // Generate a random IAID for the Dhcp6 assigned address.\r
+ //\r
+ Private->IaId = NET_RANDOM (NetRandomInitSeed ());\r
+ if (Private->Snp != NULL) {\r
+ for (Index = 0; Index < Private->Snp->Mode->HwAddressSize; Index++) {\r
+ Private->IaId |= (Private->Snp->Mode->CurrentAddress.Addr[Index] << ((Index << 3) & 31));\r
+ } \r
+ }\r
+\r
//\r
// Create Mtftp6 child and open Mtftp6 protocol for PxeBc->Mtftp.\r
//\r