Commit Graph

4567 Commits

Author SHA1 Message Date
arvidn 65d6e83b1a add support for TCP_NOTSENT_LOWAT 2020-03-04 13:16:54 +01:00
arvidn ee38106465 restore in-class flag types, for backwards compatibility with libtorrent-1.1 2020-03-03 13:52:33 +01:00
arvidn 14d5c99a18 expanding a device does not look for a default route 2020-03-03 11:43:52 +01:00
arvidn 1e4083b3fb rely less on the ability to enumerate the routing table reliably. Any IP address
explicitly specified is assumed to represent an externally available IP, unless
marked with the l-flag. If a device name or an unspecified address is used, they
are expanded and only for such expanded entries is there a heuristic to
determine which addresses are externally available and which are local. The
default is to assume it's local only, unless it has a globally routable IP
address or a default route can be found for the device.
2020-03-03 11:43:52 +01:00
arvidn a647fd475e fix msvc warning 2020-02-28 09:09:43 +01:00
arvidn cc792d8638 improve error messages and error reporting of failing enum_routes() 2020-02-26 17:48:12 +01:00
arvidn 8dbb7c4232 don't repeat the settings documentation. add note to announce_ip 2020-02-23 18:19:25 +01:00
arvidn 68a57218e7 add note about listening to port 0. Add bittorrent glossary 2020-02-20 13:36:31 +01:00
arvidn c299004abf undeprecate settings_pack::dht_upload_rate_limit. Make sure it doesn't overflow if set too high 2020-02-20 09:25:15 +01:00
arvidn 6d5bdbdb1a fix recent clang warnings 2020-02-08 13:58:04 +01:00
arvidn d607328b45 fix announce_to_all_trackers and announce_to_all_tiers behavior 2020-02-05 11:19:15 +01:00
arvidn 86183358e9 bump version to 1.2.4 2020-02-05 01:55:44 +01:00
arvidn bdee0b563c fix suggest_read_cache setting 2020-02-02 20:16:59 +01:00
arvidn 07191dc5ad when generating documentation, don't only highlight function names but also data members and constants 2020-02-02 16:09:28 +01:00
arvidn bf22f56d74 order static and constexpr consistently 2020-02-01 15:18:03 +01:00
arvidn bc6444a251 lower TCP keepalive timeout for SOCKS5 UDP tunnel, to detect network failures and retry 2020-02-01 11:43:51 +01:00
Chocobo1 6a88ffc585 update BEP links to www.bittorrent.org domain
This is because previously the links to bittorrent.org will redirect to
another website and then returns http 404 not found.
Also related: https://github.com/bittorrent/bittorrent.org/issues/99
2020-01-26 11:46:16 +01:00
Chocobo1 45a4da4fe6 use https 2020-01-26 11:46:16 +01:00
arvidn 8013216550 document multi-homed support 2020-01-23 00:17:54 +01:00
arvidn 208d71ba77 support source-hint from routing table, where supported 2020-01-22 15:50:33 +01:00
arvidn bc0274ed6a limit the number of DHT nodes to run 2020-01-21 12:04:22 +01:00
arvidn 2c8cf4834b simplify the local service discovery logic to only deal with a single network. Instantiate LSD once per listen_socket_t instead of just once 2020-01-20 22:14:21 +01:00
Alden Torres 819eea722b backport of warning related fixes 2020-01-20 14:29:31 +01:00
arvidn 7529d3e67e remove now unused, in_local_network() functions 2020-01-20 14:27:16 +01:00
arvidn b5ea5bb82c move upnp mapper to have one per listen_socket_t. simplify the upnp logic to only deal with a single network. 2020-01-20 14:27:16 +01:00
arvidn b8726bd4f6 refactor discover_device() away from upnp 2020-01-20 14:27:16 +01:00
arvidn f5ebd4e354 simplify natpmp by requiring it to be tied to a specific network, and use get_gateway() and remove unused get_default_route() functions 2020-01-20 01:24:22 +01:00
arvidn a53d3a8746 factor out get_gateway function and add unit tests. IPv6 gateways are not addressed in the same network, so we can't use match_addr_mask(). Assume all local IPv6 addresses do not have a gateway 2020-01-19 08:27:33 +01:00
arvidn 571952fd19 bind SOCKS5 connection to correct outgoing interface 2020-01-19 08:27:33 +01:00
arvidn 8be7ab559a remove outgoing udp sockets and replace with listen_socket_t 2020-01-19 08:27:33 +01:00
arvidn 4ceb2ea467 limit tracker announces and SOCKS5 connection attempts to listen_socket_t that actually can reach the target 2020-01-19 08:27:33 +01:00
arvidn d13109426a fix test_lsd to pass reliably 2020-01-18 03:20:20 +01:00
arvidn df85b31490 deprecate and remvoe broadcast_lsd setting 2020-01-16 16:02:00 +01:00
arvidn fa79697f45 deprecate (and remove) upnp_ignore_nonrouters setting 2020-01-16 10:35:50 +01:00
arvidn bd43c9b83f remove unused overload of set_external_address 2020-01-15 19:53:52 +01:00
arvidn 659a78eb56 improve test_upnp by responding with a unicast message 2020-01-15 08:03:33 +01:00
arvidn e18366bb6b make sure &key= stays consistent between different source IPs (as mandated by BEP7) 2020-01-11 11:37:54 +01:00
arvidn 7320568c3c minor cleanup of debug logging for peer_list 2020-01-11 11:22:30 +01:00
arvidn 2e15b3edfa use span in expand_unspecified_address 2020-01-08 10:24:54 +01:00
arvidn 96695fa714 fix build_netmask to treat the count as a prefix and add tests 2020-01-06 20:23:13 +01:00
arvidn af3d084092 convert the duplex enum into a flags field, on listen_socket_t and listen_endpoint 2020-01-06 20:22:55 +01:00
arvidn 3569b8885e fix null termination of description and friendly_name in ip_interface on linux 2020-01-05 18:38:04 +01:00
Pavel Pimenov c7c7cd41d2 remove m_inode 2020-01-04 23:03:46 +01:00
arvidn 55e83e40d2 suppress future attempts to announce to a tracker from an interface with an incompatible address family 2020-01-04 23:03:17 +01:00
Arvid Norberg 0675bd263f add new socks5_alert to trouble shoot SOCKS5 proxies 2019-12-28 17:57:44 +01:00
Arvid Norberg f0c3eb8915 docs improvement 2019-12-20 22:08:54 +01:00
arvidn 078f7b956e fix parsing of enum classes in doc generation tool 2019-12-19 15:40:45 +01:00
Arvid Norberg 55460a60bc fix the documentation generation tool to work for flags, and other global constants. Improve documentation 2019-12-19 01:50:22 +01:00
arvidn 68196dceae fix erroneous event=completed tracker announce when checking files 2019-12-15 11:21:46 +01:00
arvidn 828ad7d024 bump version 1.2.3.0 2019-12-09 12:46:36 +01:00