BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2873

*** E:\Work\NWStack\EDK2Tickets\IPConfigFix\Mod\Ip4Config2Impl.c               
2020-08-04 18:38:06.000000000 +05-30
--- E:\Work\NWStack\EDK2Tickets\IPConfigFix\Org\Ip4Config2Impl.c     2020-05-07 
22:54:46.000000000 +05-30
***************
*** 1965,1978 ****
    IP4_CONFIG2_INSTANCE  *TmpInstance;
    LIST_ENTRY            *Entry;
    EFI_STATUS            Status;
    UINTN                 Index;
    UINT16                IfIndex;
    IP4_CONFIG2_DATA_ITEM *DataItem;
!   BOOLEAN                                                       
IPConfigEnabled = FALSE;
!   IP4_CONFIG2_IFR_NVDATA  *IfrFromNvData = NULL;

    IpSb = IP4_SERVICE_FROM_IP4_CONFIG2_INSTANCE (Instance);

    Instance->Signature = IP4_CONFIG2_INSTANCE_SIGNATURE;


--- 1965,1977 ----
    IP4_CONFIG2_INSTANCE  *TmpInstance;
    LIST_ENTRY            *Entry;
    EFI_STATUS            Status;
    UINTN                 Index;
    UINT16                IfIndex;
    IP4_CONFIG2_DATA_ITEM *DataItem;
!

    IpSb = IP4_SERVICE_FROM_IP4_CONFIG2_INSTANCE (Instance);

    Instance->Signature = IP4_CONFIG2_INSTANCE_SIGNATURE;


***************
*** 2038,2063 ****

    //
    // Try to read the config data from NV variable.
    // If not found, write initialized config data into NV variable
    // as a default config data.
    //
!     Status = GetVariable2(IpSb->MacString, &gIp4Config2NvDataGuid, 
(VOID**)&IfrFromNvData, NULL);
!     if(!EFI_ERROR(Status)){
!         if (IfrFromNvData->Configure == TRUE) {
!             Status = Ip4Config2ReadConfigData (IpSb->MacString, Instance);
!             if (Status == EFI_NOT_FOUND) {
!                 Status = Ip4Config2WriteConfigData (IpSb->MacString, 
Instance);
!             }
!             IPConfigEnabled = TRUE;
!         }
!         FreePool(IfrFromNvData);
!     }
!     if(!IPConfigEnabled){
!         Status = Ip4Config2WriteConfigData (IpSb->MacString, Instance);
!     }

    if (EFI_ERROR (Status)) {
      return Status;
    }

    Instance->Ip4Config2.SetData              = EfiIp4Config2SetData;
--- 2037,2052 ----

    //
    // Try to read the config data from NV variable.
    // If not found, write initialized config data into NV variable
    // as a default config data.
    //
!   Status = Ip4Config2ReadConfigData (IpSb->MacString, Instance);
!   if (Status == EFI_NOT_FOUND) {
!     Status = Ip4Config2WriteConfigData (IpSb->MacString, Instance);
!   }

    if (EFI_ERROR (Status)) {
      return Status;
    }

    Instance->Ip4Config2.SetData              = EfiIp4Config2SetData;

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#64141): https://edk2.groups.io/g/devel/message/64141
Mute This Topic: https://groups.io/mt/76163208/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to