Commit graph

72 commits

Author SHA1 Message Date
Eric Frias
b460fd6b41 Cleanup all async tasks on exit, thread safety, work in progress. 2014-07-26 18:22:38 -04:00
Eric Frias
c208a968b2 Fix ntp on win32 2014-07-25 14:40:47 -04:00
Nathan Hourt
523fa56d88 Bugfix: Incorrect ordering of newline and carriage return in HTTP server
The HTTP server was printing "\n\r" at the end of lines in the response
headers, which is invalid and caused some HTTP clients to detect an end
to the headers after the first header line.

The server now prints the proper "\r\n" sequence, which is parsed
correctly by clients.
2014-07-23 11:56:57 -04:00
Daniel Larimer
eed62c8338 sockets now wait for any pending write or read operations to finish before destructing 2014-07-17 17:03:25 -04:00
Daniel Larimer
13da4b0d6a improve socket error handling 2014-06-30 10:50:50 -04:00
Daniel Larimer
c33acad0ab fix udt sockets, actually enable non blocking operation 2014-06-29 01:38:46 -04:00
Daniel Larimer
d2072e9d3a updates to thread / udt socket 2014-06-26 20:10:56 -04:00
Daniel Larimer
bb40828953 Merge branch 'master' of https://github.com/InvictusInnovations/fc 2014-06-26 11:25:12 -04:00
Daniel Larimer
5529b300d9 implemented working UDT socket/server 2014-06-26 11:25:07 -04:00
Eric Frias
21d1ce2067 Merge branch 'phoenix' 2014-06-26 10:03:42 -04:00
Eric Frias
78af258510 Remove include that's missing from win32 2014-06-26 10:03:02 -04:00
Daniel Larimer
5c98d7864f Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc 2014-06-26 08:48:12 -04:00
Daniel Larimer
456c81df27 fix potential errors in NTP caused by running in main thread 2014-06-25 23:32:09 -04:00
Daniel Larimer
d20b9d049b start work on udt socket class for fc 2014-06-25 18:34:04 -04:00
Eric Frias
2c5c1655a6 Add counters to the TCP rate limiter to measure actual upload and download speed, and allow the caller to set how bursty they want the connection to be. 2014-06-25 18:16:58 -04:00
Eric Frias
331e6aac7d Convert networking exceptions to fc::exceptions to properly catch them in NTP code (fixes at least some of the shutdown crashes) 2014-06-20 12:22:37 -04:00
Daniel Larimer
bb3c3ec118 fix NTP flooding issue 2014-06-16 14:04:36 -04:00
Eric Frias
6898484321 Remove a few annoying unreferenced variables 2014-06-16 12:03:20 -04:00
Daniel Larimer
b7ad720647 updating ntp service 2014-06-16 11:17:29 -04:00
Eric Frias
a1604e3708 Fix NTP on Win32 2014-06-12 08:40:24 -04:00
Eric Frias
8ef1c4e0a7 Add include for ntohl() on linux 2014-06-11 13:56:03 -07:00
Eric Frias
59d3e80fb7 Add include to fix win32 build 2014-06-11 16:32:47 -04:00
Daniel Larimer
75ec020227 fix ntp 2014-06-11 15:30:30 -04:00
Daniel Larimer
0c64d208d9 adding ntp support to fc 2014-06-11 15:17:28 -04:00
Daniel Larimer
fe997232f6 fix url parsing bug 2014-06-07 18:53:39 -04:00
Eric Frias
8347a7b7fa Merge branch 'phoenix' of https://github.com/InvictusInnovations/fc into phoenix 2014-06-03 19:13:52 -07:00
Eric Frias
d77bdcd3e6 Make HTTP headers case insensitive 2014-06-03 19:12:53 -07:00
Eric Frias
2690a52fe5 Add a function to return the local endpoint of a http server 2014-06-03 19:00:22 -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
Daniel Larimer
9f6b52eac2 fix build on OS X 2014-05-23 21:54:59 -04:00
Eric Frias
b9050b589d Merge branch 'phoenix' into tcp_rate_limiting 2014-05-23 18:04:05 -04:00
Daniel Larimer
17aefe29de using explicit bool operator for optional 2014-05-20 11:25:31 -04:00
Eric Frias
873a0ea70d Merge branch 'phoenix' into tcp_rate_limiting 2014-05-14 16:26:34 -04:00
Eric Frias
50ac462471 Enable SO_REUSEPORT on Linux as well as OS X 2014-05-14 16:02:41 -04:00
Eric Frias
eb501387e8 Set the SO_REUSEPORT flag on OS X whenever we set the SO_REUSEADDR 2014-05-13 21:14:40 -07:00
Eric Frias
62b479568e Get rate limiting mostly working 2014-05-08 15:13:49 -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
valzav
687eaa98f2 Merge remote-tracking branch 'upstream/phoenix' into http-server-improvements 2014-05-07 20:48:23 -07:00
Eric Frias
b8a7531eab Fix error message printed when unable to deserialize a json object, improve
logging of return values and add logging of exceptional returns from
json function calls.  Continue my endless quest to break the mac build.
2014-05-06 17:20:04 -04:00
valzav
e02a509b30 Merge remote-tracking branch 'upstream/phoenix' into http-server-improvements 2014-05-05 15:38:41 -07:00
Daniel Larimer
3ac07ddbf5 updates 2014-05-04 14:26:36 -04:00
valzav
de8ec4a1ae Merge remote-tracking branch 'upstream/phoenix' into http-server-improvements 2014-05-03 17:49:36 -07:00
valzav
bc1792dc98 commented out http header printed to stdout 2014-05-02 14:46:15 -07:00
Daniel Larimer
6532839938 fix apple build 2014-05-02 14:09:29 -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
00edd3958c Remove accidentally-committed garbage 2014-04-30 10:56:51 -04:00
Eric Frias
19f2869490 Disable keepalives on old clang compiler used for nightly
until we can upgrade it
2014-04-30 10:52:16 -04:00
Eric Frias
06df18c690 More work towards rate-limited TCP sockets 2014-04-17 19:39:15 -04:00
Eric Frias
f0633f8022 Merge branch 'phoenix' into tcp_rate_limiting 2014-04-17 16:18:22 -04:00
Eric Frias
ce7139c073 Start of work towards throttling TCP connections 2014-04-17 12:00:52 -04:00