Commit Graph

2988 Commits

Author SHA1 Message Date
Charles Kerr 0faaaeaa9a (trunk libT) #2756 "32 byte leak in tr_threadNew()" -- fixed for 1.81 2010-01-21 03:14:46 +00:00
Charles Kerr 1c8426cfee (trunk libT) fix some #include statements 2010-01-20 23:58:09 +00:00
Charles Kerr 649819d1be (trunk libT) fix tiny typo in previous commit... :/ 2010-01-20 20:25:13 +00:00
Charles Kerr 2dce44fbe7 (trunk libT) still too wordy 2010-01-20 20:15:23 +00:00
Charles Kerr 5b1af96165 (trunk libT) #2676 "Transmission writes to non-existent drive in '/Volumes'" -- we're already stopping the torrent when the local data disappears, but let's add a more explicit and helpful error message to help users diagnoses the problem. 2010-01-20 20:08:12 +00:00
Charles Kerr 8e16b74dad (trunk libT) #2775 "Saving some memory/storage" -- committed for 1.80 2010-01-20 18:48:52 +00:00
Charles Kerr 8a49d60f6f (trunk libT) tweak the last commit -- use strncmp() instead 2010-01-20 18:41:22 +00:00
Charles Kerr 7c29d46daa (trunk libT) #2771 "Unable to add magnet URI from Mininova via web interface" -- fixed for 1.80 2010-01-20 18:15:09 +00:00
Charles Kerr 9eb07e9b16 (trunk) No code changes here... filling in some of the blanks in the "peers" and "utils" doxygen groups' documentation. 2010-01-19 19:37:00 +00:00
Charles Kerr 5b4ec24deb (trunk libT) tweak the peer-io bugfix 2010-01-18 19:26:46 +00:00
Charles Kerr fd9021b655 (trunk libT) #2416 "crash in event_queue_insert()" -- this crash is definitely happening when we call event_del() twice on the same event without an event dispatch pass between the two calls. Start nailing down every possible case where that could happen in libtransmission 2010-01-17 19:21:04 +00:00
Charles Kerr 62c77900aa (trunk libT) add assertion to crash if tr_rpcSetPort() is called on a NULL RPC Server 2010-01-16 22:46:38 +00:00
Charles Kerr bf08de36d9 (trunk libT) remove the r9933 assertions and maybe fix Yada's bug 2010-01-15 00:20:48 +00:00
Charles Kerr e1005726a2 (trunk libT) add in some assertions to try & smoke out Yada's crash 2010-01-14 21:37:27 +00:00
Charles Kerr 616c09156a (trunk libt) #2755 "assert( session->fdInfo != NULL ) in tr_fdTorrentClose() is failing" -- fixed for 1.80 2010-01-14 14:22:43 +00:00
Charles Kerr 6ce8085243 (trunk) housekeeping: (1) add standard svn properties for $Id$ substitution in some files (2) add #include guards in a couple of libtransmission headers (3) refresh build instructions in README 2010-01-14 14:20:49 +00:00
Mitchell Livingston aac5e5cb61 add to RPC info for peers from DHT and LTEP 2010-01-14 00:25:03 +00:00
Charles Kerr de82e235af (trunk) second half of r9927.... :/ 2010-01-13 22:46:22 +00:00
Charles Kerr a77770a51a (trunk) add tr_torrent_stat.id to RPC documentation. Rename tr_tracker_stat.identifier as tr_tracker_stat.id for consistency with tr_torrent.id 2010-01-13 22:40:07 +00:00
Charles Kerr 86a5e6be8a (trunk libT) fix assertion-on-shutdown failure reported by livings 2010-01-13 01:21:26 +00:00
Charles Kerr 4b0c1ea332 (trunk libT) #2705 "speeding up request queue management" -- committed v1.1.diff for 1.80 2010-01-12 20:17:22 +00:00
Charles Kerr 5decc9ffb1 (trunk) add a log message telling the user which configDir is being used and whether or not its settings.json was used 2010-01-12 16:43:37 +00:00
Charles Kerr fae3516d4b (trunk libT) #2750 "Crash on quit r9862 in TrCloseFile" -- fixed for 1.80 2010-01-11 18:26:29 +00:00
Charles Kerr e2feb075b9 (trunk libT) reinstate proxies in the http announce 2010-01-10 20:15:56 +00:00
Charles Kerr 2ac553361a (trunk libT) #2416 "crash in event_queue_insert" -- I think this is happening if we queue up two changes, one to listen for read/write, and then a second one to delete the polling, in kqueue's event mechanism, at libcurl's request. Let's try disabling kqueue in libevent and use poll/select instead. 2010-01-10 19:52:01 +00:00
Mitchell Livingston da06bc054f take a shot at #2715 - modular division on a negative number doesn't return a positive 2010-01-10 16:26:56 +00:00
Mitchell Livingston 14da64ec06 assorted small cleanup and log removal 2010-01-10 16:26:30 +00:00
Mitchell Livingston 5af45426d4 random code optimization: when escaping http, use an if with a lot less comparisons rather than a switch 2010-01-10 14:56:04 +00:00
Mitchell Livingston 8f6e1dedf5 revert r9505, which appears to cause a crash on launch 2010-01-10 14:36:53 +00:00
Charles Kerr 5a60e4549d (trunk libT) #2416 "crash in event_queue_insert" -- another guess, based on the idea that we might queue two actions (one to insert, one to delete) on the same event before libevent's dispatcher is invoked 2010-01-10 08:53:17 +00:00
Mitchell Livingston d81389da50 add rpc fields for the tracker identifier stats 2010-01-10 04:23:09 +00:00
Charles Kerr 0f19dbd600 (trunk libT) #2740 "sefault in torrent creating" -- fixed for 1.80 2010-01-10 02:40:22 +00:00
Mitchell Livingston 6138daec3f add an identifier to trackers, for use by the ui's (this should hopefully fix the problem for removing trackers with "invisible" trackers) 2010-01-10 02:34:00 +00:00
Charles Kerr 69cb1362e3 (trunk libT) #2416 "crash in event_queue_insert" -- see if we can get the program to crash in a different way. 2010-01-09 07:27:45 +00:00
Charles Kerr 6076d7c6bd (trunk libT) add <stdarg.h> call before <evutil.h> to get 1.80 building on Fedora 11 2010-01-09 07:24:47 +00:00
Charles Kerr 0bb355d8df (trunk libT) #2416 "crash in event_queue_insert" -- continue throwing the kitchen sink at this ticket. (1) disable proxies to see if that makes any difference (2) rearrange the sequencing in sock_cb() to unconditionally delete the active event before doing anything else (3) use a libevent timer instead of CURLOPT_TIMEOUT to workaround curl bug http://tinyurl.com/ycm5d3e 2010-01-08 21:45:56 +00:00
Charles Kerr 0d91f3cadf (trunk libT) more documentation and doxygen markup 2010-01-06 00:18:33 +00:00
Charles Kerr 182cbb8b90 (trunk) one of the less-interesting commits in a while: remove trailing spaces from lines 2010-01-05 23:47:50 +00:00
Charles Kerr 5c26afdb52 happy new year! 2010-01-04 21:00:47 +00:00
Charles Kerr a5446669b4 (trunk libT) #2711 "no metadata exchange when using magnet links and trackerless torrents" -- fixed 2010-01-04 20:28:54 +00:00
Charles Kerr 42fb92170a (trunk libT) remove dead code: tr_announce_list_err 2010-01-04 20:14:25 +00:00
Charles Kerr 339173d1b4 (trunk libT) make sure to restart curl's periodic timer 2010-01-04 20:06:39 +00:00
Charles Kerr 59c10a3dc8 (trunk libT) #2722 "crash when removing/modifying trackers" -- fixed 2010-01-04 09:11:27 +00:00
Charles Kerr 6f68e30f37 (trunk libT) consistency tweak: rename tr_global{Lock,Unlock,IsLocked} as tr_session{Lock,Unlock,IsLocked} 2010-01-04 09:05:02 +00:00
Charles Kerr be77238af4 (trunk libT) #2709 "RPC files-unwanted" out-of-bounds access 2010-01-03 17:21:10 +00:00
Mitchell Livingston ba7dae1678 should've alphabetized by peer id, not client name 2010-01-02 18:50:59 +00:00
Mitchell Livingston 7a16959096 add "OneSwarm" to client list 2010-01-02 18:47:59 +00:00
Charles Kerr 696aa7aba6 (trunk libT) resolve thread condition in libtransmission by moving the `waiting' state variable to the stack in tr_sessionSet() and tr_sessionInit() 2010-01-01 22:35:49 +00:00
Charles Kerr 283b6d6a36 (trunk libT) rename tr_wait() tr_wait_msec() 2010-01-01 22:30:36 +00:00
Charles Kerr 08af516e12 (trunk libT) unset DHT's ip4 and ip6 sockets on shutdown so that the libtransmission thread doesn't block on tr_dhtStatus() during shutdown 2010-01-01 22:28:50 +00:00
Charles Kerr 6b8fb48d64 (trunk libT) replace the TR_INLINE macro with the standard "inline" keyword, since we require inline functions anyway 2010-01-01 22:26:35 +00:00
Charles Kerr 21bd268aa9 (trunk libT) fix <assert.h> #includes 2010-01-01 22:14:50 +00:00
Charles Kerr e61e0fcd3d (trunk libT) improved API documentation / commenting for doxygen 2010-01-01 22:13:27 +00:00
Mitchell Livingston f2bbae3fd8 some more insignificant changes I have sitting around locally 2009-12-31 03:19:54 +00:00
Mitchell Livingston 90ecb67c92 fix bug from r9820 where file progress was either 0.0 or 1.0 2009-12-29 01:35:52 +00:00
Charles Kerr 8ae3911477 (trunk libT) #2416 "crash in event_queue_insert" -- I am really quite sick of this bug. It's not reproducible at all under Linux and appears to be a bug in libevent's kqueue implementation. In this commit, we leak the event object on OS X. 2009-12-29 00:00:33 +00:00
Charles Kerr 6151881a03 (trunk libT) #2416 "crash in event_queue_insert" -- instead of freeing libevent's event objects, pool and reuse them. *sigh* 2009-12-28 23:29:59 +00:00
Charles Kerr 1eb0cdd7c6 (trunk libT) fix various minor compiler warnings that show up when you build libtransmission with NDEBUG defined 2009-12-28 23:27:17 +00:00
Charles Kerr ee58472ec2 (trunk libT) fix minor bug in r9651 "Reduce SO_SNDBUF and SO_RCVBUF for tracker announce/scrape messages" -- libcurl's CURLOPT_SOCKOPTFUNCTION doesn't return void; it returns an int that is nonzero if an error occurs. 2009-12-28 23:25:50 +00:00
Charles Kerr 196666da72 (trunk libT) fix minor bug in r9651 "Reduce SO_RCVBUF for outgoing peer connections on seeding torrents" -- remember the "isSeed" attribute so that we can use it on reconnects 2009-12-28 23:24:00 +00:00
Charles Kerr ac202f13bb (trunk libT) remove dead code -- tr_assert() 2009-12-28 23:11:26 +00:00
Charles Kerr 4e44e9c2cb (trunk libT) https://bugs.launchpad.net/ubuntu/+source/transmission/+bug/500625 2009-12-28 00:35:29 +00:00
Charles Kerr bc86c0b364 (trunk libT) #2416 "crash in event_queue_insert" -- maybe this will finally fix it... 2009-12-26 23:57:25 +00:00
Charles Kerr 8bc90ca644 (trunk libT) fix crash in tr_fdSocketClose() reported by agsystem in the forums @ http://forum.transmissionbt.com/viewtopic.php?p=42993&f=1#p42993 2009-12-26 23:52:59 +00:00
Mitchell Livingston f6a5117ef9 calculate proper file progress for 0-byte files (fixes #2689) 2009-12-25 16:56:33 +00:00
Mitchell Livingston 8dbfb708f5 #2696 posix_fadv_dontneed undeclared 2009-12-25 15:48:41 +00:00
Charles Kerr 8903e1b4e3 (trunk libT) #2416 "crash in event_queue_insert" -- another experimental commit. /as an experiment/ let's just leak that event struct and see if that makes the crash go away. Obviously leaking those objects is not a long term fix but this will help point the way towards the real fix. 2009-12-24 18:50:34 +00:00
Charles Kerr 3e2269e5e3 (trunk libT) #2632 "Add streaming capability to libtransmission (but not the Transmission GUI clients)" -- revert this feature due to pushback from devs and users and the 1.80 freeze 2009-12-24 18:01:48 +00:00
Charles Kerr 12ffdb7d87 (trunk libT) #2632 "Add streaming capability to libtransmission (but not the Transmission GUI clients)" -- implemented 2009-12-24 01:02:54 +00:00
Charles Kerr b8d7e76750 (trunk libT) #2416 "crash in event_queue_insert" -- possible fix. it looks like the kqueue client is accessing the event after the callback and after event_del() is being called. *If* that's the case I don't know if it's a libevent bug or if libtransmission is making assumptions it shouldn't've... but it's easy enough to keep the memory in a pool and free it later when it's safer to do so. 2009-12-23 16:12:18 +00:00
Mitchell Livingston a7245651f2 avoid an extra comparison caused by macro expansion 2009-12-21 22:03:19 +00:00
Mitchell Livingston 25a023023f eliminate the clamp function for now, allow peer connections once again 2009-12-21 14:30:43 +00:00
Charles Kerr ef650d0398 (trunk libT) it certainly smells like we're using freed memory in the libcurl + libevent code in web.c... let's trash the structures right before free()ing them 2009-12-18 17:32:16 +00:00
Charles Kerr a653d37225 (trunk libT) possibly reduce the frequency of the "too many open files" errors 2009-12-18 07:05:36 +00:00
Charles Kerr 2ff810d18f (trunk) use AC_ARG_VAR for some autoconf variables s.t. their values will persist between reconfs 2009-12-18 05:02:48 +00:00
Charles Kerr d9369718b3 (trunk) #2548 "T's request queue can send out too many duplicate requests" -- (1) fix r9465 implementation bug that caused some peers to get starved of requests if they rejected a request or choked, then unchoked us. (2) increase a block request's TTL by 15 seconds to reduce cancel/req cycles between two or more blocks (3) add a debug mode to the GTK+ client's peer tab to watch the pending requests counts both up & down 2009-12-16 18:20:01 +00:00
Eric Petit a91c5e44e3 build fix 2009-12-16 07:47:04 +00:00
Charles Kerr 122d69d013 (trunk libT) try not to cache file data read in during verification 2009-12-16 06:34:17 +00:00
Charles Kerr 22e61e68ed (trunk libT) fix call to updateDesiredRequestCount() reported by sadface 2009-12-16 01:32:23 +00:00
Charles Kerr d6f7df8c9a (trunk libT) #2508 "atom->port never updated" -- (1) fix r9434 bug that used the wrong byte ordering scheme for port numbers. This is why most of the .resume file's peers are worthless in betas 1 and 2. :( (2) in the resume file, change the dictionary key for peers so that the worthless peers won't be reloaded on startup in beta 3. 2009-12-16 00:45:18 +00:00
Charles Kerr f3e8a29e0f (trunk libT) #2548 "T's request queue can send out too many duplicate requests" -- fix off-by-one when counting how many peers we'll send a given block request to during endgame 2009-12-15 21:33:24 +00:00
Charles Kerr 22e33f784b (trunk libT) #2548 "T's request queue can send out too many duplicate requests" -- experimental revision to r9465 to address further overdownloading issues 2009-12-15 20:13:34 +00:00
Charles Kerr c789454dba (trunk libT) #2667 "Ignore martian addresses" -- apply jch's 0001-Simplify-martian-address-detection.patch cleanup patch from http://trac.transmissionbt.com/ticket/2667#comment:8 2009-12-15 20:06:48 +00:00
Charles Kerr 33c6b0d9ec (trunk libT) #2667 "ignore martian addresses" -- revise the tests to tr_isValidPeerAddr() base
d on feedback from jch @ http://trac.transmissionbt.com/ticket/2667#comment:6
2009-12-15 19:39:01 +00:00
Charles Kerr c819d6dca6 (trunk libT) #2671 "downloading from too many peers" -- address a smaller aspect of this ticket, by reducing the minimum number of blocks we request from a peer, as noted by jch's comment @ http://trac.transmissionbt.com/ticket/2671#comment:2 2009-12-15 18:11:20 +00:00
Charles Kerr f4c744266f (trunk libT) #2667 "ignore martian addresses" -- modified this ticket. previously we ignored them from LTEP; now we ignore them regardless of the source. this commit implements this filtering change. 2009-12-15 17:39:19 +00:00
Charles Kerr de9498f1ab (trunk libT) #2669 "Apply IPV6_V6ONLY to the IPv6 DHT socket" -- committed jch's patch for 1.80 2009-12-15 16:48:26 +00:00
Charles Kerr c17932f533 (trunk libT) #2673 "crash in tr_torrentGetMetadataPiece" -- add safeguards against small sizes 2009-12-15 16:34:12 +00:00
Eric Petit 5fb945653f #2673 crash in tr_torrentGetMetadataPiece 2009-12-15 15:19:08 +00:00
Charles Kerr ed6e95eef3 (trunk) add #include guards to prevent non-libtransmission files from #including implementation headers 2009-12-15 00:51:39 +00:00
Charles Kerr e7baa2b480 (trunk libT) maybe fix that blocklist crash John_Clay reports about once a month 2009-12-14 18:47:45 +00:00
Charles Kerr 0601442f58 (trunk libT) #2416 "crash in event_queue_insert" -- another stab at fixing this. yay 2009-12-14 18:24:26 +00:00
Charles Kerr 8cee197cac (trunk libT) fix minor memory leak in libtransmission/tr-dht.c, found by valgrind 2009-12-14 17:46:00 +00:00
Charles Kerr 87aefaf5ff (trunk libT) #1699 "announce to multiple trackers at once" -- fix minor bug in reporting scrape results when an announce returns enough information that a separate scrape isn't necessary. 2009-12-14 17:17:05 +00:00
Charles Kerr ee0de4b06c (trunk libT) keep simplifying web.c... is there anything left to strip out? 2009-12-14 14:25:22 +00:00
Charles Kerr c33aef7e2d (trunk libT) more web.c simplification + handle an unhandled case CURL_POLL_NONE in the socket callback. 2009-12-14 12:54:30 +00:00
Charles Kerr 2653cd5153 (trunk libT) keep simplifying web.c. also, fix an improbable FMR at shutdown 2009-12-14 05:11:33 +00:00
Charles Kerr 3fe5db7113 (trunk libT) #2667 "Ignore martian addresses in LTEP messages" -- implemented for 1.80 2009-12-14 02:07:47 +00:00
Charles Kerr 6d9e6ececc (trunk libT) remove some more obsolete debug messages and other cruft from web.c 2009-12-13 19:33:02 +00:00
Charles Kerr 485b64a5e3 (trunk libT) it never ends 2009-12-13 17:54:01 +00:00