- if (!Ip4ConfigIsValid (Config)) {\r
- NewVariable = Ip4ConfigModifyVariable (Variable, &Config->NicAddr, NULL);\r
- Ip4ConfigWriteVariable (NewVariable);\r
-\r
- if (NewVariable != NULL) {\r
- FreePool (NewVariable);\r
- };\r
-\r
- FreePool (Config);\r
- Config = NULL;\r
- }\r
-\r
- FreePool (Variable);\r
- return Config;\r
-}\r
-\r
-\r
-/**\r
- Get the configure parameter for this NIC.\r
-\r
- @param Instance The IP4 CONFIG Instance.\r
- @param ConfigLen The length of the NicConfig buffer.\r
- @param NicConfig The buffer to receive the NIC's configure\r
- parameter.\r
-\r
- @retval EFI_SUCCESS The configure parameter for this NIC was\r
- obtained successfully .\r
- @retval EFI_INVALID_PARAMETER This or ConfigLen is NULL.\r
- @retval EFI_NOT_FOUND There is no configure parameter for the NIC in\r
- NVRam.\r
- @retval EFI_BUFFER_TOO_SMALL The ConfigLen is too small or the NicConfig is\r
- NULL.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-EfiNicIp4ConfigGetInfo (\r
- IN IP4_CONFIG_INSTANCE *Instance,\r
- IN OUT UINTN *ConfigLen,\r
- OUT NIC_IP4_CONFIG_INFO *NicConfig\r
- )\r
-{\r
- NIC_IP4_CONFIG_INFO *Config;\r
- EFI_STATUS Status;\r
- UINTN Len;\r
-\r
- if ((Instance == NULL) || (ConfigLen == NULL)) {\r
- return EFI_INVALID_PARAMETER;\r
- }\r
-\r
- //\r
- // Read the Nic's configuration parameter from variable\r
- //\r
- Config = Ip4ConfigGetNicInfo (&Instance->NicAddr);\r