From db79f8019de5e6add3a721b60283586558f5e848 Mon Sep 17 00:00:00 2001 From: Jiaxin Wu Date: Thu, 1 Mar 2018 17:24:20 +0800 Subject: [PATCH] NetworkPkg/Udp6Dxe: Fix the failure to leave one multicast group address. The issue was enrolled by the commit of ceec3638. One of the change in the commit was to return the status from NetMapIterate in Udp6Groups function. But it should not return EFI_ABORTED directly in case McastIp is not NULL, which means to terminate the iteration and leave the McastIp successfully. Cc: Wang Fan Cc: Fu Siyuan Cc: Ye Ting Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jiaxin Wu Reviewed-by: Fu Siyuan --- NetworkPkg/Udp6Dxe/Udp6Main.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/NetworkPkg/Udp6Dxe/Udp6Main.c b/NetworkPkg/Udp6Dxe/Udp6Main.c index 1d7f0acbc7..e9d94dd00c 100644 --- a/NetworkPkg/Udp6Dxe/Udp6Main.c +++ b/NetworkPkg/Udp6Dxe/Udp6Main.c @@ -382,6 +382,9 @@ Udp6Groups ( } else { Status = NetMapIterate (&Instance->McastIps, Udp6LeaveGroup, MulticastAddress); + if ((MulticastAddress != NULL) && (Status == EFI_ABORTED)) { + Status = EFI_SUCCESS; + } } ON_EXIT: -- 2.39.2