Commit Graph

94 Commits

Author SHA1 Message Date
Eric Dong 523f48e771 Refine code to make it more safely.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Feng Tian <feng.tian@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15598 6f19259b-4bc3-4df7-8a09-765794883524
2014-06-26 03:24:25 +00:00
Gao, Liming ace287611f Update Module BaseName to avoid the same name.
Signed-off-by: Gao, Liming <liming.gao@intel.com>
Reviewed-by: Dong, Guo <guo.dong@intel.com>
Reviewed-by: Fu, Siyuan <siyuan.fu@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15176 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-24 09:33:11 +00:00
Tian, Hot 4b738c76f5 Fix CRLF format
Signed-off-by: Tian, Hot <hot.tian@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15155 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-22 08:38:50 +00:00
Fu Siyuan 8cb92971e4 1. Update the parsing logic of DHCP message in PXE driver.
2. Append null terminated character at the end of option 67.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Dong, Guo <guo.dong@intel.com>
Reviewed-by: Jin, Eric <eric.jin@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15099 6f19259b-4bc3-4df7-8a09-765794883524
2014-01-13 02:53:50 +00:00
sfu5 e3cf3c2048 Add Copyright notices and comments for Red Hat contributor.
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14355 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-14 06:25:39 +00:00
sfu5 30a95d4d39 Skip PXE prompt/menu/discover if PXE_DISCOVERY_CONTROL tag bit 3 set.
Signed-off-by: Laszlo Ersek <lersek@redhat.com>
Reviewed-by: Ye Ting  <ting.ye@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14332 6f19259b-4bc3-4df7-8a09-765794883524
2013-05-09 05:28:27 +00:00
sfu5 ef117a6a38 Remove unused [Guids] section from PXE inf file.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14310 6f19259b-4bc3-4df7-8a09-765794883524
2013-04-23 05:50:55 +00:00
sfu5 f402291bf9 Initialize DefaultInfo before using it.
Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14168 6f19259b-4bc3-4df7-8a09-765794883524
2013-03-11 07:47:42 +00:00
sfu5 416211e0d8 Removes a useless condition in PxeBcImpl.c.
Signed-off-by: Olivier Martin <olivier.martin@arm.com>
Reviewed-by: Ye Ting  <ting.ye@intel.com>
Reviewed-by: Fu Siyuan <siyuan.fu@intel.com>


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14117 6f19259b-4bc3-4df7-8a09-765794883524
2013-02-01 04:50:28 +00:00
sfu5 216f79703b 1. Add EFI_COMPONENT_NAME2_PROTOCOL.GetControllerName() support.
2. Fix the driver binding Stop() hang issue in the network stack.
3. Add Ip4 raw data support.
4. Add iSCSI Dhcp option 60 support.

Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13995 6f19259b-4bc3-4df7-8a09-765794883524
2012-12-13 06:47:06 +00:00
sfu5 75dce34062 1. Fix a bug in PXE driver that the PXE boot do not restart if a new boot option on the different IP stack is selected.
2. Retrieve the IP information after iSCSI TCPv6 connection established and fill it into iBFT table.
3. Generate a random IAID for each NIC port to require different IPv6 address in PXE driver.
4. Update function EfiMtftp6Configure() and Mtftp6RrqHandleOack() to allocate at most one UdpIo.
5. Fix a typo from “destory” to “destroy” in network code.

