Commit Graph

2383 Commits

Author SHA1 Message Date
Charles Kerr 93b3d1ad7e (trunk) #1881: promote tr_strratio() to libtransmission, so that its code doesn't have to be repeated in all the clients 2009-03-04 16:16:02 +00:00
Charles Kerr e8422f8cdd (trunk libT) always invoke the stop-ratio check when a torrent switches from leeching to seeding. 2009-03-04 15:13:56 +00:00
Charles Kerr 0d1a699cd7 (trunk libT) recognize aria2 as a client 2009-03-04 05:52:33 +00:00
Charles Kerr 74e544ca22 (trunk libT) when a "torrent-set" request is sent to change files' priorities and/or download flags, and some of the file indices are out-of-range, return an error message in the rpc response's "result" string. 2009-03-03 20:06:45 +00:00
Charles Kerr ebe125e896 (trunk libT) add another seed-ratio check when starting a torrent, as per Mitchell's suggestion 2009-03-02 23:52:25 +00:00
Charles Kerr e47808c277 (trunk) #1608: Completed pieces bitfield in rpc 2009-03-02 05:48:32 +00:00
Charles Kerr 6f994f6708 (trunk libT) in tr_torrentCheckSeedRadio(), make sure to check & see if the torrent is running ;) 2009-03-02 03:18:03 +00:00
Mitchell Livingston 3ffbb31774 if the ratio is infinity, stop seeding if a stop ratio is set 2009-03-01 23:49:43 +00:00
Mitchell Livingston 2dabe5ce34 move the percent to the stop ratio into libtransmission 2009-03-01 23:48:04 +00:00
Charles Kerr 6fc252e007 (trunk libT) tweak r7985 2009-03-01 17:38:23 +00:00
Charles Kerr d2f69877cf (trunk libT) tweak r7978 2009-03-01 17:37:10 +00:00
Mitchell Livingston 7400adb70d make the ratio that is checked for stop ratio match the displayed ratio 2009-03-01 14:01:49 +00:00
Charles Kerr 857b3dab10 (trunk libT) #1823: Ratio limit is only checked when peers are active 2009-03-01 13:56:22 +00:00
Mitchell Livingston fb02e9d437 #1710 the daemon will use the Application Support folder on Mac 2009-02-28 21:45:16 +00:00
Charles Kerr 288f38e1fb (trunk libT) #1832: Transmission should notify when JSON parser fails 2009-02-27 00:57:42 +00:00
Charles Kerr c07180fa49 (trunk libT) #1829: age out the refill list every 10 seconds, not every 1 second 2009-02-25 22:15:04 +00:00
Charles Kerr 91940d1c07 (trunk libT) #1829: high CPU use in refillPiece() 2009-02-25 13:04:51 +00:00
Charles Kerr 52777f376f (trunk libT) make TR_DEFAULT_PEER_SOCKET_TOS_STR default to "0" based on a suggestion from sylware in #transmission 2009-02-20 17:34:35 +00:00
Charles Kerr fcfe4e3638 (trunk libT) some minor tr_bool correctness 2009-02-19 21:55:00 +00:00
Charles Kerr 06080f35b3 (trunk libT) fix oops 2009-02-18 22:37:27 +00:00
Charles Kerr 3ce4f44a6e (trunk libT) more #1829 2009-02-18 22:25:13 +00:00
Charles Kerr f9e400a22d (trunk libT) a little more work on #1829 2009-02-18 21:27:44 +00:00
Charles Kerr b322fb2e54 (trunk libT) experimental fix for #1829: High CPU use in refillPulse() 2009-02-18 17:19:36 +00:00
Charles Kerr b5a6f8a013 (trunk libT) #1845: if settings.json is empty, T crashes with "Assertion: tr_bencIsDict( source ) failed" 2009-02-18 16:47:27 +00:00
Charles Kerr 491a6ac63d (trunk libT) #1844: Prefer curl_multi_socket_action() to curl_multi_perform() in modern versions of libcurl 2009-02-18 16:16:24 +00:00
Charles Kerr fce040eb84 (trunk libT) #1828: timestamp for log/debug output 2009-02-18 05:09:28 +00:00
Mitchell Livingston 3d1cf6ba0d assorted trivial cleanup 2009-02-17 04:00:53 +00:00
Mitchell Livingston b9ff19ba38 a newly-added torrent should always follow the global ratio setting 2009-02-17 01:42:10 +00:00
Mitchell Livingston 39b0108366 have the mac ui use libT's ratio settings (attempt 1); when seed ratio is reached in libT, set the seed ratio setting to "seed forever" 2009-02-14 21:15:57 +00:00
Mitchell Livingston fa3b9a12c5 eta will now indicate time remaining to reach seed ratio when seeding 2009-02-14 05:15:23 +00:00
Charles Kerr 3f9a1d090b (trunk) #1787: add support for seeding ratio limiting in libtransmission 2009-02-13 18:23:56 +00:00
Charles Kerr 14a400b7f6 (trunk libT) #1810: DoS vulnerability wrt incoming connections 2009-02-12 20:43:07 +00:00
Charles Kerr 509465a85b (trunk libT) partial revert of r7825: back out the refillPulse() changes 2009-02-11 16:34:35 +00:00
Charles Kerr c443159681 (trunk libT) #1384: make tr_cryptoRandInt() simpler to read 2009-02-10 21:43:08 +00:00
Charles Kerr 236f8ad2ff (trunk libT) yet another possible fix for the libcurl/libevent/kqueue issue 2009-02-10 18:03:55 +00:00
Charles Kerr 9727985836 (trunk libT) #1776: crash in tr_cryptoComputeSecret() 2009-02-10 15:54:47 +00:00
Charles Kerr 65bba3fdfb (trunk libT) #1671: transmission-remote --get option not including all files 2009-02-09 17:25:48 +00:00
Charles Kerr c08f370e8a (trunk libT) #1798: TM crashes when receiving malformed JSON packet 2009-02-09 16:01:10 +00:00
Erick Turnquist 72297dbdb4 (trunk libT) suppress ipv6 EHOSTUNREACH as well as ENETUNREACH 2009-02-08 22:52:47 +00:00
Erick Turnquist fc767a3f03 (trunk libT) don't attempt to connect to (half-complete) ipv6 link-local addresses 2009-02-08 22:45:30 +00:00
Mitchell Livingston af7cbb94ad undo part of last commit....for now 2009-02-07 14:49:01 +00:00
Mitchell Livingston 3cc8440e78 trivial cleanup 2009-02-07 14:46:43 +00:00
Erick Turnquist 61e505b8d1 (trunk libT) don't attempt to set V6ONLY on ipv4 sockets 2009-02-07 01:14:41 +00:00
Erick Turnquist 94b98030cb (trunk libT) stop using ipv4-mapped listener sockets. this should have the added effect of fixing #1789 2009-02-07 00:34:10 +00:00
Erick Turnquist f3a2a35952 (trunk libT) only resolve ipv4 tracker addresses for now 2009-02-07 00:20:47 +00:00
Charles Kerr ae985a5abb (trunk libT) update to the newest versions of miniupnp and libnatpmp 2009-02-07 00:11:58 +00:00
Charles Kerr 3821413390 (trunk libT) add in a crasher bug for Rolcol to find 2009-02-06 23:35:47 +00:00
Charles Kerr e04fe5daaf (trunk libT) #1791: debug message cleanup in tracker.c 2009-02-06 21:17:23 +00:00
Charles Kerr eb538aa492 (trunk libT) #1748 keep looking for a workaround 2009-02-06 21:14:05 +00:00
Charles Kerr 8572d81e00 (trunk libT) experimental fix for #1748: crash in event_queue_insert in thread1 2009-02-05 22:00:21 +00:00
Charles Kerr 46ff5598a7 (trunk libT) more hoops for Biiaru 2009-02-05 20:53:59 +00:00
Charles Kerr e7c2fe4b46 (trunk libT) #1760: test fix for a deadlock that occurs stopping a file that's being verified 2009-02-05 19:57:50 +00:00
Charles Kerr f04505c0f2 (trunk libT) add notation explaining the status between resume.c and fastresume.c 2009-02-05 16:02:38 +00:00
Charles Kerr ee58379377 (trunk libT) #1748: judging from Biiaru's testing yesterday after I left, the problem is somewhere in web.c. Let's start by adding some cruel assertions in there. 2009-02-05 14:52:00 +00:00
Charles Kerr bbddcf2774 (trunk libT) maybe fix the crasher (on the mac) that I introduced this morning. or maybe not. hard to know w/o being on a mac. 2009-02-04 18:54:29 +00:00
Charles Kerr 93642c5c4d (trunk libT) Biaaru: repeat the TR_DEBUG_FD test on this please :) 2009-02-04 18:19:37 +00:00
Charles Kerr 4e8dcad90b (trunk libT) hack on the r7824 crasher reported by Biiaru and m1b. This probably won't fix it but it should crash in a more informative way :) 2009-02-04 17:38:40 +00:00
Charles Kerr 08289b9d13 (trunk libT) #1748: possible fix for the kqueue corruption errors by consolidating the three per-torrent libevent timers into three session-wide timers. Since most people reporting this error have lots of torrents loaded, consider a hypothetical example: if you had 500 torrents, this patch will reduce 1,500 libevent timers down to just three timers. On top of that, those three have simpler life cycles too... 2009-02-04 16:58:52 +00:00
Charles Kerr 6c7097d1f4 (trunk libT) more assertions 2009-01-30 00:41:08 +00:00
Charles Kerr 61e18f1d1b (trunk libT) yet even *more* assertions for Biiaru and persept :) 2009-01-29 16:56:43 +00:00
Charles Kerr adc6791de3 (trunk libT) add more assertions to ensure that the libevent calls are all being made from the same thread 2009-01-28 19:35:39 +00:00
Charles Kerr 983455abbc (trunk libT) possible fix for the transfers-not-loaded-on-startup issue introduced in r7806 2009-01-27 02:01:04 +00:00
Charles Kerr 90f8a08794 (trunk libT) another possible fix for the libevent corruption issue -- libevent calls were being invoked from the gui thread at startup via tr_sessionInit()'s call to tr_webInit(). This revision moves those calls into the libtransmission/libevent thread. 2009-01-26 08:23:11 +00:00
Charles Kerr 8c9d5359b5 (trunk libT) add more assertions to make Biiaru crash more^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^Hhelp track down the cause of Biiaru's crashes 2009-01-26 02:51:50 +00:00
Charles Kerr 1e8c374fd5 (trunk libT) fsync busy files every 15 seconds or so. On linux, use posix_fadvise() to tell the system no to cache torrent blocks 2009-01-26 00:36:34 +00:00
Charles Kerr 9d7c74cc8a (trunk libT) try again to make hudson-t happy wrt posix_fadvise() 2009-01-25 23:47:07 +00:00
Charles Kerr 3b7494efd2 (trunk libT) possibly make hudson-t happy on Linux 2009-01-25 23:40:08 +00:00
Charles Kerr 00125c9726 (trunk libT) add mac, linux, and win32 support for os-level hints that local data will be read in random order, to disable readahead buffering. 2009-01-25 23:33:10 +00:00
Charles Kerr 29661cf245 (trunk libT) new macro, tr_assert(). use it to help smoke out #1749 2009-01-25 16:14:11 +00:00
Charles Kerr f47cc0cf4d (trunk libT) #1794: possible fix -- better handling of zero-size files 2009-01-25 04:22:11 +00:00
Charles Kerr 6d6a76d48a (trunk libT) more of the same 2009-01-24 17:37:28 +00:00
Charles Kerr 5812b9f05b (trunk libT) more debugging messages 2009-01-24 17:20:07 +00:00
Charles Kerr dd00672517 (trunk libT) more experimental code for Biiaru 2009-01-24 16:21:34 +00:00
Charles Kerr 40f3c725d7 (trunk libT) experimental commit that will *possibly* fix the "assert( tr_isPeerIo( io ) )" crash reported by Biiaru and others 2009-01-24 14:49:35 +00:00
Charles Kerr 7f82b7172c (trunk libT) don't limit peer bandwidth during the handshake phase. this solves a bug that made it difficult to connect to peers when the upload bandwidth is saturated. 2009-01-24 03:17:59 +00:00
Charles Kerr ce9eff1fb2 (trunk libT) #1743: potential threading issue in tr_list. only affects 1.50b[1-3] 2009-01-24 02:33:25 +00:00
Charles Kerr 0b5558c3e3 (trunk libT) silence curl_easy_setopt -Wunreachable-code warnings 2009-01-24 00:25:11 +00:00
Charles Kerr 13c22f88ff (trunk libT) fix some code that the newly-added gcc warnings didn't like 2009-01-23 18:44:15 +00:00
Charles Kerr 6f95a057d0 (trunk libT) when deleting a torrent's local data -- folders and files -- use remove() instead of unlink() because the former handles both folders and files gracefully 2009-01-22 21:43:46 +00:00
Charles Kerr b6c73370e3 (trunk libT) #1734: encrypted peers' outgoing RC4 stream can be corrupted by sending protocol messages out-of-order 2009-01-22 14:32:29 +00:00
Charles Kerr 46aa5c6fc0 (trunk libT) well, maybe it's not a problem with sending the pex messages, but with parsing it... 2009-01-22 04:20:30 +00:00
Charles Kerr ba5d3f068d (trunk libT) add a couple of simple debugging messages 2009-01-21 04:02:39 +00:00
Charles Kerr 06887c9e9e (trunk libT) better implementation of r7761 to take into account feedback from repattila in the forums 2009-01-20 15:47:25 +00:00
Charles Kerr 4cbbefd656 (trunk libT) bah, fix r7761 oops 2009-01-20 05:45:03 +00:00
Charles Kerr 69404a8c36 (trunk libT) when pruning out slow peers, don't prune if we don't have good candidates to replace them. 2009-01-20 03:32:54 +00:00
Charles Kerr 1375c707ed (trunk libT) fix uninitialized variable in bandwidth code 2009-01-20 02:43:21 +00:00
Charles Kerr dfd5c70916 (trunk libT) fix crash-on-add-torrent-from-clutch reported by anf6 2009-01-20 02:03:09 +00:00
Charles Kerr 2131e8f403 (trunk libT) fix two bugs introduced yesterday's add-torrent changes and uncovered/reported by anf6 2009-01-19 21:37:34 +00:00
Charles Kerr cfe1358626 (trunk libT) #1715: More stats information in rpc session-stats command 2009-01-19 21:17:29 +00:00
Charles Kerr daaa450f8e (trunk libT) put ful's theory to the test wrt function pointers 2009-01-19 18:11:47 +00:00
Charles Kerr 1d08afa717 (trunk libT) s/function_done/tr_idle_function_done/ 2009-01-19 14:10:39 +00:00
Charles Kerr 4d228289ce (trunk libT) prefer `int' over `ssize_t' 2009-01-19 14:05:43 +00:00
Charles Kerr 69f59b423a (trunk libT) possible fix for the `few peers' errors reported on OS X. denis_, merlyn3d, give this a spin... 2009-01-19 13:55:41 +00:00
Charles Kerr 27cb7caf55 (trunk libT) In RPC, add general support for nonblocking methods, and specific support for adding a torrent via its URL and fetching it via curl without blocking. 2009-01-18 15:24:26 +00:00
Charles Kerr b6588f442b (trunk libT) have tr_strndup() take an ssize_t instead of an int 2009-01-18 15:15:41 +00:00
Charles Kerr 5ea9bcacbc (trunk libT) fix a minor memory leak. 2009-01-18 15:15:10 +00:00
Charles Kerr 9c9c94a81d (trunk libT) discard peers from the tracker or pex that have a port of 0 or a multicast address. 2009-01-17 23:14:35 +00:00
Charles Kerr 4f95edf647 (trunk libT) minor cleanup 2009-01-17 22:49:15 +00:00
Charles Kerr c1e1fedff9 (trunk libT) check in some of the extra error logging messages developed last night while chasing down the problem denis found 2009-01-17 15:08:20 +00:00
Charles Kerr f5ace9a71c (trunk daemon) #1704: --info and/or --files should show the download directory 2009-01-17 14:58:50 +00:00
Charles Kerr d95a45b701 (trunk libT) fix IPv6 reported & solved by erdgeist. add debugging message to help track down any future problems. 2009-01-16 23:17:31 +00:00
Charles Kerr bc2b7fcb03 (trunk libT) minor tweaks to reduce libtransmission shear between trunk and 1.5x 2009-01-16 17:29:42 +00:00
Charles Kerr c99f941d16 (trunk libT) make file preallocation optional via settings.json. choices are: full, sparse, and none 2009-01-16 16:38:16 +00:00
Erick Turnquist 88a399eb20 (trunk libT) fix r7717 2009-01-16 06:40:23 +00:00
Charles Kerr 4b414e8f2d (trunk libT) fix tracker IPv6 error reported by the earth spirit 2009-01-16 04:36:36 +00:00
Charles Kerr a6a29923c7 (trunk) add interface versioning to the RPC spec 2009-01-16 01:03:33 +00:00
Charles Kerr 9c5b6e7d15 (trunk libT) #1698: RunTime Check failure 2009-01-14 13:30:51 +00:00
Charles Kerr 7a91840639 (trunk libT) Remove tr_peerMgrHasConnections, it isn't used anywhere 2009-01-14 01:37:24 +00:00
Charles Kerr 2c1afe07a4 (trunk libT) fix an r7707 bug in tr_sessionGetActiveTorrentCount() 2009-01-13 21:06:07 +00:00
Charles Kerr 486c55c1ed (trunk libT) peerMgr: operate directly on tr_torrent and not peerMgr+torrentHash 2009-01-13 21:00:05 +00:00
Charles Kerr f945058de0 (trunk libT) minor torrent iteration cleanup. (wereHamster, charles) 2009-01-13 16:51:38 +00:00
Charles Kerr 08403324bd (trunk libT) Remove tr_torrentNext() from the public libT API (wereHamster) 2009-01-13 16:39:19 +00:00
Charles Kerr db58b89f6e (trunk libT) Clean up RPC server initialization (wereHamster) 2009-01-13 16:35:06 +00:00
Charles Kerr 8b72408948 (trunk libT) Get rid of peer-mgr-private.h (from wereHamster) 2009-01-13 16:32:43 +00:00
Charles Kerr 30c47d3b6f (trunk libT) #1655: rpc-spec 4.2: "session-stats" returns a new object instead of the response arguments 2009-01-13 04:43:38 +00:00
Charles Kerr a13e0755f0 (trunk libT) close open files immediately after they're done downloading 2009-01-12 21:59:53 +00:00
Charles Kerr dab899f132 (trunk libT) #1427: Files are kept open in read/write mode after a torrent finishes 2009-01-12 19:58:16 +00:00
Charles Kerr bb8451344f (trunk libT) #1592: file priorities are not preserved after exiting & starting a new session 2009-01-12 18:02:28 +00:00
Charles Kerr 2f6b56671f (trunk libT) win32 portability patch from Alexey 2009-01-11 17:02:04 +00:00
Charles Kerr fe816d8135 (trunk) update the GPL code's copyright dates 2009-01-10 23:09:07 +00:00
Charles Kerr c2e1f78cf4 (trunk libT) #1634: better utf8 validation of metainfo "files" field 2009-01-10 22:56:26 +00:00
Charles Kerr 92ee6566db (trunk libT) #1675: better utf8 validation of metainfo name, creator, and comment fields 2009-01-10 22:48:58 +00:00
Charles Kerr d4c5e904b5 (trunk libT) fix minor compiler warning that cropped up when upgrading our ConvertUTF8 2009-01-10 19:29:01 +00:00
Charles Kerr 0321204894 (trunk libT) upgrade our copy of Unicode Inc's freeware ConvertUTF.[ch] 2009-01-10 17:59:49 +00:00
Charles Kerr c6a454d2e2 (trunk libT) win32 portability fixes, reported by Alexey 2009-01-10 02:22:13 +00:00
Charles Kerr 7683452514 (trunk libT) undo r7645 based on feedback that the experimental code did improve performance. 2009-01-09 19:24:40 +00:00
Charles Kerr b545dbe28a (trunk libT) fix downloadDir error reported & tracked down by wereHamster 2009-01-09 18:39:30 +00:00
Charles Kerr a1b2af981c (trunk libT) annotate tr_cpBlockBitfieldSet() as suggested by wereHamster. 2009-01-09 17:55:48 +00:00
Charles Kerr 2702fc289a (trunk libT) finally get around to making upload-slots-per-torrent a settings.json option, thanks to friendly prodding from ful in #transmission 2009-01-09 15:45:44 +00:00
Charles Kerr f7db63329d (trunk libT) clear out the experimental code that accumulated while trying to find the fix to the tracker-announces-never-finish bug. This revision is 1.42's version plus bugfixes. 2009-01-08 20:35:10 +00:00
Charles Kerr e7b9a2eaa2 (trunk libT) fix evbuffer oops 2009-01-08 20:33:33 +00:00
Charles Kerr 55aa6d834f (trunk libT) make the default number of open files 32 rather than 16, and make it configurable via settings.json. (Reported by Lucius Windschuh via denis_) 2009-01-08 19:20:24 +00:00
Charles Kerr f3db4c14b7 (trunk libT) The buffer is static anyway, no need to malloc it 2009-01-08 14:05:30 +00:00
Charles Kerr 98420365e9 (trunk libT) remove a small number of redundant or unnecessary asserts 2009-01-08 04:43:00 +00:00
Charles Kerr 6917cac918 (trunk libT) fix odd handshake bug reported by wereHamster 2009-01-07 22:06:40 +00:00
Charles Kerr 30ebbdaacb (trunk libT) re-enable the completion sanity tests for the benefit of the nightly builds 2009-01-07 17:22:17 +00:00
Charles Kerr 141847b902 (trunk libT) update the copyrights on some files that no longer have old code in them 2009-01-07 06:53:29 +00:00
Charles Kerr c5ecccdd24 (trunk libT) much faster implementation of tr_cpBlockBitfieldSet() 2009-01-07 02:22:11 +00:00
Charles Kerr 196c3c19c3 (trunk libT) apparently the r7629 tr_cpBlockBitfieldSet() speedup introduced a bug. 2009-01-06 14:43:15 +00:00
Charles Kerr c0acf3e920 (trunk libT) hm, checked in the wrong version. 2009-01-06 07:48:30 +00:00
Charles Kerr 7581f04242 (trunk libT) faster tr_cpBlockBitfieldSet() 2009-01-06 07:45:15 +00:00
Erick Turnquist 2a6c7dd0fa (trunk libT) Fix an assertion failure in ptrarrays when values are equal.
This bug manifest itself due to a subtle change in tr_compareAddresses(), but
was always there. An assertion would fail if two (obviously adjacent) values
were equal.
2009-01-06 03:22:10 +00:00
Charles Kerr 73d32850ed (trunk libT) fix refcount error in the new peer-io refcount code 2009-01-06 03:21:22 +00:00
Charles Kerr 3ff145f058 (trunk libT) two bugfixes in one: (1) fix leaking tr_handshake objects reported by BentMyWookie (2) fix yet another permutation of the tr_isBandwidth() assertion failure -- maybe the last one? -- reported by Waldorf 2009-01-06 00:24:44 +00:00
Charles Kerr 30a989f1df (trunk libT) fix the new-code errors reported by ZogG and Rolcol and Spaham 2009-01-05 18:20:47 +00:00
Charles Kerr fd26f21400 (trunk libT) fix a minor memory leak reported by Valgrind 2009-01-05 18:18:13 +00:00
Charles Kerr 1b527610dd (trunk libT) yet another step in the debugging cycle, crash report from ZogG and Rolcol 2009-01-05 07:57:10 +00:00
Charles Kerr 124658791a (trunk libT) probably fix r7618 reported in #transmission by Rolcol 2009-01-05 06:45:08 +00:00
Charles Kerr 5ccd5a7700 (trunk libT) fix the much-hated "Assertion failed: (tr_isPeerIo( io ))". Also, repeated calls to tr_date() were taking up about 78% of the time in tr_stat(), so instead of calling multiple times, call it once in tr_stat() and pass that value around to the functions that need it. 2009-01-05 04:27:54 +00:00
Charles Kerr 2eb1faa5e8 (trunk libT) minor speedup tweaks in peer-request hotspots 2009-01-04 18:01:15 +00:00