Commit Graph

1518 Commits

Author SHA1 Message Date
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
Charles Kerr 146b9df023 meh, too early in the morning :) 2008-03-13 11:59:19 +00:00
Charles Kerr 18ab99970b fix r5243 typo reported by BentMyWookie 2008-03-13 11:57:42 +00:00
Mitchell Livingston f03073e080 truncate torrent name in message window instead of removing words; rename "Activity" to "Process"; add the torrent name to a particularly common log message 2008-03-13 11:08:23 +00:00
Charles Kerr 9bb4c477f3 don't let vraa have that many peers any more. 2008-03-13 05:42:39 +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 e3c1d221fb #781: experimental commit on the "failed data" issue. 2008-03-13 00:38:16 +00:00
Charles Kerr 6ef6ac0928 the last i18n-centric commit for awhile, I hope. 2008-03-08 04:53:11 +00:00
Charles Kerr bcff72c3ad string consistency. (gtk) move `announce url' from info tab to tracker tab. 2008-03-08 02:00:47 +00:00
Charles Kerr 909cb89b43 even more i18n string work, w/more feedback and reading through the transmission.pot file. 2008-03-08 01:43:20 +00:00
Charles Kerr 6fe4a4dddc more i18n improvements. thanks to Gnome translator andre for feedback. 2008-03-07 21:20:45 +00:00
Charles Kerr 7200b27a18 lots more i18n string work -- making strings more consistent, folding redundant strings together, etc. 2008-03-07 20:48:36 +00:00
Charles Kerr 76891225b9 more i18n work. 2008-03-07 03:26:59 +00:00
Charles Kerr 777c0de53a more i18n strings work 2008-03-06 21:59:00 +00:00
Charles Kerr 5e3dcb5f6f #751: more digging to try to figure out where the problem is. 2008-03-06 13:24:44 +00:00
Charles Kerr daddf2c3ef (gtk) fix minor compiler warning when #including <libtransmission/utils.h> 2008-03-05 01:05:42 +00:00
Charles Kerr d6729f99ec added `benc2php' utility 2008-03-05 00:50:53 +00:00
Charles Kerr d6a6c24e18 remove more unused code in the peer-msgs module 2008-03-04 21:09:26 +00:00
Charles Kerr 2c9fef40ef remove unused code in the peer-msgs module 2008-03-04 20:37:24 +00:00
Charles Kerr 0e10715b5e new function: tr_bencSaveAsSerializedPHP() 2008-03-04 19:29:51 +00:00
Mitchell Livingston 052d849b59 get mac build compiling again 2008-03-04 02:23:01 +00:00
Charles Kerr eb18810b3e fold some error messages together into common strings 2008-03-04 02:13:53 +00:00
Charles Kerr 84a8592d1d first cut at adding i18n hooks into libtransmission. 2008-03-04 02:02:25 +00:00
Charles Kerr 08d986759b fix r5189 typo pointed out by BentMyWookie 2008-03-04 00:55:20 +00:00
Charles Kerr 3000d67e7f #751: add some tracer bullets to help track down this error. 2008-03-03 21:51:45 +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 6b1001600b remove scaffolding that was accidentally committed in r5183 a few minutes ago 2008-03-02 19:55:04 +00:00
Charles Kerr d712545433 don't crash in makemeta when trying to build a torrent from files you don't have read access to. (wereHamster) 2008-03-02 19:42:45 +00:00
Charles Kerr f1c3b160af remove `banned' field for per-piece-per-peer banning. this has been unused since the three-strikes rule went in place. 2008-03-01 14:32:35 +00:00
Charles Kerr 0788bc37ed minor cleanups to peer-msgs 2008-03-01 14:09:18 +00:00
Charles Kerr 3de06974e8 #727: Download speed setting also affects upload speed, peer informations in torrent inspector 2008-02-29 17:09:33 +00:00
Charles Kerr 9afd403424 #743: add Xunlei to the client list. 2008-02-29 15:33:13 +00:00
Charles Kerr a6d464347d get rid of the "tracker hasn't responded yet" message because it drives users insane 2008-02-29 06:28:00 +00:00
Charles Kerr a7d087b60a use a custom struct for the peer's four request queues since John_Clay's shark report shows it taking up about 40% of the time in malloc/free. also, maybe this will help the "idle memory" numbers some. 2008-02-29 03:41:50 +00:00
Charles Kerr eb3ca08961 fix r5164 thread timing issue reported by pea_ 2008-02-29 01:58:46 +00:00
Charles Kerr e00d8bf849 fix some gcc 4.2 warnings 2008-02-28 19:33:11 +00:00
Charles Kerr d870c12f40 add win32/posix wrapper function tr_lockfile() to libT and use it in daemon/gtk. 2008-02-28 19:06:23 +00:00
Charles Kerr 5f3efe434b better win32 thread support 2008-02-28 16:40:31 +00:00
Charles Kerr 608581ea80 make tr_mkdir() handle windows root directory paths like "C:" 2008-02-28 16:38:48 +00:00
Charles Kerr 0c2f5ac1ce expanded description of the behavior of tr_torrentParse(). 2008-02-28 02:43:28 +00:00
Charles Kerr f00dd3cbd3 possibly-better patch for #740. 2008-02-27 20:44:46 +00:00
Charles Kerr 82d0cd852a #740 fix tr_torrentParse() leak when adding duplicate torrents. 2008-02-27 20:16:01 +00:00
Mitchell Livingston 7103fcb57e #741 typo in transmission.h comment 2008-02-27 20:11:04 +00:00
Charles Kerr 9ee96fd0dc add `verify' command to ipc. 2008-02-27 17:38:39 +00:00
Charles Kerr 5d233f86c4 make struct ipc_info opaque. const-ify the ipcparse functions where possible. 2008-02-27 16:47:58 +00:00
Charles Kerr f82e8e581b remove unused "label" field. make ipc_havemsg() private. make ipc_parse()'s buf arg const. 2008-02-27 08:07:13 +00:00
Charles Kerr 494acbfa85 tear out about 1/3 of ipcparse's overhead. 2008-02-27 06:01:46 +00:00
Charles Kerr 8cc587a66f more housekeeping: benc_val_t --> tr_benc 2008-02-26 21:58:58 +00:00
Charles Kerr 325665caa2 svn propset svn:keywords 'Date Rev Author Id' filename 2008-02-26 21:08:51 +00:00
Charles Kerr d2f1c7aff3 added tr_sha1_to_hex() 2008-02-25 20:21:22 +00:00
Charles Kerr e4a59e5e27 fix minor compiler warning. 2008-02-25 03:09:55 +00:00
Charles Kerr f2f24e936d tear out the "fast peer" code from refillPulse() altogether 2008-02-25 01:35:20 +00:00
Charles Kerr b9a9e1f1a8 disable some fastpeer code that's too expensive. 2008-02-25 01:29:30 +00:00
Charles Kerr 7f0a06b920 flesh out the possible values for the new tracker fields in tr_stat 2008-02-22 02:39:15 +00:00
Charles Kerr 58b655338a libT: add tracker information to tr_stat. gtk: add `tracker' tab to inspector 2008-02-21 07:29:39 +00:00
Charles Kerr e053f6c59d #714: libT creates invalid torrent files when given makemeta is given a non-absolute pathname 2008-02-20 11:36:42 +00:00
Charles Kerr cfe068876e remove unnecessary #includes 2008-02-19 18:39:49 +00:00
Mitchell Livingston 8e1c3ff365 fix typos in last commit 2008-02-19 16:57:54 +00:00
Mitchell Livingston 2206c22eee add Amazon S3 to clients list 2008-02-19 16:55:13 +00:00
Charles Kerr 4456c2dd90 (gtk) #544: remove fast-resume cache when appropriate 2008-02-19 05:03:56 +00:00
Charles Kerr deaeb24cb5 cleanup #includes for errno & strerror 2008-02-19 04:16:04 +00:00
Charles Kerr 3b97af8766 #713: handle leading spaces in the announce url more gracefully 2008-02-18 05:06:52 +00:00
Charles Kerr f8786b6df0 fix bug that could cause some pieces to be unnecessarily rechecked the second time they were loaded. 2008-02-16 05:13:56 +00:00
Charles Kerr c144470c70 make the code a little easier to read. make tr_ioFileTest()'s return value consistent with other inout funcs. 2008-02-15 18:25:42 +00:00
Charles Kerr 6fb57dcd59 modify "verify local data" to not lose the blocks in incomplete pieces 2008-02-15 16:00:46 +00:00
Charles Kerr e2277c97e6 ensure tr_info.creator and tr_info.comment are initialized, even if it's only to an empty string 2008-02-15 14:56:11 +00:00
Mitchell Livingston f0a645ac75 update clients list 2008-02-15 00:23:09 +00:00
Charles Kerr 4f4f451c17 possible fix for http://forum.transmissionbt.com/viewtopic.php?t=3946 2008-02-14 21:48:49 +00:00
Charles Kerr 33f77798d3 #706: save a little more memory by doing the same for tr_info.comment and tr_info.creator 2008-02-14 01:12:00 +00:00
Charles Kerr f8b0763c30 #706: reduce memory by 25% by cutting tr_file struct 2008-02-14 00:52:58 +00:00
Charles Kerr 9d436d6767 #690: get multitracker torrents working with the evhttp code 2008-02-13 17:15:58 +00:00
Mitchell Livingston aaf8fdf45e add Net Transport to clients list 2008-02-13 13:38:15 +00:00
Charles Kerr e581d5228e add tr_ctor{Set,Get}DeleteSource() 2008-02-13 02:24:12 +00:00
Charles Kerr e20a5cf3df fix a possible crash on shutdown 2008-02-13 01:33:29 +00:00
Charles Kerr d360607a02 fix a possible crash when deleting a torrent. 2008-02-13 01:22:55 +00:00
Mitchell Livingston 22cbdfb624 add LH-ABC to the clients list 2008-02-11 22:24:47 +00:00
Charles Kerr 8d14a789cb #698: `have' gets too far ahead of `verified' 2008-02-10 04:03:19 +00:00
Charles Kerr 5a7127a26b make TR_PATH_DELIMITER and TR_PATH_DELIMITER_STR private to libtransmission 2008-02-09 17:48:53 +00:00
Charles Kerr 7cf9f8cc35 #417: add the libtransmission bits for telling users when they can "Ask Tracker for More Peers" 2008-02-09 17:07:30 +00:00
Charles Kerr 16dcece6ab test build: disable tit-for-tat 2008-02-08 19:34:12 +00:00
Charles Kerr 17e76707f2 make the stats code a little more difficult to corrupt 2008-02-04 19:54:47 +00:00
Charles Kerr beb7cc0b92 minor code cleanup 2008-02-02 16:23:49 +00:00
Charles Kerr cfa1bc8480 shrink sizeof(benc_val_t) from 32 to 24 by better alignment 2008-02-02 16:09:10 +00:00
Charles Kerr d3047158be more unit tests for bounds-checking on incomplete bencoded data 2008-02-01 21:53:01 +00:00
Charles Kerr b98a927a9a add more benc unit tests. 2008-02-01 17:33:49 +00:00
Charles Kerr 3334ea8401 fix the 1.04 bencode errors reported in the forums this morning. add regression tests. 2008-02-01 15:50:17 +00:00
Charles Kerr 606d548514 clarity tweaks to variable & function names 2008-02-01 01:54:04 +00:00
Charles Kerr 88cfec047f #666: pausing in the middle of "verify local data" makes T forget about the nonverified portion 2008-02-01 01:38:55 +00:00
Charles Kerr 375949551b more graceful handling of bad inputs to tr_bencFree(), tr_bencSave(), and tr_bencPrint(). 2008-01-31 15:20:42 +00:00
Charles Kerr b5e119f1ea bencode tweaks. 2008-01-31 06:00:57 +00:00
Charles Kerr 784e0babda fix off-by-one that was uncovered by the new benc's stricter parsing. 2008-01-31 03:09:27 +00:00
Charles Kerr df9bd1f713 #667: remote crash exploit in bencode parser 2008-01-31 02:24:43 +00:00
Charles Kerr 410dffd211 part 1 of the bencode exploit fix:
- better error checking for int & string parsing
 - add automated unit tests