Signed-off-by: Fu Siyuan <siyuan.fu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Reviewed-by: Ouyang Qian <qian.ouyang@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13859 6f19259b-4bc3-4df7-8a09-765794883524
2012-10-17 08:23:41 +00:00
sfu5 357af28525 Reconfigure the UdpRead instance if an error occurred in Dhcp, Discover and Mtftp process.
Signed-off-by: sfu5
Reviewed-by: qianouyang
Reviewed-by: tye

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12884 6f19259b-4bc3-4df7-8a09-765794883524
2011-12-16 09:00:47 +00:00
sfu5 c3cd46d421 1. Fix bug in PXE driver UdpRead function to handle the IP fragmentation.
Signed-off-by: sfu5
Reviewed-by: xdu2
Reviewed-by: hhuan13

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12309 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-09 08:31:37 +00:00
sfu5 0bc17488fe Fix bug for UefiPxeBcDxe driver to catch the return status.
Signed-off-by: sfu5
Reviewed-by: hhuan13
Reviewed-by: xdu2

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12252 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-01 08:48:51 +00:00
hhuan13 379db4ac17 1. Refine the error handling for PXE-v4 driver.
Signed-off-by: hhuan13
Reviewed-by: xdu2, tye

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12191 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-24 08:48:23 +00:00
hhuan13 57b301b569 1. Define a netlib library function NetLibGetSystemGuid()
2. Update PXE driver to use NetLibGetSystemGuid()

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12017 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-14 11:27:05 +00:00
niruiyu 284ee2e829 Fix the comments to follow UEFI Spec regarding how to check an EFI_HANDLE is valid/invalid.
Signed-off-by: niruiyu
Reviewed-by: lgao4

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11987 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-06 03:55:36 +00:00
hhuan13 c82291bc31 1. Fix PXE performance issue : enhance EfiPxeBcSetIpFilter() to eliminate unnecessary re-configure Udp4Read operation.
Reviewed-by: xdu2
Signed-off-by: hhuan13


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11779 6f19259b-4bc3-4df7-8a09-765794883524
2011-06-09 09:25:02 +00:00
ydong10 c9325700d0 Refine soma code to make code run safely.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10877 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-15 07:48:11 +00:00
hhuan13 2e4c2a049b Improve PXE Over IPv4 performance:
1. Stop UdpWrite instance upon return from EfiPxeBcUdpWrite() to avoid mass pkgs enqueue to this useless instance in Udp layer.
2. Enhance Udp timeout logic to prevent the worst case happen, and set PxeUdp instance to 50ms to avoid enqueue mass pkgs in background.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10861 6f19259b-4bc3-4df7-8a09-765794883524
2010-09-09 09:30:19 +00:00
hhuan13 8730386e6d To comply w/ UEFI spec , In Dhcp(), Discover(), and Mtftp() interfaces, set the IP filter to use StationIp.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10829 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-27 05:11:32 +00:00
hhuan13 cfbc1a7537 1. Introduce PcdTftpBlockSize to let platform DSC customize block size.
2. Roll back the default block size to handle all link layers.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10803 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-18 00:47:26 +00:00
hhuan13 11fa4298d6 Roll back BlockSize to 0x8000 for PXE performance concern.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10798 6f19259b-4bc3-4df7-8a09-765794883524
2010-08-15 01:41:30 +00:00
hhuan13 a4ac31e0a0 Remove ASSERT and change to if ()
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10640 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-08 05:29:10 +00:00
hhuan13 787cd144da Fix a bug by adding * for Ptr8
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10639 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-08 05:17:47 +00:00
hhuan13 4546bcbb3a Fix a bug:
RFC 2132, Section 9.5 does not strictly state Bootfile name (option 67) is null 
terminated string. So force to append null terminated character at the end of string.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10635 6f19259b-4bc3-4df7-8a09-765794883524
2010-07-07 05:55:41 +00:00
hhuan13 29a4f92d81 Fix 3 K8 issues for PXE module
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10489 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-14 07:47:29 +00:00
hhtian e5eed7d364 Update the copyright notice format
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10418 6f19259b-4bc3-4df7-8a09-765794883524
2010-04-24 09:33:45 +00:00
vanjeff ee6e8714a0 remove PxeBc->Stop () when EFI_BUFFER_TOO_SMALL, the calling PxeBc->Stop() in Driver Binding Stop() could make sure PXE functionality is stopped when disconnecting UefiPxeBcDxe module.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10318 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-27 00:48:22 +00:00
hhuan13 4431fdc802 Fix an bug for PXE boot assert
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10291 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-19 13:57:46 +00:00
vanjeff 7bc01e86d9 changing UDP default timeout value to 2s to improve PXE BC boot performance.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10282 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-18 11:35:35 +00:00
lgao4 6bfbb5f0e0 1. Correct File header to ## @file
2. Remove unnecessary .common] postfix on section.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10052 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-24 00:21:16 +00:00
xdu2 dd29f3edb9 For network dynamic media support:
1. add library function NetLibDetectMedia to NetLib for media detection
2. update MnpDxe to periodically poll for media status update and check for media status before packet transmit
3. update Ip4Dxe to return ModeData using Mnp->GetModeData()
4. update IScsiDxe to check for media status before try to do DHCP and session login
5. update UefiPxeBcDxe to check for media status before PXE start

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9919 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-03 04:37:53 +00:00
xdu2 0bf47d3ddf 1. add error handling in case DHCP success but boot request fail
2. add UnloadImage to ease debug

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9910 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-02 11:18:33 +00:00
ljin6 fa6d3ee491 Get MaxPacketSize from IP4 mode data and reduce the head size of UDP and MTFTP, and take it as BlockSize to download.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9894 6f19259b-4bc3-4df7-8a09-765794883524
2010-02-01 03:32:28 +00:00
ljin6 af176a83f9 Remove redundant arch definition in UefiPxeBcDxe.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9851 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-28 08:30:11 +00:00
ljin6 ecd28a61d6 Fixed the issue of duplicated SYS_ARCH in MdeModulePkg\UefiPxeBcDxe.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9848 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-28 08:15:00 +00:00
vanjeff e285199897 refine the code and add more security check.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9691 6f19259b-4bc3-4df7-8a09-765794883524
2010-01-08 02:35:56 +00:00
xdu2 1204fe8319 Code clean up in NetLib:
1. Add GLOBAL_REMOVE_IF_UNREFERENCED to all globals
2. Update NTOHL and NTOHS to be BaseLib func SwapBytes32/SwapBytes16
3. Remove duplicate NET_SWAP_SHORT (to use NTOHS instead)

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9648 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-30 13:44:11 +00:00
vanjeff 6ee21b60a8 The functionality of PXE Base Code protocol will not be stopped, when downloading is successfully.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9512 6f19259b-4bc3-4df7-8a09-765794883524
2009-12-04 03:01:52 +00:00
vanjeff 8f8bfa5b85 Fixed the bug that not to stop PXE functionality when PXE meeting some failure. And enhanced DriverBindingStop() to stop PXE functionality if PXE was still alive.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9478 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-25 01:36:54 +00:00
xdu2 766c7483c3 Update network drivers to use FreePool() instead of gBS->FreePool().
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9424 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-13 06:13:59 +00:00
tye f6b7393ceb [Change summary]:
1. Update NetLib to a combined NetLib support dual network stack:
1) Add Network Debug facility for IPv4 stack.
2) Extend the library APIs to support IPv6 stack:
   a. NetIp6IsUnspecifiedAddr
   b. NetIp6IsLinkLocalAddr   
   c. NetIp6IsNetEqual
   d. NetLibCreateIPv6DPathNode.
   e. NetIp6PseudoHeadChecksum
   f. NetIp6IsValidUnicast
