Charles Kerr
306d26a97c
(trunk libT) very minor tweak: tr_httpIsValidURL() should return a tr_bool, not an int.
2009-08-12 19:44:32 +00:00
Charles Kerr
cb79214854
(trunk) remove trailing spaces
2009-08-10 20:04:08 +00:00
Charles Kerr
69bbff4d92
(trunk libT) fix a couple of minor gcc warnings
2009-07-17 18:00:29 +00:00
Charles Kerr
e5ff7d8f3e
(trunk) #2271 : rounding problem in printf()
2009-07-14 20:09:46 +00:00
Charles Kerr
1be7f51b3d
(trunk libT) simplify the evtimer / struct timeval code a little
2009-06-15 03:24:40 +00:00
Charles Kerr
8e676171d4
(trunk libT) move tr_bitfield into its own, package-visible source files. this may break the mac build temporarily until the xcode file gets synced
2009-06-15 00:11:06 +00:00
Charles Kerr
ef21704b58
(trunk libT) remove the last calls to tr_getBuffer() and tr_releaseBuffer()
2009-06-14 01:00:36 +00:00
Charles Kerr
a2b9fcc592
(trunk libT) possible fix for #2078 : Assertion failed: (tv->tv_usec >= 0)
2009-06-12 23:01:35 +00:00
Charles Kerr
452cb27f9e
(trunk libT) re-start work on making libT doxygen friendly. still a long ways to go on this.
2009-05-29 19:17:12 +00:00
Charles Kerr
ed710be223
(trunk libT) expose tr_memmem() so it can be used by client code. use the OS' implementation if that's available.
2009-05-19 04:48:33 +00:00
Charles Kerr
29b1d3e2cc
(trunk) #920 : add "move data" to libT so all clients can use it
2009-05-13 15:54:04 +00:00
Charles Kerr
5df2570fdf
(trunk libT) make tr_localtime_r() a public function
2009-03-25 18:42:39 +00:00
Charles Kerr
93b3d1ad7e
(trunk) #1881 : promote tr_strratio() to libtransmission, so that its code doesn't have to be repeated in all the clients
2009-03-04 16:16:02 +00:00
Charles Kerr
65bba3fdfb
(trunk libT) #1671 : transmission-remote --get option not including all files
2009-02-09 17:25:48 +00:00
Mitchell Livingston
af7cbb94ad
undo part of last commit....for now
2009-02-07 14:49:01 +00:00
Mitchell Livingston
3cc8440e78
trivial cleanup
2009-02-07 14:46:43 +00:00
Charles Kerr
29661cf245
(trunk libT) new macro, tr_assert(). use it to help smoke out #1749
2009-01-25 16:14:11 +00:00
Charles Kerr
4d228289ce
(trunk libT) prefer int' over
ssize_t'
2009-01-19 14:05:43 +00:00
Charles Kerr
b6588f442b
(trunk libT) have tr_strndup() take an ssize_t instead of an int
2009-01-18 15:15:41 +00:00
Charles Kerr
2f6b56671f
(trunk libT) win32 portability patch from Alexey
2009-01-11 17:02:04 +00:00
Charles Kerr
92ee6566db
(trunk libT) #1675 : better utf8 validation of metainfo name, creator, and comment fields
2009-01-10 22:48:58 +00:00
Charles Kerr
98420365e9
(trunk libT) remove a small number of redundant or unnecessary asserts
2009-01-08 04:43:00 +00:00
Charles Kerr
141847b902
(trunk libT) update the copyrights on some files that no longer have old code in them
2009-01-07 06:53:29 +00:00
Charles Kerr
51e68d6e56
(trunk libT) new peer request fifo queue with log(N) search time. new unit tests for the queue. new utility tr_lowerBound()
2009-01-04 16:29:44 +00:00
Charles Kerr
dfa0622a6c
(trunk libT) add "deep log" message to help track down freeze reported by the|Navigator. also, small + cheap speedup in tr_deepLoggingIsActive()
2009-01-03 02:43:17 +00:00
Charles Kerr
5e9af46612
(trunk libT) make the tr_bandwidth macros into safer inline funcs. inline utils' one-liners.
2009-01-02 20:12:23 +00:00
Charles Kerr
ad69a937ef
(trunk libT) have a pool of reusable evbuffers
2008-12-30 20:32:00 +00:00
Charles Kerr
a8e15578f3
(trunk libT) use torrent's unique ID as the torrent's lookup key
2008-12-29 21:17:48 +00:00
Charles Kerr
415f04059f
(trunk libT) wrap tr_inf(), tr_msg(), tr_dbg() calls inside a check to see if that debugging level is active. That way that function calls in the vararg list won't be invoked unless that level of verbosity is actually turned on.
2008-12-29 18:11:56 +00:00
Charles Kerr
7a4002dd3a
(trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bitfield, contain it directly rather than a pointer to one allocated elsewhere on the heap.
2008-12-29 09:51:54 +00:00
Charles Kerr
f8a7c4b347
#1406 : need tr_getDefaultDownloadDir() for consistency between apps
2008-11-15 17:39:54 +00:00
Charles Kerr
06939cafa6
(libT) low-hanging fruit discovered from softwareelves' shark profile.
2008-10-26 15:39:04 +00:00
Charles Kerr
188adb1d6a
reverse patch #6948 . one of the new gcc attributes seems to be causing trouble.
2008-10-23 02:37:21 +00:00
Charles Kerr
f0eddb5c20
(libT) move the TR_GNUC macros from utils.h to a standalone header file so other libT headers can use them without getting an extra dependency tree.
2008-10-22 18:42:37 +00:00
Charles Kerr
674307add7
Add a new token, TR_DEFAULT_ENCRYPTION, and use it as the default in the various clients.
...
Add a new #define, TR_EMBEDDED. When it's set, gettext is disabled and non-encrypted connections are the default.
2008-10-22 17:16:12 +00:00
Charles Kerr
fc99ff6881
(libT) add some extra gcc safeguards. fix a couple of compiler warnings in makemeta
2008-10-22 17:14:50 +00:00
Charles Kerr
0b991a55c7
(libT) try again to get the libevent+libcurl code working
2008-10-15 16:43:51 +00:00
Charles Kerr
b04be5fb2e
make MAX_PATH_LENGTH private to libtransmission. add tr_dirname() and tr_basename() utility / portability wrappers
2008-10-14 03:39:16 +00:00
Charles Kerr
e3a5524189
have tr_buildPath() allocate memory from the heap rather than using an input buffer
2008-10-14 03:03:29 +00:00
Charles Kerr
88ce8a5c44
more changes inspired by spry's `winport' code: for portability, use the standard __VA_ARGS__ macro for variadic macros instead of the CPP extensions.
2008-10-13 22:45:05 +00:00
Charles Kerr
b824c704b7
first batch of portability changes based on spry's winport:
...
(1) added tr_getcwd(), a simple portability wrapper for getcwd()
(2) cli: show the help page if no command-line arguments are provided
(3) daemon: use tr_wait() intead of sleep()
(4) daemon: SIGQUIT, SIGPIPE, SIGHUP aren't defined on windows
(5) libtransmission: a couple of small cleanups to bencode.c, list.c, web.c
(6) libtransmission: win32 portability fixes to platform.c
2008-10-13 22:26:02 +00:00
Charles Kerr
4fab4c9e9b
(libT) finish killing tr_errno.
2008-10-03 04:49:06 +00:00
Charles Kerr
4c34b2bc89
rpc-server cleanups. add true wildmat control. break the Mac build a little harder.
2008-09-25 18:48:09 +00:00
Charles Kerr
cc89872dd4
run libT, cli, daemon, gtk through the source-code formatter "uncrustify" as promised/threatened
2008-09-23 19:11:04 +00:00
Charles Kerr
e07bc3543e
(wx) get the wxWidgets port building again. :)
2008-09-19 17:17:34 +00:00
Charles Kerr
ee10a8acab
(libT) #1255 : fails to parse announce URLs that have leading or trailing spaces
2008-09-05 19:11:30 +00:00
Charles Kerr
c32491ab3a
(libT) remove a little more dead code
2008-08-22 15:33:55 +00:00
Charles Kerr
ef68e36a0d
(libT) more dead code removal: tr_compareUint32(), tr_compareUint64(), tr_strcmp(), tr_strcasecmp()
2008-08-22 14:52:20 +00:00
Charles Kerr
d323a99cdd
undo part of r6616 to address the assertion failure reported by andersos and Waldorf
2008-08-22 01:27:00 +00:00
Charles Kerr
7e4fb99f8c
* add DISABLE_GETTEXT preprocessor directive to turn off i18n in libtransmission for embedded devices.
...
* remove `wchar.h' #include from shttpd that broke the compile on embedded devices.
2008-08-21 21:04:57 +00:00
Charles Kerr
ca45125259
(libT) more dead code removal: tr_compareTime() and tr_compareDouble()
2008-08-21 20:39:57 +00:00
Charles Kerr
1105dc0038
(libT) remove some dead functions: tr_calloc(), tr_compareUint16(), tr_compareUint32()
2008-08-21 19:03:56 +00:00
Charles Kerr
58881d45be
more metainfo/bencode cleanup
2008-08-21 16:12:17 +00:00
Mukund Sivaraman
ed7685dd1a
Make tr_bitfieldHas() a macro
2008-08-20 13:45:52 +00:00
Mukund Sivaraman
de62de3e19
Replace random number generation code
2008-08-14 11:11:25 +00:00
Charles Kerr
fc87510be3
(gtk) #1108 : transmission includes several unlocalized strings
2008-07-25 11:50:17 +00:00
Charles Kerr
2f239319b0
add a portability wrapper ``tr_snprintf()'' around snprintf()
2008-07-15 17:16:57 +00:00
Charles Kerr
518f277e9f
(RPC) add utility arguments for torrent-info: sort by (activity|age|id|name|progress|ratio|state|tracker), filter by (active|all|downloading|paused|seeding)
2008-06-16 22:11:50 +00:00
Charles Kerr
f0229ed8ad
(libT) allow custom blocklists... now all you need to do is place a file in the blocklists/ folder and Transmission will automatically use it the next time it starts.
2008-06-11 16:15:45 +00:00
Charles Kerr
dce24eb1f0
libT: first cut at implementing the internal peers' request queues as pieces rather than blocks, as discussed with erdgeist and denis, to avoid a couple of nasty CPU bottlenecks.
2008-06-09 22:53:45 +00:00
Charles Kerr
e3e3bee8b5
#800 initial support for GetRight-style fetching of data through http and ftp servers specified in the .torrent's "url-list" tag
2008-06-07 21:26:41 +00:00
Charles Kerr
e212eeceb7
add first draft of tr_bitfieldFindTrue() courtesy of erdgeist
2008-06-07 14:41:31 +00:00
Charles Kerr
041561f232
minor refactoring of tr_bitfield to (a) simplify the tests and (b) make things easier to read
2008-06-07 01:44:54 +00:00
Charles Kerr
7b88afdca7
(libT) 1. tweak tr_bitfieldTestFast(). 2. add tr_memdup()
2008-06-06 23:53:30 +00:00
Charles Kerr
2878d0d32e
bitfield speedups written by denis__. Thanks!
2008-06-05 20:21:56 +00:00
Charles Kerr
e391ef6e1a
on shutdown, close the most active torrents first. That way if we can't get everyting closed in a reasonable amount of time, at least we get the ones that affect stats first.
2008-05-30 17:22:26 +00:00
Charles Kerr
7beacb3032
(1) RPC "add-torrent" now lets clients embed base64-encoded metainfo directly into the request
...
(2) remove the RISON code; it didn't make the final cut
(3) add base64 encode/decode utilities and unit tests
2008-05-20 17:33:54 +00:00
Charles Kerr
d7f0e0fa1e
* better RPC handling of requests submitted via http POST
...
* plug a pair of minor memory leaks reported by valgrind.
2008-05-19 18:16:58 +00:00
Charles Kerr
2c79888a93
RPC/IPC redesign
2008-05-18 16:44:30 +00:00
Charles Kerr
078ea29f37
add tr_strdup_printf()
2008-05-15 15:44:51 +00:00
Charles Kerr
0f9ca34848
#917 : when seeding, drop peers that have everything you have (instead of just dropping seeds)
2008-05-06 19:06:46 +00:00
Charles Kerr
a362df0a14
#905 : update peer_id client lists. add a dozen or so new clients from Azureus (thanks amc1!)
2008-04-29 16:57:16 +00:00
Charles Kerr
47021f1a12
fold most of the "deep logging" functions into a single function
2008-04-25 02:57:33 +00:00
Charles Kerr
7ef2511ca8
#377 : preliminary https support. this commit probably breaks mac and cli and is not for the faint of heart.
2008-04-24 01:42:53 +00:00
Mitchell Livingston
1d40202bfc
string folding and dead code removal
2008-04-06 04:16:05 +00:00
Charles Kerr
8930e63e8b
#840 : bencode.c (and others) does not compile without libintl.h
2008-04-05 20:49:51 +00:00
Charles Kerr
39a7583f82
rename tr_httpParseUrl() -> tr_httpParseURL()
2008-03-24 19:29:25 +00:00
Charles Kerr
910d77ae12
( #814 ) require a valid announce URL when creating torrents
2008-03-24 15:58:06 +00:00
Mitchell Livingston
128fa0aedf
Put in function for localization (as suggested on the cocoa dev list) and comment it out because i can't get it working as desired yet.
2008-03-18 19:18:22 +00:00
Charles Kerr
29f092197f
#138 : per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages
2008-03-13 03:53:18 +00:00
Charles Kerr
daddf2c3ef
(gtk) fix minor compiler warning when #including <libtransmission/utils.h>
2008-03-05 01:05:42 +00:00
Mitchell Livingston
052d849b59
get mac build compiling again
2008-03-04 02:23:01 +00:00
Charles Kerr
84a8592d1d
first cut at adding i18n hooks into libtransmission.
2008-03-04 02:02:25 +00:00
Charles Kerr
24e05bf3fb
harden the bitfield handling to handle corrupt messages from peers. This is in response to Ryoujin's crash report in the forums ( http://forum.transmissionbt.com/viewtopic.php?p=20414#20414 )
2008-03-02 23:44:34 +00:00
Charles Kerr
d2f1c7aff3
added tr_sha1_to_hex()
2008-02-25 20:21:22 +00:00
Charles Kerr
deaeb24cb5
cleanup #includes for errno & strerror
2008-02-19 04:16:04 +00:00
Charles Kerr
de515ee339
if the torrent's download path doesn't exist, don't create it -- it's might be a removeable disk that got unplugged.
2008-01-18 19:13:32 +00:00
Charles Kerr
dd75a769c9
fix tr_mkdirp()'s errno/retvals.
2008-01-18 01:40:41 +00:00
Charles Kerr
15ffb4232e
tr_stat.ratio now returns TR_RATIO_INF when appropriate
2008-01-04 19:13:30 +00:00
Charles Kerr
ce6c33b7bf
set copyright info to 2008
2008-01-01 17:20:20 +00:00
Charles Kerr
73ee11f233
Use libnatpmp for port mapping. rewrite the upnp/natpmp manager.
...
NOTE: this will break the xpjets build until SoftwareElves or a volunteer patches the xcode project file to make a libnatpmp library just like was done for libminiupnp.
2007-12-08 19:34:15 +00:00
Charles Kerr
0663c4aef7
possible fix for Zeph's "too many open files" bug report.
2007-11-26 21:26:01 +00:00
Charles Kerr
0a61e04757
now that libevent has a stable 1.4 release out with the features & fixes we wanted, aim third-party/libevent/ at libevent's 1.4 maintainance branch instead of their trunk.
2007-11-20 03:11:50 +00:00
Charles Kerr
8516860fec
fix a bug in tr_stat's availability numbers, reported by BentMyWookie
2007-11-11 16:33:04 +00:00
Charles Kerr
fd430fde90
undoing the r3773-r3774 experiment.
2007-11-09 20:07:52 +00:00
Charles Kerr
fda79c7eef
oops, wrong #include for NSCParameterAssert in r3773.
2007-11-09 19:51:48 +00:00
Charles Kerr
67b719c2de
on Darwin, use NSCParameterAssert() instead of assert().
2007-11-09 19:50:40 +00:00
Charles Kerr
60aab6c433
remove libtransmission code that duplicates functionality in libevent
2007-11-06 21:14:30 +00:00
Charles Kerr
9df263326d
use Thomas Bernard's miniupnp library instead of rolling our own.
2007-11-06 16:02:50 +00:00
Charles Kerr
96351b93ef
part 1 of the data corruption fix: plug the leaky abstraction in fdlimit
2007-10-30 18:35:06 +00:00