Commit Graph

226 Commits

Author SHA1 Message Date
Vadim Zeitlin
025644120d move more socket functions common to Winsock and BSD implementations to common code
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-23 13:30:42 +00:00
Vadim Zeitlin
5b8cadd2ba remove unused any more wx_socket_callback()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56936 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-23 13:18:43 +00:00
Vadim Zeitlin
53a161e101 continuation of GSocket/wxSocket merge: always create GSocket associated to a wxSocket instead of (always) doing it using a separate call later; remove support for user callbacks which wasn't implemented in Windows version and deprecated since 10 years or so
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-23 13:12:46 +00:00
Vadim Zeitlin
40e7c0b913 compilation fixes for Unix after moving wxFD_XXX macros from wx/unix/private.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56927 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-23 01:52:20 +00:00
Vadim Zeitlin
eb97543d28 don't duplicate GSocket creation/destruction and shutdown code in BSD and Winsock implementations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-23 01:44:50 +00:00
Vadim Zeitlin
e6f466082e fix timeout value for wxDatagramSocket: was off by a factor of 1000
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56924 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-23 01:15:44 +00:00
Vadim Zeitlin
f0db5d7587 do not require a running event loop, even under MSW, for the sockets to work: if the user code doesn't use events there is no reason for it to run the event loop, especially as it's not needed under the other platforms; instead use the same Select() implementation as under Unix under MSW too and, to avoid duplicating it, put it into the new GSocketBase class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-23 00:11:09 +00:00
Vadim Zeitlin
cc0972a251 no real changes, just also rename _Read/_Write() to DoRead/DoWrite() and clean them a little more too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56277 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-13 13:24:48 +00:00
Vadim Zeitlin
60ee017274 Cleanup of wxSocket::_Wait():
- Rename to DoWait() to avoid symbols starting with underscores.
 - Added comments explaining how does it work.
 - Remove the pointless timeout manipulations: GSocket::Select() doesn't
   use timeout (any more?) anyhow.

