mirror of https://github.com/acidanthera/audk.git
NetworkPkg/IScsiDxe: Use UEFILib APIs to uninstall protocols.
During cleanup in case of initialization failure, some driver bindings are not installed. Using abstractions in UEFILib takes care of it. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1428 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ashish Singhal <ashishsingha@nvidia.com> Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>
This commit is contained in:
parent
0290fca20f
commit
15666b8cd0
|
@ -1,6 +1,7 @@
|
|||
/** @file
|
||||
The entry point of IScsi driver.
|
||||
|
||||
Copyright (c) 2019, NVIDIA Corporation. All rights reserved.
|
||||
Copyright (c) 2004 - 2018, Intel Corporation. All rights reserved.<BR>
|
||||
(C) Copyright 2017 Hewlett Packard Enterprise Development LP<BR>
|
||||
|
||||
|
@ -1861,28 +1862,18 @@ Error3:
|
|||
);
|
||||
|
||||
Error2:
|
||||
gBS->UninstallMultipleProtocolInterfaces (
|
||||
gIScsiIp6DriverBinding.DriverBindingHandle,
|
||||
&gEfiDriverBindingProtocolGuid,
|
||||
&gIScsiIp6DriverBinding,
|
||||
&gEfiComponentName2ProtocolGuid,
|
||||
&gIScsiComponentName2,
|
||||
&gEfiComponentNameProtocolGuid,
|
||||
&gIScsiComponentName,
|
||||
NULL
|
||||
);
|
||||
EfiLibUninstallDriverBindingComponentName2 (
|
||||
&gIScsiIp6DriverBinding,
|
||||
&gIScsiComponentName,
|
||||
&gIScsiComponentName2
|
||||
);
|
||||
|
||||
Error1:
|
||||
gBS->UninstallMultipleProtocolInterfaces (
|
||||
ImageHandle,
|
||||
&gEfiDriverBindingProtocolGuid,
|
||||
&gIScsiIp4DriverBinding,
|
||||
&gEfiComponentName2ProtocolGuid,
|
||||
&gIScsiComponentName2,
|
||||
&gEfiComponentNameProtocolGuid,
|
||||
&gIScsiComponentName,
|
||||
NULL
|
||||
);
|
||||
EfiLibUninstallDriverBindingComponentName2 (
|
||||
&gIScsiIp4DriverBinding,
|
||||
&gIScsiComponentName,
|
||||
&gIScsiComponentName2
|
||||
);
|
||||
|
||||
return Status;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue