Mike Gelfand
deea6fc6a2
Bring assertions closer to the beginning of blocks
2017-06-13 07:44:09 +03:00
Mike Gelfand
98695fe3c1
Introduce our own assertion macros with finer control
2017-06-08 10:24:12 +03:00
Mike Gelfand
5f7bc801c8
Make use of new checking capabilities in unit tests
2017-05-30 20:56:12 +03:00
Mike Gelfand
3d0b06ca0f
Add generic check_mem
(libtest)
2017-05-30 20:09:19 +03:00
Mike Gelfand
2a7cf67913
Add generic check_bool
, extend check
to be more informative (libtest)
2017-05-30 19:21:14 +03:00
Mike Gelfand
b1b5a577cf
Transform check_ptr_eq
into generic check_ptr
(libtest)
2017-05-30 17:51:50 +03:00
Mike Gelfand
437904198e
Transform check_uint_eq
into generic check_uint
(libtest)
2017-05-30 17:51:50 +03:00
Mike Gelfand
9c3c6f11e0
Transform check_int_eq
into generic check_int
(libtest)
2017-05-30 17:51:50 +03:00
Mike Gelfand
14c30119d4
Transform check_str_eq
into generic check_str
(libtest)
2017-05-30 17:51:46 +03:00
Mike Gelfand
341b778099
Continue running other test-cases even if one fails (libtest)
2017-05-30 17:44:51 +03:00
Mike Gelfand
c071f824ec
Pass (u)intmax_t
instead of (u)int64_t
to check_(u)int_eq
(libtest)
2017-05-30 17:44:47 +03:00
Mike Gelfand
7a238e7c65
Rename check_streq
to check_str_eq
to be in line with other macros (libtest)
2017-05-30 17:44:42 +03:00
Mike Gelfand
432d573f2c
Fixup 2321bc3fad
(unintended logic change, spotted by cfpp2p in #297 )
2017-05-29 08:50:40 +03:00
Mike Gelfand
f27596238d
Include stdbool.h unconditionally
...
All the compilers should provide the header file by now. Remove `tr_isBool`
sanity checks along the way as compiler should guarantee that bool (_Bool)
values are 0 or 1 and nothing else.
2017-05-24 22:53:06 +03:00
Mike Gelfand
295d3359b2
Little bastards keep popping up here and there :(
2017-05-23 22:17:17 +03:00
Mike Gelfand
501be27972
Reduce code duplication in logging macros
2017-05-22 23:20:28 +03:00
Dhiru Kholia
dda33afbe0
Add Peer ID for PicoTorrent
...
Based on information from https://github.com/picotorrent/picotorrent and
http://www.picotorrent.org/ .
PicoTorrent uses Azureus-style peer ID: -PI-. Example: -PI0091- (major:
0, minor: 09, patch: 1).
2017-05-21 12:30:47 +05:30
Mike Gelfand
82722476aa
Fix some issues reported by Coverity
2017-05-20 23:31:56 +03:00
Mike Gelfand
8f3cb1c68d
Wrap sizeof arguments in braces
2017-05-20 19:29:23 +03:00
Mike Gelfand
6303bb2247
Disable part of mmap test on OpenBSD that depends on UBC
2017-05-20 13:34:23 +03:00
Niklas Haas
4d7446e477
LibreSSL compatibility
...
This seems to be the idiomatic way to fix libressl compatibility issues,
judging by what most other open source projects seem to be doing.
I've confirmed that transmission builds with libressl for me after this
patch is applied.
2017-05-20 07:16:53 +02:00
Mike Gelfand
6b0229a546
Fix some issues reported by Coverity
2017-05-16 21:37:00 +03:00
Mike Gelfand
1e3d20422a
Reduce for loop variables scope
2017-05-14 01:38:31 +03:00
Mike Gelfand
6d5e48f9e2
Fix some more off-by-one errors on last piece
...
See: TRAC-4037 and e2584b04ff
2017-05-09 14:23:25 +03:00
Piotr Drąg
ccabc01900
lib: fix translator comment extraction
...
gettext won’t pick up a comment if it’s
not exactly one line above the string.
2017-05-02 21:22:15 +02:00
Mike Gelfand
87220d44a5
Fix FTBFS on Windows (oops!)
2017-05-01 19:08:30 +03:00
Mike Gelfand
14370e5353
Fix a number of other style inconsistencies met along the way (part 2)
2017-05-01 18:47:49 +03:00
Mike Gelfand
e1d53855f4
Avoid declaring multiple variables on the same line
2017-05-01 18:46:41 +03:00
Mike Gelfand
1bc247c105
Merge pull request #161 from slokhorst/rpc-ipv6
...
Allow the RPC server to listen on an IPv6 address
2017-05-01 13:31:14 +03:00
Mike Gelfand
6a74bd438c
Announce INT64_MAX as size left if the value is unknown
...
This helps with trakers like Amazon S3 where signed type is used but
negative values aren't accepted.
Fixes : #250
2017-05-01 12:33:55 +03:00
Mike Gelfand
ac4fa04277
Announce -1 as size left if the value is unknown
...
Fixes : #250
2017-04-30 21:18:02 +03:00
Mike Gelfand
efaa9d0ddc
Compare system function return value to a specific value indicating the error
2017-04-30 19:47:18 +03:00
Mike Gelfand
b342d134cb
Merge pull request #256 from kholia/Xfplay
...
Add Peer ID for Xfplay torrent client
2017-04-30 19:43:49 +03:00
Mike Gelfand
fbd8d4c79f
Fix a number of other style inconsistencies met along the way
2017-04-30 19:33:55 +03:00
Mike Gelfand
a762c770f2
Make conditional expressions explicitly boolean
2017-04-30 19:26:01 +03:00
Dhiru Kholia
e970d7e546
Add Peer ID for Xfplay torrent client
...
This is based on the following resources,
http://www.xfplay.com/history.html
https://down.xfplay.com/xfplay9.994.exe
https://down.xfplay.com/xfplay9.992.exe
https://down.xfplay.com/xfplay9.991.exe
https://down.xfplay.com/xfplay9.99.exe
http://q.xfplay.com/
2017-04-29 12:40:55 +05:30
Sebastiaan Lokhorst
ac661ff099
Allow the RPC server to listen on an IPv6 address
2017-04-26 17:46:36 +02:00
Mike Gelfand
6a15bc6742
Fix mount points enumeration (platform quota) on Solaris
...
Per documentation, `getmntent` returns 0 on success and -1 on error.
2017-04-22 21:42:44 +03:00
Mike Gelfand
4f9d9ad92b
Code style change leftovers
...
For some reason, GTK client wasn't fully processed. All the rest of changes
are mostly in comments.
2017-04-21 10:40:57 +03:00
Mike Gelfand
dadffa2c0f
Align type qualifiers to the right (code style)
...
This way all the qualifiers (`const`, `volatile`, `mutable`) are grouped
together, e.g. `T const* const x` vs. `const T* const x`. Also helps reading
types right-to-left, e.g. "constant pointer to constant T" vs. "constant
pointer to T which is constant".
2017-04-20 19:53:20 +03:00
Mike Gelfand
d7930984ef
Adjust uncrustify config, reformat all but Mac client
...
There're places where manual intervention is still required as uncrustify
is not ideal (unfortunately), but at least one may rely on it to do the
right thing most of the time (e.g. when sending in a patch).
The style itself is quite different from what we had before but making it
uniform across all the codebase is the key. I also hope that it'll make the
code more readable (YMMV) and less sensitive to further changes.
2017-04-20 10:01:22 +03:00
Mike Gelfand
0f75e64d71
Detach the thread from within itself to avoid race condition
...
Fixes : #188
2017-02-23 00:07:39 +03:00
neheb
944382a62e
Add TCP_FASTOPEN support
...
Should make transmission slightly faster.
2017-02-19 12:54:01 +03:00
Edward Betts
9e1c76a50f
fix spelling mistake
2017-02-01 10:14:11 +00:00
Mike Gelfand
1cc67b31dd
Use PRIdMAX instead of TR_PRI_SOCK to accomodate intltool
2017-01-27 04:50:14 +03:00
Mike Gelfand
c1f08edf79
Fix memory leaks found by GCC's -address=sanitize (reported by milloni)
...
Fixes : #56
2017-01-17 23:55:34 +03:00
Mike Gelfand
67bda2dcb8
Handle two more cases where dirname/basename may have returned NULL (adds to 91f8ceb20d
)
2017-01-17 02:22:31 +03:00
Mike Gelfand
fd93316466
Improve version.h file generation
...
Store full revision hash in REVISION file. Write fixes 10 chars of revision
hash to version.h. Use `#pragma once` in version.h. Support getting revision
from TeamCity environment variable (similar to Jenkins).
2017-01-15 00:54:56 +03:00
Mike Gelfand
3375b22b23
Simplify tr_ssha1_matches
logic
...
Gets rid of needless heap memory allocations and copying. Convert SHA1 hash
to hex in-place.
Fixes : #141
2017-01-09 14:15:07 +03:00
Mike Gelfand
15625de3c7
Extend SSHA1 test to check for predefined matches
...
Reduce number of test iterations to 4K along the way to shorten execution
time.
2017-01-09 14:12:17 +03:00
Mike Gelfand
4179a623d5
Interrupt verification ASAP if torrent is being removed
2016-12-31 14:23:06 +03:00
Mike Gelfand
0ac657c5f1
Fix up rename test to avoid random use-after-free failures
2016-12-25 19:44:38 +03:00
Mike Gelfand
3cda09ea81
Fix up rename test to avoid random duplicate torrent failures
2016-12-24 21:24:50 +03:00
Mike Gelfand
88505c345f
Allow for different-cased "nan" value returned by tr_truncd
2016-12-24 20:20:55 +03:00
Mike Gelfand
448d8f39f6
CMake support for Solaris
2016-12-24 20:16:54 +03:00
Mike Gelfand
193d68cc5c
Move tr_metainfoFree call higher per review comment
2016-12-09 22:01:58 +03:00
seiyap70
8541d74793
free the info resource if failed
...
free the info resource if failed
2016-11-07 14:07:56 +08:00
Mike Gelfand
d8dd6f9c75
Merge pull request #60 from milloni/strncmp-instead-of-memcmp
...
Use strncmp instead of memcmp to avoid out-of-bounds reads
2016-11-02 23:13:25 +03:00
Markus Amalthea Magnuson
5b9ba3be0d
HTTPS links for trac, forum, portcheck, and build subdomains.
2016-11-02 20:50:22 +01:00
Mike Gelfand
71af7be04f
Improve support for wolfssl (formely cyassl)
2016-10-26 22:27:20 +03:00
Mike Gelfand
7f94c8df6c
Add support for mbedtls (formely polarssl)
2016-10-26 22:27:20 +03:00
Maciej Wolny
69c33d0e18
Fix signedness related warnings
2016-10-20 20:27:55 +02:00
Maciej Wolny
c6ad5bd36c
Go back to using memcmp in libtransmission/net.c
2016-10-20 17:35:46 +02:00
Mike Gelfand
0390684bc4
Merge pull request #42 from wbx-github/master
...
uClibc-ng since 1.0.18 has sys/quota.h synced with GNU libc
2016-10-19 21:01:06 +03:00
Waldemar Brodkorb
bae138ca22
uClibc-ng since 1.0.18 has sys/quota.h synced with GNU libc
2016-10-19 19:33:35 +02:00
Mike Gelfand
eda26f7590
Make sure tr_sha1
calls pass lengths as int
...
This fixes inability to authenticate with password-protected session, and
a few more issues it seems.
2016-10-18 00:05:03 +03:00
Maciej Wolny
3a1730495d
Use strncmp instead of memcmp to avoid out-of-bounds reads
2016-10-05 16:19:31 +02:00
Mike Gelfand
17fb783c50
Add session-id.{c,h} to autoconf and Xcode builds
2016-09-27 21:36:01 +03:00
Mike Gelfand
661e2b513d
Return session ID as part of "session-get" response
2016-09-27 21:18:36 +03:00
Mike Gelfand
ff73e65069
Handle "fields" argument in "session-get" RPC request
...
If "fields" array is present in arguments, only return session fields
specified. Otherwise return all the fields as before.
2016-09-27 21:18:32 +03:00
Mike Gelfand
b82f6009dd
Maintain lock file(s) corresponding to session ID
2016-09-27 20:53:10 +03:00
Mike Gelfand
26b0a041cc
Factor out session ID into a standalone entity
2016-09-21 22:29:56 +03:00
Mike Gelfand
4c00df9463
Abort handshake if establishing DH shared secret fails
...
Fixes #27
2016-09-18 14:01:00 +03:00
Mike Gelfand
8c8386a7f3
Fix coding style and building with !TR_LIGHTWEIGHT
2016-09-07 01:09:04 +03:00
Sebastian Andrzej Siewior
f91cf5ad8c
transmission: build against openssl 1.1.0
...
Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
2016-09-06 00:11:17 +02:00
Mike Gelfand
2248d3670f
Get rid of $Id$ SVN keywords in source files
2016-09-02 23:10:15 +03:00
Mike Gelfand
1b81bb7682
Replace SVN and SCM with VCS everywhere
2016-09-02 22:21:00 +03:00
Mike Gelfand
076fd29098
#6071 : Fix typo in comment
2016-04-23 16:21:39 +00:00
Jordan Lee
7cd2d10d00
crypto.h and crypto-utils.h can't use #pragma once, it breaks our name munging in crypto-test-ref.h
2016-03-29 19:02:26 +00:00
Jordan Lee
c1abfe87c8
maybe fix double-include of crypto.h / crypto-utils.h in crypto-test
2016-03-29 17:18:50 +00:00
Jordan Lee
1af60ad6ad
use '#pragma once' instead of #ifndef..#define..#endif guards
2016-03-29 16:37:21 +00:00
Jordan Lee
77b5105ea0
fix bad TR_DEPRECATED macro on clang :P
2016-03-29 16:01:41 +00:00
Jordan Lee
8d38442cc1
give a useful definition of TR_DEPRECATED on msvc as well
2016-03-29 15:47:29 +00:00
Jordan Lee
5fbd24fda5
fix a handful of minor compiler warnings, mostly in the unit tests, eg field width shortening or implicit signed/unsigned conversions
2016-03-29 03:04:54 +00:00
Mike Gelfand
c955c04d8f
Explicitly compare result of str(n)cmp/memcmp to signify that it's not boolean
2016-03-13 22:11:01 +00:00
Mike Gelfand
91f8ceb20d
Handle potential dirname/basename errors where needed
2016-03-13 10:41:52 +00:00
Mike Gelfand
86f231184b
Fix warning for when 2nd iconv()
argument is const
2016-02-23 05:07:43 +00:00
Mike Gelfand
990dea4dd3
Only depend on iconv if found
2016-02-07 12:00:15 +00:00
Mike Gelfand
96ea2c82fd
Check for iconv()
instead of iconv_open()
, adjust utils test
2016-02-07 11:54:01 +00:00
Mike Gelfand
a447f0d628
#6064 : Add test cases which exhibit the issue
2016-02-06 22:23:36 +00:00
Mike Gelfand
1eb0ae0a3a
#6064 : Merge ConvertUTF.c fixes from LLVM (?)
2016-02-06 22:05:22 +00:00
Mike Gelfand
9e7293b710
Add hidden "watch-dir-force-generic" setting handling to daemon
2016-01-25 22:09:49 +00:00
Mike Gelfand
39749f8e4b
Make it possible to force generic watchdir implementation in runtime
2016-01-25 21:48:58 +00:00
Mike Gelfand
0e7a8eb7aa
Add bitfield test for has all/none
2016-01-08 11:12:22 +00:00
Mike Gelfand
13a98a02b8
Use TR_BAD_SIZE
instead of -1 in tr_quark_new()
calls
...
Extend quark test to improve branch coverage.
2016-01-07 19:20:14 +00:00
Mike Gelfand
bfbf81cea1
#6048 : Improve error checking on metadata retrieval
2016-01-07 17:12:14 +00:00
Mike Gelfand
eb49800fab
#5737 : Retry if RPC server fails to bind to specified address
2016-01-07 15:28:58 +00:00
Mike Gelfand
53c38c760d
Add tests in such a way that target name is expanded (CMake)
2016-01-04 19:50:32 +00:00
Mike Gelfand
4a634ae026
#5663 : Autotools fixes: proper kqueue check, macro definitions
2016-01-04 19:14:38 +00:00
Mike Gelfand
9ecd2ad319
Improve file test modification time checks
2016-01-04 05:04:55 +00:00