summaryrefslogtreecommitdiffstats
path: root/win/tclWinSock.c
Commit message (Collapse)AuthorAgeFilesLines
* win socket -async: do not loose connect notification by temporarily stop ↵oehhar2014-05-301-6/+14
|\ | | | | | | connect monitoring. Bug [336441ed59]
| * Try not to loose FD_CONNECT by switching monitoring off.bug_336441ed59oehhar2014-05-291-5/+9
|/
* Upgrade from Winsock 1.1 to Winsock 2.2, which is always available on ↵jan.nijtmans2014-04-161-75/+3
| | | | | | Win2000+. See: [http://msdn.microsoft.com/en-us/library/windows/desktop/ms742213%28v=vs.85%29.aspx] for details. Move winsock initialization to TclpInitPlatform(void), so we can be sure everywhere that we have an initialized winsock2. Stub entries for TclWinGetServByName/TclWinGetSockOpt/TclWinSetSockOpt are no longer necessary (will be removed in 9.0, but are kept in 8.x)
* Fix bug [581937ab1e]: fire readable event on async socket connect failurebug_581937ab1eoehhar2014-04-021-33/+40
|\
| * Fire also readable event on final async connect failure. Armor ↵oehhar2014-03-241-45/+84
| | | | | | | | WaitForSocketEvent by access signal against notifier thread access.
| * Be sure tsd pointer to the info structure is invalidated before memory freeoehhar2014-03-231-1/+20
| |
| * WaitForConnection like tclUnixSock.c, new option [fconfigure -connecting]oehhar2014-03-141-42/+34
| |
| * file tclWinSock.c reorganized to minimize diff to tclUnixSock.c. No ↵oehhar2014-03-141-1455/+1498
| | | | | | | | functional change
| * Remove writable shortcut and errorneous workaround to get [connect -async] ↵bug_13d3af3ad5_forkoehhar2014-03-141-18/+18
| | | | | | | | fail error to [fconfigure -error]
| * Async connect terminates: fire fileevent by setting readyEvent, propage ↵oehhar2014-03-141-52/+110
| | | | | | | | commit fail message to [fconfigure -error]
| * No [fconfigure -error] error in connect process; gets after failed async ↵oehhar2014-03-111-10/+19
| | | | | | | | connect returns connect error
| * Additional security for wrong pointeroehhar2014-03-101-0/+6
| |
| * Fire write fileevent if async connect fails finally (test socket-14.2)oehhar2014-03-101-2/+12
| |
| * Also continue async connect without event loop if gets/puts is called (test ↵oehhar2014-03-101-22/+34
| | | | | | | | socket-14.8.*)
| * Workaround if FD_CONNECT notification comes before socket list registration ↵oehhar2014-03-101-80/+184
| | | | | | | | in TcpThreadActionProc
| * Still incomplete info structure in event proc: try to protect with locks ↵oehhar2014-03-071-12/+51
| | | | | | | | (unsuccesful). Probably locks in accept socket creation missing.
| * More debug to chase different fd in struct than in callbackoehhar2014-03-061-53/+40
| |
| * Terminate async connect synchronously by any blocking operationoehhar2014-03-061-12/+104
| |
| * "gets" blocked after async cannect: SOCKET_ASYNC_CONNECT was not clearedoehhar2014-03-051-12/+12
| |
| * Refactor the error handling logic around connect()max2014-03-051-20/+17
| |
| * avoid warnings about uninitialized infoPtr in DEBUGmax2014-03-051-2/+2
| |
| * Print out the value of infoPtr in DEBUG, so that coexisting sockets can be ↵max2014-03-051-7/+5
| | | | | | | | distinguished in the output.
| * Next async connect try works. Reset error and move notifier before connect.oehhar2014-03-051-11/+12
| |
| * * Use watchEvents only for read/write/close events of [chan event], don't ↵max2014-03-041-63/+82
| | | | | | | | | | mix with internal use of accept and connect events. * WIP: Refactor the tail of CreateClientSocket() to get notifications for completed async connects right.
| * Reverted move of WSAAsyncSelect before connect -> FD_Connect message does ↵oehhar2014-03-041-18/+13
| | | | | | | | also fire if it exists on call.
| * WIP: async open event now passes to SocketEventProc() and connects but does ↵oehhar2014-03-031-15/+23
| | | | | | | | not finalyze that (I guess).
| * Make printf debugging switchable, because it affects 'make test'max2014-02-281-1/+8
| |
| * Broken intermediate state.max2014-02-281-146/+219
| | | | | | | | | | 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.
| * merge trunkmax2013-11-181-3/+2
| |\
| | * Revert [3c0b0bbda6]. If this really is a problem, it needs to get fixed by ↵max2013-11-181-3/+2
| | | | | | | | | | | | other means than covering behind void pointers.
| * | To prepare for completion of the [socket -async] implementation on Windows ↵max2013-11-181-165/+203
| |/ | | | | | | | | | | | | [13d3af3ad5]: * Move the server code from CreateSocket to Tcl_OpenTcpServer. * Rename CreateSocket to CreateClientSocket. * Unify the naming convention of socket channels with Unix (sock + hex representation of the state/info structure).
| * Eliminate some redundant Tcl_GetErrno() calls.jan.nijtmans2013-11-181-2/+3
| |
| * Map WSAEWOULDBLOCK to EWOULDBLOCK. Suggested by Reinhard Max.jan.nijtmans2013-11-161-3/+3
| |
| * Don't leak getaddrinfo() resultsmax2013-11-151-2/+2
| |
| * Fix compiler warning when compiling Itcl 4.0:jan.nijtmans2013-07-031-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); ^
| * Don't use TclpInetNtoa any more, use inet_ntoa in stead. Since IP6 support ↵jan.nijtmans2013-06-211-0/+1
| | | | | | | | it's even not necessary any more (except for fake-rfc2553, but mutexes are used here already) , but it's in the internal stub table so we cannot remove it until 9.0
| * Remove wrapper macro for ntohs(): unnecessary, because it doesn't require an ↵jan.nijtmans2012-08-201-20/+2
| |\ | | | | | | | | | initialized winsock_2 library
| * \ Complete multi-fd server socket channels on Windows [Bug #3545363].max2012-08-091-120/+190
| |\ \
| | * | [Bug: 3545363]: Handle socket with multiple underlying file descriptors ↵twylite2012-07-241-120/+187
| | | | | | | | | | | | | | | | where required (TcpCloseProc, SocketProc). Refactor socket/descriptor setup. Fix memory leak in socket close (TcpCloseProc) and related dangling pointers in SocketEventProc.
| | * | [Bug: 3545363]: Use a large enough buffer for accept()ing IPv6max2012-07-191-4/+7
| | | | | | | | | | | | | | | | connections. Fix conversion of host and port for passing to the accept proc to be independent of the IP version.
| * | | Fixes to my previous commit, from Francois Vogel. (My thanks and apologies!)dkf2012-08-051-1/+1
| | | |
| * | | Final part of result generation conversion (modulo any minor blunders)dkf2012-08-051-20/+22
| |/ /
| * | merge 8.5dgp2012-07-101-7/+3
| |\ \
| * \ \ MSVC 6.0 does not have the %I modifierjan.nijtmans2012-07-081-4/+4
| |\ \ \
| * | | | Factor out a number of common patterns of use of Tcl_DStringAppend.dkf2012-07-031-4/+4
| | | | |
| * | | | Rework the error message generation of [socket], so that the errormax2012-06-221-2/+7
| | | | | | | | | | | | | | | code of getaddrinfo is used instead of errno unless it is EAI_SYSTEM.
| * | | | Revert most of [3caedf05df], since when we let cygwin share the win32 stub ↵jan.nijtmans2012-05-241-3/+20
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | table this is no longer necessary implement TclpInetNtoa for win32 Let cygwin share stub table with win32
| * | | | | fix windows build broken by [92cfbef048]jan.nijtmans2012-04-111-1/+1
| | | | | | | | | | | | | | | | | | (Refactor Win socket and load code to be less baroque in its internals)
| * | | | | Reduce amount of unreachable code. Refactor Win socket and load code to be lessdkf2012-04-051-221/+178
| | | | | | | | | | | | | | | | | | baroque in its internals.
| * | | | | [Bug 510001]: TclSockMinimumBuffers needs plat impjan.nijtmans2012-04-041-14/+6
| |\ \ \ \ \