2008-01-30 15:39:41 +00:00
Charles Kerr 0f981db778 #665: Ratio calculations aren't strictly accurate when re-seeding a torrent 2008-01-29 16:33:29 +00:00
Charles Kerr f72ba4b8d8 #663: connection limits don't work correctly. 2008-01-28 21:05:50 +00:00
Charles Kerr 3d8dfa574b (1.0x) #660: fix HTTP syntax error that caused "Bad Request" messages on lighttpd-based trackers. Reported by _Psih 2008-01-28 06:03:14 +00:00
Charles Kerr b29ba709b3 tr_ioRecalculateHash(): use a static buffer instead of malloc/free. 2008-01-27 17:03:58 +00:00
Charles Kerr f32d3b24fe #653 "overflow issue in Transmission/1.01" (1) safeguard bitfield functions against overflow. (2) add regression tests to see if this data is corrupted again in the future. 2008-01-27 16:08:20 +00:00
Charles Kerr 2085aec390 #613: fix handshake protocol error reported by brad- and tracked down w/Lacrocivious' help. 2008-01-26 03:43:49 +00:00
Charles Kerr d922389c9d #613: fix handshake error with libtorrent / mainline peers 2008-01-24 17:16:20 +00:00
Charles Kerr b1cd6ecccc remove unused "max unchoked peers" feature. fix obsolete TR_FLAG_SAVE comment. 2008-01-23 17:06:36 +00:00
Charles Kerr d4128740d1 since we're not using evdns, don't call evdns_init() and evdns_shutdown() anymore. 2008-01-21 23:36:43 +00:00
Charles Kerr 0dd150844a make tr_handleStatus() return a const 2008-01-21 18:24:37 +00:00
Charles Kerr 1b7706e101 finish the trunk/1.0x libT merge: router death & portability 2008-01-21 02:11:57 +00:00
Charles Kerr de21d77af2 test code to test a "router death" theory in the nightlies 2008-01-20 03:21:51 +00:00
Charles Kerr 43a83f31bb change the default global connection limit to 200 in tr_init() 2008-01-20 01:50:51 +00:00
Charles Kerr 3a47dfdb23 (router death) dial down the max number of new sockets per second even lower 2008-01-19 03:44:44 +00:00
Charles Kerr 3c6eeef439 fix a socket leak in peer-msgs 2008-01-19 03:30:45 +00:00
Charles Kerr a771f34373 stagger out the reannounce messages too, just as 0.82 did, as per denisx_'s suggestion 2008-01-19 01:34:02 +00:00
Charles Kerr 737bb23743 more work on "router death": stagger out tracker scrape attempts and close a loophole in the handshake code 2008-01-19 00:28:52 +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 52c3243b4b more test code to address "router death". Based on maxintech's feedback in the forums, try making the peer manager's reconnect intervals and volume more like 1.00 2008-01-17 03:43:08 +00:00
Charles Kerr 6c6228770c fix byte ordering of the port in tr_peerIoAddrStr() 2008-01-17 00:08:40 +00:00
Charles Kerr 377c00a826 a test: if we set the reconnect period to any given peer to > 900 seconds, will that make "router death" go away? 900 seconds is the usual router setting for timing out bad sockets. 2008-01-16 20:24:18 +00:00