Commit Graph

386 Commits

Author SHA1 Message Date
Alden Torres ddb274751f using span in crypto_plugin encrypt/decrypt (#934) 2016-07-23 15:54:39 -07:00
Alden Torres f57612b82d rename of aux::array_view to span (#933) 2016-07-22 09:31:42 -07:00
Arvid Norberg 7bf49c0a1c modernize hasher to use array_view (#931)
modernize hasher to use array_view as well as adding array_view support to entry
2016-07-22 07:29:39 -07:00
arvidn e405f0e02f merged RC_1_1 into master 2016-07-20 11:34:29 -07:00
Arvid Norberg 5bda955f8f don't send bitfield to peers whose handshake we haven't fully received yet (#925) 2016-07-20 10:11:28 -07:00
Arvid Norberg a740a49fd6 modernize misc (#898)
modernize misc
2016-07-10 07:34:45 -04:00
Arvid Norberg 770935cd46 modernize-use-nullptr (#894) 2016-07-09 16:26:26 -04:00
Steven Siloti e0c0b14e6c limit crypto messages to 1MB (#884)
limit crypto messages to 1MB
2016-07-04 02:48:13 -04:00
Arvid Norberg c567a66f5e simplify peer_connection's read handlers and the receive buffer. (#853)
simplify peer_connection's read handlers and the receive buffer. removed the concept of soft-packet-size. removed the secondary null-buffer receive path. removed try_read. simplify the buffer class to not be resizeable. make receive_buffer shrink the buffer allocation. add cap to growing the receive buffer. buffer sizes are always divisible by 8.
2016-06-26 20:41:03 -04:00
Arvid Norberg 6aabe3762b general modernization (#836)
general modernization. use nullptr instead of NULL, use std::tuple instead of boost::tuple, transition some unordered set/map from boost to std. some clean-up of includes
2016-06-20 11:32:06 -04:00
Arvid Norberg a9dbbdea37 use array_view instead of std::vector in crypto_plugin interface (#835)
use array_view instead of std::vector in crypto_plugin interface. return a vector of const_buffers for prepending new buffers. use stack allocated (single buffer) iovecs for receives. general cleanup
2016-06-19 23:05:59 -04:00
Arvid Norberg b2358666a1 remove lazy_bitfield (#817)
remove lazy_bitfield feature
2016-06-19 17:00:18 -04:00
Arvid Norberg ed077c8358 use cstdint intead of boost/cstdint.hpp (#833)
use cstdint intead of boost/cstdint.hpp
2016-06-18 14:01:38 -04:00
Arvid Norberg ead11737b4 fix uses of defines for whether or not asserts are active (#832) 2016-06-18 08:31:07 -04:00
Arvid Norberg 4d927f4029 modernize disk_buffer_holder to be move-only (#824)
modernize disk_buffer_holder to be move-only
2016-06-16 08:24:41 -04:00
Arvid Norberg c0fb61c5d7 replace the suggest-read-cache logic with something much simpler (#815)
replace the suggest-read-cache logic with something much simpler that doesn't schedule regular jobs and doesn't query the disk cache
2016-06-15 13:29:54 -04:00
Arvid Norberg ce161a9d62 remove option to disable contiguous receive buffers (#818)
removed option to disable contiguous receive buffers
2016-06-15 08:04:53 -04:00
Arvid Norberg 6f87c702fa simplify dispatching of bittorrent messages (#820) 2016-06-14 15:19:32 -04:00
Arvid Norberg 6e55c0564f suppress shift warnings in boost (#811)
suppress shift warnings in boost
2016-06-12 21:14:21 -04:00
arvidn 0440c57f68 fix performance issue and assert with receiving metadata 2016-06-11 23:29:33 -04:00
Arvid Norberg 327af3a69e optimize allow-fast logic (#800)
optimize allow-fast logic
2016-06-10 01:24:37 -04:00
Arvid Norberg 404d72b9b7 revert handshake round-trip optimization (#797)
revert handshake round-trip optimization. it prevents taking advantage of FAST extensions since the bitfield is sent before receiving the other peer's handshake
2016-06-10 01:14:37 -04:00
Arvid Norberg 830a79dbcf optimize allow-fast logic (#800)
optimize allow-fast logic
2016-06-09 08:02:41 -04:00
Arvid Norberg 5eaf713d1f revert handshake round-trip optimization (#797)
revert handshake round-trip optimization. it prevents taking advantage of FAST extensions since the bitfield is sent before receiving the other peer's handshake
2016-06-07 21:45:48 -04:00
Arvid Norberg 8c8f5bb03b deprecated public to_hex() and from_hex() functions (#784) 2016-06-04 10:01:43 -04:00
Arvid Norberg 0583394af7 remove dependency on libtommath and use boost.multiprecision instead
remove dependency on libtommath and use boost.multiprecision instead
2016-05-30 14:33:24 -04:00
Arvid Norberg 96999ad67f replace uses of boost::bind with std::bind and lambdas (#745) 2016-05-25 00:31:52 -04:00
Arvid Norberg 748af6eec1 general cleanup. remove valgrind markup, log_hash_failures and C headers (#752)
general cleanup. remove valgrind markup, log_hash_failures and C headers
2016-05-23 08:15:39 -04:00
Arvid Norberg c91a700c07 Msvc warnings (#685)
fix msvc warnings and build examples with warnings-as-errors
2016-05-02 12:36:21 -04:00
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
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
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 26f88bb12d add receive_buffer unit test and some more cleanup and asserts 2016-03-05 00:14:00 -05:00
arvidn b9ec183e24 increase default connect speed. minor cleanup. add logging for short lived connections 2016-03-03 01:20:15 -05:00
arvidn 1f9f588e75 merge copyright year update and changelog from RC_1_0 2016-01-17 18:57:46 -05:00
arvidn a8e31fd8ca add first coverage of test_transfer as a proper sim 2015-11-28 00:59:39 -05:00
arvidn c0a4f7ba26 fix super seeding assert (forward port from RC_1_0) 2015-09-08 18:17:13 -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 a42f9e0c63 fix more warnings 2015-08-22 00:28:12 +02:00
arvidn ffa870d280 fixed some GCC warnings 2015-08-20 01:33:20 +02:00
Arvid Norberg 68bc4f2cf4 Merge pull request #12 from mlt/wip/i2p
Few i2p fixes
2015-08-13 21:55:27 -04:00
arvidn 243b31b56b trouble shoot segfault on travis 2015-08-12 18:54:57 -04:00
arvidn 1c1698459c fix warnings 2015-08-08 22:53:11 -04:00
arvidn 655a3ae019 fix some warnings 2015-08-01 23:57:11 -04:00
Mikhail Titov 9c489e2291 Don't include yourip (0.0.0.0) in i2p handshake 2015-07-14 14:13:16 -05:00
arvidn 323af56cc2 update interest when changing upload-only mode 2015-06-16 01:24:35 -04:00
arvidn 41533205be drop support for boost 1.35 and fix some more references to the asio namespace 2015-06-06 02:10:53 -04:00
Arvid Norberg d43f7b56a2 update copyright year 2015-06-03 05:18:48 +00:00
Arvid Norberg 9856a1fe0c break out more tests from test_primitives 2015-05-23 01:38:47 +00:00
Arvid Norberg 607e708bc4 fix warnings 2015-05-19 03:13:49 +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 4f216dece3 factor out strings of peer logs to be enums instead, in peer_log_alert 2015-05-03 02:53:54 +00:00
Arvid Norberg ab0c97755e merged fixes from RC_1_0 2015-04-29 05:48:09 +00:00
Arvid Norberg 42120014d0 merged changes from RC_1_0 2015-04-28 04:01:40 +00:00
Arvid Norberg 821e34c795 fix examples build. fix print formatting bugs. fix some gcc warnings 2015-04-25 04:22:51 +00:00
Arvid Norberg 3664c7c137 fix more warnings and bare_bones build 2015-04-22 00:59:35 +00:00
Arvid Norberg f5629eb403 cleanup and fixing of more warnings 2015-04-21 00:23:00 +00:00
Arvid Norberg 4d15f1410f fix warnings, some clean-up and todo comments 2015-04-20 04:52:49 +00:00
Arvid Norberg 4fd230dbe5 fix build and some warnings 2015-04-20 00:01:27 +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 794de25212 moved escape_string.hpp into the aux_ directory. moved out the 3 public hex functions into its own public header, hex.hpp 2015-03-14 23:10:20 +00:00
Arvid Norberg 6c1df7eb55 landed the bdecode branch in master. lazy_bdecode/lazy_entry is now being replaced by bdecode/bdecode_node 2015-03-12 05:20:12 +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 46ef448711 fix issue with upload only while trying to download metadata. also added a unit test to catch it in the future 2015-02-07 01:01:48 +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 1ed1963f29 remove size_type typedef in favor of boost::int64_t 2014-12-03 04:32:50 +00:00
Arvid Norberg 4376d26399 merged changes from RC_1_0 2014-12-01 10:43:34 +00:00
Arvid Norberg 658e2ceefd merged Steven Siloti's peer crypto patch into trunk 2014-11-23 06:14:47 +00:00
Arvid Norberg e526355d24 merged changes from RC_1_0 2014-11-09 11:17:13 +00:00
Arvid Norberg aae56c991c merged changes from RC_1_0 2014-11-08 16:58:18 +00:00
Arvid Norberg 32d368e1ce merged changes from RC_1_0 2014-10-12 18:16:46 +00:00
Arvid Norberg ceccc2a483 land branch to remove half-open connection limit / connection queue 2014-10-03 20:56:57 +00:00
Arvid Norberg d7d498c3a3 more steps towards isolating peer_connections from the session object. unchoking now happens via the torrent object. hopefully in the future, the session can determine which peers to unchoke without having direct access to them (i.e. with a mutex) 2014-09-22 03:47:43 +00:00
Arvid Norberg ad7d74f255 merged fixes from RC_1_0 2014-09-13 19:47:51 +00:00
Arvid Norberg 252e08a889 merged fixes from RC_1_0 2014-09-04 08:55:24 +00:00
Arvid Norberg bed6d5c233 fix test builds without deprecated functions 2014-09-03 03:17:47 +00:00
Arvid Norberg 65bb1d0006 pass all the arguments to peer connections as an argument pack 2014-07-14 04:32:41 +00:00
Arvid Norberg 01640e1682 separate stats counters from session_interface (this was the main use of m_ses in peer connections) 2014-07-13 04:56:53 +00:00
Arvid Norberg bf18e310e6 remove some peer connection dependencies on m_ses 2014-07-12 22:32:55 +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 6043e14131 remove pch.hpp 2014-06-28 23:45:46 +00:00
Arvid Norberg 3e25e56f0e fix initialization order warning 2014-05-12 07:57:58 +00:00
Arvid Norberg 5b89c3f5f9 merged some of steven siloti's changes. expose optimistic unchoke logic to plugins 2014-05-12 07:28:34 +00:00
Arvid Norberg f037704539 clean up peer-id in bt_peer_connection (for privacy mode) and reduce dependency on session 2014-04-22 23:37:21 +00:00
Arvid Norberg 299b779adf fix superseeding bug 2014-03-19 04:34:24 +00:00
Arvid Norberg a943fec777 update copyright 2014-02-23 19:12:25 +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 cd4adae4ed add and fix some documentation. regenerate html. remove bittorrent_utp as a connection type, there's already a utp_socket flag 2014-02-02 09:33:19 +00:00
Arvid Norberg 077f728931 more test_transfer polish. fix issue where passing on our listen port depended on anonymous_mode, instead of use_proxy. not passing it on would break a few unit tests 2014-01-26 08:36:56 +00:00
Arvid Norberg 36c9add067 don't print stuff to stdout in debug builds. when waking up from completing a connection attempt, exit immediately if the connection is disconnecting, or disconnect if we're in graceful pause mode. some test cleanups 2014-01-26 08:18:13 +00:00
Arvid Norberg f0d1e8636c extend verbose logging to try to catch test_priority failure on windows 2014-01-26 04:45:49 +00:00
Arvid Norberg e0644ce8f5 invariant check macro fixes 2014-01-21 19:26:09 +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 4e6b1cfbfb update copyright 2013-12-25 17:07:16 +00:00
Arvid Norberg 603eea7e60 fix one more ifdef issue 2013-12-21 05:59:26 +00:00
Arvid Norberg be8c918158 fix TORRENT_DISABLE_EXTENSIONS issues (specifically when enabling it) 2013-12-20 08:35:29 +00:00
Arvid Norberg 4170b3adac fix verbose logging build 2013-12-20 06:43:57 +00:00
Arvid Norberg faa53d7657 member re-order and struct packing 2013-12-02 04:24:10 +00:00
Arvid Norberg fc2fc8dfb2 fix initialization order warnings. pack peer_connection and torrent 2013-11-26 07:47:48 +00:00