X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=NetworkPkg%2FMtftp6Dxe%2FMtftp6Impl.c;h=9b08455ef3ac0ff35db53a0e853beede8e1f3f91;hb=b701aae6a8e01b3a39c1cc5ad1409c9b929495ad;hp=4a4e5b192c27f533c6c4ba36b4b233fbe7186109;hpb=75dce340624dba5e4a79b2e5b2dbe943bae0d0e9;p=mirror_edk2.git diff --git a/NetworkPkg/Mtftp6Dxe/Mtftp6Impl.c b/NetworkPkg/Mtftp6Dxe/Mtftp6Impl.c index 4a4e5b192c..9b08455ef3 100644 --- a/NetworkPkg/Mtftp6Dxe/Mtftp6Impl.c +++ b/NetworkPkg/Mtftp6Dxe/Mtftp6Impl.c @@ -197,6 +197,19 @@ EfiMtftp6Configure ( UDP_IO_UDP6_VERSION, NULL ); + if (Instance->UdpIo != NULL) { + Status = gBS->OpenProtocol ( + Instance->UdpIo->UdpHandle, + &gEfiUdp6ProtocolGuid, + (VOID **) &Udp6, + Service->Image, + Instance->Handle, + EFI_OPEN_PROTOCOL_BY_CHILD_CONTROLLER + ); + if (EFI_ERROR (Status)) { + goto ON_EXIT; + } + } } if (Instance->UdpIo == NULL) { @@ -626,8 +639,6 @@ EfiMtftp6Poll ( // if (Instance->Config == NULL) { return EFI_NOT_STARTED; - } else if (Instance->InDestroy) { - return EFI_DEVICE_ERROR; } Udp6 = Instance->UdpIo->Protocol.Udp6;