X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=NetworkPkg%2FMtftp6Dxe%2FMtftp6Impl.c;h=9b08455ef3ac0ff35db53a0e853beede8e1f3f91;hp=4a4e5b192c27f533c6c4ba36b4b233fbe7186109;hb=216f79703b8cb8dc65abdd768bedb2bcdbc1a1f8;hpb=906e1cb7f7f178f5cb2a3bebbac59f6aa8c273a4 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;