1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-01-03 05:25:52 +00:00
Commit graph

293 commits

Author SHA1 Message Date
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
Mike Gelfand
1d58af5082 Increase BASE64 encoding size when using system libb64
Remove BASE64 reference testing as it's only libb64 now.
Improve the test to ignore \r and \n when comparing BASE-encoded
strings to not fail on system (unpatched) libb64.
2015-01-03 21:35:20 +00:00
Mike Gelfand
b928ae1ba8 Use libb64 instead of OpenSSL to encode/decode BASE64
Some crypto libraries (like CyaSSL, MatrixSSL and CommonCrypto) either
don't have or expose this functionality at all, expose only part of it,
or (like OpenSSL) have heavyweight API for it. Also, for the task as
easy as BASE64 encoding and decoding it's much better to use small and
simple specialized library.
2015-01-01 21:16:36 +00:00
Mike Gelfand
ca8ecf3d06 #5809: Allow building against system dht library (patch by jbeich) 2014-12-28 00:14:46 +00:00
Mike Gelfand
aa0b500ae5 Make utp_config.h usable with MSVC (#warning directive is not standard) 2014-12-13 10:03:44 +00:00
Mike Gelfand
83c4edb008 #5828: Initial CMake build system support 2014-12-01 19:55:22 +00:00
Mitchell Livingston
084273c106 Use built-in __APPLE__ macro instead of SYS_DARWIN and MACOSX 2014-07-03 19:20:12 +00:00
Jordan Lee
265962bd6f sync third-party/miniupnp/updateminiupnpcstrings.sh to Transmission's automake code 2014-05-05 21:02:17 +00:00
Jordan Lee
6ee973aaac (trunk) #5671 'dht-0.22': update third-party/dht.c to Juliusz Chroboczek's upstream v0.22 2014-05-05 20:45:14 +00:00
Jordan Lee
a7137b7bb9 upgrade miniupnp version to 1.9. update autoconf script to detect the API version; update upnp.c's #ifdefs to use the API version. 2014-04-27 19:31:10 +00:00
Jordan Lee
13a09c5bf6 in debugf(), don't call fflush() on a null pointer. Xref: https://trac.transmissionbt.com/ticket/4531#comment:73 2014-01-19 04:26:45 +00:00
Jordan Lee
285107dbca (trunk, libutp) #5002 'crash in UTP_ProcessIncoming()' -- patch ef69847aaa from upstream 2012-12-11 04:08:26 +00:00
Mitchell Livingston
5b7586f0fa Update libutp. Fixes #5128. 2012-11-18 04:04:54 +00:00
Jordan Lee
00b0678904 fix warnings generated by autoreconf -Wall 2012-09-22 22:23:04 +00:00
Mitchell Livingston
bd5b20b51d revert formatting changes in r13497 2012-09-17 20:34:46 +00:00
Mitchell Livingston
beeedd5682 #5042 potential fix to building from a directory containing spaces 2012-09-17 20:32:20 +00:00
Mitchell Livingston
3e90d39599 #4891 Solaris 11 compile errors on 2.51 2012-06-12 01:05:19 +00:00
Jordan Lee
897dcf56cf (trunk libT) sync our build diffs to upstream miniupnp's scripts.
These diffs are necessary because upstream's build scripts require srcdir == builddir
2012-05-30 18:56:30 +00:00
Jordan Lee
69edb1b0d1 (trunk) upgrade miniupnpc to version 1.7. Should fix bug #4891 2012-05-30 18:15:33 +00:00
Mitchell Livingston
ca7654d8cd update libutp, fixing #4915 2012-05-27 15:27:59 +00:00
Eric Petit
7f4c8957bf Add -D_GNU_SOURCE to miniupnp flags, fixing build at least on Ubuntu 11.04 2012-04-29 09:09:33 +00:00
Mitchell Livingston
7a8b7710a8 #4878 update miniupnpc to 1.6.20120410 2012-04-19 01:08:23 +00:00
Jordan Lee
acc7330800 get miniupnpc building on non-BSD systems 2012-04-07 00:00:23 +00:00
Mitchell Livingston
bbf274109a #4825 update libnatpmp to libnatpmp-20110808 2012-03-21 02:51:26 +00:00
Mitchell Livingston
7c0a7b6ac1 #4825 update miniupnp to miniupnpc-1.6.20120320 2012-03-21 02:25:11 +00:00
Jordan Lee
6d4858d8dd (trunk) #4732 "allow switching between internal and system libnatpmp" -- fixed with patch scarabeus and applied by me, so any patch breakage is probably mine... ;) 2012-02-04 01:28:15 +00:00
Mitchell Livingston
fda1a85724 use our own curl instead of the systems, since 10.6 and 10.7 curls don't get along 2011-10-10 11:17:59 +00:00
Jordan Lee
01f68ca846 (trunk libT) #4323 "Allow usage of system miniupnpc" -- fixed. 2011-10-09 02:05:52 +00:00
Jordan Lee
2786136015 (trunk) #4490 "Transmission 2.40b1 fails to build: undefined references" -- fixed. 2011-10-08 23:53:27 +00:00
Mitchell Livingston
0808bdd2fe We now require Mac OS X 10.6 or later. Make that change and all the nice little adjustments that go with it. 2011-10-06 00:30:40 +00:00
Jordan Lee
5df3c77cf2 #4260 "µTP not working on embedded device" -- apply the changes from https://github.com/ghazel/libutp rather than http://github.com/bittorrent/libutp 2011-08-10 14:51:59 +00:00
Mitchell Livingston
1a4f4c5812 as of revision 41 of our libevent checkout, we no longer need to include our own evutil_rand.c 2011-08-09 12:34:09 +00:00
Jordan Lee
cdb95995e8 (trunk, libutp) #4260 "uTP not working when compiler doesn't honor 'pragma pack'" -- apply alus' revised patch for testing. 2011-07-30 22:15:32 +00:00
Mitchell Livingston
d7ab7d9012 #4387 Update miniupnpc to 1.6 2011-07-26 01:36:30 +00:00
Juliusz Chroboczek
54948efa2d Avoid warning in the DHT code. 2011-07-25 22:01:21 +00:00
Juliusz Chroboczek
d40fea774b Import dht-0.21. This has blacklisting support. 2011-07-25 21:30:43 +00:00
Juliusz Chroboczek
8018973257 Resynchronise with upstream libutp.c, commit 4be31bb7. 2011-07-25 19:27:17 +00:00
Mitchell Livingston
68dd9c5ccd add a temporary custom version of evutil_rand.c 2011-07-21 02:22:56 +00:00
Juliusz Chroboczek
d20a492e0c Import dht-0.20.
This fixes compilation on systems that have memmem, but don't define
HAVE_MEMMEM.
2011-07-06 22:23:39 +00:00
Jordan Lee
2492ac63e5 (trunk libutp) #4260 "uTP not working on embedded device" -- use __attribute__ ((__packed__)) on gcc compilers as suggested by KyleK 2011-05-28 00:50:11 +00:00
Mitchell Livingston
ab08085280 update the mac libevent config files 2011-05-03 21:50:04 +00:00
Juliusz Chroboczek
09c67f749a Include dht-0.19.
This fixes a bug with parsing of announce messages, noticed by cjdelisle.
2011-04-30 23:03:25 +00:00
Jordan Lee
38669a6c3b (trunk libT) #4153 "Protect against non-monotonic time in libutp" -- try again. 2011-03-30 23:54:39 +00:00
Jordan Lee
7aa90a3812 (trunk libT) #4153 "Protect against non-monotonic time in libutp" -- another attempt at getting it to compile on win32 2011-03-30 23:50:25 +00:00
Jordan Lee
4cf4000620 (trunk libT) #4153 "Protect against non-monotonic time in libutp" -- move UTP_GetMilliseconds() and UTP_GetMicroseconds() outside of the if-not-windows ifdef section. Based on feedback from rb07 in ticket comment 5 2011-03-30 23:26:00 +00:00
Juliusz Chroboczek
7b06392812 Don't explicitly protect against non-monotonic gettimeofday.
Since we're now protecting against non-monotonic time unconditionally,
there's no need for additional protection in the gettimeofday case.
2011-03-30 00:29:07 +00:00
Juliusz Chroboczek
c0ef0f50ad Protect against monotonic time being non-monotonic, take 2.
This is a better fix, suggested by ghazel.
2011-03-30 00:14:41 +00:00
Juliusz Chroboczek
74c0721a2c Protect against monotonic time being non-monotonic.
Within utp.cpp, there's a bunch of assertions that will cause us
to crash if monotonic time isn't.  While I have no idea about Windows,
under Unix we use real time instead of monotonic time if POSIX clocks
are not available, and real time can be stepped backwards.  Since the
protection is cheap, we perform it on all platforms.
2011-03-29 23:15:38 +00:00
Jordan Lee
b4d36aeb54 (trunk) #4138 "use stdbool.h instead of tr_bool" -- done. 2011-03-22 15:19:54 +00:00
Juliusz Chroboczek
63917c907b Revert "Protect against broken implementations of monotonic time."
There are other instances of GetMicroseconds in the code, so a proper
paranoiac would want to work around that at a lower level.
2011-03-12 22:45:14 +00:00
Juliusz Chroboczek
97229c1813 Protect against broken implementations of monotonic time.
Fixes #4090.
2011-03-09 15:31:54 +00:00
Jordan Lee
4f5a8dbec3 (trunk libutp) silence a couple of useless asserts.
From 577e03dc3e
2011-02-19 17:52:02 +00:00
Jordan Lee
cd04051de8 add configure script switch to enable/disable utp 2011-02-18 00:45:44 +00:00
Juliusz Chroboczek
fb82ff08a4 Resynchronise with libutp 2011-02-09 15:29:29. 2011-02-18 00:43:56 +00:00
Jordan Lee
9dca338032 make a note that we need to implement UTP_GetGlobalUTPBytesSent in libtransmission 2011-02-18 00:33:54 +00:00
Jordan Lee
7df7d34f6d automake/autoconf; #includes in libtransmission 2011-02-18 00:32:19 +00:00
Jordan Lee
01f5a8b093 import libutp into third-party/ and plug it in to autoconf, automake 2011-02-18 00:31:49 +00:00
Jordan Lee
e4fb51a778 revert r11894 2011-02-15 19:51:31 +00:00
Jordan Lee
634c09f9b0 (trunk dht) apply patch from jch to increase the number of token_bucket_tokens. 2011-02-15 19:48:57 +00:00
Juliusz Chroboczek
efadbaf812 Import dht-0.18. 2011-01-20 20:43:57 +00:00
Juliusz Chroboczek
429754cfb5 Fix incorrect overflow handling in the DHT's parser. 2011-01-10 01:58:13 +00:00
Juliusz Chroboczek
5bb25bbe72 Import dht-0.17. 2011-01-09 23:44:59 +00:00
Juliusz Chroboczek
3d25f2dc7e Import dht-0.16. 2011-01-09 21:48:40 +00:00
Mitchell Livingston
f8ea720ba9 update miniupnp to 1.4.20101221 2010-12-22 16:10:14 +00:00
Mitchell Livingston
97e5dc7111 fix replace-all of #undef -> #under 2010-12-20 02:19:33 +00:00
Mitchell Livingston
705b8ec884 update the Mac project and libevent files 2010-12-20 02:16:56 +00:00
Mitchell Livingston
78f2bff2a2 update to miniupnpc-1.4.20101209 2010-12-10 04:07:30 +00:00
Charles Kerr
2060f72f22 (trunk third-party) #3707 "remove dependency to which" -- committed. fix by geirha. 2010-11-02 13:37:34 +00:00
Charles Kerr
5725b7c922 (trunk) #3663 "clang warnings in 2.11" -- fixed. 2010-10-24 05:52:38 +00:00
Charles Kerr
6c3d651ffe (trunk) #3618 "FreeBSD 8.1 & GCC 4.2.1 compiler warnings" -- fix some compiler warnings. 2010-10-11 21:44:46 +00:00
Charles Kerr
8b386a63b1 (trunk libT) #3311 "MingW build of Transmission" -- added rb07's revisions to my revisions to his diff. :P 2010-07-01 04:00:41 +00:00
Charles Kerr
ba3d117b81 (trunk third-party/dht) #3311 "mingw build of Transmission" -- use jch's upstream win32 portability fixes 2010-06-30 23:30:21 +00:00