3) Update the structure definitions:
   a. Update NET_BUF to add EFI_IP6_HEADER and EFI_UDP_HEADER
   b. Add NET_IP6_PSEUDO_HDR
4) Update Ip4IsUnicast to NetIp4IsUnicast

2. Update the impacted modules to adopt the combined NetLib.

3. Clean up coding style errors in all network drivers and libraries.


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9391 6f19259b-4bc3-4df7-8a09-765794883524
2009-11-04 08:18:34 +00:00
qhuang8 31f228cfc0 Make end of line consistent caused by previous check in.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9183 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-24 15:35:55 +00:00
qhuang8 248515801a Integrate the patch contributed by Andrew Fish to port MdeModulePkg to support ARM.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9174 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-24 15:22:14 +00:00
vanjeff 2ce5c88a7a Use siaddr in DHCP packet, if zero, use option 54 instead.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9066 6f19259b-4bc3-4df7-8a09-765794883524
2009-08-14 02:37:23 +00:00
vanjeff 0adb8a3c47 Fixed build issue on GCC compiler. This issue is introduced by one mistaken in one checking-in on Main trunk only. The patch(MdeModulePkg.patch) for EFI_MTFTP4_TOKEN based on MdePkg release 1.00 has no this issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9009 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-27 02:07:20 +00:00
vanjeff ea886bef0a Updated EFI_MTFTP4_TOKEN structure to add member Context. It's an incompatible change adopted by UEFI group.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@9005 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-24 17:36:07 +00:00
vanjeff 944bf8db90 fixed ASSERT condition issue.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8961 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-17 04:17:56 +00:00
mdkinney d8d26fb207 Retire NetLibQueueDpc() and NetLibDispatchDpc() and use QueueDpc() and DispatchDpc() from the DpcLib instead.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8897 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-11 22:51:51 +00:00