Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
* | Use more "size_t" in stead of "int" internall. Also eliminate a lot of ↵ | jan.nijtmans | 2016-11-16 | 1 | -3/+3 | |
| | | | | type-casts which are not necessary any more. | |||||
* | Fix [3cc1d91345]: duplicate calls to TclpFreeAllocCache() on thread exists | jan.nijtmans | 2016-10-11 | 1 | -1/+1 | |
|\ | ||||||
| \ | ||||||
| \ | ||||||
*-. \ | [4d5ae7d88a] Stop crashes with asynchronous connects to hosts without addresses. | dkf | 2016-10-04 | 1 | -1/+1 | |
|\ \ \ | | |/ | ||||||
| | * | [4d5ae7d88a] Stop crashes with asynchronous connects to hosts without addresses. | dkf | 2016-10-04 | 1 | -1/+1 | |
| | | | ||||||
| * | | [4d5ae7d88a] Restore default-to-error logic in TcpConnecttkt_4d5ae7d88a | gahr | 2016-09-27 | 1 | -1/+1 | |
| | | | ||||||
* | | | When opening a server socket on an ephemeral port, make sure that the | max | 2016-10-04 | 1 | -1/+38 | |
|/ / | | | | | | | | | port number that gets picked for IPv4 is also available on IPv6. If not, start all over for up to ten times to find a port number that is available on both protocols. | |||||
* | | Tcl_SetVar -> Tcl_SetVar2 and comparable replacements, eliminating functions ↵ | jan.nijtmans | 2016-06-29 | 1 | -1/+1 | |
|/ | | | | which are deprecated. | |||||
* | Merge trunk | oehhar | 2014-12-17 | 1 | -25/+25 | |
|\ | ||||||
| * | Remove a number of eol-spaces. No change in functionality. | jan.nijtmans | 2014-11-14 | 1 | -25/+25 | |
| | | ||||||
| * | fconfigure -peername and -sockname return empty string while async connect ↵ | oehhar | 2014-10-17 | 1 | -6/+26 | |
| |\ | |/ |/| | | | running. | |||||
* | | Implemented tip-427: socket fconfigure option -connecting plus no ↵ | oehhar | 2014-09-26 | 1 | -7/+27 | |
|/ | | | | -peername,-sockname when still connecting. | |||||
* | [1758a0b603] socket_*-2.13 : Workaround the broken select() in some Linux | dgp | 2014-06-16 | 1 | -2/+56 | |
|\ | | | | | | | kernels that fails to report a writable state on a socket when an error condition (or remote close) is present. | |||||
* | | Valgrind doesn't like use of uninitialized variables. | dgp | 2014-06-04 | 1 | -1/+1 | |
| | | ||||||
* | | These edits make the tests socket-14.11.[01] stop hanging, but also introduce | dgp | 2014-06-02 | 1 | -5/+3 | |
| | | | | | | a whole raft of test failures. WIP. | |||||
* | | * Give clearer names to some of the state flags and sync them with ↵bug_13d3af3ad5 | max | 2014-04-08 | 1 | -41/+90 | |
| | | | | | | | | | | | | | | 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). | |||||
* | | Rename error to connectError in struct TcpState. | max | 2014-04-07 | 1 | -11/+11 | |
| | | ||||||
* | | Rename CreateClientSocket to TcpConnect | max | 2014-04-07 | 1 | -8/+8 | |
| | | ||||||
* | | * Rework WaitForConnect() to fix synchronous completion of asynchronous ↵ | max | 2014-04-04 | 1 | -30/+24 | |
| | | | | | | | | | | | | connections. * Let TcpInputProc() and TcpOutputProc() fail before calling any I/O syscalls when an asynchronous connection has failed. * Adjust the tests accordingly. | |||||
* | | Make the naming of TcpState variables consistent | max | 2014-04-04 | 1 | -49/+53 | |
| | | ||||||
* | | * More test improvements for async sockets. | max | 2014-03-14 | 1 | -7/+21 | |
| | | | | | | | | * 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. | |||||
* | | * Hide transient errors of the internal iterations of [socket -async] ↵ | max | 2014-03-11 | 1 | -41/+34 | |
| | | | | | | | | | | from the script level. * More tests for corner cases. | |||||
* | | WaitForConnect may only call back to CreateClientSocket when the socket is ↵ | max | 2014-03-10 | 1 | -1/+3 | |
| | | | | | | | | 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. | |||||
* | | * tclUnixSock.c: Fix WaitForConnect() for client sockets that have to try ↵ | max | 2014-03-10 | 1 | -9/+11 | |
| | | | | | | | | | | | | more than one address. * socket.test: Extend and improve tests for [socket -async] * socket.test: Add latency measuring and calculation for Windows. | |||||
* | | Broken intermediate state. | max | 2014-02-28 | 1 | -0/+15 | |
| | | | | | | | | | | 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. | |||||
* | | Revert [3c0b0bbda6]. If this really is a problem, it needs to get fixed by ↵ | max | 2013-11-18 | 1 | -3/+2 | |
| | | | | | | | | other means than covering behind void pointers. | |||||
* | | Fix [5425f2c082]: [fconfigure -error] breaks the background processing of a ↵ | max | 2013-11-12 | 1 | -5/+14 | |
| | | | | | | | | pending [socket -async]. | |||||
* | | Fix 3 trivial (possible) errors, discovered by covertity.com | jan.nijtmans | 2013-09-04 | 1 | -0/+2 | |
| | | ||||||
* | | Fix compiler warning when compiling Itcl 4.0: | jan.nijtmans | 2013-07-03 | 1 | -2/+3 | |
| | | | | | | | | | | | | 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); ^ | |||||
* | | [Bug 3598300]: unix: tcl.h does not include sys/stat.h | jan.nijtmans | 2013-01-15 | 1 | -3/+3 | |
| | | ||||||
* | | Factor out creation of the -sockname and -peername lists from | max | 2012-11-26 | 1 | -48/+70 | |
| | | | | | | | | | | 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. | |||||
* | | Final part of result generation conversion (modulo any minor blunders) | dkf | 2012-08-05 | 1 | -68/+78 | |
| | | ||||||
* | | Use EAI_SYSTEM only if it exists. | max | 2012-06-26 | 1 | -6/+1 | |
| | | ||||||
* | | Rework the error message generation of [socket], so that the error | max | 2012-06-22 | 1 | -10/+13 | |
| | | | | | | code of getaddrinfo is used instead of errno unless it is EAI_SYSTEM. | |||||
* | | Avoid calling close() on a bogus fd when an attempt to open a client socket | dgp | 2012-05-22 | 1 | -0/+3 | |
| | | | | | | with an unsupported address family leaves one behind. | |||||
* | | don't try to run the cpuid test when cpuid is not available | jan.nijtmans | 2012-05-03 | 1 | -0/+2 | |
|\ \ | |/ | ||||||
* | | 3428753 Fix [socket -async] connections that manage to connect synchronously. | dgp | 2012-05-03 | 1 | -2/+2 | |
| | | ||||||
* | | * Use the values returned by getaddrinfo() for all three arguments to ↵ | max | 2012-03-19 | 1 | -1/+22 | |
| | | | | | | | | | | 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. | |||||
* | | [Bug 3401422] Cache script-level changes to the nonblocking flag of an async ↵ | ferrieux | 2011-09-01 | 1 | -1/+7 | |
| | | | | | | | | client socket in progress, and commit them on completion. | |||||
* | | Put back the check for server sockets (bug #3394732). | max | 2011-08-29 | 1 | -0/+9 | |
| | | ||||||
* | | 3364777 Stop segfault caused by reading from struct after it had been freed. | dgp | 2011-07-12 | 1 | -1/+4 | |
| | | ||||||
* | | * unix/tclUnixSock.c (CreateClientSocket): Fix and simplify posting of ↵ | max | 2011-06-28 | 1 | -19/+56 | |
| | | | | | | | | | | 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. | |||||
* | | * doc/socket.n: Document the fact that the event loop is now needed for ↵ | max | 2011-06-16 | 1 | -1/+2 | |
| | | | | | | | | | | | | [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. | |||||
* | | Simplify file descriptor handling for client sockets and derived | max | 2011-06-07 | 1 | -42/+38 | |
| | | | | | | | | | | 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. | |||||
* | | Fix bug#3084338, a memleak when a [socket -async] was closed before the ↵ | max | 2011-06-07 | 1 | -29/+22 | |
| | | | | | | | | connection had succeeded or failed. | |||||
* | | * Don't use port 0 for test 14.2 as it fails in different ways on Linux ↵ | max | 2011-06-06 | 1 | -30/+29 | |
| | | | | | | | | | | | | | | 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. | |||||
* | | * Improve socket.test by checking the latency on the loopback address and ↵ | max | 2011-06-01 | 1 | -33/+33 | |
| | | | | | | | | | | use that for some of the tests instead of fixed "big enough" times. * Improve correctness of [socket -async] in some error cases. | |||||
* | | * Fix setting up of [fileevent] while an async socket is still in progress | max | 2011-05-30 | 1 | -42/+59 | |
| | | | | | | | | * Cache async socket errors for later use by [fconfigure -error] * Add tests for the above | |||||
* | | Fix [socket -async] for DNS names with more than one address | max | 2011-05-27 | 1 | -98/+133 | |
| | | ||||||
* | | * unix/tclUnixSock.c (TcpWatchProc): No need to check for server sockets ↵ | max | 2011-05-11 | 1 | -18/+9 | |
| | | | | | | | | | | here, as the generic server code already takes care of that. * tests/socket.test (accept): Add tests to make sure that this remains so. | |||||
* | | Adjust ckalloc/ckfree macros to greatly reduce number of explicit casts in | dkf | 2011-03-12 | 1 | -15/+13 | |
| | | | | | | rest of Tcl source code. No ABI change. API change *should* be harmless. |