Commit graph

19 commits

Author SHA1 Message Date
Vikram Rajkumar
874f103b8d Fix overloaded virtual function warnings 2014-12-23 15:45:57 -05:00
Eric Frias
751777e754 Fix more locations where we were making boost::asio calls with buffers declared on the stack which could cause problems when the calling tasks were canceled. 2014-09-11 16:30:03 -04:00
Eric Frias
aa6882b3b7 Allow us to safely cancel tasks that are executing asynchronous network reads
and writes.  This was previously unsafe because we almost always passed read/write
buffers to boost that were on the stack. Canceling the task deleted the stack and
therefore the buffer, but couldn't reliably prevent boost from writing to the buffer
if data came in after the cancel.  This commit adds variants of the read and write
functions that take a shared_ptr<char> instead of a raw char* as the buffer, and
these variants will ensure the shared_ptr will outlive the boost::asio read/write.
2014-09-09 11:10:37 -04:00
Gandalf-the-Grey
2d51fd7321 Fix compile fc on Win64 tcp_socket needs a bit (two dozens of) more space. 2014-07-22 10:04:55 -04:00
Eric Frias
0a1011ddc9 Fix win32 compile (increase size of tcp_socket) 2014-07-21 10:40:21 -04:00
Daniel Larimer
285913bce0 some compilers need more space 2014-06-02 21:05:04 -04:00
Eric Frias
9fa6e8a430 Separate the 'bind' operation for tcp_sockets from the 'connect_to' operation so we can tell which operation is throwing an exception in client code. convert a few boost exceptions into fc::exceptions. 2014-06-01 18:08:10 -04:00
Eric Frias
bc4361bf64 Merge branch 'phoenix' into tcp_rate_limiting
Conflicts:
	include/fc/network/tcp_socket.hpp
	src/network/tcp_socket.cpp
2014-05-08 09:04:45 -04:00
Eric Frias
aa111510f3 Expose enough functions in tcp_socket and tcp_server to allow listening and originating connections on the same port. So far, this seems to work on win32, other platforms untested.
Add a local_endpoint() function so we can find out which local interface a socket is bound to
2014-05-01 14:02:49 -04:00
Eric Frias
06df18c690 More work towards rate-limited TCP sockets 2014-04-17 19:39:15 -04:00
Eric Frias
85a9da6f27 Add to tcp_socket to enable TCP keepalives 2014-04-09 18:38:52 -04:00
Eric Frias
2e5fdf952c Add a new version of tcp_socket::connect_to() that allows you to set the source port
(working, but not yet useful because we'll need to set SO_REUSEADDR)
2014-04-02 08:54:13 -04:00
Daniel Larimer
a80164645f Update tcp_socket listen on single endpoint 2014-02-14 20:32:23 -05:00
Daniel Larimer
c6897c4dbf added method to get port 2013-12-22 00:10:03 -05:00
Daniel Larimer
a68d22a699 various updates 2013-12-09 00:48:28 -05:00
dnotestein
001c999316 Fix some forward sizes for Win64 2013-11-13 14:35:12 -05:00
Daniel Larimer
ef2b0453cd clean up tcp_server accept api, removing unused return value 2013-08-08 15:12:01 -04:00
Daniel Larimer
d5771acd3d added remote_endpoint() call to tcp_socket 2013-07-10 00:31:44 -04:00
Daniel Larimer
59a121d64b Updating FC with changes from phoenix-int 2013-06-05 15:19:00 -04:00
Renamed from include/fc/tcp_socket.hpp (Browse further)