summaryrefslogtreecommitdiff
path: root/StdLib/EfiSocketLib
AgeCommit message (Collapse)AuthorFilesLines
2014-09-11StdLib: Fix some build problems and obscure bugs.daryl.mcdaniel1-88/+88
StdLib\ BsdSocketLib\ ns_print.c Use "%lu" format instead of "%Lu". A capital 'L' specifies (long double) in print formats. Add a cast from char to (unsigned int) to match its sprintf format. res_debug.c Use "%lu" format instead of "%Lu". A capital 'L' specifies (long double) in print formats. EfiSocketLib\ Socket.c Update copyright & correct formatting Include\ sys\ EfiCdefs.h Update copyright date Change type of LONGN and ULONGN to INTN and UINTN, respectively. errno.h Update copyright date Add enum member '__ESUCCESS = 0' fcntl.h Update copyright date Improve comment for O_EXCL stat.h Update copyright date Reorder the S_* flags Put the S_* predicate macros in the same order as their flag definitions Add a function header comment to the stat() function declaration. errno.h Update copyright date Define new ESUCCESS error code wchar.h Update copyright date Correct the description of the Nptr parameter to the wcstol, wcstoll, wcstoul, and wcstoull functions. x86\float.h Update copyright date Define 'long double' limits for non-Microsoft compilers LibC\ Containers\Queues\Fifo.c Rewrite to make more robust and secure (zeros out old data) StdLib\realpath.c Update copyright date Reformat descriptive comment for realpath() Add terminating CRLF Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: daryl.mcdaniel@intel.com Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16096 6f19259b-4bc3-4df7-8a09-765794883524
2014-03-20Fix TCP4/TCP6 connections. Connections were transitioning into the ↵leroy.p.leahy1-3/+2
connected state and the polling was returning an error. Fix the polling routine to return success in this case. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: leroy.p.leahy@intel.com Reviewed-by: SREENIVASULA_REDDY@Dell.com git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15355 6f19259b-4bc3-4df7-8a09-765794883524
2013-12-13Fix the non-blocking behavior for connect. The behavior was correct if the ↵lpleahy leroy.p.leahy3-12/+16
code polled the connect routine but was not correct when using select to complete the asynchronous request. This change fixes the select case by moving where some of the operations performed upon the connection completion. Signed-off-by: lpleahy leroy.p.leahy@intel.com Reviewed-by: Daniel Moura oxesoft@gmail.com git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14984 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-20Fix GCC build errorsLee Leahy5-5/+5
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14876 6f19259b-4bc3-4df7-8a09-765794883524
2013-11-20Ignore transmit errors for UDPv4, UDPv6 and IPv4.Lee Leahy8-175/+1236
Support local bind by validating the IP address using the IP configuration protocol. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Lee Leahy <leroy.p.leahy@intel.com> Reviewed-by: Ankit Singh3 <Ankit_Singh3@Dell.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@14875 6f19259b-4bc3-4df7-8a09-765794883524
2013-02-27Otherwise gcc can default to the "sysv_abi" (as opposed to the "ms_abi") ↵lpleahy1-3/+3
calling convention on X64, causing problems like <http://sourceforge.net/mailarchive/message.php?msg_id=30356166>. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14148 6f19259b-4bc3-4df7-8a09-765794883524
2013-02-08Increase sockets performance by increasing the maximum buffer sizes.lpleahy1-2/+2
Tested using: DataSource/DataSink Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14125 6f19259b-4bc3-4df7-8a09-765794883524
2013-02-08Allow fragmentation of large UDP packetslpleahy1-1/+1
Reviewed-by: Ankit Singh of Dell Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14124 6f19259b-4bc3-4df7-8a09-765794883524
2012-10-08Poll the network adapter during connectlpleahy1-0/+5
Signed-off-by: lpleahy Reviewed-by: Dell, Sreenivasula Reddy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13803 6f19259b-4bc3-4df7-8a09-765794883524
2012-10-08Fixed close for socket to properly release the socket context structure and ↵lpleahy4-96/+220
the handle. Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13802 6f19259b-4bc3-4df7-8a09-765794883524
2012-09-10Modify UDP and IP to transmit on all network adapters instead of just the ↵lpleahy4-49/+70
first network adapter. Fix comment in Socket.c. Signed-off-by: lpleahy Reviewed and tested by: Sreenivasula Reddy of Dell git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13713 6f19259b-4bc3-4df7-8a09-765794883524
2012-08-10Return the proper status after one of the ports is configured for UDP or IP ↵lpleahy3-114/+102
communications. Reviewed by: Ankit Singh of Dell Submitted by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13604 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-29Choose a better subnet mask value for the IPv4 address.lpleahy3-9/+9
Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13479 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-26Define the global variables as weak to enable the proper linking with ↵lpleahy1-9/+9
applications and the Sockets driver. Submitted-by: Oliver Martin Reviewed-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13475 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-22Fix listen exit path when last port returns an error.lpleahy2-0/+4
Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13466 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-08Fix port retry behavior during connect - All port error paths exit through ↵lpleahy2-273/+207
ConnectComplete to try the next port. When the last port fails to connect, the port error status to errno translation gets done by ConnectPoll. Testing: Using two network adapters, second one always connected to the network. 1. Eth0 not configured, not connected - short delay 2. Eth0 not configured, connected - short delay 3. Eth0 configured, not connected - short delay 4. Eth0 configured, connected to private network - long delay due to connection timeout, failover to Eth1 5. Eth1 configured, connected, no server - long delay due to connection timeout, returned timeout error. Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13436 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-07Only use ports with a network connection (media present) when connecting to ↵lpleahy2-5/+48
a remote host. Fix bug causing early exit with NO_MEDIA. Add fix to TCP6. Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13432 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-04Only use ports with a network connection (media present) when connecting to ↵lpleahy1-3/+26
a remote host. Signed-off-by: lpleahy Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13427 6f19259b-4bc3-4df7-8a09-765794883524
2012-06-01UseEfiSocketLib.c - Only exit for out of resources, otherwise use all ↵lpleahy2-28/+20
network adapters. Service.c - Return EFI_SUCCESS if any of the protocols are present. Return failure only when no protocols are available or no more memory available. Signed-off-by: lpleahy Reviewed-by: vzimmer git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13426 6f19259b-4bc3-4df7-8a09-765794883524
2012-03-05Fix read issue detected by the following Python program. The issue was that ↵lpleahy2-0/+10
the caller's buffer pointer was not being advanced between segments of the read data. Signed-off-by: lpleahy ----- UnbufferedRead.py ----- import httplib conn = httplib.HTTPConnection("10.241.97.30") conn.request('GET', '/') resp = conn.getresponse(buffering=True) if resp.status != 200: print "status:", resp.status print "aborting" sys.exit(1) while True: chunk = resp.read() if not chunk: break print chunk git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13077 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-24Fix issues detected by python web-server.lpleahy7-49/+72
* Removed display of TPL * Added NOP implementation for SO_REUSEADDR * Add better detection of socket address * Return first address Signed-off-by: lpleahy Python Web server below: --------------- import sys import BaseHTTPServer from SimpleHTTPServer import SimpleHTTPRequestHandler HandlerClass = SimpleHTTPRequestHandler ServerClass = BaseHTTPServer.HTTPServer Protocol = "HTTP/1.0" port = 80 server_address = ('', port) HandlerClass.protocol_version = Protocol httpd = ServerClass(server_address, HandlerClass) sa = httpd.socket.getsockname() print "Serving HTTP on", sa[0], "port", sa[1], "..." httpd.serve_forever() git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13034 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-15Bug fix: CreateEvent sometimes returning EFI_INVALID_PARAMETER due to bad ↵lpleahy1-1/+1
TPL value. Use known good TPL value since TPL is a don't care. Found, reviewed and tested by: Duane Voth Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13017 6f19259b-4bc3-4df7-8a09-765794883524
2012-02-09Merged socket development branch:lpleahy9-9/+3684
* Fixed bug report (Duane Voth: Python sockets test application not working) by starting the receive operations when a connection is established! * Increased performance by extending the idle loop into the network stack with the Poll call. * Added support for TCPv6 (SOCK_STREAM) and UDPv6 (SOCK_DGRAM). * Added support for getaddrinfo and getnameinfo calls. * Moved application PCD values into AppPkg Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13002 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-30Fix compilation errors detected with GCC 4.4lpleahy4-34/+37
Signed-off-by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12504 6f19259b-4bc3-4df7-8a09-765794883524
2011-09-30Update the sockets library codelpleahy11-6067/+7973
* Passes conformance and functional tests. * Builds with GCC 4.4 compiler. Signed-off by: lpleahy git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12497 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-08Better handle transmit errorslpleahy2-224/+251
Return 0 receive bytes when socket is closed git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12099 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-08Remove SocketPkg referenceslpleahy1-1/+0
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12096 6f19259b-4bc3-4df7-8a09-765794883524
2011-08-02Fix GCC build breaks.darylm5032-3/+3
Fix case mismatch for includes of "Socket.h". Original code was <socket.h> while file was Socket.h in the same directory as the .c file. Add EFIAPI to function declarations so that they match the definition. Remove "ineffective" statements from stub functions. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12076 6f19259b-4bc3-4df7-8a09-765794883524
2011-07-30Add Socket Libraries.darylm5038-0/+11165
Add Posix functions for porting compatibility. Fix compliance issues with ISO/IEC 9899:199409 New Functions: setenv(), fparseln(), GetFileNameFromPath(), rename(), realpath(), setprogname(), getprogname(), strlcat(), strlcpy(), strsep(), setitimer(), getitimer(), timegm(), getopt(), basename(), mkstemp(), ffs(), vsnprintf(), snprintf(), getpass(), usleep(), select(), writev(), strcasecmp(), getcwd(), chdir(), tcgetpgrp(), getpgrp(), gettimeofday(), bcopy(), git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12061 6f19259b-4bc3-4df7-8a09-765794883524