Andrei Kurushin
e10edb5e0b
move LoadLibrary logic to new win_util module ( #1464 )
...
move LoadLibrary logic to new win_util module. use get_library_procedure as common windows dyn proc load routine
2016-12-28 10:12:20 -08:00
Arvid Norberg
3f1084d63d
strengthened type safety in handling of piece and file indices ( #1409 )
...
strengthened type safety in handling of piece and file indices
2016-12-22 10:42:33 -05:00
Steven Siloti
916fc92c49
create separate function for reading a node from a list
2016-12-17 02:22:13 -05:00
arvidn
d5b76d2237
move block_cache_reference out of disk_io_job header
2016-11-20 10:34:42 -05:00
Steven Siloti
e589e342ef
reopen listen sockets when the system's IP changes ( #1299 )
...
reopen listen sockets when the system's IP changes. Only Linux and Windows supported for now.
2016-11-07 07:40:09 -05:00
Arvid Norberg
8daa200d11
simplify interaction with disk_io_thread by removing the uncork interface ( #1271 )
...
simplify the interaction with the disk_io_thread by removing the uncork interface. This should be turned into a transparent part of peer_connection instead and remove cork logic from peer_connection
2016-10-30 18:21:07 -04:00
Arvid Norberg
524f7b1c27
fix error handling by exercising code paths where memory allocations fail ( #1221 )
...
fix error handling by exercising code paths where memory allocations fail
2016-10-19 01:18:05 -04:00
Arvid Norberg
d2002c5248
separate piece_block and has_block out to their own headers ( #1148 )
2016-09-24 08:46:56 -07:00
Alden Torres
6c31ea3d44
created dht state and session params refactor ( #1100 )
...
created dht state and session params refactor
2016-09-17 09:42:04 -04:00
Alden Torres
b4da884f29
created lsd_callback, log optimization and cleanup in lsd ( #1099 )
2016-09-16 12:21:41 -04:00
Alden Torres
d94c317f02
created portmap_callback and refactor for natpmp and upnp log optimization ( #1096 )
...
created portmap_callback and refactor for natpmp and upnp log optimization
2016-09-16 09:53:17 -04:00
Alden Torres
32f5f8f257
better integration and API for ed25519 ( #1037 )
...
better integration and API for ed25519. using shared_ptr in ed25519_add_scalar
2016-08-29 20:28:42 -04:00
Alden Torres
44d9f456f8
adding support for a more configurable sha512 hasher ( #1028 )
...
adding support for a more configurable sha512 hasher, digest32 template, using hasher512.
2016-08-25 19:07:16 -04:00
Arvid Norberg
e36e5efaba
use boost::string_ref ( #996 )
...
use boost::string_ref/boost::string_view in various parts of the code, in file_storage, some file functions and in bdecode.
2016-08-13 07:04:53 -04:00
Alden Torres
7ea9e76b37
refactor for separation of clz software/hardware based ( #985 )
...
refactor for separation of clz software/hardware based
2016-08-05 15:51:37 -04:00
Arvid Norberg
118d06b780
remove deprecated extensions lt_trackers and metadata_transfer ( #941 )
2016-07-24 23:39:56 -04:00
Arvid Norberg
9c2325ff6b
modernize and improve type-safety of the DHT put implementation and test ( #929 )
...
modernize and improve type-safety of the DHT put implementation and tests. use unique_ptr instead of malloc for dht put items.
2016-07-23 15:57:04 -07:00
Alden Torres
f57612b82d
rename of aux::array_view to span ( #933 )
2016-07-22 09:31:42 -07:00
Steven Siloti
2fed4103f8
scalable thread pool ( #770 )
2016-06-15 20:49:28 -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
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
arvidn
7795b2ff6c
merged RC_1_1 into master
2016-05-29 10:01:55 -07:00
Arvid Norberg
b3bbb2f0f6
upgrade libtommath to 1.0 ( #765 )
...
upgrade libtommath to 1.0
2016-05-28 17:12:26 -04:00
Arvid Norberg
584d74e2f0
fix union storage hacks ( #670 )
...
remove union storage hacks
2016-05-21 21:04:47 -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
0d2c04cb2e
remove network thread pool feature ( #688 )
...
remove network thread pool feature (it was messy and mostly useful for bittorrent over SSL). The proper solution is to allow every peer run in its own asio strand and have multiple threads running the io service
2016-05-02 02:18:51 -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
arvidn
36a5a11ee2
merge fix
2016-04-29 23:34:25 -04:00
Arvid Norberg
f0d95f5e3e
remove RSS feature ( #662 )
...
remove RSS feature
2016-04-29 15:54:21 -04:00
Arvid Norberg
c3e1e405b2
remove variadic template emulation for c++98, and introduce emplace_back to heterogeneous_queue as well, to avoid all moves of alert objects ( #658 )
2016-04-28 10:30:29 -04:00
Arvid Norberg
5f5aa2361e
use array_view more along the udp packet paths ( #655 )
2016-04-28 08:20:10 -04:00
Alden Torres
96b7d3ad46
Removed unused alert_observer.hpp ( #646 )
2016-04-26 11:48:43 -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
9c712421c6
add missing include file to makefile
2016-03-30 01:46:33 -04:00
arvidn
07bee1f690
fix typo in include makefile
2016-02-17 17:12:47 -08:00
arvidn
72a24b63ba
use bind_to_device for listen sockets
2016-02-12 15:46:18 -05:00
Thomas Yuan
194ad410dc
Make dht_put_alert more accurate.
2015-11-20 00:06:08 -05:00
arvidn
b628692223
separate out announce_entry and torrent_status into their own headers
2015-09-18 08:08:08 -04:00
Alden Torres
e2d682275a
Implementing and using new dht storage interface
2015-09-16 08:30:27 -04:00
arvidn
ee3cb6cf86
move some internal headers to aux_ to fix documentation
2015-09-07 17:00:27 -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
randy-waterhouse
693586f23e
Fix makefile.am allocating_handler.hpp call.
2015-09-03 08:48:59 +12:00
arvidn
a0c9fafd39
factor out handler_storage and allocating handler helper classes for allocating asio handlers in-place in peer objects
2015-08-31 00:17:42 -04:00
arvidn
0d9d632465
initial support for disabling proxy for tracker connections
2015-08-29 19:44:54 -04:00
Steven Siloti
43dc784cf2
add direct_request.hpp to Makefile.am
2015-08-10 20:33:04 -07:00
Steven Siloti
9bf1d6c5e9
peer_connection_handle
2015-07-12 14:40:03 -07:00
Steven Siloti
189afdd5e3
add session_handle.hpp to Makefile.am
2015-07-11 11:17:28 -07:00
arvidn
e2784df13c
factor out file progress tracking from the torrent class
2015-06-28 22:47:11 -04:00
Arvid Norberg
2819d5f68e
remove the remains of the dht logging
2015-05-10 05:28:50 +00:00
Arvid Norberg
d128d36faa
fix cpuid use (apparently it's not appropriate to use in an inlined function)
2015-04-26 18:46:45 +00:00
Arvid Norberg
f0336017d1
fix gcc warnings and missing header files in makefiles
2015-04-26 00:51:44 +00:00
Arvid Norberg
f7e4f83469
separate out session_stats into its own header. silences warning and cleans up
2015-04-25 02:12:02 +00:00
Arvid Norberg
3bf9fa8fca
move out merkle functions into their own file and test
2015-04-24 06:06:41 +00:00
Arvid Norberg
cea9564302
add header files to makefile
2015-04-18 03:25:58 +00:00
Arvid Norberg
8cc9339550
fix makefile
2015-04-04 14:19:30 +00:00
Arvid Norberg
013ed36f09
landed alert_queue feature branch into trunk
2015-04-03 20:15:48 +00:00
Arvid Norberg
ccc7e45406
landed mutable torrents branch in trunk
2015-03-21 00:12:40 +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
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
91270a0c2b
make operation_t public and document it. include peer disconnects in client_test log
2015-02-15 05:17:09 +00:00
Arvid Norberg
0f37e3403c
transition from intrusive_ptr to shared_ptr. don't export initialize_default_settings
2015-01-06 08:08:49 +00:00
Arvid Norberg
f77e12ac04
clean up symbol exports
2015-01-01 20:25:39 +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
85cc72835e
finally rename policy to peer_list
2014-10-26 07:34:31 +00:00
Arvid Norberg
02a9ea18b7
deprecated auto_expand_choker. started factoring out choker logic into its own translation unit (preparing for making it unit testable)
2014-10-22 22:06:56 +00:00
Arvid Norberg
2806e1e340
fix makefile build
2014-10-14 02:17:09 +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
27b7705cf2
remove built-in GeoIP support
2014-09-21 21:01:48 +00:00
Arvid Norberg
4394fea79e
remove deleted file from makefile
2014-08-26 03:50:29 +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
c60ceacb71
switch over to use boost.atomic instead of home-built one
2014-08-01 07:32:54 +00:00
Arvid Norberg
42a30bb50f
merged change from RC_1_0
2014-07-22 01:22:46 +00:00
Arvid Norberg
f15182a737
merged changes from RC_1_0
2014-07-19 07:12:20 +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
d6b1aa4c36
DHT refactoring and support for storing arbitrary data with put
2013-12-27 04:28:25 +00:00
Arvid Norberg
a05103154b
remove debug logging to print field offsets and struct sizes
2013-12-02 10:00:03 +00:00
Arvid Norberg
12fd5be372
fix bug in ed25519 DHT signature verification. removed RSA code as it's no longer used. add CAS feature (compare and swap) to DHT put command. update dht_store documentation
2013-09-03 00:45:48 +00:00
Arvid Norberg
7ad58eba93
renamed big_number -> sha1_hash
2013-08-02 05:26:13 +00:00
Arvid Norberg
520b8bfcd1
move out alert_manager to its own compilation unit. remove TORRENT_DISABLE_EXTENSIONS from affecting the public API
2013-04-09 02:38:11 +00:00
Arvid Norberg
aab59d04c7
improve the external IP discovery to work with multiple external IPs (specifically IPv4 and IPv6)
2013-01-01 23:12:16 +00:00
Arvid Norberg
fdc25967c2
merged string function cleanup from RC_0_16
2012-08-26 15:26:17 +00:00
Arvid Norberg
42a5185f24
merged fix from RC_0_16
2012-06-05 05:55:40 +00:00
Arvid Norberg
314e08d90b
added missing include file to makefile
2012-05-25 20:26:55 +00:00
Arvid Norberg
cec9a16cc1
back-ported observer for set_external_ip for DHT
2012-04-30 06:30:35 +00:00
Arvid Norberg
918dce1341
back-ported part of the alert_dispatcher patch for the DHT
2012-04-30 05:39:35 +00:00
Arvid Norberg
de7bad7774
merged makefile fix from RC_0_16
2012-04-11 06:37:10 +00:00
Arvid Norberg
1537299666
add missing header file to makfile
2011-08-02 16:59:03 +00:00
Arvid Norberg
5bbbf0cd41
add rsa sign and verification functions for future DHT extensions
2011-05-23 23:42:52 +00:00
Arvid Norberg
dbc14caedf
added missing header files to makefile
2011-03-05 02:33:13 +00:00
Arvid Norberg
ab3b82b8ee
replaced std::rand() with custom random generator
2011-02-26 07:55:51 +00:00
Arvid Norberg
c223291fb4
added support for RSS feeds
2011-01-18 03:41:54 +00:00
Arvid Norberg
451c583023
more robust mechanism to determine external IP
2010-12-24 01:31:41 +00:00
Arvid Norberg
e5f980d80d
merged uTP branch into trunk (yay)
2010-11-29 01:33:05 +00:00
Arvid Norberg
134dae1c8b
add missing header files to makefile install
2010-11-28 18:47:20 +00:00
Arvid Norberg
84d81d3a82
fixed up link test to make sure library and client are using the same configuration, also factored out common code from session constructor
2010-10-24 00:44:07 +00:00
Arvid Norberg
7bd25edc9d
generalize SSL support to also include web seeds (and in theory regular peers)
2010-10-12 08:57:43 +00:00
Arvid Norberg
3b550ece98
don't save settings that are set to the default value
2010-10-10 02:22:57 +00:00