Commit Graph

264 Commits

Author SHA1 Message Date
Charles Kerr 854e01e893
build: bump libdeflate snapshot to 1.17 (#4596)
* build: bump libdeflate snapshot to 1.17

* Link to static libdeflate

Disable shared library and gzip program (both unused)

* Use platform-specific libdeflate library name

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2023-01-15 09:55:16 -06:00
Mike Gelfand 128cf34123
Move jsonsl and wildmat to third-party (#4402)
* Move jsonsl to third-party

This treats it as proper 3rd-party code to which our warning and style
settings don't extend.

* Move wildmat to third-party

This treats it as proper 3rd-party code to which our warning and style
settings don't extend.

* Fixup Xcode project to match new project structure
2022-12-18 19:19:07 +00:00
Charles Kerr 8b3fea9adf
build: bump libb64 (#4129)
this fixes a libb64 FTBFS in clang-15 due to -Werror
2022-11-09 14:04:06 -06:00
Charles Kerr 7f1a8bafe3
build: bump fast_float from v3.5.0 to v3.6.0 (#4098) 2022-11-04 18:46:13 -05:00
A Cœur 2ca095d4a8
Fix set_version "The left operand of '&' is a garbage value" (#4064) 2022-11-02 05:39:14 +00:00
A Cœur 12e564096b
fix: "Implicit conversion loses integer precision" warnings (#3960) 2022-10-25 11:14:42 -05:00
Charles Kerr 5bcbb7e34b
refactor: aggregate arc4 into libtransmission (#3684) 2022-08-20 13:41:40 -05:00
Charles Kerr 2bcab6be7e
refactor: remove tr_dh code (#3443)
Refactor the MSE handshake Diffie-Hellman key code.
2022-07-14 19:54:10 -05:00
FX Coudert 58c8de9fd3
Update fmt to 9.0.0 (#3418) 2022-07-10 11:41:23 -05:00
Charles Kerr 745adf8332
Update libutp to 3.4+ (TRAC-5888) (#3416)
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-07-08 10:13:22 -05:00
Dzmitry Neviadomski 129ad3e6d6
[macOS] Fix deprecation warning for third-party/libevent (#3359)
arc4random_addrandom(2) was deprecated as of macOS 10.12
2022-06-29 09:55:11 -05:00
Dzmitry Neviadomski 922ae556d7
Roll libdeflate v1.12. (#3298)
* Roll libdeflate v1.12.

* Update Xcode Project for libdeflate v1.12
2022-06-14 21:16:01 -05:00
Charles Kerr 79cd776f37
deps: use libdeflate 1.11 (#3134) 2022-05-24 17:50:09 -05:00
Charles Kerr 2293f4336a
perf: use fast_float to parse floating-point numbers (#3092) 2022-05-16 00:06:17 -05:00
Charles Kerr a4b1c2cadc
deps: update dht to 0.27 (#3015) 2022-04-29 14:40:52 -05:00
Charles Kerr 2f16e4a143
deps: update libdeflate to v1.10 (#3014) 2022-04-28 12:51:18 -05:00
Antoine Cœur 748d3c2223
updating googletest (#2858) 2022-04-02 15:58:59 -05:00
Charles Kerr a942c67199
refactor: use fmt (#2758)
* deps: use fmt (8.1.1 tag) to build log strings

Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-03-13 23:43:35 -05:00
Charles Kerr e14c7f38e5
feat: use libpsl (#2575)
Use libpsl to calculate public and private parts of URL hosts.
2022-02-12 11:30:27 -06:00
Charles Kerr d8d765c595
refactor: use libdeflate instead of zlib's deflate() (#2405)
Co-authored-by: Mike Gelfand <mikedld@mikedld.com>
2022-01-17 10:20:12 -06:00
Charles Kerr bbe49639d6
refactor: use cpputf for utf8 validation and conversion (#2251)
* refactor: use cpputf for utf8 validation and conversion
2021-11-30 15:13:56 -06:00
C.W. Betts 62c92227e3
macOS: use SDK's libCurl. (#1542)
* Use the SDK's provided libcurl instead of relying on an outdated stub library.

* Quiet a linker warning.

Co-authored-by: Mike Gelfand <mikedld@users.noreply.github.com>
2021-10-24 22:27:23 +03:00
Mike Gelfand 5edbcb3740
Add CommonCrypto-based crypto utils implementation (#2032)
* Add CommonCrypto-based crypto utils implementation

Ported and adapted from an old (circa 2014-2015) branch of mine.

DH helpers are based on CCBigNum since CCDH doesn't provide acceptable error
reporting, and SecDH interface is a bit weird and limiting. Given that all
mentioned APIs are private, it doesn't seem to matter which one we're using as
any of them could be changed/removed by Apple at any point.

* Switch Xcode project to CommonCrypto backend
2021-10-24 21:19:57 +03:00
Mike Gelfand a459e5e11b
Switch to a standalone ARC4 implementation (#1788)
* Switch to a standalone ARC4 implementation

This frees us from expecting it being provided by one of the crypto
libraries we support, all of which deprecated and/or removed it at this
point.

Fixes: #1103
Fixes: #1777

* Suppress lgtm warnings about RC4 being weak (we don't care)
2021-09-12 06:47:29 +03:00
Mike Gelfand db3d40d0ed Switch to clang-format for code formatting, include Mac client 2021-08-16 00:38:29 +03:00
Dzmitry Neviadomski 59cf023e57
Update libevent to 2.1.12-stable. (#1588)
* Update libevent to 2.1.12-stable.

Fixes `kq_init: detected broken kqueue; not using.: Undefined error: 0`
message on start on macOS.

* Do not build libevent samples.

* Explicitly set library type to static on MSVC for libevent.

Co-authored-by: Mitch Livingston <livings124@mac.com>
Co-authored-by: Charles Kerr <charles@charleskerr.com>
2021-05-20 11:36:12 -05:00
Mike Gelfand 4c7153fa48
Remove autotools-based build system (#1465)
* Support .git files (e.g. for worktrees, submodules)
* Fix symlinks in source tarball, switch to TXZ, adjust non-release name
* Remove autotools stuff
2020-10-13 03:15:19 +03:00
Charles Kerr 677dc73eac
refactor: use GTest for running tests (#1383)
* refactor: use google-test on libtransmission tests
2020-08-11 13:11:55 -05:00
Mike Gelfand 0c10308e06
Add missing files that fail build from tarball (#1247)
Fixes: #1246, #1138
2020-05-23 02:13:59 +03:00
Mike Gelfand 3538eb93c3 Update curl and openssl to those in 10.10 SDK (macOS) 2019-06-22 16:43:59 +03:00
Mike Gelfand 96926a8337 Update DHT library to 0.25
Fixes: #508
2018-02-10 11:35:14 +03:00
Mike Gelfand 6c30359beb Bump miniupnpc version to 2.0.20170509 (take two)
Fix Xcode project to reference changed list of miniupnpc files.
Disable building of upnpc-static executable.

Fixes: #347
2017-07-27 18:29:09 +03:00
Mike Gelfand 27b43a7503 Bump miniupnpc version to 2.0.20170509
Fixes: #347
2017-07-27 17:22:04 +03:00
Mike Gelfand c199eef8ae When building with Xcode, link against 'libcrypto.dylib' instead of 'libcrypto.0.9.8.dylib'
Fix up 'miniupnpc' directory name along the way, using missing 'miniupnp'
was failing the build.

Fixes: #71
2017-01-18 21:56:02 +03:00
Mike Gelfand 683b417a33 Bump miniupnpc revision to include previously made fixes 2017-01-02 23:30:16 +03:00
Mike Gelfand 3093df8755 Adjust autotools files to use submodules 2017-01-02 02:26:02 +03:00
Mike Gelfand e83a062417 Adjust CMake files to use submodules instead of downloading archives 2017-01-02 02:26:02 +03:00
Mike Gelfand eb437c16f5 Add third-party libraries back as submodules 2017-01-02 02:25:59 +03:00
Mike Gelfand 2de12f50c5 Remove third-party code stored in the repo directly 2017-01-01 16:01:00 +03:00
Mike Gelfand 56a1934da1 Add libevent submodule (should hopefully fix Mac build) 2016-09-25 00:22:44 +03:00
Mike Gelfand 61f82cb6b5 #6079: Fix miniupnpc script to handle spaces and other special chars in paths 2016-03-02 16:31:16 +00:00
Mike Gelfand 7ea2b71ec8 Fix MinGW build (still produces lots of useless warnings though) 2015-12-31 12:41:17 +00:00
Mike Gelfand 3f86b77068 Add the rest of current Windows-related third-party patches 2015-11-06 20:47:52 +00:00
Mike Gelfand 2bab67cb06 Add libcrypto library for Xcode 7 support (complements r14567) 2015-11-03 19:28:05 +00:00
Mike Gelfand 7f46aeeccf #5889: Sync with libutp before its API changed 2015-10-16 20:27:52 +00:00
Mike Gelfand 3d497891ee #5867: Fix miniupnpc strings script re. r14269 (patch by demosdemon) 2015-10-08 19:12:03 +00:00
Mike Gelfand 1fd7c46bfa Support compiling Mac client with Xcode 7
Latest Mac OS X SDK (10.11) doesn't include OpenSSL headers, but still
provides the libraries. Bundle our own copy of OpenSSL headers for now
(taken from running 10.10 system).
2015-10-05 00:25:13 +00:00
Mike Gelfand 742c89b3b7 Emit warning from uTP config in a more friendly way 2015-04-23 20:20:21 +00:00
Mike Gelfand 5578d616a8 Add patch from #5002 (r13646) to fix crash in libutp for CMake-based builds 2015-03-29 20:48:06 +00:00
Mike Gelfand 4072ff2a21 Fix libb64 unsigned char issues while waiting for upstream to accept the patch 2015-03-14 06:59:44 +00:00