Reviewed-by: Siyuan Fu <siyuan...@intel.com>

> -----Original Message-----
> From: Laszlo Ersek <ler...@redhat.com>
> Sent: 2019年9月18日 3:49
> To: edk2-devel-groups-io <devel@edk2.groups.io>
> Cc: Wu, Jiaxin <jiaxin...@intel.com>; Fu, Siyuan <siyuan...@intel.com>
> Subject: [PATCH 19/35] NetworkPkg: fix CloseProtocol &
> UninstallMultipleProtocolInterfaces calls
> 
> Both the "ControllerHandle" parameter of CloseProtocol() and the "Handle"
> parameter of UninstallMultipleProtocolInterfaces() have type EFI_HANDLE,
> not (EFI_HANDLE*).
> 
> This patch fixes actual bugs. The issues have been dormant likely because
> they are on error paths. (Or, in case of TlsAuthConfigDxe, because the
> driver is unloaded likely very infrequently.)
> 
> Cc: Jiaxin Wu <jiaxin...@intel.com>
> Cc: Siyuan Fu <siyuan...@intel.com>
> Signed-off-by: Laszlo Ersek <ler...@redhat.com>
> ---
> 
> Notes:
>     build-tested only
> 
>  NetworkPkg/DnsDxe/DnsDriver.c                  | 4 ++--
>  NetworkPkg/IScsiDxe/IScsiConfig.c              | 2 +-
>  NetworkPkg/Ip4Dxe/Ip4Driver.c                  | 2 +-
>  NetworkPkg/Ip6Dxe/Ip6Driver.c                  | 2 +-
>  NetworkPkg/Mtftp4Dxe/Mtftp4Driver.c            | 2 +-
>  NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.c | 2 +-
>  6 files changed, 7 insertions(+), 7 deletions(-)
> 
> diff --git a/NetworkPkg/DnsDxe/DnsDriver.c
> b/NetworkPkg/DnsDxe/DnsDriver.c
> index 94d072159a4d..ad007da8b7d6 100644
> --- a/NetworkPkg/DnsDxe/DnsDriver.c
> +++ b/NetworkPkg/DnsDxe/DnsDriver.c
> @@ -1145,7 +1145,7 @@ Dns4ServiceBindingCreateChild (
>             DnsSb->ConnectUdp->UdpHandle,
>             &gEfiUdp4ProtocolGuid,
>             gDns4DriverBinding.DriverBindingHandle,
> -           ChildHandle
> +           *ChildHandle
>             );
> 
>       gBS->UninstallMultipleProtocolInterfaces (
> @@ -1388,7 +1388,7 @@ Dns6ServiceBindingCreateChild (
>             DnsSb->ConnectUdp->UdpHandle,
>             &gEfiUdp6ProtocolGuid,
>             gDns6DriverBinding.DriverBindingHandle,
> -           ChildHandle
> +           *ChildHandle
>             );
> 
>       gBS->UninstallMultipleProtocolInterfaces (
> diff --git a/NetworkPkg/IScsiDxe/IScsiConfig.c
> b/NetworkPkg/IScsiDxe/IScsiConfig.c
> index b876da7f5ccd..d773849fd3b0 100644
> --- a/NetworkPkg/IScsiDxe/IScsiConfig.c
> +++ b/NetworkPkg/IScsiDxe/IScsiConfig.c
> @@ -3852,7 +3852,7 @@ IScsiConfigFormInit (
>                                       );
>    if (CallbackInfo->RegisteredHandle == NULL) {
>      gBS->UninstallMultipleProtocolInterfaces (
> -           &CallbackInfo->DriverHandle,
> +           CallbackInfo->DriverHandle,
>             &gEfiDevicePathProtocolGuid,
>             &mIScsiHiiVendorDevicePath,
>             &gEfiHiiConfigAccessProtocolGuid,
> diff --git a/NetworkPkg/Ip4Dxe/Ip4Driver.c
> b/NetworkPkg/Ip4Dxe/Ip4Driver.c
> index ebd4dec1dfe4..62be8b681a18 100644
> --- a/NetworkPkg/Ip4Dxe/Ip4Driver.c
> +++ b/NetworkPkg/Ip4Dxe/Ip4Driver.c
> @@ -891,7 +891,7 @@ Ip4ServiceBindingCreateChild (
>                    );
>    if (EFI_ERROR (Status)) {
>      gBS->UninstallMultipleProtocolInterfaces (
> -           ChildHandle,
> +           *ChildHandle,
>             &gEfiIp4ProtocolGuid,
>             &IpInstance->Ip4Proto,
>             NULL
> diff --git a/NetworkPkg/Ip6Dxe/Ip6Driver.c
> b/NetworkPkg/Ip6Dxe/Ip6Driver.c
> index 7dc9e45af7b6..63d8428dbced 100644
> --- a/NetworkPkg/Ip6Dxe/Ip6Driver.c
> +++ b/NetworkPkg/Ip6Dxe/Ip6Driver.c
> @@ -888,7 +888,7 @@ Ip6ServiceBindingCreateChild (
>                    );
>    if (EFI_ERROR (Status)) {
>      gBS->UninstallMultipleProtocolInterfaces (
> -           ChildHandle,
> +           *ChildHandle,
>             &gEfiIp6ProtocolGuid,
>             &IpInstance->Ip6Proto,
>             NULL
> diff --git a/NetworkPkg/Mtftp4Dxe/Mtftp4Driver.c
> b/NetworkPkg/Mtftp4Dxe/Mtftp4Driver.c
> index ae9e65544a86..06c4e202d3ef 100644
> --- a/NetworkPkg/Mtftp4Dxe/Mtftp4Driver.c
> +++ b/NetworkPkg/Mtftp4Dxe/Mtftp4Driver.c
> @@ -592,7 +592,7 @@ Mtftp4ServiceBindingCreateChild (
>             MtftpSb->ConnectUdp->UdpHandle,
>             &gEfiUdp4ProtocolGuid,
>             gMtftp4DriverBinding.DriverBindingHandle,
> -           ChildHandle
> +           *ChildHandle
>             );
>      goto ON_ERROR;
>    }
> diff --git a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.c
> b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.c
> index 18ee763002b4..c0870ab9979c 100644
> --- a/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.c
> +++ b/NetworkPkg/TlsAuthConfigDxe/TlsAuthConfigDxe.c
> @@ -39,7 +39,7 @@ TlsAuthConfigDxeUnload (
>    ASSERT (PrivateData->Signature ==
> TLS_AUTH_CONFIG_PRIVATE_DATA_SIGNATURE);
> 
>    gBS->UninstallMultipleProtocolInterfaces (
> -         &ImageHandle,
> +         ImageHandle,
>           &gEfiCallerIdGuid,
>           PrivateData,
>           NULL
> --
> 2.19.1.3.g30247aa5d201
> 


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

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

Reply via email to