Also pass GSOCK_LOST_FLAG to DoWait() from WaitForWrite() for the same reasons
it is done in WaitForRead().


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56275 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-13 13:00:49 +00:00
Vadim Zeitlin
c2116a3579 no changes at all, just reformatted to use consistent indentation before the upcoming real changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56259 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-12 23:04:33 +00:00
Vadim Zeitlin
b8d1915daf use the currently active event loop for the event dispatching instead of wxYield(), this allows to create local event loops when using non-blocking sockets; assert if there is no active event loop under MSW as sockets won't work without it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-12 22:55:14 +00:00
Vadim Zeitlin
c91574928d add wxSocket::IsClosed(), use it to implement Eof() in wxSocketStream
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54590 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-12 02:28:12 +00:00
Vadim Zeitlin
72ac4e888a take const address objects in wxSocketClient::Connect() and wxSocketBase::SetLocal()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54504 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-06 02:21:39 +00:00
Vadim Zeitlin
089b23d028 initialize m_initial{Recv,Send}BufferSize in wxSocketClient ctor (patch 1905981)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-03-15 02:10:49 +00:00
Vadim Zeitlin
2804f77d88 more socket cleanup to allow using wxSocket from both wxBase and wxCore (replaces patch 1756260)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50831 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-19 16:45:08 +00:00
Paul Cornett
204abcd474 remove unneccessary header dependencies on wx/thread.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-03 02:55:14 +00:00
Vadim Zeitlin
8c029a5b02 added SetInitialSocketBuffers() to allow changing the send/receive buffer sizes (patch 1829576)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50028 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-17 15:21:26 +00:00
Vadim Zeitlin
985acf8734 reverted wxSocket changes of rev 48723 as they broke linking under non-Unix systems
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48734 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-17 00:22:05 +00:00
Vadim Zeitlin
22b6de6a70 more fixes for using wxSocket in console applications (patch 1756260)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-16 14:29:42 +00:00
Vadim Zeitlin
4252569b32 use wxGetLocalTimeMillis() instead of wxDateTime in wxSocketBase::_Wait(), this allows to use sockets without wxUSE_DATETIME
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47512 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-16 21:16:03 +00:00
Vadim Zeitlin
60edcf4535 added support for broadcasting to UDP sockets (patch 1740266)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47126 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-04 21:33:11 +00:00
Vadim Zeitlin
28bf2f3c66 fix handling of wxSOCKET_REUSEADDR in wxDatagramSocket (patch 1667145)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 23:18:40 +00:00
Włodzimierz Skiba
02761f6cd4 Include wx/module.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@40943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-08-31 19:31:43 +00:00
Włodzimierz Skiba
c0badb709a Include wx/timer.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-23 11:04:37 +00:00
Kevin Hock
635f2bad90 Continue reading after checking the pushback buffer if more data is requested. Otherwise, once any data if placed in the pushback buffer, no more data will be read from the socket, even if more data is requested.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39150 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-14 19:49:19 +00:00
Włodzimierz Skiba
de6185e212 Include wx/utils.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38972 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-05-02 10:39:23 +00:00
Włodzimierz Skiba
670f993563 Include wx/app.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-28 12:44:37 +00:00
Włodzimierz Skiba
d5da0ce7cb Include wx/event.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-27 12:47:14 +00:00
Włodzimierz Skiba
e4db172a3b Include wx/log.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-26 08:21:31 +00:00
Włodzimierz Skiba
88a7a4e10e Include wx/intl.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38909 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-25 14:38:19 +00:00
Włodzimierz Skiba
df91131cb0 Include wx/string.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-24 08:46:59 +00:00
Włodzimierz Skiba
8e3f3880bc Include wx/object.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-19 10:02:20 +00:00
Kevin Hock
3c57bda545 Fix GetTraits() check for event loop in wxSocketBase::_Wait() [ bug 1460607 ] [ patch by Angel / elkry ]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-30 15:29:22 +00:00
Włodzimierz Skiba
7fb0a11d3a Unconditional assert means fail.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-22 17:55:05 +00:00
Kevin Hock
30bbf68d3a Make SetLocal actually work instead of crashing immediately; due to required longevity of the item to make it from SetLocal to Connect, we need to use a specifc address type.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37759 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-28 02:04:29 +00:00
Julian Smart
f01bca89fd Applied patch [ 1431955 ] Fixes wxSocket* _Wait/Select
From Angel Vidal Veiga


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37619 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-16 08:53:35 +00:00
Michael Wetherell
8d7eaf9140 Warning fixes for VC5 (Igor Korot)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-12 12:16:56 +00:00
Kevin Hock
33d925b0d9 Add SetLocal method; overload Connect to accept a local address and move common Connect code into DoConnect; DoConnect handles wxSOCKET_REUSEADDR flag and setting local address [ Heavily modified and expanded patch 1415505 ]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37506 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-11 23:39:25 +00:00
Kevin Hock
204b046ea0 Fix InterruptWait on wxBase; use polling on wxBase (wxStopWatch is unavailable) and also correctly restore timeout to original value after _Wait [ Slightly modified patch 1410868 ]
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-27 00:50:11 +00:00
Mart Raudsepp
90e572f1e5 Spelling fixes from Andreas Mohr (patch #1360064)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@36199 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-11-19 01:07:56 +00:00
Vadim Zeitlin
17a1ebd101 first round of Intel compiler warning fixes: down from a few thousands just to slightly more than 100
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-25 19:59:19 +00:00
Vadim Zeitlin
fbfb8bcc3f added missing consts and pass objects by const reference instead of by value (patch 1205869)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-24 21:43:15 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Julian Smart
11734f8af6 Applied patch [ 1192914 ] Null pointers in wxSocketBase / wxDatagramSocket
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34260 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-05-22 15:06:36 +00:00
Włodzimierz Skiba
2ecf902bc8 Use defs.h (and automatically setup.h and chkconf.h) before first wxUSE_* check (bug #1164141).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32852 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-16 16:18:31 +00:00
Kevin Hock
e59461fff5 Expanded comment in Initialize to include why Initialize is needed on OS X
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29673 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-06 16:25:33 +00:00
Włodzimierz Skiba
d775fa8235 Source cleaning: whitespaces, tabs, -1/wxID_ANY/wxNOT_FOUND/wxDefaultCoord, TRUE/true, FALSE/false.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29257 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-22 14:38:52 +00:00
Vadim Zeitlin
f938a756a1 compilation fix for wxUSE_THREADS == 0 && __WXDEBUG__ (replaces patch 1025268)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-17 19:26:32 +00:00
David Elliott
8b6fc577bd Use native C++ GSocket interface
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-08-06 20:32:49 +00:00
Vadim Zeitlin
2d080a4963 removed GSocket_Unstreamed() call
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-26 22:14:59 +00:00