NetworkPkg IScsiDxe: Fix build error for lastest VS2015 compiler
The IScsiDxe module encounters a build error for IA32 arch using the
latest version of VS2015:
IScsiDxe.lib(IScsiProto.obj) : error LNK2001: unresolved external symbol
__allmul
The cause is line 141 in file NetworkPkg\IScsiDxe\IScsiProto.c. The third
parameter for gBS->SetTimer() function is of type UINT64, so the
multiplication should use the MultU64x32() function now.
Cc: Siyuan Fu <siyuan.fu@intel.com>
Cc: Jiaxin Wu <jiaxin.wu@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a.wu@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
diff --git a/NetworkPkg/IScsiDxe/IScsiProto.c b/NetworkPkg/IScsiDxe/IScsiProto.c
index c82290e..5092365 100644
--- a/NetworkPkg/IScsiDxe/IScsiProto.c
+++ b/NetworkPkg/IScsiDxe/IScsiProto.c
@@ -138,7 +138,11 @@
//
// Start the timer, and wait Timeout seconds to establish the TCP connection.
//
- Status = gBS->SetTimer (Conn->TimeoutEvent, TimerRelative, Timeout * TICKS_PER_MS);
+ Status = gBS->SetTimer (
+ Conn->TimeoutEvent,
+ TimerRelative,
+ MultU64x32 (Timeout, TICKS_PER_MS)
+ );
if (EFI_ERROR (Status)) {
return Status;
}