| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| | |
kernels that fails to report a writable state on a socket when an error
condition (or remote close) is present.
|
| | |
|
| |
| |
| | |
a whole raft of test failures. WIP.
|
| |
| |
| |
| |
| |
| |
| | |
Windows where it makes sense.
* Rework WaitForConnect once more to always report ENOTCONN on I/O operations on failed async sockets.
* Fix synchronous connections to a server that only listens on IPv6 (or whatever comes later in the list returned by getaddrinfo(), socket-15.*)
* Fix spurious writable event on async sockets (socket-14.15).
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
connections.
* Let TcpInputProc() and TcpOutputProc() fail before calling any I/O syscalls when an asynchronous connection has failed.
* Adjust the tests accordingly.
|
| | |
|
| |
| |
| |
| | |
* Advance async connections whenever the channel is touched (e.g. by [chan configure]).
* Add a noblock argument to WaitForConnect(), so that advancing async connections from [chan configure] doesn't block even on a blocking socket.
|
| |
| |
| |
| |
| | |
from the script level.
* More tests for corner cases.
|
| |
| |
| |
| | |
writable or something. When it does so for a pending socket, it is falsely assumed to have succeeded and a subsequent read/write operation will fail.
|
| |
| |
| |
| |
| |
| | |
more than one address.
* socket.test: Extend and improve tests for [socket -async]
* socket.test: Add latency measuring and calculation for Windows.
|
| |
| |
| |
| |
| | |
Calling back to CreateClientSocket() from the event loop works, but
the final failed or succeeded state of an asyncronous socket does not
get notified to the channel correctly.
|
| |
| |
| |
| | |
other means than covering behind void pointers.
|
| |
| |
| |
| | |
pending [socket -async].
|
| | |
|
| |
| |
| |
| |
| |
| | |
In file included from ./generic/itcl2TclOO.c:12:0:
/Tcl/include/tclInt.h:3012:8: warning: ‘struct addrinfo’ declared inside parameter list [enabled by default]
const char **errorMsgPtr);
^
|
| | |
|
| |
| |
| |
| |
| | |
TcpGetOptionProc() to TcpHostPortList(). Make it robust against
implementations of getnameinfo() that error out if reverse mapping
fails instead of falling back to the numeric representation.
|
| | |
|
| | |
|
| |
| |
| | |
code of getaddrinfo is used instead of errno unless it is EAI_SYSTEM.
|
| |
| |
| | |
with an unsupported address family leaves one behind.
|
|\ \
| |/ |
|
| | |
|
| |
| |
| |
| |
| | |
socket() instead of only using ai_family.
* Try to keep the most meaningful error while iterating over the result list, because using the last error can be misleading.
|
| |
| |
| |
| | |
client socket in progress, and commit them on completion.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
the writable fileevent at the end of an asynchronous connection attempt. Improve comments for some of the trickery around [socket -async]. [Bug 3325339]
* tests/socket.test: Adjust tests to the async code changes. Add more tests for corner cases of async sockets.
|
| |
| |
| |
| |
| |
| | |
[socket -async]
* unix/tclUnixSock.c: Set up the file handler for async sockets to fire on exceptions in addition to writable state.
* tests/socket.test: Improve error reporting when socket-14.2 times out.
|
| |
| |
| |
| |
| | |
server sockets by putting an instance of TcpFdList into TcpState
instead of just a pointer. Now only server sockets that listen on
multiple addresses need the linked list of file descriptors.
|
| |
| |
| |
| | |
connection had succeeded or failed.
|
| |
| |
| |
| |
| |
| |
| | |
and NetBSD.
* Unify channel name creation.
* Prevent error messages from appearing twice.
* Double the measured latency in socket.test to be on the safe side.
|
| |
| |
| |
| |
| | |
use that for some of the tests instead of fixed "big enough" times.
* Improve correctness of [socket -async] in some error cases.
|
| |
| |
| |
| | |
* Cache async socket errors for later use by [fconfigure -error]
* Add tests for the above
|
| | |
|
| |
| |
| |
| |
| | |
here, as the generic server code already takes care of that.
* tests/socket.test (accept): Add tests to make sure that this remains so.
|
| |
| |
| | |
rest of Tcl source code. No ABI change. API change *should* be harmless.
|
|\ \
| |/
| | |
cause more harm than good. Purged them (except in zlib files).
|
| |\
| | |
| | | |
more harm than good. Purged them.
|
| | |
| | |
| | | |
more harm than good. Purged them.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
See Tcl Bug 999544 for more information.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* unix/tclUnixSock.c (CreateClientSocket): local and remote
addresses, so that the system's address preference for the remote
side decides which family gets tried first. Cleanup and clarify
some of the comments.
|
| | |
| | |
| | |
| | | |
TclWin(Get|Set)SockOpt to SOCKET, because on Win64 those are 64-bit, which does not fit.
|
| | |
| | |
| | |
| | | |
crash some systems. Thanks Larry Virden. [Bug 3093120]
|
| | |
| | |
| | |
| | | |
* win/tclWinSock.c (TcpGetOptionProc): NULL (a legal situation).
|