Commit Graph

11130 Commits

Author SHA1 Message Date
arvidn 1ebc5f9ef2 remove special handling of uTP peers 2018-07-20 07:47:08 +02:00
arvidn 9f6f23068c make natpmp deal with address_v6 instead of the bytes_type, and use write_address instead of memcpy 2018-07-20 07:46:12 +02:00
arvidn e92cf18340 fix some warnings around unused variables, dead stores, potentially dereferencing nullptr and calling virtual functions from constructor 2018-07-20 01:03:16 +02:00
arvidn d8755066e8 give some magic numbers names 2018-07-20 00:58:34 +02:00
arvidn a7b7623f23 return values instead of using out-params 2018-07-19 23:58:36 +02:00
arvidn dfb3f03c73 modernize test_fast_extension a bit 2018-07-19 23:55:56 +02:00
Arvid Norberg 828c5dd097 merged RC_1_1 into master 2018-07-19 14:37:22 +02:00
Arvid Norberg 5bb5ba145f fix exporting files from partfile while seeding 2018-07-18 10:56:24 +02:00
Arvid Norberg e88a9a4dda merged RC_1_1 into master 2018-07-18 10:48:36 +02:00
arvidn 5d3ac8ff5c fix some warnings 2018-07-18 10:38:45 +02:00
arvidn f89c27183b remove unused function 2018-07-18 09:18:09 +02:00
Alden Torres d9d387d711 minor code cleanup, more use of const (#3174)
* minor code cleanup, more use of const, using u literal per lint

* revert use of unsigned literal

* reverted loop change
2018-07-16 18:23:38 +02:00
arvidn 4aa3c4573a use the strong type for pause flags 2018-07-16 12:06:21 +02:00
arvidn 4633258fbe make the DHT announce flags a strong type 2018-07-16 12:04:16 +02:00
Steven Siloti e5be30157f set port in handshake based on source address (#3172) 2018-07-15 21:15:04 +02:00
arvidn 52af3eaa7f simplify preadv and pwritev emulation functions 2018-07-14 09:03:15 +02:00
arvidn 2ef740bd59 merged RC_1_1 into master 2018-07-13 23:18:59 +02:00
arvidn 2e6f374319 fix typos 2018-07-13 16:45:22 +02:00
arvidn 2e4713b223 merged RC_1_1 into master 2018-07-13 01:57:04 +02:00
Andrei Kurushin 7a34b27499 fix Windows "file::preadv" emulation EOF handling 2018-07-12 23:54:34 +02:00
Andrei Kurushin 5399a14027 Windows async read EOF handling (#3162)
fix Windows "file::preadv" emulation EOF handling
2018-07-12 23:30:50 +02:00
arvidn 7ce20fd9d0 fix bug in read/write resume data functions. add proper tests 2018-07-12 23:19:08 +02:00
arvidn 59343f4f95 merged RC_1_1 into master 2018-07-12 20:20:02 +02:00
d-komarov 490d8eb328 Fix previous patch fixing deadlock in DllMain (#3158)
Simplify `get_manage_volume_privs()` and renamed it
2018-07-12 16:46:36 +02:00
arvidn 37a6a47ea3 minor cleanups around saving resume data 2018-07-12 08:38:53 +02:00
Steven Siloti 76ef8b9d72 simplify SSL torrent announce flags logic 2018-07-12 08:36:57 +02:00
Steven Siloti 3ae21abc53 fix build with shared openssl libs 2018-07-12 08:36:57 +02:00
Steven Siloti 28b6f64c4b dht: don't set implied_port for SSL torrents 2018-07-12 08:36:57 +02:00
Steven Siloti 961cf62cad dht: announce with per-interface listen port 2018-07-12 08:36:57 +02:00
Alden Torres 965ca9a565 avoid copy of arrays in dht alerts constructors 2018-07-09 19:53:35 +02:00
Arvid Norberg e317c72db3 merged RC_1_1 into master 2018-07-08 18:52:13 +02:00
arvidn 3c2b076eb0 deprecated anonymous_mode_alert 2018-07-08 18:26:47 +02:00
arvidn b750b6cc2c deprecate (and disable) the force-proxy setting. Instead, always use the proxy when set, never fall back on circumventing it 2018-07-08 18:26:47 +02:00
arvidn 2ba0e5ae2c move the file priority vector throught the disk_io_job, to avoid copies 2018-07-08 18:25:06 +02:00
arvidn d2d35b69fd raise priority of cache_flushed_alert and post it unconditionally when triggered explicily by the client 2018-07-08 18:23:44 +02:00
arvidn e45df614fe improve type safety of internal leave_seed_mode() function 2018-07-08 17:32:50 +02:00
Alden Torres 6d2f804d9f code refactor related to the use of index_range and end index 2018-07-08 17:32:30 +02:00
arvidn 0659a929af fix some validation issues in read_resume_data() 2018-07-08 17:32:14 +02:00
Arvid Norberg b60912569f back-port resume data validation fixes 2018-07-08 17:31:29 +02:00
Arvid Norberg 3fede4b223 merged RC_1_1 into master 2018-07-08 11:55:32 +02:00
arvidn efe3036879 clean up proxy_settings constructors 2018-07-07 18:02:43 +02:00
arvidn b5cd959dd1 bump the minimum number of hash jobs per thread from 2 to 4 2018-07-07 18:02:24 +02:00
d_komarov 1c86e94de6 Fix deadlock when loading libtorrent Dll
Definition of `bool file::has_manage_volume_privs` involves a call to
`get_manage_volume_privs()`, causing restricted tasks to be performed
from within `DllMain` function. They introduce possibility that client
application deadlocks or crashes.

You should never perform the following tasks from within DllMain:

* Call `LoadLibrary` or `LoadLibraryEx` (either directly or indirectly).
  This can cause a deadlock or a crash.

* Call the registry functions. These functions are implemented in
  'Advapi32.dll'. If not initialized before your DLL, it can access
  uninitialized memory and cause the process to crash.
2018-07-07 18:00:07 +02:00
Arvid Norberg c7e705e158 merged RC_1_1 into master 2018-07-07 13:33:15 +02:00
arvidn 3249b70cbd fix recent patch to support setting file priorities on torrents that don't have metadata yet 2018-07-07 11:34:11 +02:00
arvidn b76c149bdc use std::aray for the temporary buffer in socks5 UDP socket 2018-07-04 08:17:35 +02:00
d-komarov 6d5a6f05ad Fix torrent files prioritization (#3133)
After setting file priority, any subsequent attempt to set different priorities will fail if there is a `file_priority` job running in in disk thread. This happens because `torrent::m_file_priority` is being updated before adding disk thread job. The problem is gone if the file priority vector owned by the torrent object, is modified in the `torrent::on_file_priority` callback, when disk job finishes.
2018-07-04 08:16:33 +02:00
arvidn 10deff2f91 fix some unintentional copies (with explicit moves) 2018-07-01 18:22:32 +02:00
arvidn d439c8729a qualify some assignment operators to disallow assignment to temporaries 2018-07-01 17:29:50 +02:00
Alden Torres 2c5da2778a more lint oriented code refactor/cleanup 2018-06-29 13:27:29 +02:00