NetworkPkg: Stop the HTTP Boot service after the boot image download complete.

After boot image has been downloaded, the HTTP boot driver leaves the service
in the started state, with an active TCP child. This may cause some problems:
1. The HTTP session may become unavaiable after a while, then a following HTTP
Boot will fail.
2. An active TCP child will send RST to any incoming TCP message, which may
break other driver which tries to setup a TCP connection.
The HTTP boot driver doesn't provide any interface to the boot loader, so it's
unnecessary to keep the service running after a boot image is downloaded.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-By: Wu Jiaxin <jiaxin.wu@intel.com>
This commit is contained in:
Fu Siyuan 2016-06-28 11:30:04 +08:00
parent 89b2065739
commit 287f05cd1f
1 changed files with 5 additions and 1 deletions

View File

@ -505,7 +505,11 @@ HttpBootDxeLoadFile (
Status = EFI_WARN_FILE_SYSTEM;
}
}
//
// Stop the HTTP Boot service after the boot image is downloaded.
//
HttpBootStop (Private);
return Status;
}