Andrei Kurushin
62eb956c54
fix x64 build with VS2015 UP2 compiler ( #640 )
...
fix VS2015 compiler warnings for: address-model=64, deprecated-functions=on, link=shared
2016-04-25 17:22:09 -04:00
Arvid Norberg
7251575d98
This patch does: ( #633 )
...
1. simplifies and regularizies creation of listen sockets based on the listen
interfaces setting.
2. simplifies and improves the behavior of UDP sockets, which are now explicitly
opened per listen interface
3. transitions udp tracker, DHT and uTP socket manager over to using the new
udp sockets
4. greatly simplified udp_socket to only wrap a single underlying socket (as
opposed to one IPv4 and IPv6 socket)
5. improved behavior of bind-to-device
6. introduce an array_view type to make udp packet passing code simpler
7. simplify and make setting of DF flag more robust
8. simplify and regularize port mapping of listen sockets
2016-04-24 15:26:28 -04:00
arvidn
ccc227f446
minor cleanup
2016-04-18 00:29:50 -04:00
Andrei Kurushin
7b5d48c02a
fix default release build with VS2015 UP2 compiler warnings ( #624 )
...
* fix default release build with VS2015 UP2 compiler warnings
this will allow to successfully build:
bjam toolset=msvc-14.0 release deprecated-functions=off character-set=unicode link=static warnings-as-errors=on
2016-04-17 16:56:07 -04:00
Alden Torres
bb8d1d0e56
Revert utp log file to disable by default
...
Documentation typos
2016-04-03 22:32:06 -04:00
arvidn
58e73c1469
fix typo
2016-03-13 20:47:50 -04:00
arvidn
2178d1ad2b
improve robustness and performance of uTP PMTU discovery. fix duplicate ACK issue in uTP. demote an invariant check to 'expensive'
2016-03-13 12:40:59 -04:00
arvidn
fbef47d3ec
fix edge case in uTP stream when receiving a close-reason code
2016-03-02 22:30:02 -05:00
arvidn
1f9f588e75
merge copyright year update and changelog from RC_1_0
2016-01-17 18:57:46 -05:00
arvidn
05c580572d
disable simulation on travis osx. fix more warnings
2015-09-06 22:55:42 -04:00
arvidn
a2ea8b32db
fix more warnings
2015-09-06 22:55:41 -04:00
arvidn
17c5759829
disable warning for unused command line argument and fix warnings. remove redundant travis build config. use new preprocessor on clang to avoid warnings
2015-09-06 22:55:41 -04:00
arvidn
d43af6e3b7
remove functionality to initiate MTU based on the MTU on the nic (this is error prone and has questionable value)
2015-08-22 08:09:09 +02:00
arvidn
5c8fc818c1
fix more warnings
2015-08-19 01:39:01 +02:00
arvidn
a3c4a0a3e6
attempt to fix msvc build
2015-08-18 21:40:22 +02:00
arvidn
eecdd3121d
fix some build warnings
2015-08-17 09:01:43 -04:00
arvidn
9a0092c120
fix some warnings
2015-08-16 12:17:23 -04:00
Alden Torres
12fb68e8e3
Refactor of utp stream logging functions.
...
Renamed utp-stats option to utp-log.
2015-08-13 18:43:58 -04:00
Alden Torres
02afc8b640
Added utp-stats bjam option to enable utp stream log (utp.log file).
2015-08-13 18:43:58 -04:00
arvidn
213958f98d
uTP timeout fix. introduced when fixing the recent vulnerability
2015-08-12 23:05:33 -04:00
arvidn
1cbd9a9d5e
make ssthresh set less aggressive in uTP
2015-08-07 21:31:59 -04:00
arvidn
e0c3d28321
fix some warnings
2015-08-02 15:55:05 -04:00
arvidn
4d89c7da97
fixed uTP vulnerability
2015-07-29 22:25:59 -04:00
arvidn
6c5aec3476
fix request queue size performance issue
2015-07-20 08:20:17 -07:00
arvidn
389ffc622c
don't pull in the asio namespace in libtorrent. refer to it by boost::asio
2015-06-06 01:24:25 -04:00
Arvid Norberg
d43f7b56a2
update copyright year
2015-06-03 05:18:48 +00:00
Arvid Norberg
e7d369646d
fix gcc warnings
2015-05-18 01:30:32 +00:00
Arvid Norberg
8fdacf9534
address coverity issues and build issue with non atomic 64 bit operations
2015-05-03 22:21:19 +00:00
Arvid Norberg
4a304273fd
fix some coverity issues
2015-05-03 03:28:39 +00:00
Arvid Norberg
2fff222235
silence some warnings on msvc
2015-04-27 02:21:12 +00:00
Arvid Norberg
1faf2e201f
inversed TORRENT_LOGGING build config to enable logging by default. It's now disabled by TORRENT_DISABLE_LOGGING
2015-04-17 01:15:33 +00:00
Arvid Norberg
c1dc982f4f
deprecate the ptime type and related time types. just use boost::chrono / std::chrono
2015-03-12 04:34:54 +00:00
Arvid Norberg
0c8aee014c
implemented utp extension header to indicate the reason to close the connection
2015-02-28 19:51:15 +00:00
Arvid Norberg
a831a78fd5
simplify and clean up utp_stream. fix missing error check in read handler in peer_connection
2015-02-15 00:25:56 +00:00
Arvid Norberg
35b41858cf
deprecated session_status and session::status() in favor of performance counters
2015-01-04 21:31:02 +00:00
Arvid Norberg
09bc1550e9
simplify the debug logging mechanism. There's now only one build option, logging=on or logging=off. When logging is enabled, the log level is controlled by the alert mask. All log events are delivered as alerts and it's up to the client to write them to disk in whatever way seems appropriate. removed the pointless logger plugin
2014-12-09 09:08:26 +00:00
Arvid Norberg
4376d26399
merged changes from RC_1_0
2014-12-01 10:43:34 +00:00
Arvid Norberg
a655047cb0
support SSL over uTP (unit test is still failing with same errors as previously, this has not been fixed yet)
2014-10-06 03:03:01 +00:00
Arvid Norberg
1c915f2e95
merge changes from RC_1_0
2014-09-28 20:02:43 +00:00
Arvid Norberg
07af6f6216
merged changes from RC_1_0
2014-08-20 07:02:03 +00:00
Arvid Norberg
9f8916a7a0
merged changes from RC_1_0
2014-08-18 23:05:10 +00:00
Arvid Norberg
524384045c
transition to use boost.random instead of rand() and custom pseudo random generator
2014-08-16 20:26:00 +00:00
Arvid Norberg
a6f345181f
fixed some unused argument warnings
2014-07-07 06:28:48 +00:00
Arvid Norberg
7351389ce8
land libtorrent_aio branch in trunk
2014-07-06 19:18:00 +00:00
Arvid Norberg
6ef1b98717
merged compiler warning fixes from RC_1_0
2014-07-05 14:10:25 +00:00
Arvid Norberg
6c6fe4dfe2
merged fixes of warnings from RC_1_0
2014-07-04 23:40:31 +00:00
Arvid Norberg
8d44d87556
merge build fix from RC_0_16
2014-06-19 03:34:42 +00:00
Arvid Norberg
a943fec777
update copyright
2014-02-23 19:12:25 +00:00
Arvid Norberg
2d5f0dddf7
merged mingw fix from RC_0_16
2014-02-15 02:45:04 +00:00
Arvid Norberg
6c22d426d4
make all unit tests pass msvc's /RTCc instrumentation (no implicit integer truncation in casts)
2014-02-05 09:38:32 +00:00
Arvid Norberg
e0644ce8f5
invariant check macro fixes
2014-01-21 19:26:09 +00:00
Arvid Norberg
9ab349f1d0
improve dht error reporting
2014-01-20 09:20:47 +00:00
Arvid Norberg
702b68ecc4
clean up assert related defines and debuf-only fields less error-prone. fix missing initialization in file_pool caused by mistake in defines under which the debug field was initialized
2014-01-19 19:45:50 +00:00
Arvid Norberg
13b1628f7a
fix memory leak in uTP
2014-01-18 08:15:13 +00:00
Arvid Norberg
93e7c42c7b
merged typo fix from RC_0_16
2013-12-29 20:26:17 +00:00
Arvid Norberg
de6a715092
merged uTP fixes from RC_0_16
2013-12-29 19:35:39 +00:00
Arvid Norberg
4e6b1cfbfb
update copyright
2013-12-25 17:07:16 +00:00
Arvid Norberg
52613b312c
don't buffer incoming uTP packets indefinitely
2013-09-25 01:37:12 +00:00
Arvid Norberg
86864b0a0c
merged todo comment from RC_0_16
2013-09-18 18:48:01 +00:00
Arvid Norberg
908e29957e
include error code in metadata failure alert
2013-09-14 10:09:30 +00:00
Arvid Norberg
1aa47fc13e
add more utp statistics and make the congestion controller less aggressive when the up-link is not saturated
2013-09-14 10:06:48 +00:00
Arvid Norberg
84fcc0baf0
merged utp fix from RC_0_16
2013-09-12 11:28:54 +00:00
Arvid Norberg
275c340231
make socket buffer sizes affect the udp socket as well. for high_performance_seed preset, set 1 MB socket buffers. only run test_rate() in proper release mode (without invariant checks and debug-iterators). lower the time limit of test_rate. update regression tests to disable invariant checks and debug iterators when building release mode
2013-09-02 09:24:34 +00:00
Arvid Norberg
50ecb07d19
merged silencing of warnings from RC_0_16
2013-06-14 16:41:47 +00:00
Arvid Norberg
d21243dc9f
make release asserts build
2013-03-27 23:46:13 +00:00
Arvid Norberg
c40a35e90b
uTP fix for loopback on mac
2013-02-25 05:09:35 +00:00
Arvid Norberg
a0caa0f4b2
disable invariant_check functions when invariant checks are disabled
2013-02-25 04:13:46 +00:00
Arvid Norberg
b3b1180069
clean up uTP implementation by not using any timers
2013-02-06 04:38:30 +00:00
Arvid Norberg
f73fa778d6
slight refactoring to remove a dependency on session_impl in rpc_manager
2013-02-05 04:18:44 +00:00
Arvid Norberg
ecc42c0a78
merged utp fix from RC_0_16
2013-01-28 03:47:36 +00:00
Arvid Norberg
2f995f77a8
fix the source context for todo-items
2013-01-21 16:25:43 +00:00
Arvid Norberg
d9b37f05cc
merged changes from RC_0_16
2013-01-21 10:18:25 +00:00
Arvid Norberg
652bf8323b
prioritize some more todo mark-ups
2013-01-21 01:40:59 +00:00
Arvid Norberg
f1b8582a95
add gen_todo.py script. include todo.html and mark up some todos in the code with priority
2013-01-20 23:21:53 +00:00
Arvid Norberg
5a23ca5855
add some asserts to utp_stream.cpp
2012-12-10 08:07:50 +00:00
Arvid Norberg
6a3ee5a7cf
whenever checking for EWOULDBLOCK, also check for EAGAIN
2012-11-20 02:08:12 +00:00
Arvid Norberg
e23e417ef9
fix race condition in destroyed uTP socket that was waiting for the underlying udp socket to become writable
2012-11-20 01:58:09 +00:00
Arvid Norberg
63532b2c9b
the sack header needs to be removed from a nagle packet or a re-sent packet if there are no longer any unordered incoming packets
2012-10-20 14:53:54 +00:00
Arvid Norberg
3555b01b85
merged utp_socket and simultaneous connections fix from RC_0_16
2012-10-10 04:40:18 +00:00
Arvid Norberg
bff648a89e
update copyright dates and add tool to do so
2012-10-02 03:16:33 +00:00
Arvid Norberg
2f985de420
merge uTP slow start fix from RC_0_16
2012-09-26 01:27:58 +00:00
Arvid Norberg
cee9b6d5cb
PMTUD improvements
2012-08-13 16:49:28 +00:00
Arvid Norberg
a84c5e0e85
disable support for large MTUs in uTP until it is more reliable
2012-08-12 15:54:59 +00:00
Arvid Norberg
135a14ad75
minor uTP fix
2012-07-25 16:14:21 +00:00
Arvid Norberg
6aabc14e19
fix memory leak in utp_socket_impl
2012-07-21 14:33:01 +00:00
Arvid Norberg
bd4f173bc5
fix uTP edge case where udp socket buffer fills up
2012-07-01 18:44:46 +00:00
Arvid Norberg
2f26d62f1c
one more utp fix
2012-06-30 08:06:20 +00:00
Arvid Norberg
8fffb4bb35
pmtud fix
2012-06-29 19:40:27 +00:00
Arvid Norberg
d4d53e6a5a
fix windows build
2012-06-29 05:41:30 +00:00
Arvid Norberg
a583c2fe88
fix uTP NAGLE algorithm some more (seems stable now)
2012-06-28 03:53:52 +00:00
Arvid Norberg
1419b5c14c
some more asserts in utp
2012-06-26 23:52:48 +00:00
Arvid Norberg
5797430b4a
fix invalid NAGLE assert
2012-06-26 04:10:53 +00:00
Arvid Norberg
c6b368a763
add invariant check to utp_socket_impl
2012-06-26 03:42:01 +00:00
Arvid Norberg
aeea1cd2af
fix to new NAGLE implementation
2012-06-26 03:41:04 +00:00
Arvid Norberg
57769bab11
fix some compiler warnings
2012-06-25 14:17:51 +00:00
Arvid Norberg
e51e953cb9
fix nagle implementation in uTP
2012-06-25 06:27:37 +00:00
Arvid Norberg
dad544dfd0
tighten up the cwnd saturating timeout rule for allowing increasing cwnd
2012-06-25 06:05:28 +00:00
Arvid Norberg
6be3357759
improve some uTP logging
2012-06-25 05:57:59 +00:00
Arvid Norberg
c24b372191
never set cwnd to less than mtu on time-out
2012-06-25 05:39:36 +00:00
Arvid Norberg
34694bf91f
log packet sizes at the normal logging level in uTP and also parse it out in parse_utp_log.py
2012-06-25 05:38:29 +00:00