Commit Graph

247 Commits

Author SHA1 Message Date
Charles Kerr c946168b1e (1) fix peer limits in fastresume (2) possible fastresume corruption (3) add `save' field to torrent ctor 2007-12-22 17:30:31 +00:00
Charles Kerr 2764f9a140 fix indentation errors in r4278.
fix consistency errors between ctor and the new functions in r4278.
2007-12-22 04:11:17 +00:00
Mitchell Livingston 3449e2d15c separate getting/setting # connections and # unchoked 2007-12-22 04:00:19 +00:00
Charles Kerr 7542573044 brush away the last remnants of tr_torrentInit() 2007-12-22 03:51:12 +00:00
Charles Kerr 93f69d2b5c (gtk) add options to set global & per-torrent peer connection limits 2007-12-22 00:06:38 +00:00
Charles Kerr 8c7434dded fix a different r4267 bug, also reported by John_Clay 2007-12-21 22:38:01 +00:00
Charles Kerr 69f1ee48c1 remove some stubbed code that should've been removed in the last checkin 2007-12-21 22:24:37 +00:00
Charles Kerr 287975caf5 the torrent ctor is here. 2007-12-21 22:18:40 +00:00
Charles Kerr 5c4f841c7e added tr_torrentSetPeerLimits(), tr_torrentGetPeerLimits(), tr_setGlobalPeerLimit(), tr_getGlobalPeerLimit() 2007-12-20 21:44:16 +00:00
Charles Kerr 75d4a2b8c2 fix an obscure bug in tr_torrentStat() where (% verified + % unverified + % unavailable) could be > 1.0 2007-12-19 05:57:55 +00:00
Charles Kerr e9ca72237f if tr_torrentStat() is called again in the same second for a torrent, return the cached value. 2007-12-19 02:44:21 +00:00
Charles Kerr d58d5210d0 fix tr_stat error: fields desiredSize and desiredAvailable could be too large. 2007-12-18 05:01:00 +00:00
Charles Kerr 0e1e7efd3b take inspiration from Solomon when handling odd tracker errors that confuse tracker's request queue: stop the torrent.
when the tracker gives us errors that confuse the tracker work queue,
2007-11-30 23:37:44 +00:00
Charles Kerr e354b82452 disable SWIFT on private trackers, because they are typically ratio-based sites where you *want* to upload as much as possible to deadbeats 2007-11-26 04:05:12 +00:00
Charles Kerr 3b04f824e0 fix libT crash reported in the forums 2007-11-23 02:14:21 +00:00
Charles Kerr 260033847f fix ticket #451 (Files remain in use after removal) 2007-11-21 16:16:59 +00:00
Charles Kerr 172efd42fa fix "manual update" crash reported by Gimp_ and BentMyWookie 2007-11-20 16:50:48 +00:00
Charles Kerr 37969406b2 Add "Status" column to tr_peer_stat. 2007-11-17 23:43:33 +00:00
Charles Kerr a1805875ee try to fix the platform.c:278 issue reported by dave in http://transmission.m0k.org/forum/viewtopic.php?t=2949 2007-11-16 20:41:41 +00:00
Charles Kerr 1464dc7962 fix r3830 bug reported by Gimp_ 2007-11-16 05:43:47 +00:00
Charles Kerr d89d6faad4 don't require clients to call tr_torrentClearStatusCallback() before tr_torrentClose(). 2007-11-11 03:14:01 +00:00
Charles Kerr fd430fde90 undoing the r3773-r3774 experiment. 2007-11-09 20:07:52 +00:00
Charles Kerr 67b719c2de on Darwin, use NSCParameterAssert() instead of assert(). 2007-11-09 19:50:40 +00:00
Charles Kerr 96351b93ef part 1 of the data corruption fix: plug the leaky abstraction in fdlimit 2007-10-30 18:35:06 +00:00
Charles Kerr caa4170271 #426 0.91rc1: if pex is disabled on a stopped torrent, pressing "resume" causes pex to be re-enabled. (reported by pea) 2007-10-28 19:42:47 +00:00
Charles Kerr 515d04de1a Ticket #395 (ensure file exists when starting) 2007-10-27 14:17:51 +00:00
Charles Kerr e6fbcaeae6 Quick & dirty fix to crasher ticket #415. 2007-10-26 03:02:23 +00:00
Charles Kerr 814a56046d fix ul/dl speed wart reported by BentMyWookie 2007-10-21 15:47:26 +00:00
Charles Kerr b7258fbf33 try to better sync up the tr_stat fields, as requested by BentMyWookie 2007-10-20 21:07:11 +00:00
Charles Kerr 4acfe5e1b5 have gtk+ use the batch form of setFilePriorities(). remove saveFastResumeSoon(). 2007-10-19 23:44:01 +00:00
Charles Kerr 25fa56d294 * don't fire the "status changed" event if the status changes while a torrent's being started for the first time.
* cleaner setting of the DND flags in the gtk+ client.
* cpStatus cleanup.
2007-10-19 23:23:21 +00:00
Charles Kerr 6a3a61716b when seeding, instead of giving the the ratio as N/A, give uploaded/torrent_size (Waldorf_) 2007-10-18 20:42:39 +00:00
Charles Kerr 9da5aaef2c huge tracker cleanup for the "no response from tracker" issue 2007-10-17 18:59:58 +00:00
Charles Kerr e698756c98 remove unused flags 2007-10-15 20:58:39 +00:00
Charles Kerr c65d6a20c3 remove dead code tr_file_stat::completionStatus 2007-10-15 18:45:25 +00:00
Charles Kerr 159f1de576 remove dead code tr_stat::cpStatus 2007-10-15 18:28:49 +00:00
Charles Kerr 57eaa27970 Fix bug that could initiate pex in private torrents. 2007-10-14 17:21:24 +00:00
Charles Kerr 38d6b03a8e report a speed of 0 when no peers are connected. 2007-10-13 23:57:13 +00:00
Charles Kerr bd01906f0c more banging on the fastresume-destination-directory thing. this permuation makes the fastresume destination a fallback, to be used only if the client didn't pass in a directory to tr_torrentInit*() 2007-10-13 15:29:15 +00:00
Charles Kerr 9211c57ad2 merge in the parts of peerutils' peer pruning code that still make sense 2007-10-13 13:54:05 +00:00
Charles Kerr 05bcd5e01c fix r3379 bug that forced us to recheck the torrents every startup 2007-10-13 03:58:54 +00:00
Charles Kerr ff36475fad Add an option for saving a torrent's destination path in its file. This can be overridden by clients with the `destination' argument in tr_torrentInit*() 2007-10-12 19:45:51 +00:00
Charles Kerr 568e97d220 recheck the completeness stats after `recheck torrent' 2007-10-07 04:32:37 +00:00
Charles Kerr 17743d8d04 tweak the `start torrent' code based on feedback from BentMyWookie 2007-10-04 23:47:49 +00:00
Charles Kerr 53aef0a48c Simplify the tracker/pause/close/recheck/start code. 2007-10-04 19:58:30 +00:00
Charles Kerr 77d7cf76a1 fix looong-standing potential dangling pointer bug reported by BMW 2007-10-02 03:33:17 +00:00
Charles Kerr 6ed2d25af7 threads. gotta love 'em. 2007-10-02 02:59:07 +00:00
Charles Kerr e4fec9eefd add tr_stat.peersKnown to indicate how many peers exist in the peer `pool' 2007-10-01 15:51:54 +00:00
Charles Kerr 5c11c58113 simplify libT locks now that it's (more-or-less) single-threaded. fix deadlocks. make tr_locks nestable. 2007-10-01 15:17:15 +00:00
Charles Kerr b3d6391413 test to see if the new locking code can fix the old `stop' bug 2007-09-29 14:25:52 +00:00
Charles Kerr f0c9f9a99a add a callback to notify clients when a torrent's state changes 2007-09-28 14:51:34 +00:00
Charles Kerr d3077bbce1 round 2 of minor revisions to tr_stat 2007-09-27 03:30:22 +00:00
Charles Kerr 439c1f38c1 some experimental code. (1) try to improve throughput to peers. (2) add first draft of new tr_stat fields requested by BentMyWookie (3) raise the per-torrent peer limit to 100 to match LibTorrent's defaults 2007-09-27 03:03:38 +00:00
Charles Kerr ee6a0b8945 modify the tr_stat struct as hashed out by charles_ and BentMyWookie. sync gtk, ipc, and wx clients. 2007-09-26 01:55:04 +00:00
Charles Kerr 904359a049 * fix oops from last checkin
* remove some unused fields from internal structures
2007-09-25 22:37:23 +00:00
Charles Kerr 7a15abaf7a better handling of tracker error messages. 2007-09-25 18:39:58 +00:00
Charles Kerr b402687c93 * add sanity checks to incoming piece data requests. This may solve the inout.c:99 assertion failure.
* rename the gtk client from `transmission-gtk' to `transmission' for parity with the mac client.
2007-09-23 23:38:39 +00:00
Charles Kerr 4834dc4b13 fix crash-on-shutdown 2007-09-23 19:24:06 +00:00
Charles Kerr b3fde0b43b tweak responsivenes on switching between `uploading' and `downloading' when a user changes a file's do-not-download state 2007-09-23 14:17:39 +00:00
Charles Kerr 89da2294b1 * when a torrent's done downloading, have it switch to seeding mode.
* tweak the gtk+ client's torrent inspector's display of transfer rates
2007-09-23 13:53:44 +00:00
Charles Kerr 56b0e5d1ac * remove some console messages.
* scrape sooner when peers are added.
* added stub code for the connection manager code
2007-09-22 00:22:10 +00:00
Charles Kerr 9248143ce8 fix recursive crash when stopping a torrent, reported by plantain. silence a few more console messages. 2007-09-21 14:20:55 +00:00
Charles Kerr 4d15bbdc2a slightly less broken handling of cases where we can't bind to our listening port. 2007-09-21 05:31:29 +00:00
Charles Kerr fb70a9cca0 remove the backwards compatability typedefs at BentMyWookie's suggestion. update libT, gtk, daemon, and cli accordingly... 2007-09-20 20:14:13 +00:00
Mitchell Livingston 76da1185ca merge encryption branch to trunk (xcode project is still out of date) 2007-09-20 16:32:01 +00:00
Charles Kerr bae07d471e added support for `corrupt' announce tag s.t. corrupted bytes don't count towards your download ratio 2007-08-21 15:17:02 +00:00
Charles Kerr 64faed5c47 better saving of run/stopped state. 2007-08-20 23:36:18 +00:00
Charles Kerr 4e82903313 better fix for the leak in r2870 2007-08-19 04:03:06 +00:00
Charles Kerr b0919dca34 ...and, yet another memory leak, this time when trying to add a torrent that can't be added 2007-08-19 03:42:58 +00:00
Charles Kerr 43bfc5cd7f update version.sh to exclude third-party. add $Id:$ to the new files s.t. version.sh will find them. 2007-08-18 17:05:51 +00:00
Charles Kerr 5f5a743790 the new tracker code seems to be working, so now it's time for me to learn yet again how much better users are at noticing bugs than I am. :) 2007-08-16 20:00:06 +00:00
Charles Kerr 7254a96ce8 let fastresume remember which torrents are stopped and which are running. 2007-08-13 16:43:33 +00:00
Charles Kerr f2daeb242d (trunk) add tweak to boost the priority of the first and last piece of a file so that early previewing is possible. Suggested by mtolman in http://transmission.m0k.org/forum/viewtopic.php?t=2110 2007-08-08 15:07:06 +00:00
Charles Kerr 82311abfbe (trunk) fix assertion bug in torrent.c::fileByteCompleted() 2007-08-07 14:17:37 +00:00
Charles Kerr 0f85cc3297 continue whittling away at internal.h to reduce the global #include dependencies 2007-07-31 14:26:44 +00:00
Charles Kerr d209052051 add portability wrapper for in_port_t... 2007-07-30 18:04:10 +00:00
Charles Kerr 1be185aacd (libT) get "update tracker" working again.
(gtk) add "update tracker" button.
2007-07-30 17:11:00 +00:00
Charles Kerr ebb141b232 better encapsulation of platform-specific constructs: tr_thread_t, tr_cond_t, tr_lock_t 2007-07-30 15:27:52 +00:00
Charles Kerr e07d0220a9 this looks bug but it's not: just janitorial cleanup, moving #includes from headers into source file 2007-07-29 18:11:21 +00:00
Charles Kerr 530507760b fix r2531 bug reported by Lacrocivious 2007-07-28 16:31:08 +00:00
Charles Kerr 29367fda62 add a temporary debugging statement for Lacrocivious 2007-07-28 15:58:59 +00:00
Charles Kerr 79a0081092 a nice patch that makes the three most CPU-hogging functions (as reported by Shark) essentially free and reduces memory overhead by 8 bytes per piece per torrent. Lots of asserts for extra testing fun. 2007-07-28 15:43:34 +00:00
Charles Kerr a180698e8a save a little bit of memory per-torrent. 2007-07-27 23:07:26 +00:00
Charles Kerr 8f4fb4efbe speed improvements to tr_torrentStat() by folding two expensive & redundant functions together. 2007-07-27 01:22:49 +00:00
Charles Kerr 3e40e06938 avoid null pointer dereferencing in tr_torrentInit*() as reported by wereHamster 2007-07-25 18:43:21 +00:00
Charles Kerr e8fb29ea44 fix compiler warnings reported by wereHamster 2007-07-25 17:27:19 +00:00
Charles Kerr 66883e72a9 fix double-free crash on opening a corrupt torrent file. reported by wereHamster 2007-07-25 17:19:29 +00:00
Charles Kerr 95313e077a fix off-by-one in r2488 reported by BentMyWookie. Hooray for assert()! 2007-07-25 02:28:25 +00:00
Charles Kerr 730d6df742 * fix overflow error from earlier today. (this was the crash talked about in IRC)
* fix long-standing error that occurred when pieceSize isn't evenly divisible by blockSize
* speed up and macro-ize piece-to-block conversions
2007-07-25 01:59:46 +00:00
Charles Kerr 339005346c remove unused function tr_cpMostMissingBlockInPiece() 2007-07-24 17:08:45 +00:00
Charles Kerr e1c18610be remove unused function _tr_blockPosInPiece() 2007-07-24 16:04:43 +00:00
Charles Kerr dd55805012 much faster rechecking of incomplete torrents. added tr_stat_t.recheckProgress field. 2007-07-24 01:33:59 +00:00
Charles Kerr c7d97e5f0a get "recheck files" working properly again. 2007-07-24 00:09:23 +00:00
Charles Kerr eaca893b4c set default torrent ul/dl speed limits from global ul/dl speed. as a side effect, totally decouples fastresume from inout. 2007-07-23 03:00:20 +00:00
Charles Kerr a9526adbdd put information messages in tr_inf(), not fprintf() 2007-07-21 18:31:08 +00:00
Charles Kerr 50f407933b when closing torrents, don't try to re-stop torrents that are already stopped. 2007-07-21 18:03:24 +00:00
Charles Kerr 1d932b07c7 fix looooong-standing bug that choked tracker connections 2007-07-21 17:35:47 +00:00
Charles Kerr 4ef1592e6b more work on the speed limits as hammered out w/BentMyWookie 2007-07-20 03:24:04 +00:00
Charles Kerr 459b8958cb simplify xml.c and utils.c's dependencies 2007-07-19 11:54:37 +00:00
Charles Kerr 615afaa445 add extra state change checks 2007-07-19 03:48:27 +00:00