1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-02-24 15:10:39 +00:00
Commit graph

3744 commits

Author SHA1 Message Date
Jordan Lee
210068410d (trunk libT) merge tr_bitfieldTestFast() and tr_bitfieldTest() 2011-03-30 04:23:20 +00:00
Jordan Lee
3660c44934 (trunk libT) handle situations where we don't know the bitfield's upper bound in advance. This comes up sometimes with magnet links. 2011-03-30 04:14:57 +00:00
Jordan Lee
3043893968 (trunk libT) fix endgame detection bug introduced in r12248 2011-03-29 22:02:27 +00:00
Jordan Lee
3e2aee0c02 (trunk libT) fix a crasher introduced yesterday in r12248 2011-03-29 21:10:20 +00:00
Jordan Lee
72c55fcdd8 (trunk libT) safeguard against a minor memory leak if io->sokcet couldn't be opened. 2011-03-29 21:09:37 +00:00
Jordan Lee
66d60160b3 (trunk libT) fix bitfield.c assertion failure reported by Rolcol 2011-03-29 16:39:30 +00:00
Jordan Lee
4230cd7786 (trunk libT) don't cache unininteresting peer addresses between sessions
For example, if we're both seeds, or if the peer is not connectible, don't bother caching it for the next session. If it's still alive, we'll find it up through DHT or tracker announces next time around. As with r12253, this commit's intention is to reduce the number of unproductive peer_atoms that we waste time trying to connect to.
2011-03-29 15:23:54 +00:00
Jordan Lee
9f122a021a (trunk libT) better scrape management on private trackers.
If a private tracker scrape says that there are no downloaders in the swarm, mark all the peers in the private swarm as seeds. This can greatly reduce unnecessary overhead on large seedboxes. We don't do this same trick on public torrents, since a public tracker won't know of all the peers.
2011-03-29 15:18:25 +00:00
Jordan Lee
5fcec12cfd (trunk libT) fix bitfield assertion failure due to invalid assumption in tr_bitfieldIsValid() 2011-03-29 01:47:17 +00:00
Jordan Lee
947134bbb3 (trunk libT) more completion and bitfield cleanup: (1) fix regression in tr_cpSizeWhenDone() reported by Waldorf, (2) make simple one-liner functions inlined 2011-03-29 01:17:18 +00:00
Jordan Lee
7445be9a53 (trunk libT) whoops, remove 4 debugging fprintf()'s from the previous commit 2011-03-28 16:33:40 +00:00
Jordan Lee
83c0e4f011 (trunk libT) break the mac build and introduce new crashes.
This is partially to address #4145 "Downloads stuck at 100%" by refactoring the bitset, bitfield, and tr_completion; however, the ripple effect is larger than usual so things may get worse in the short term before getting better.

