Arvid Norberg
71f5510d62
make the random function produce proper random distributions, based o… ( #981 )
...
make the random function produce proper random distributions, based on uniform_int_distribution of C++11. also clean up piece_picker's priority_range to return two results instead of taking pointers to out-parameters. fix recent pe-crypto regression exposed by this change
2016-08-06 13:18:48 -04:00
arvidn
83dba91168
use span for to_hex and from_hex functions
2016-07-29 18:42:18 -04:00
Arvid Norberg
4f803353cf
transition part of http_parser to use span ( #936 )
...
transition parts of http_parser to use span
2016-07-24 00:52:20 -07:00
Alden Torres
f57612b82d
rename of aux::array_view to span ( #933 )
2016-07-22 09:31:42 -07: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
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
8c8f5bb03b
deprecated public to_hex() and from_hex() functions ( #784 )
2016-06-04 10:01:43 -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
e8380e1d0b
factor out includes from config.hpp into the files actually using it. primarily, printf family of functions, since C++11 version is used now. This removes the need for an snprintf-wrapper on windows ( #732 )
2016-05-17 09:24:06 -04:00
Arvid Norberg
f56c1f8b2f
remove mutex from tracker_manager ( #690 )
...
remove mutex from tracker_manager
2016-05-02 22:22:13 -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
Steven Siloti
ff0675e64e
use standard array container ( #676 )
2016-04-30 23:10:47 -04:00
Arvid Norberg
20b41ad0b9
Threads ( #671 )
...
use std::thread, std::mutex, std::condition_variable instead of pulling them in from boost.asio internals.
2016-04-30 18:54:23 -04:00
Arvid Norberg
5f5aa2361e
use array_view more along the udp packet paths ( #655 )
2016-04-28 08:20:10 -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
Arvid Norberg
c9c6dd2d3b
clean up the annotations used for asio debugging ( #639 )
...
clean up the annotations used for asio debugging (tracking outstanding async operations)
2016-04-23 17:29:25 -04:00
arvidn
1f9f588e75
merge copyright year update and changelog from RC_1_0
2016-01-17 18:57:46 -05:00
arvidn
0d9d632465
initial support for disabling proxy for tracker connections
2015-08-29 19:44:54 -04:00
arvidn
a42f9e0c63
fix more warnings
2015-08-22 00:28:12 +02:00
arvidn
9a0092c120
fix some warnings
2015-08-16 12:17:23 -04:00
arvidn
16bb2de6ed
fix some warnings
2015-08-13 23:52:25 -04:00
Mikhail Titov
df21a7e8ce
Use scrape & i2p bitset flags for request
2015-07-14 14:13:10 -05: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
2bf4519bee
make the torrent hold a pointer to the ip_filter instead of relying on a session reference
2015-05-16 06:33:37 +00:00
Arvid Norberg
3951377d95
fix include paths for warning push and pop headers
2015-04-21 01:16:28 +00:00
Arvid Norberg
408232cfc8
raise warning level. fix a few of them. filter out warnings from boost
2015-04-18 02:33:39 +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
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
01ee9cd9af
more work on piece_picker unit test
2015-02-12 06:43:46 +00:00
Arvid Norberg
1b9b6f7292
support http basic auth in http_connection passed in from the outside as opposed to part of the url
2015-02-08 16:03:09 +00:00
Arvid Norberg
2a0789594d
fix linux build
2015-02-08 00:59:54 +00:00
Arvid Norberg
9b91508c38
clean up session_interface and tracker_manager a bit. work on making tracker_manager more testable
2015-02-01 14:30:43 +00:00
Arvid Norberg
2943bd4d7d
make test_privacy more reliable
2015-01-14 01:59:23 +00:00
Arvid Norberg
d140d71e1a
extend logging of UDP tracker announces (to track down unit test flapping)
2015-01-13 21:34:43 +00:00
Arvid Norberg
7d53b7efd3
fix merge error
2014-12-30 16:56:03 +00:00
Arvid Norberg
fcf6beace5
merged changes from RC_1_0
2014-12-30 09:02:20 +00:00
Arvid Norberg
ae04b80fe1
cancel non-critical DNS lookups when shutting down, to cut down on shutdown delay
2014-12-17 02:44:27 +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
bb3e399ce2
convert endpoint list into vector in udp_tracker_connection
2014-10-21 20:49:36 +00:00
Arvid Norberg
14c9bd90d3
fix bug in setup_transfer (for unit tests). fix verbose logging build. make sure test_pex is reliable
2014-10-21 02:08:46 +00:00
Arvid Norberg
9b37efe6a8
first steps towards removing session_impl dependency from tracker connections, to improve their testability
2014-10-21 00:28:51 +00:00
Arvid Norberg
ffb66ec156
transition tracker_connections to use shared_ptr instead of intrusive_ptr. optimize udp tracker connection lookups by using unordered map instead of linear search.
2014-10-20 20:44:05 +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
8664ff97aa
optimize tracker_manager interface to avoid rendering and parsing strings for each peer-ip
2014-09-28 06:36:03 +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
6043e14131
remove pch.hpp
2014-06-28 23:45:46 +00:00
Arvid Norberg
a943fec777
update copyright
2014-02-23 19:12:25 +00:00
Arvid Norberg
4e6b1cfbfb
update copyright
2013-12-25 17:07:16 +00:00
Arvid Norberg
5812e8415d
merged fix from RC_0_16
2013-11-02 23:08:26 +00:00
Arvid Norberg
50ecb07d19
merged silencing of warnings from RC_0_16
2013-06-14 16:41:47 +00:00
Arvid Norberg
ba6770ccd8
more torrent parsing unit tests
2013-02-26 05:57:29 +00:00
Arvid Norberg
7607f20e2a
add per-tracker scrape information to announce_entry
2013-02-04 07:17:31 +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
81ccc1e2e0
remove unused member in udp_tracker_connection
2012-11-29 06:27:25 +00:00
Arvid Norberg
7f28c05161
merged udp tracker fix from RC_0_16
2012-10-17 15:54:38 +00:00
Arvid Norberg
bff648a89e
update copyright dates and add tool to do so
2012-10-02 03:16:33 +00:00
Arvid Norberg
4270ece01a
merge fix from RC_0_16
2012-10-01 02:19:00 +00:00
Arvid Norberg
acdb647eca
merged udp tracker fix from RC_0_16
2012-10-01 00:13:58 +00:00
Arvid Norberg
5e2ff1a246
merged logging cleanup from RC_0_16
2012-09-27 23:04:51 +00:00
Arvid Norberg
fdb89b6d7b
new, proper, udp tracker extension
2012-09-18 02:03:24 +00:00
Arvid Norberg
43e9270363
extend the UDP tracker protocol to include the request string from the tracker URL
2012-08-23 21:02:09 +00:00
Arvid Norberg
7a50255865
improved struct layout debug logging and optimized some structs
2011-09-21 09:27:07 +00:00
Arvid Norberg
9d0b99480b
fix ip filter exemption for trackers. also add a global setting to always exempt trackers
2011-03-04 06:55:39 +00:00
Arvid Norberg
ab3b82b8ee
replaced std::rand() with custom random generator
2011-02-26 07:55:51 +00:00
Arvid Norberg
ca106ca4e0
some warning fixes and cleanup
2011-02-24 04:25:35 +00:00
Arvid Norberg
2e871382d7
add debug configuration to debug shutdown-stall bugs / outstanding async operations
2010-11-28 01:47:30 +00:00
Arvid Norberg
a05acc4bac
support trackerid tracker extension
2010-11-18 05:51:52 +00:00
Arvid Norberg
40ed231366
fixed tracker timeout handling
2010-11-18 01:06:33 +00:00
Arvid Norberg
71d51b90e8
more size logging and potential fix for udp_tracker_connection leak
2010-11-16 06:41:35 +00:00
Arvid Norberg
606796841f
added comment
2010-10-07 01:05:53 +00:00
Arvid Norberg
3fb9fcab9e
full support for bep-21 (event=paused)
2010-09-06 04:02:15 +00:00
Arvid Norberg
bdee276a98
fixed proxy support for udp trackers
2010-08-20 07:01:11 +00:00
Arvid Norberg
fd5f1bf80b
improved SOCKS5 support
2010-08-03 09:08:37 +00:00
Arvid Norberg
9ddf7f7cfa
add back support for ip filter files to client_test. add some logging when tracker IPs are filtered
2010-06-06 02:31:20 +00:00
Arvid Norberg
cdf05a9c9c
moved UDP trackers over to use a single socket
2010-05-30 01:33:03 +00:00
Arvid Norberg
056b53ee08
fixed bug in udp tracker scrape response parsing
2010-05-08 20:51:26 +00:00
Arvid Norberg
dce2edb6cc
fixed vs 2010 build
2010-04-30 19:08:16 +00:00
Arvid Norberg
43aeb2d710
fixed deadlock when starting torrents with certain invalid tracker URLs
2010-04-15 03:29:34 +00:00
Arvid Norberg
2910a4a10c
dropped dependency on zlib
2010-03-16 06:14:22 +00:00
Arvid Norberg
beca9b3da5
build fix
2010-03-02 09:12:34 +00:00
Arvid Norberg
0952dd48f6
fixed udp tracker race condition
2010-03-02 09:04:27 +00:00
Arvid Norberg
aa5fc72fbf
made tracker errors use error_code
2010-02-23 21:53:45 +00:00
Arvid Norberg
b96e0a448e
udp socket debugging and asserts
2010-02-21 20:15:07 +00:00
Arvid Norberg
09a1023eb3
fixed issue with UDP over SOCKS5. Added a udp tracker to the unit test to make sure it works. Added tracker tests for all proxies
2010-02-18 04:37:02 +00:00
Arvid Norberg
78363cc05d
local service discovery fixes
2010-02-13 16:29:17 +00:00
Arvid Norberg
8c02d04d2e
UDP tracker optimization
2010-02-06 08:14:18 +00:00
Arvid Norberg
1e654220fa
added support for min_interval
2009-12-02 04:05:24 +00:00
Arvid Norberg
6343fe6a6d
optimized header dependencies to lower build time
2009-11-23 08:38:50 +00:00
Arvid Norberg
9b15c11740
don't send stats to trackers received through tracker exchange
2009-09-25 18:17:59 +00:00
Arvid Norberg
6d01cb475c
msvc build fixes
2009-09-06 00:57:01 +00:00
Arvid Norberg
32d1bdcf01
removed unused enums
2009-06-27 21:36:31 +00:00
Arvid Norberg
07bcb3545a
converted a whole lot of error strings into error_codes. Documented some previously undocumented alerts as well as all the error codes
2009-06-12 16:40:38 +00:00
Arvid Norberg
437cb94fd0
improved IPv6 support by announcing twice when necessary
2009-05-15 21:23:41 +00:00
Arvid Norberg
4476a44160
fixed debug logging bug
2009-04-24 17:04:20 +00:00
Arvid Norberg
aba5b2e9d0
dropped some iostream dependencies
2009-04-04 09:52:25 +00:00