Charles Kerr
f9e8b56816
add `hashString' to torrent-stat's response
2008-05-23 13:18:17 +00:00
Charles Kerr
0621c67c41
more cleanup work:
...
(1) kill the pointless "tr_tracker_stat" struct.
(2) kill the unused "tr_torrentRemoveSaved()" function.
(3) kill the redundant "nextManualAnnounceTime" variable.
(4) make the TR_ERROR_IS_* macros private.
2008-05-22 23:11:21 +00:00
Charles Kerr
26b5a16630
(libt) more janitorial work on cleaning up tr_session*() and tr_torrent*() functions: session stats, torrent count, and manual update.
2008-05-22 20:44:41 +00:00
Charles Kerr
9fdb8afdf0
(rpc) remove TR_RPC_TORRENT_CLOSING. formalize "torrent-list"'s response in the rpc spec.
2008-05-22 19:24:11 +00:00
Charles Kerr
dceabc5661
make tr_stat identical in transmission.h and rpc-spec.txt.
2008-05-22 16:59:51 +00:00
Charles Kerr
90e151cd4d
(rpc) make our generated JSON more human-readable.
2008-05-22 16:41:16 +00:00
Charles Kerr
7b209acc1b
more janitorial cleanup on the "tr_session*" namespace. Today's victim: tr_handle_status.
2008-05-22 12:31:47 +00:00
Charles Kerr
07ae5bf965
tr_base64_decode() now decodes both data with, and without, newlines. thanks to dm1024 for helping track this down.
2008-05-22 03:42:26 +00:00
Charles Kerr
4398943230
#934 : remove invalid tracker addresses
2008-05-21 20:56:12 +00:00
Charles Kerr
e406dcc2ab
rename tr_torrentClose() as tr_torrentFree() and make it private. change client code to use tr_torrentRemove() instead. This fixes the confusion between the two methods that led to #954
2008-05-21 17:14:58 +00:00
Charles Kerr
8b31bd54cb
(rpc) refresh our snapshot of Jean Gressmann's JSON parser
2008-05-21 14:19:49 +00:00
Charles Kerr
c7b9c8c043
( #954 ) rpc: add "torrent-remove" method. rename tr_torrentDelete() as tr_torrentRemove() for consistency with various parts of the code.
2008-05-20 23:58:59 +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
77233ab16f
fix 20-byte memory leak every time we stopped a torrent. :/
2008-05-20 17:24:29 +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
4c82187933
possible fix for the crash in http://forum.transmissionbt.com/viewtopic.php?t=4847
2008-05-19 14:06:44 +00:00
Charles Kerr
9a2cdef770
fix compile error reported by BentMyWookie
2008-05-19 00:22:04 +00:00
Charles Kerr
dde9cb49f2
fix the cyclical header dependency, and fix a couple of warnings sniffed out by gcc 4.3
2008-05-19 00:12:31 +00:00
Charles Kerr
2c79888a93
RPC/IPC redesign
2008-05-18 16:44:30 +00:00
Charles Kerr
f0b7932b90
minor logging tweak
2008-05-15 22:08:43 +00:00
Charles Kerr
078ea29f37
add tr_strdup_printf()
2008-05-15 15:44:51 +00:00
Charles Kerr
bfd89b685d
more work on rpc. bug fixes, regression tests, and spec tweaks.
2008-05-13 17:31:09 +00:00
Charles Kerr
6aaa2fd39e
fix bug in the benc-to-json converter.
...
add rison-to-json converter so we can pass commands to transmission in a uri.
add unit tests for the new code.
2008-05-13 12:52:58 +00:00
Charles Kerr
17b9dc7462
make the request/response messages a little terser. add per-torrent speed limit toggles. rename ipc -> rpc.
2008-05-12 23:51:17 +00:00
Charles Kerr
911bce88c9
add benc-to-json conversion + unit tests.
2008-05-12 17:54:57 +00:00
Charles Kerr
be9427931a
ipc: add session accessor/mutators.
...
transmission.h: make the session API more consistent.
2008-05-12 16:33:17 +00:00
Charles Kerr
2186d852f1
json ipc: implement torrent-add, torrent-set-file, torrent-get-file
2008-05-12 13:05:06 +00:00
Charles Kerr
63b82714f8
partial implementation of json-ipc backend: torrent start/stop/close/verify/stat/info, as are getting & setting per-torrent peer limits, upload speeds, and download speeds. this is a work in progress.
2008-05-12 00:41:55 +00:00
Charles Kerr
6eb8c5132e
remove benc2php, since we're going to be using json now.
2008-05-11 23:13:50 +00:00
Charles Kerr
44d3d2e080
plug a small memory leak in the last patch
2008-05-11 22:55:15 +00:00
Charles Kerr
e607f26893
add json-to-benc parser
2008-05-11 22:42:53 +00:00
Charles Kerr
33839f77be
new utility for iterating through torrents: tr_torrentNext()
2008-05-10 00:19:00 +00:00
Charles Kerr
cc9d22c5df
bang on ipcparse.c for a bit.
2008-05-09 20:59:34 +00:00
Charles Kerr
25b426f7a6
#929 : version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status#929: version.h should reflect SVN status
2008-05-09 17:51:05 +00:00
Charles Kerr
fb8dccf179
undo the curl timeout option from earlier today
2008-05-09 04:00:14 +00:00
Charles Kerr
e19149bbb7
#751 : tear down some of the scaffolding used in tracking down this bug.
2008-05-08 20:30:27 +00:00
Charles Kerr
20986a5dac
raise the timeout interval that we tell curl to use
2008-05-08 17:15:06 +00:00
Charles Kerr
f48b2b24e9
tell webcurl to timeout tracker requests after 30 seconds
2008-05-08 17:05:43 +00:00
Charles Kerr
f5725af93a
remove unused TIMEOUT_INTERVAL_SEC and STOP_TIMEOUT_INTERVAL_SEC
2008-05-08 16:15:12 +00:00
Charles Kerr
73d77f8418
add a couple of benc utility functions
2008-05-08 03:25:21 +00:00
Charles Kerr
7b25d0476c
remove occurrences of "if( 1 )"
2008-05-06 20:31:05 +00:00
Charles Kerr
86c3ae4fa4
#917 : Another minor speedup suggested by BentMyWookie. He enjoys giving new suggestions right *after* I hit "svn commit" :)
2008-05-06 19:49:25 +00:00
Charles Kerr
d047c1175d
#917 : small speedup to r5759 suggested by BentMyWookie
2008-05-06 19:39:16 +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
6ba02efb58
#915 : Does too many wake-ups when idle
2008-05-06 15:52:57 +00:00
Charles Kerr
ed4e902482
#912 : Resume file parsed twice on startup
2008-05-06 01:43:24 +00:00
Charles Kerr
2cd2b35238
fix multitracker problem reported by BentMyWookie
2008-05-05 20:11:03 +00:00
Charles Kerr
d561187227
when one of the trackers in a multitracker list is successful, bump it to the top of the tier.
2008-05-05 19:51:53 +00:00
Charles Kerr
c5eed39275
add #include <limits.h> to pick up INT_MAX
2008-05-05 19:33:29 +00:00
Charles Kerr
643716c6f0
randomize the announce addresses within multitracker tiers
2008-05-05 18:54:19 +00:00
Mitchell Livingston
85e66062eb
remove unused variables
2008-05-05 04:17:52 +00:00
Charles Kerr
ecc825a242
#909 : not utf8izing the torrent name properly
2008-05-02 01:21:26 +00:00
Charles Kerr
c20b9a6df4
experimental speed tweaks:
...
(1) increase the per-peer read buffer to the size of a block message
(2) pulse the peers more often
(3) reduce the tracker delay on startup
2008-05-01 19:31:58 +00:00
Charles Kerr
362f5b46f4
tweak the clients tests
2008-05-01 19:30:49 +00:00
Mitchell Livingston
c62f45a67b
the display of our own client's peer-id has to be 100% accurate
2008-05-01 15:56:10 +00:00
Mitchell Livingston
b2809267dc
for peer id's with 2 major digits, if the tens place is 0, don't show it
2008-04-29 20:44:36 +00:00
Mitchell Livingston
978e53a465
minor adjustments to the client code, and keeping the code pg
2008-04-29 20:34:15 +00:00
Charles Kerr
d659df1093
add a couple of debug messages to trac down why Lacrocivious' stats aren't being saved
2008-04-29 18:22:26 +00:00
Charles Kerr
c16b901c93
add a few more peers, raided from KTorrent's list
2008-04-29 18:15:49 +00:00
Charles Kerr
e18414ad0b
tweak the last commit: when parsing peer-ids we don't want locales to postentially change the behavior of isalpha/isdigit/etc
2008-04-29 17:23:33 +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
b05c7820c2
possible fix for #904 : "crash on startup in tr_bitfieldHas"
2008-04-29 02:51:02 +00:00
Charles Kerr
ecc8401203
#903 : "1.11: Not making use of Tier 2 tracker on Tier 1 error"
2008-04-29 01:21:42 +00:00
Charles Kerr
ed798be5ac
don't use strlcat.
2008-04-28 18:09:17 +00:00
Charles Kerr
1dfc98fc77
fix another crash-on-shutdown in the new web code
2008-04-28 13:29:38 +00:00
Charles Kerr
b9c27b23d5
#884 : fix after creating a torrent whose last file has 0 bytes
2008-04-27 19:08:10 +00:00
Charles Kerr
3f71ea1f51
fix one of the crash-on-shutdown bugs reported by Gimp_
2008-04-27 18:27:32 +00:00
Charles Kerr
b8fc148fe0
experiment to lower CPU for Gimp_
2008-04-27 17:22:37 +00:00
Charles Kerr
b66af4ab07
curl_easy_getopt(CURLINFO_RESPONSE_CODE) needs a pointer to a long, not an int.
2008-04-27 07:15:20 +00:00
Charles Kerr
3b27e2d2af
possibly fix the issue discusssed in http://forum.transmissionbt.com/viewtopic.php?p=22725
2008-04-27 06:44:39 +00:00
Charles Kerr
2f3eba4b01
#899 : Hangs when clicking verify data twice
2008-04-27 06:34:34 +00:00
Charles Kerr
42cbbaa57a
fix an assertion error: completion.c:113: failed assertion `ccp->sizeWhenDoneLazy >= ccp->sizeNow'
2008-04-26 14:52:05 +00:00
Charles Kerr
c4fc897b38
steal some curl configuration options from rtorrent :)
2008-04-25 23:54:02 +00:00
Charles Kerr
73f083cc51
#896 : Minor bug: debugging output always goes to stderr
2008-04-25 19:48:53 +00:00
Charles Kerr
03572a0ad5
add tr_webClose()
2008-04-25 19:46:36 +00:00
Charles Kerr
0545e70f5b
(gtk) use libT's curl wrapper for port testing & getting the blocklist
2008-04-25 18:35:48 +00:00
Charles Kerr
c46269805d
#895 : tweak
2008-04-25 16:40:14 +00:00
Charles Kerr
cffd7f92e2
more hacking on the curl code, based on libcurl's "hiperfifo.c" sample code
2008-04-25 16:07:06 +00:00
Charles Kerr
37d4da23b7
#895 : don't scrape running torrents on startup
2008-04-25 16:06:03 +00:00
Charles Kerr
48bec954be
remove a debugging printf
2008-04-25 04:37:00 +00:00
Charles Kerr
9f8b596914
Fix "Unknown Error (0)" messages for torrents that haven't been scraped yet.
2008-04-25 04:35:06 +00:00
Charles Kerr
dbf3e95cd9
make the tracker response lines more human-readable
2008-04-25 04:26:04 +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
169e717474
fix failed buildin
2008-04-24 19:49:13 +00:00
Charles Kerr
335ff66baa
reported by John_Clay: allow the connection to continue even if the certificate can't be authenticated.
2008-04-24 19:48:27 +00:00
Charles Kerr
aa731deaa6
maybe make hudson happy
2008-04-24 19:42:29 +00:00
Charles Kerr
73b1f106a3
maybe work on libcurl < 7.16.3
2008-04-24 19:38:59 +00:00
Charles Kerr
52ea125c45
#894 : wont start - cp->doneHave <= cp->completeHave
2008-04-24 15:25:01 +00:00
Charles Kerr
a97d175a34
code tweaks
2008-04-24 03:26:36 +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
3a609ecc87
eliminate warning about unused variable
2008-04-23 13:26:30 +00:00
Charles Kerr
1b901ca9df
minor tweaks: dead code removal, make functions static, etc
2008-04-22 20:51:15 +00:00
Charles Kerr
0c1599608d
add statistics "reset" button
2008-04-22 14:07:42 +00:00
Charles Kerr
19fbb3ef2c
string folding
2008-04-21 15:22:54 +00:00
Charles Kerr
fbc7cde718
tweak the value of haveDone as per BentMyWookie's suggestion
2008-04-21 00:04:41 +00:00
Charles Kerr
8805366e28
if at first you don't succeed...
2008-04-20 22:06:05 +00:00
Charles Kerr
c4878448a9
clean up the file bsearch that caused the crash reported by John_Clay yesterday
2008-04-20 21:54:44 +00:00
Charles Kerr
30b444ab92
(gtk) #891 : patch: add option to disable libnotify support at compile time
2008-04-20 13:30:44 +00:00
Charles Kerr
a443cc3289
add #include <limits.h> to pick up a definition of INT_MAX to make Hudson happy
2008-04-19 19:39:39 +00:00
Charles Kerr
3445817a80
peer-msgs: faster upload speeds in situations with few peers. this patch needs wider testing for side-effects wrt speed limits.
2008-04-19 19:37:05 +00:00
Charles Kerr
c28e59e8b2
add some debug messages for John_Clay
2008-04-19 15:59:31 +00:00
Charles Kerr
08b27749ba
#890 : be smarter about noticing seeds from tracker & pex
2008-04-19 15:07:59 +00:00
Charles Kerr
b483b30889
minor code cleanup: remove dead code, const-correctness, etc
2008-04-18 23:17:40 +00:00
Charles Kerr
322265f2ba
use a binary search to slightly speed up finding the right location in a torrent when reading/writing a piece.
2008-04-18 20:56:20 +00:00
Charles Kerr
c88aa6135d
benc cleanup
2008-04-18 16:23:59 +00:00
Charles Kerr
ab2b3a957d
#886 : libtransmission fails to compile on win32
2008-04-18 15:33:24 +00:00
Charles Kerr
2d360434eb
handle manditory/fallback ctor settings in the bencoded resume filfes
2008-04-18 12:47:13 +00:00
Charles Kerr
ac921e0f82
#881 : undo r5631
2008-04-18 00:02:04 +00:00
Charles Kerr
3e88159e9f
(gtk) fix potential invalid memory read on shutdown
2008-04-17 20:35:18 +00:00
Charles Kerr
101307ddff
fix a couple more minor leaks
2008-04-17 19:54:22 +00:00
Charles Kerr
737a5c7b5c
fix minor memory leak in tr_initFull()
2008-04-17 18:46:51 +00:00
Charles Kerr
4041a1731d
fix minor memory leak in tr_close()
2008-04-17 18:45:02 +00:00
Charles Kerr
ea9e0b260f
(1) fix choke/unchoke error. (2) if a peer keeps trying to reconnect to us, hang up during the handshake.
2008-04-17 03:48:56 +00:00
Charles Kerr
62709b7ca2
#881 : follow the transmission spec wrt extension handshake message timing
2008-04-17 02:11:29 +00:00
Charles Kerr
a818d74f35
the last commit was too assertive
2008-04-15 20:44:27 +00:00
Charles Kerr
87a77ea331
more hacking on the bencoded resume files
2008-04-15 17:00:44 +00:00
Charles Kerr
29cb590c28
#879 : fix segfault if tracker is freed immediately after starting a torrent
2008-04-15 15:51:59 +00:00
Charles Kerr
1aec1e1392
maybe fix the losing-progress bug in the new bencoded resume. fix a couple of log messages too.
2008-04-15 13:27:28 +00:00
Charles Kerr
c0c0842754
minor resume tweak
2008-04-14 20:41:45 +00:00
Charles Kerr
35502f0559
add more debugging messages for loading progress from the bencoded resume file
2008-04-14 20:30:43 +00:00
Charles Kerr
7f89ee3db2
silence a couple of annoying dbg messages
2008-04-14 20:06:37 +00:00
Charles Kerr
59817732ab
add more debug messages to resume's DND loader
2008-04-14 19:52:51 +00:00
Charles Kerr
2d90c93765
wrap the dead parts of fastresume.c in #if 0 blocks
2008-04-14 15:32:28 +00:00
Charles Kerr
1578ebc904
get DND working in the benc resume files
2008-04-14 15:17:16 +00:00
Charles Kerr
e4f6b9592d
get tr_ctorSetMetainfoFromHash() working again.
2008-04-14 14:39:13 +00:00
Charles Kerr
afde752dc0
'resume' cleanup
2008-04-14 11:52:50 +00:00
Charles Kerr
a08ef82039
delete the old resume file after migrating to the new format
2008-04-14 03:12:24 +00:00
Charles Kerr
4843187f6c
#394 : resume files should use original name instead of hash name
2008-04-13 22:31:07 +00:00
Charles Kerr
c8c84d6bd1
#872 : crash in bitfield code when loading resume files
2008-04-13 14:29:11 +00:00
Charles Kerr
8a8b1fedb0
#870 : follow PEX conventions agreed upon by Azureus and uTorrent
2008-04-12 23:01:40 +00:00
Charles Kerr
48e5a660df
#765 : for every consecutive scrape failure, wait longer before trying again.
2008-04-12 22:37:03 +00:00
Charles Kerr
002ce54335
#848 : UPnP users always have to wait for NAT-PMP to fail first
2008-04-12 21:47:10 +00:00
Charles Kerr
fc866f51f3
minor tr_torrentStat cleanup
2008-04-12 15:56:21 +00:00
Charles Kerr
38ee8899f7
#864 : crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit#864: crash on exit
2008-04-12 02:26:45 +00:00
Charles Kerr
57c7fcb507
#857 : DSCP support for Transmission
2008-04-12 00:29:49 +00:00
Charles Kerr
f12ac60d0a
update a couple of the tr_stat fields based on feedback from BMW
2008-04-11 23:05:14 +00:00
Charles Kerr
77abc21659
tidy up some libtransmission filenames.
2008-04-11 17:01:13 +00:00
Charles Kerr
5619eae447
#853 : transmission-(daemon|gtk) segfault when querying status
2008-04-10 19:02:24 +00:00
Charles Kerr
1f95e1d450
tweak an info message based on BMW's suggestion
2008-04-10 02:53:03 +00:00
Charles Kerr
5b29d7cb3b
re-add the translation macro
2008-04-09 20:53:09 +00:00
Mitchell Livingston
8c5da6178b
remove the ability to disable scraping - the demand for this feature is too low currently (this also reenables scraping on all clients)
2008-04-09 20:50:14 +00:00
Mitchell Livingston
f34cd7299f
fix incorrect eta value
2008-04-07 05:00:07 +00:00
Mitchell Livingston
2a8b6f8b1f
fix marking the eta of torrents with peers as unavailable
2008-04-07 03:01:57 +00:00
Charles Kerr
69eaaed409
remove a debugging printf
2008-04-06 17:12:15 +00:00
Charles Kerr
f42995c872
#846 : transmissioncli attempts to bind to port even when not needed
2008-04-06 16:50:41 +00:00
Charles Kerr
9f3f0c03e6
#843 : download eta should consider availability
2008-04-06 14:42:47 +00:00
Mitchell Livingston
1d40202bfc
string folding and dead code removal
2008-04-06 04:16:05 +00:00
Charles Kerr
fc091499cb
translators shouldn't have to translate debug messages
2008-04-06 00:38:18 +00:00
Charles Kerr
8930e63e8b
#840 : bencode.c (and others) does not compile without libintl.h
2008-04-05 20:49:51 +00:00
Mitchell Livingston
fad4e528fe
store mac support files in the right location
2008-04-05 20:27:13 +00:00
Charles Kerr
b71a2985b3
#684 : Use XDG basedir spec for configuration and cache files in $HOME
2008-04-05 20:12:11 +00:00
Charles Kerr
16880cee99
#765 , part 1: add backend support for disabling tracker scrapes
2008-04-05 16:49:26 +00:00
Charles Kerr
6d52fa6856
don't flood the message log when you don't have a blocklist
2008-04-05 16:45:35 +00:00
Charles Kerr
0080f1abe8
ipc/daemon cleanup
2008-04-04 17:19:44 +00:00
Mitchell Livingston
8adc5de554
small rearrangement in clients list; update NEWS
2008-04-04 01:45:32 +00:00
Charles Kerr
e61af54481
#837 : portability patch submitted by naddy
2008-04-04 01:21:36 +00:00
Charles Kerr
fd0e71c00a
hack on IPC a bit because it's been too long since I broke it
2008-04-03 21:38:32 +00:00
Charles Kerr
9c93ac23b0
fix one cause of slow shutdown: even if we weren't using natpmp, we would wait on it...
2008-04-01 19:52:21 +00:00
Charles Kerr
5890eaef34
encapsulate the blocklist a little better so that we can add more blocklists in the future if necessary
2008-04-01 19:20:21 +00:00
Charles Kerr
eb24ad760d
(1) make tr_torrentRates() faster.
...
(2) new function: tr_torrentGetStatus() for when you need the status but not the overhead of tr_stat
2008-04-01 02:35:04 +00:00
Charles Kerr
3e4168025b
experimental commit to save 1888 bytes from each tr_torrent
2008-03-31 19:34:20 +00:00
Charles Kerr
51a82e70c1
remove `TR_STATUS_DONE' from libtransmission's public API. It's useful as an internal state but not for code calling libtransmission.
2008-03-31 17:59:16 +00:00
Charles Kerr
a331582ec0
string folding
2008-03-30 13:52:55 +00:00
Charles Kerr
ef534cbb51
blocklist cleanup
2008-03-30 13:22:45 +00:00
Charles Kerr
def9d1a492
better logging of blocked IP addresses.
2008-03-30 00:57:55 +00:00
Charles Kerr
24d35e7098
added tr_blocklistGetRuleCount().
2008-03-30 00:00:28 +00:00
Mitchell Livingston
1c25dca676
remove redundant include that snuck in from my test build
2008-03-29 23:43:08 +00:00
Mitchell Livingston
7fdb2f6f40
first implementation of the blocklist
2008-03-29 23:38:38 +00:00
Charles Kerr
a09b43a4b4
add tr_blocklistIsEnabled(), tr_blocklistSetEnabled(). add a blocklist flag to tr_initFull().
2008-03-29 23:12:34 +00:00
Charles Kerr
e5b04e45d5
add tr_blocklistExists( const tr_handle * );
2008-03-29 22:16:33 +00:00
Charles Kerr
a20bb8d569
get the blocklist code working & add a unit test for it.
2008-03-29 21:05:51 +00:00
Charles Kerr
e7ba6b7b15
first (and incomplete) pass at peer blocking. this commit is to get the API into SVN so the mac client can access them
2008-03-29 18:37:07 +00:00
Charles Kerr
8659c755d8
change ptrarray.[ch] license to MIT so that bencode, which relies on it, can be used in other projects w/o GPL
2008-03-25 19:49:32 +00:00
Charles Kerr
39a7583f82
rename tr_httpParseUrl() -> tr_httpParseURL()
2008-03-24 19:29:25 +00:00
Charles Kerr
919eefe456
rework the makemeta error messages so that they can be i18nized on the client end.
2008-03-24 17:18:08 +00:00
Charles Kerr
b3663db916
#811 : fix r5329 error in trunk.
2008-03-24 16:10:04 +00:00
Charles Kerr
910d77ae12
( #814 ) require a valid announce URL when creating torrents
2008-03-24 15:58:06 +00:00
Charles Kerr
c6d57fcdbe
save a few bytes from each torrent by removing some vestigal rate control locks
2008-03-23 20:54:54 +00:00
Charles Kerr
36689ca7c3
#809 : reduce memory overhead in tr_info structure
2008-03-23 03:15:05 +00:00
Charles Kerr
2ca35e1ea7
allow NULL as the second argument to tr_torrentFiles()
2008-03-22 18:27:29 +00:00
Charles Kerr
c63b548195
fix bug that caused very large torrents to crash Transmission
2008-03-22 18:10:59 +00:00
Charles Kerr
ca9a75d4aa
(gtk) fix minor terminology inconsistencies between the "new torrent" and "details" dialogs
2008-03-19 20:34:35 +00:00
Charles Kerr
531dd851ad
more string work before the freeze. (1) use %'d to get thousands' grouping in end-user strings (2) follow HiG capitalization, quotation guidelines (3) fold a few more strings
2008-03-19 20:07:27 +00:00
Charles Kerr
54ad103053
minor `verify' cleanup
2008-03-19 14:56:47 +00:00
Charles Kerr
e7316dbc34
yet more string massaging
2008-03-19 02:16:07 +00:00
Charles Kerr
d9b33a7055
change that 20 second interval to a 5 second interval
2008-03-18 19:38:39 +00:00
Charles Kerr
f92c5fd502
demote the nat-pmp `try again' message to dbg
2008-03-18 19:34:44 +00:00
Charles Kerr
cb854bd4cc
#798 : 1.06's handling of tracker http 301 redirects can cause a huge strain on tracker
2008-03-18 19:33:08 +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
21124a8de8
strings work: (1) folding similar strings together for easier tranlation (2) gtk: use consistent shortcuts/phrases/terminology between the preferences and "open torrent" dialogs (3) promote the port forwarding messages from Debug to Info as per BMW's request
2008-03-18 19:14:21 +00:00
Charles Kerr
4fa1da4ee8
#781 : (1) fix overreporting corrupt data, and (2) fix bug added in r5172 that didn't handle sent request TTL correctly, causing too many dupliate block requests.
2008-03-18 17:46:29 +00:00
Charles Kerr
56364f2ae8
add a tr_errno specifically for failed checksums so they can be differentiated from "Generic error"
2008-03-18 17:02:08 +00:00
Charles Kerr
05c6938f5a
changes to message logging: (1) bring back "Torrent hasn't responded yet", but only in the message log. (2) make PEX messages debug. (3) log a message when a torrent reaches completion.
2008-03-18 16:56:01 +00:00
Charles Kerr
913f2843b2
#740 : back out the previous "fix" because it caused an regression in the mac client
2008-03-18 16:26:45 +00:00
Charles Kerr
ec34995cff
make the port forwarding error message text a little more helpful
2008-03-18 02:30:35 +00:00
Charles Kerr
d8fa1dff77
if libevent logs an error message, send it to our message log via tr_nerr()
2008-03-18 02:23:39 +00:00
Charles Kerr
3d232f4db0
make the Port Forwarding error messages a little easier for beginners to understand
2008-03-18 02:15:19 +00:00
Charles Kerr
59fdf5dcc8
#781 : try to get a little further on this `too much corrupt' ticket by adding a more helpful log message when a downloaded piece fails its checksum test.
2008-03-18 01:39:06 +00:00
Charles Kerr
23f33e1bd1
"Got 0 peers from peer exchange" is a pretty useless message. :)
2008-03-17 02:45:09 +00:00
Charles Kerr
8f246d63e8
(gtk) set the default sort column & mode for the message window's list
2008-03-16 21:41:27 +00:00