]> git.proxmox.com Git - mirror_edk2.git/commit
ShellPkg: Fix 'ping' command Ip4 receive flow.
authorMaciej Rabeda <maciej.rabeda@linux.intel.com>
Thu, 27 Feb 2020 10:30:43 +0000 (11:30 +0100)
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Wed, 1 Apr 2020 10:53:03 +0000 (10:53 +0000)
commit65c73df44c61235ede84c5aa1d2eab6650844966
treed910483fd3b2448543974bfa1b75eed40c6915df
parentdd7523b5b123de6f0730f2f2abb207f2a5c1ccd4
ShellPkg: Fix 'ping' command Ip4 receive flow.

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2032

'ping' command's receive flow utilizes a single Rx token which it
attempts to reuse before recycling the previously received packet.
This causes a situation where under ICMP traffic,
Ping6OnEchoReplyReceived() function will receive an already
recycled packet with EFI_SUCCESS token status and finally
dereference invalid pointers from RxData structure.

Cc: Ray Ni <ray.ni@intel.com>
Cc: Zhichao Gao <zhichao.gao@intel.com>
Signed-off-by: Maciej Rabeda <maciej.rabeda@linux.intel.com>
Reviewed-by: Siyuan Fu <siyuan.fu@intel.com>
Acked-by: Zhichao Gao <zhichao.gao@intel.com>
ShellPkg/Library/UefiShellNetwork1CommandsLib/Ping.c