Commit Graph

3851 Commits

Author SHA1 Message Date
Alden Torres c5cdd381da fixed compilation warnings with newer versions of clang (#2047) 2017-06-01 04:12:02 -04:00
Pavel Pimenov d0ff2200f9 torrent::remove_connection refactor (#2046) 2017-05-31 21:59:16 -04:00
Steven Siloti 67a530f3ab only listen on preferred IPv6 addresses on Windows
We shouldn't listen on addresses which are duplicates, deprecated,
or tenative unless explicitly requested.

This is only supported on Windows for now because the Linux interface
to get this information is much less convenient for libtorrent to use.
As far as I've been able to determine, Linux only exposes this information
via the RTM_NEWADDR and RTM_GETADDR netlink messages. Currently libtorrent
uses getifaddrs() to enumerate network interfaces on Linux so this will
probably need to be changed to use netlink if available.

MacOS: ???
2017-05-30 07:38:12 -04:00
arvidn afce0d3a86 make resolver_flags use enum class for improved type-safety 2017-05-29 18:38:59 -04:00
Pavel Pimenov 98a0344196 refactor traversal_algorithm look_for_nodes (#1982) 2017-05-29 12:20:52 -04:00
Steven Siloti 8e600c2201 peer_connection_handle::find_plugin should be const 2017-05-29 07:56:50 -04:00
arvidn a9e5ef1521 merged RC_1_1 into master 2017-05-28 12:22:40 -04:00
arvidn ffaabd846c make file open mode flags be an enum class for type-safety 2017-05-28 11:16:59 -04:00
arvidn 77dcc5363f fix build with exceptions disabled 2017-05-28 06:42:49 -04:00
Steven Siloti 353ab20280 make session_handle hold a weak_ptr and be copyable (#2034) 2017-05-28 06:41:50 -04:00
Arvid Norberg 660cdaf2d1 deprecate direct access to array in session_stats_alert (#2033) 2017-05-27 20:33:31 -04:00
Pavel Pimenov 4cee8104d7 add base_mapping_t (#2025)
factor out parts of mapping struct from NATPMP and UPnP
2017-05-27 20:26:47 -04:00
Arvid Norberg 94701c24da when stopping a torrent, never perform a name lookup on the tracker (#2021)
when stopping a torrent, never perform a name lookup on the tracker, only announce to trackers whose IP we already know. This is expected to make shutdowns not hang
2017-05-25 14:58:29 -04:00
Steven Siloti 40cfceb994 restore find_plugin API (#2026) 2017-05-24 23:29:21 -04:00
arvidn 392f284566 remove some unused stats gathering state in disk_io_thread 2017-05-23 08:16:25 -04:00
Alden Torres 071c95ec90 missing explicit in merge from RC_1_1 2017-05-22 17:30:46 -04:00
arvidn 680ca6ea2b merged RC_1_1 into master 2017-05-21 21:02:09 -04:00
Arvid Norberg c7bb9f23ad add debug mechanism to assert the connection list is not mutated while iterating over it (#2016) 2017-05-21 11:36:35 -04:00
arvidn acd98d5c40 delay 5 seconds before reconnecting socks5 proxy for UDP ASSOCIATE 2017-05-21 08:53:29 -04:00
arvidn e79a7a08b9 fix race condition in storage tick handling in disk_io_thread 2017-05-18 10:21:34 -04:00
arvidn b547a2cef0 fix deprecation warnings 2017-05-16 08:14:21 -04:00
arvidn 73a3e390b5 merge RC_1_1 into master 2017-05-15 09:12:23 -04:00
arvidn 56d5d795bf improve path sanitization (filter unicode text direction characters) 2017-05-15 01:49:41 -04:00
arvidn 9333c51da6 deprecate partial_piece_info::piece_state 2017-05-14 20:15:55 -04:00
arvidn e0fa1cd247 merged RC_1_1 into master 2017-05-12 21:46:45 -04:00
arvidn ff63557f58 bind upnp requests to correct local address 2017-05-12 18:17:38 -04:00
Jan Berkel b3815c5533 HTTP proxy: avoid connecting to itself (#1978) 2017-05-08 11:04:17 -04:00
arvidn b1b4360df6 merged RC_1_1 into master 2017-05-08 07:48:42 -04:00
arvidn 14dbd1c92d fix race condition in disk I/O storage class 2017-05-07 13:47:50 -04:00
Alden Torres 0b391d6351 avoid extra sha1_hash memory copy, minor formatting (#1968) 2017-05-04 17:35:40 -04:00
Pavel Pimenov 11c75da314 add trailing slash (#1969) 2017-05-04 17:35:00 -04:00
arvidn 76ef0babed remove deprecated file_base feature of file_storage 2017-05-04 12:03:31 -04:00
Alden Torres fd51c0b8bf minor refactor in file_storeage and typos 2017-05-02 22:34:11 -04:00
arvidn af495da56b use std::function instead of the fileop interface for readwritev() 2017-05-02 08:07:29 -04:00
pavel.pimenov e8a3ddf03b opt web_seed_entry operator== 2017-05-02 07:46:39 -04:00
pavel.pimenov 4cf2bedde9 remove void* m_userdata 2017-04-30 21:15:08 -04:00
Arvid Norberg 1af17be046 use enum class for ssl bool in listen socket (#1960)
use enum class for ssl bool in listen socket. use std::array instead of C array. make test_listen_socket a bit more compact
2017-04-30 21:11:42 -04:00
arvidn 749d0da875 make iovec_t an alias for span<char>, in preparation for removing it altogether in favour of span 2017-04-30 11:49:08 -04:00
Steven Siloti 540e1046e7 remove deprecated udp functions 2017-04-30 08:11:56 -04:00
Steven Siloti fd50630020 announce to trackers for all listen interfaces 2017-04-30 08:11:56 -04:00
arvidn 23ba9d12d1 construct and destruct objects in stack allocations (alloca()) 2017-04-28 21:34:31 -04:00
arvidn 2dca174785 improve span container constructor 2017-04-28 08:17:57 -04:00
arvidn a9a12e873f make DHT bootstrapping more robust by not throwing away nodes 2017-04-25 23:03:52 -04:00
arvidn 4eb5155263 use span<> for peer_connection::send_buffer 2017-04-25 23:02:32 -04:00
Steven Siloti 761436dc97 add support for utp over multiple interfaces (#1944) 2017-04-25 23:00:41 -04:00
arvidn 1ea760ae93 fix iconv cast warnings 2017-04-24 08:02:11 -04:00
arvidn d138f02424 introduce lt namespace alias 2017-04-23 23:43:58 -04:00
arvidn e4dbd28920 need_save_resume_data() will no longer return true every 15 minutes. If clients want to save resume data regularly, they can call save_resume_data() with whatever interval they choose 2017-04-23 20:53:09 -04:00
Andrei Kurushin 027fa5e290 fix MSVC 14.1 warnings-as-errors=on build (#1939) 2017-04-23 20:52:37 -04:00
Steven Siloti cdd50be859 create a separate DHT node for each listen socket 2017-04-23 19:49:49 -04:00