livings124: to fix the mac build, remove bitset.[ch] from xcode
2011-03-28 16:31:05 +00:00
Jordan Lee
1101ba8d57 (trunk libT) strip trailing whitespace 2011-03-28 13:37:46 +00:00
Jordan Lee
6c845ba5f4 (trunk libT) fix memory leak in tr_utf8clean()'s utility function to_utf8() 2011-03-28 03:45:31 +00:00
Jordan Lee
b54ebeafd7 (trunk libT) remove the tr_session argument from the announce/scrape response callbacks 2011-03-26 12:06:04 +00:00
Jordan Lee
9aafb0cb00 (trunk libT) minor code cleanup in announcer-udp: whitespace & function names 2011-03-26 10:22:25 +00:00
Jordan Lee
eb06d81fb9 (trunk) fix a handful of small memory leaks that valgrind found. 2011-03-25 17:42:47 +00:00
Jordan Lee
bd88521332 (trunk) yet more "#include" tweaks 2011-03-25 15:03:42 +00:00
Jordan Lee
1650a4730c (trunk libT) copyediting: yes, removing more unnecessary #includes 2011-03-25 06:20:12 +00:00
Jordan Lee
1b825079be (trunk libT) API cleanup of the tr_address functions to make them more consistent.
This is loosely related to #2910, but only in the sense of laying the groundwork for #2910's fix...
2011-03-25 05:34:26 +00:00
Jordan Lee
1304aa0079 (trunk libT) still fiddling around with #includes -- this time removing unncecessary libT includes from libT .c files 2011-03-25 01:41:57 +00:00
Jordan Lee
324f0f470c (trunk libT) copyediting: '#include "crypto.h"' cleanup 2011-03-25 01:21:31 +00:00
Jordan Lee
87ef45cf3d (trunk libT) copyediting: remove a bunch of seemingly-unneeded network headers in net.[ch].
I'm less certain that these are unneeded because networking APIs seem to have more variation between platforms, but it's better to remove the cruft and then add back whatever headers $PLATFORM users complain about, than to not remove the cruft at all...
2011-03-24 22:57:39 +00:00
Jordan Lee
f7005889d1 (trunk libT) copyediting: clean up the "#include <event2/*>" directives in libtransmission's header files 2011-03-24 22:45:04 +00:00
Jordan Lee
375694eda9 (trunk) copyediting: remove some unneeded #includes, and annotate some needed ones 2011-03-24 21:49:42 +00:00
Jordan Lee
bc213eb0e9 (trunk libT) If transmission.h is being processed by a C++ compiler, it shouldn't #include stdbool.h 2011-03-23 18:25:41 +00:00
Jordan Lee
949241a490 (trunk libT) tr_set_func is only used in one place, so make it a private function there instead of leaving it public in utils.h 2011-03-22 23:49:29 +00:00
Jordan Lee
48212fa0b9 (trunk libT) tr_strtruncd() is only used in one place, so make it a private function there instead of leaving it public in utils.h 2011-03-22 23:46:31 +00:00
Jordan Lee
14277760d7 (trunk libT) tr_set_compare() is only used in one place, so make it a private function there instead of leaving it public in utils.h 2011-03-22 23:42:25 +00:00
Jordan Lee
503035fa7e (trunk) remove unused gcc symbol: TR_GNUC_PURE 2011-03-22 23:37:20 +00:00
Jordan Lee
e5143dbf9c (trunk libT) #4136 "r12181 causes excessive disk activity and logfile bloat" -- fixed. 2011-03-22 16:50:09 +00:00
Jordan Lee
b4d36aeb54 (trunk) #4138 "use stdbool.h instead of tr_bool" -- done. 2011-03-22 15:19:54 +00:00
Jordan Lee
e04a64ca02 test & see if xcode/osx has stdbool.h 2011-03-22 14:45:04 +00:00
Jordan Lee
0d45f8994a (trunk libt) more transmission.h copyediting 2011-03-21 17:08:10 +00:00
Jordan Lee
41238c6c5d (trunk libT) discard out-of-range reject messages from peers. 2011-03-21 16:42:32 +00:00
Jordan Lee
bf4eb642dc (trunk libT) remove dead code: tr_sessionSetLazyBitfieldEnabled(), tr_sessionIsLazyBitfieldEnabled() 2011-03-21 16:33:16 +00:00
Jordan Lee
957732c5d0 (trunk libT) copyediting in transmission.h: fix some line wraps 2011-03-21 16:26:45 +00:00
Jordan Lee
b9a508f9fe (trunk libT) remove unused configDir argument from tr_sessionGetDefaultSettings() 2011-03-21 16:22:39 +00:00
Jordan Lee
a9f1c9a5a6 (trunk libT) tweak comments to fix inconsistent capitalization 2011-03-20 15:56:32 +00:00
Jordan Lee
b16458e038 (trunk libT) #117 "UDP tracker support" -- fix add-UDP-tracker-URL-via-RPC bug reported by johnea @ https://trac.transmissionbt.com/ticket/117#comment:79 2011-03-20 15:42:54 +00:00
Jordan Lee
40defc8fb2 (trunk libT) #117 "UDP tracker protocol support" -- fix trivial r12141 log message typo: s/Unsupported ur/Unsupported url/ 2011-03-20 15:33:45 +00:00
Jordan Lee
3b9142f75e (trunk libT) #117 "UDP tracker protocol support" -- (1) fix connection attempt retries after a failed connection attempt. (2) extract method from tau_tracker_upkeep() for clarity: tau_tracker_send_reqs() and tau_tracker_timeout_reqs()
refactor the timeout/request code a bit.
2011-03-20 15:28:41 +00:00
Jordan Lee
f996c4fbb9 (trunk libT) #4114 "crash on open r12168 in tau_sendto()" -- fixed. 2011-03-18 17:11:42 +00:00
Jordan Lee
6ae220dee0 (trunk libT) tr_udpParse(): default to port 80 for URLs with a udp scheme and no explicit port. 2011-03-17 21:22:58 +00:00
Jordan Lee
f4b4ddd231 (trunk libT) better shutdown management of libutp and UDP trackers in tr_sessionClose().
This is a little overlapping since the utp code can be closed more-or-less immediately, but the udp manager needs to stay open in order to process the udp tracker connection requests before sending out event=stopped. Moreover DNS resolver can be shut down after the UDP tracker is shutdown.
2011-03-17 18:51:31 +00:00
Jordan Lee
78a4865aa1 (trunk libT) as a followup to r12182, move LPD's periodic upkeep timer into the tr-lpd.c module where it can be started & stopped with the pre-existing tr_lpdInit() and tr_lpdUninit() functions. 2011-03-17 13:16:23 +00:00
Jordan Lee
501f2e106f (trunk libT) move tr_lpdAnnounceMore() out of the announcer module
We can stop local peer discovery immediately during shutdown, but need to leave the announcer running for the event=stopped messages. So it doesn't make sense to keep them on the same periodic timer.
2011-03-17 12:45:29 +00:00
Jordan Lee
6835374661 (trunk libT) move tr_dhtUpkeep() out of the announcer module
During shutdown, we can stop DHT almost immediately, but need to leave the announcer running for the DHT tracker event=stopped messages. So it doesn't make sense to keep them on the same periodic timer.
2011-03-17 12:34:43 +00:00
Jordan Lee
686103ae49 (trunk libT) #117 "UDP tracker protocol suppoort" -- in case the tracker gives an error message in response to a connection response, store the error message in the scrape/announce response structs' errmsg fields. 2011-03-17 04:16:19 +00:00
Jordan Lee
13514e16a7 (trunk libT) #4127 "Torrent complete script doesn't pass on the environment" -- fixed with patch from geirha.
The fix was to putenv() the new environment variables, then call execvp() instead of execve().
2011-03-16 18:11:48 +00:00