Charles Kerr
e723a5724c
added debugging messages to the tracker cleanup. better error handling for esoteric http errors.
2007-10-18 03:55:55 +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
ea5390296d
Follow uTorrent 1.8's behavior of allowing a manual reannounce every max(60 seconds, min_interval) where min_interval is from the tracker.
2007-10-17 01:17:30 +00:00
Charles Kerr
00321c4eed
Fix crash-on-exit reported by Gimp_ @ http://pastebin.ca/732759
2007-10-11 14:56:50 +00:00
Charles Kerr
2f46064e33
raise the `numwant' value
2007-10-09 18:29:10 +00:00
Charles Kerr
602ee120af
fix recent tracker error reported by John_Clay that made it slower to pick up peers
2007-10-09 04:50:10 +00:00
Charles Kerr
c88ef608c6
extra paranoia to safeguard against a possible tracker crash
2007-10-09 03:06:54 +00:00
Charles Kerr
e10e44409a
fix crash reported by Waldorf in http://pastebin.ca/729980
2007-10-08 19:09:20 +00:00
Charles Kerr
7ff8284976
give trackers more time before timing out the requests. make the `stopping' timeout interval smaller than other intervals so that we don't block for too long during shutdown.
2007-10-08 17:05:39 +00:00
Charles Kerr
304f9f7f18
get rid of a confusing error message that describes a harmless situation
2007-10-07 16:25:02 +00:00
Charles Kerr
1014e633ac
* don't reuse http connections to trackers. I think this is what caused most of the `no response from tracker X' messages.
...
* extra safety checks to ensure the last `stopped' message to the tracker is sent on shutdown.
2007-10-07 16:07:19 +00:00
Charles Kerr
2381279da6
fix John_Clay's ptrarray.c:201 crash. (maybe.)
2007-10-07 04:14:34 +00:00
Charles Kerr
c75f49bc26
* add a per-peer request queue to hold the next 10-15 seconds' worth of requests so that we always have more requests at hand when the current requests start to run low.
...
* increase the tracker `numwant' variable to grow our peer pool
* bugfixes in cancelling requests.
* make the debug log sexy and readable like uTorrent's ;)
2007-10-06 18:20:52 +00:00
Charles Kerr
0872b4f40a
fix the crash reported by Waldorf and John_Clay
2007-10-04 20:31:19 +00:00
Charles Kerr
53aef0a48c
Simplify the tracker/pause/close/recheck/start code.
2007-10-04 19:58:30 +00:00
Charles Kerr
7cc6771318
experimental better peer management.
2007-09-30 23:55:49 +00:00
Charles Kerr
4c990b2a7d
fix tracker crash reported by bmw
2007-09-29 15:05:20 +00:00
Charles Kerr
198d2c256e
fix John_Clay's tracker assertion failure.
2007-09-28 16:14:19 +00:00
Charles Kerr
d3077bbce1
round 2 of minor revisions to tr_stat
2007-09-27 03:30:22 +00:00
Charles Kerr
7a15abaf7a
better handling of tracker error messages.
2007-09-25 18:39:58 +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
28bcf6204b
clamp down on the flood of debug messages.
2007-09-20 23:33:46 +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
77e7bc4f84
make upnp's internal structures' naming schemes whallop-like
2007-08-21 20:38:34 +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
8c54b7eb46
ensure that all the tracker destruction code is done in the libevent thread, for a cleaner shutdown
2007-08-21 00:01:14 +00:00
Charles Kerr
624257c995
better cleanup on shutdown. don't crash when the torrent doesn't support scrape. (Gimp :)
2007-08-20 23:37:08 +00:00
Charles Kerr
1d6e20594d
minor improvements to.. you guessed it.. the tracker/libevent code
2007-08-20 02:29:36 +00:00
Charles Kerr
47f1457d67
fix crash-on-shutdown bug reported by BentMyWookie
2007-08-19 02:55:11 +00:00
Charles Kerr
7b2a9f274a
accidentally checked in a debugging statement
2007-08-19 02:23:35 +00:00
Charles Kerr
82db9f6cc9
fix a couple of more memory leaks that valgrind found
2007-08-19 00:18:43 +00:00
Charles Kerr
b66efdf998
tracker tweaks
2007-08-19 00:02:23 +00:00
Charles Kerr
1e53e9de72
shut up a compiler warning
2007-08-18 23:32:07 +00:00
Charles Kerr
633ade8004
added mirek's slovakian translation. added mirek, Niels Provos, and TooMuchTime to the `thanks' sectio of AUTHORS
2007-08-18 18:33:47 +00:00
Charles Kerr
ea49180f94
$Id$
2007-08-18 17:19:49 +00:00
Charles Kerr
b9c2ea46ce
add the content-length header. I'm not getting any tracker errors anymore; please let me know if your experience differs
2007-08-18 15:47:08 +00:00
Charles Kerr
39a43cbc08
* more work on the tracker... getting closer.
...
* oops! make sure autoconf is giving the `0.80+' in the User-Agent header.
2007-08-18 08:28:57 +00:00
Charles Kerr
9cb2dcb63d
better error reporting in the new tracker code
2007-08-18 06:06:53 +00:00
Charles Kerr
3f777e3cb9
before the first scrape, set leechers/seeders/downloads to -1 to represent n/a
2007-08-18 03:11:08 +00:00
Charles Kerr
35b727788e
do all the libevent enqueuing from a single thread.
2007-08-18 03:02:32 +00:00
Charles Kerr
8713d3468c
don't cache the connection; these are one-shot requests
2007-08-17 05:00:59 +00:00
Charles Kerr
d5cfbf9426
this seems to fix the double-start bug reported by joshe
2007-08-17 04:50:45 +00:00
Charles Kerr
0c60e29934
whee
2007-08-17 03:13:42 +00:00
Charles Kerr
c449a4665d
fix shutdown error in the new tracker code, reported by joshe
2007-08-17 03:03:28 +00:00
Charles Kerr
5c3d45767e
fix crash-on-startup bug reported by Lacrocivious
2007-08-16 20:59:09 +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
5989151ed5
(trunk) revert yesterday's tracker changes.
2007-08-14 20:08:57 +00:00
Charles Kerr
d2ddd4cb4e
(trunk) dead code removal. (ticket #286 )
2007-08-13 14:35:37 +00:00
Charles Kerr
1fd5f90a77
win32 cleanly compiles and starts now. (still doesn't atually *work*, but we're getting closer...)
2007-08-02 19:43:29 +00:00
Charles Kerr
0e1e45605a
fix manual-announce but noted by BMW
2007-08-02 02:38:42 +00:00
Charles Kerr
8aebe31de1
tr_trackerCanManualAnnounce() should return false immediately after the user's manually announced; not just after the announce request is processed by the tracker
2007-08-01 13:33:01 +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
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
1d95bcc689
re-randomize peer_id each time we start a torrent. (ticket #257 )
2007-07-16 11:19:44 +00:00
Charles Kerr
ad6ae58e06
fix the bugs outlined by cluthi81 in ticket #255 .
2007-07-15 17:36:56 +00:00
Josh Elsasser
1ecbe8da65
Change a couple functions to take an in_addr pointer instead of an in_addr.
...
Forward declare struct in_addr and include the relevant headers in the .c files where it's used.
2007-07-14 16:29:21 +00:00
Charles Kerr
e6e6d574db
second draft of a fix for the tracker communication bug reported by TMT
2007-07-13 01:34:14 +00:00
Charles Kerr
5e4a49be16
first draft of a fix for the tracker communication bug reported by TMT
2007-07-12 20:48:13 +00:00
Charles Kerr
9f16191b0e
remove unused macros. constify some tracker functions.
2007-07-12 18:54:39 +00:00
Charles Kerr
b79beeff66
clean up #includes a bit.
2007-07-09 20:10:42 +00:00
Charles Kerr
37234a3e34
Make tr_trackerAnnouncePulse() just return safely if there's no tracker initialized.
2007-06-28 04:28:23 +00:00
Charles Kerr
7e09d157cd
Thread safety improvements. Also, stopping/starting/rechecking/etc. torrents no longer blocks the calling thread. Since this a big commit, it will probably create some short-term pain via new bugs.
2007-06-26 18:45:03 +00:00
Mitchell Livingston
0256f4616d
Merge file selection and torrent creation into the main branch.
...
The new code for these features is under a new license.
2007-06-18 03:40:41 +00:00
Charles Kerr
3b8d1e13c4
uninteresting minor stuff like adding const. this commit is just to reduce the shear between trunk and what lands in the file-selection branch.
2007-06-09 15:36:46 +00:00
Mitchell Livingston
91e4607c64
remove inaccurate comments about announce interval
2007-05-04 17:44:31 +00:00
Mitchell Livingston
7100463899
ensure the download/upload rates that are sent to the tracker are reset when sending "started"
2007-04-29 15:28:56 +00:00
Josh Elsasser
aeb6efb6dd
Refactor multitracker code a bit.
2007-04-08 05:41:44 +00:00
Josh Elsasser
ebcc73121b
Remove tr_bencListIter(), it was a stupid idea.
2007-03-31 17:40:28 +00:00
Josh Elsasser
978b5cec11
Add iterator function for bencoded lists.
2007-03-30 00:12:39 +00:00
Mitchell Livingston
84fad8a25f
slightly updated help
2007-03-28 01:23:21 +00:00
Josh Elsasser
09c87aad84
Merge PEX branch, I hope this works.
2007-03-23 08:28:01 +00:00
Josh Elsasser
67826df085
Use a tr_tracker_info_t * directly in tr_info_t and tr_tracker_t.
2007-02-27 04:00:38 +00:00
Josh Elsasser
adfd4e7ca7
Rework the port handling a bit to allow different bound and advertised ports.
2007-01-27 21:17:10 +00:00
Eric Petit
1eb3cf2a8e
Should fix #193
2007-01-23 20:54:54 +00:00
Eric Petit
40d8abb68f
More simplifications
2007-01-21 19:42:11 +00:00
Eric Petit
14aa4e5ab0
Officially give up on making libT reentrant, and simplify our code instead
2007-01-21 07:16:18 +00:00
Eric Petit
15fdfda60f
small memleaks
2007-01-20 05:07:00 +00:00
Eric Petit
4a567871bb
clean up
2007-01-19 11:19:20 +00:00
Mitchell Livingston
2fa4abe63f
change to scrape frequency
2007-01-17 01:06:52 +00:00
Mitchell Livingston
20eebf6092
remove unneeded function/warning
2007-01-16 04:20:45 +00:00
Eric Petit
cc3bf0cab9
Fixes redirecting (announce has '%'s in it)
2007-01-15 09:00:47 +00:00
Eric Petit
e5e6a8b5df
Merge io branch into trunk
2007-01-14 12:00:21 +00:00
Eric Petit
58a8bdedf0
BeOS fix
2007-01-14 08:51:15 +00:00
Mitchell Livingston
3cbb5fa681
correctly get the scrape interval
2007-01-12 05:05:11 +00:00
Mitchell Livingston
de82956141
define variables at top
2006-12-26 18:43:46 +00:00
Mitchell Livingston
776153c126
better placement of manual announce
2006-12-26 18:40:51 +00:00
Mitchell Livingston
f57626a6b1
support manual announcing to tracker (as in user forces an announce) in libT...when implemented in a front end it should limit the use of this
2006-12-26 04:17:37 +00:00
Mitchell Livingston
0aa4d36809
divide error logic in tracker code into multiple variables, allowing to determine if all errors in connecting were from unreachable trackers
2006-12-23 21:18:58 +00:00
Eric Petit
34fbe3a79a
When httpPulse gives us TR_ERROR, don't forget to mark the attempt as NOREACH - otherwise if the previous query was successful, we'd try to connect again and again as fast as we could
2006-12-21 12:59:40 +00:00
Josh Elsasser
058b31aaf7
Silence warning.
2006-12-18 03:49:15 +00:00
Mitchell Livingston
38b97ccf13
don't scrape if stopping
2006-12-17 17:35:39 +00:00
Mitchell Livingston
d31bd138fb
english grammar
2006-12-17 17:09:00 +00:00
Mitchell Livingston
3374ce9a32
merge multitracker branch:
...
Adds announce list, support for code 301/302 redirect, improvements to mac inspector, better queueing with errors, random extra wait of up to a minute between announces, and other changes.
2006-12-17 16:36:27 +00:00
Josh Elsasser
44f8325312
Merge scrape branch:
...
Automatically scrape trackers as needed.
If tracker supplies a trackerid then use it (untested).
Use tracker's min interval, clamped to the same range as interval.
Show total completed downloads in the MacOS X frontend.
2006-12-02 01:46:54 +00:00
Mitchell Livingston
52e66c96f8
Don't request more peers if stopping (or changing ports).
2006-11-09 04:38:32 +00:00
Josh Elsasser
631df817ae
Fix for trackers that include parameters in announce URL.
2006-10-13 07:42:55 +00:00
Josh Elsasser
9d17424799
Fix extra space in tracker HTTP request line.
2006-09-27 22:23:42 +00:00