Charles Kerr
58b655338a
libT: add tracker information to tr_stat. gtk: add `tracker' tab to inspector
2008-02-21 07:29:39 +00:00
Charles Kerr
e053f6c59d
#714 : libT creates invalid torrent files when given makemeta is given a non-absolute pathname
2008-02-20 11:36:42 +00:00
Charles Kerr
cfe068876e
remove unnecessary #includes
2008-02-19 18:39:49 +00:00
Mitchell Livingston
8e1c3ff365
fix typos in last commit
2008-02-19 16:57:54 +00:00
Mitchell Livingston
2206c22eee
add Amazon S3 to clients list
2008-02-19 16:55:13 +00:00
Charles Kerr
4456c2dd90
(gtk) #544 : remove fast-resume cache when appropriate
2008-02-19 05:03:56 +00:00
Charles Kerr
deaeb24cb5
cleanup #includes for errno & strerror
2008-02-19 04:16:04 +00:00
Charles Kerr
3b97af8766
#713 : handle leading spaces in the announce url more gracefully
2008-02-18 05:06:52 +00:00
Charles Kerr
f8786b6df0
fix bug that could cause some pieces to be unnecessarily rechecked the second time they were loaded.
2008-02-16 05:13:56 +00:00
Charles Kerr
c144470c70
make the code a little easier to read. make tr_ioFileTest()'s return value consistent with other inout funcs.
2008-02-15 18:25:42 +00:00
Charles Kerr
6fb57dcd59
modify "verify local data" to not lose the blocks in incomplete pieces
2008-02-15 16:00:46 +00:00
Charles Kerr
e2277c97e6
ensure tr_info.creator and tr_info.comment are initialized, even if it's only to an empty string
2008-02-15 14:56:11 +00:00
Mitchell Livingston
f0a645ac75
update clients list
2008-02-15 00:23:09 +00:00
Charles Kerr
4f4f451c17
possible fix for http://forum.transmissionbt.com/viewtopic.php?t=3946
2008-02-14 21:48:49 +00:00
Charles Kerr
33f77798d3
#706 : save a little more memory by doing the same for tr_info.comment and tr_info.creator
2008-02-14 01:12:00 +00:00
Charles Kerr
f8b0763c30
#706 : reduce memory by 25% by cutting tr_file struct
2008-02-14 00:52:58 +00:00
Charles Kerr
9d436d6767
#690 : get multitracker torrents working with the evhttp code
2008-02-13 17:15:58 +00:00
Mitchell Livingston
aaf8fdf45e
add Net Transport to clients list
2008-02-13 13:38:15 +00:00
Charles Kerr
e581d5228e
add tr_ctor{Set,Get}DeleteSource()
2008-02-13 02:24:12 +00:00
Charles Kerr
e20a5cf3df
fix a possible crash on shutdown
2008-02-13 01:33:29 +00:00
Charles Kerr
d360607a02
fix a possible crash when deleting a torrent.
2008-02-13 01:22:55 +00:00
Mitchell Livingston
22cbdfb624
add LH-ABC to the clients list
2008-02-11 22:24:47 +00:00
Charles Kerr
8d14a789cb
#698 : `have' gets too far ahead of `verified'
2008-02-10 04:03:19 +00:00
Charles Kerr
5a7127a26b
make TR_PATH_DELIMITER and TR_PATH_DELIMITER_STR private to libtransmission
2008-02-09 17:48:53 +00:00
Charles Kerr
7cf9f8cc35
#417 : add the libtransmission bits for telling users when they can "Ask Tracker for More Peers"
2008-02-09 17:07:30 +00:00
Charles Kerr
16dcece6ab
test build: disable tit-for-tat
2008-02-08 19:34:12 +00:00
Charles Kerr
17e76707f2
make the stats code a little more difficult to corrupt
2008-02-04 19:54:47 +00:00
Charles Kerr
beb7cc0b92
minor code cleanup
2008-02-02 16:23:49 +00:00
Charles Kerr
cfa1bc8480
shrink sizeof(benc_val_t) from 32 to 24 by better alignment
2008-02-02 16:09:10 +00:00
Charles Kerr
d3047158be
more unit tests for bounds-checking on incomplete bencoded data
2008-02-01 21:53:01 +00:00
Charles Kerr
b98a927a9a
add more benc unit tests.
2008-02-01 17:33:49 +00:00
Charles Kerr
3334ea8401
fix the 1.04 bencode errors reported in the forums this morning. add regression tests.
2008-02-01 15:50:17 +00:00
Charles Kerr
606d548514
clarity tweaks to variable & function names
2008-02-01 01:54:04 +00:00
Charles Kerr
88cfec047f
#666 : pausing in the middle of "verify local data" makes T forget about the nonverified portion
2008-02-01 01:38:55 +00:00
Charles Kerr
375949551b
more graceful handling of bad inputs to tr_bencFree(), tr_bencSave(), and tr_bencPrint().
2008-01-31 15:20:42 +00:00
Charles Kerr
b5e119f1ea
bencode tweaks.
2008-01-31 06:00:57 +00:00
Charles Kerr
784e0babda
fix off-by-one that was uncovered by the new benc's stricter parsing.
2008-01-31 03:09:27 +00:00
Charles Kerr
df9bd1f713
#667 : remote crash exploit in bencode parser
2008-01-31 02:24:43 +00:00
Charles Kerr
410dffd211
part 1 of the bencode exploit fix:
...
- better error checking for int & string parsing
- add automated unit tests
2008-01-30 15:39:41 +00:00
Charles Kerr
0f981db778
#665 : Ratio calculations aren't strictly accurate when re-seeding a torrent
2008-01-29 16:33:29 +00:00
Charles Kerr
f72ba4b8d8
#663 : connection limits don't work correctly.
2008-01-28 21:05:50 +00:00
Charles Kerr
3d8dfa574b
(1.0x) #660 : fix HTTP syntax error that caused "Bad Request" messages on lighttpd-based trackers. Reported by _Psih
2008-01-28 06:03:14 +00:00
Charles Kerr
b29ba709b3
tr_ioRecalculateHash(): use a static buffer instead of malloc/free.
2008-01-27 17:03:58 +00:00
Charles Kerr
f32d3b24fe
#653 "overflow issue in Transmission/1.01" (1) safeguard bitfield functions against overflow. (2) add regression tests to see if this data is corrupted again in the future.
2008-01-27 16:08:20 +00:00
Charles Kerr
2085aec390
#613 : fix handshake protocol error reported by brad- and tracked down w/Lacrocivious' help.
2008-01-26 03:43:49 +00:00
Charles Kerr
d922389c9d
#613 : fix handshake error with libtorrent / mainline peers
2008-01-24 17:16:20 +00:00
Charles Kerr
b1cd6ecccc
remove unused "max unchoked peers" feature. fix obsolete TR_FLAG_SAVE comment.
2008-01-23 17:06:36 +00:00
Charles Kerr
d4128740d1
since we're not using evdns, don't call evdns_init() and evdns_shutdown() anymore.
2008-01-21 23:36:43 +00:00
Charles Kerr
0dd150844a
make tr_handleStatus() return a const
2008-01-21 18:24:37 +00:00
Charles Kerr
1b7706e101
finish the trunk/1.0x libT merge: router death & portability
2008-01-21 02:11:57 +00:00
Charles Kerr
de21d77af2
test code to test a "router death" theory in the nightlies
2008-01-20 03:21:51 +00:00
Charles Kerr
43a83f31bb
change the default global connection limit to 200 in tr_init()
2008-01-20 01:50:51 +00:00
Charles Kerr
3a47dfdb23
(router death) dial down the max number of new sockets per second even lower
2008-01-19 03:44:44 +00:00
Charles Kerr
3c6eeef439
fix a socket leak in peer-msgs
2008-01-19 03:30:45 +00:00
Charles Kerr
a771f34373
stagger out the reannounce messages too, just as 0.82 did, as per denisx_'s suggestion
2008-01-19 01:34:02 +00:00
Charles Kerr
737bb23743
more work on "router death": stagger out tracker scrape attempts and close a loophole in the handshake code
2008-01-19 00:28:52 +00:00
Charles Kerr
de515ee339
if the torrent's download path doesn't exist, don't create it -- it's might be a removeable disk that got unplugged.
2008-01-18 19:13:32 +00:00
Charles Kerr
dd75a769c9
fix tr_mkdirp()'s errno/retvals.
2008-01-18 01:40:41 +00:00
Charles Kerr
52c3243b4b
more test code to address "router death". Based on maxintech's feedback in the forums, try making the peer manager's reconnect intervals and volume more like 1.00
2008-01-17 03:43:08 +00:00
Charles Kerr
6c6228770c
fix byte ordering of the port in tr_peerIoAddrStr()
2008-01-17 00:08:40 +00:00
Charles Kerr
377c00a826
a test: if we set the reconnect period to any given peer to > 900 seconds, will that make "router death" go away? 900 seconds is the usual router setting for timing out bad sockets.
2008-01-16 20:24:18 +00:00
Charles Kerr
5965d8d1ae
handle tr_torrentClose( NULL ) gracefully.
2008-01-16 17:57:13 +00:00
Charles Kerr
61fc032dc1
sync peersSendingToUs with isDownloadingFrom, reported by BentMyWookie
2008-01-16 17:52:47 +00:00
Charles Kerr
a1e20dd7e9
more work on "router death": if we can't connect to a given peer, retry it fewer times and wait much longer between retries.
2008-01-16 15:13:02 +00:00
Mitchell Livingston
ff833b37d6
fix compiling error with last commit
2008-01-15 22:40:58 +00:00
Charles Kerr
d48f7a0026
housekeeping. tweak comments, group API calls a bit.
2008-01-15 22:00:58 +00:00
Charles Kerr
ca70ef18bb
drive the throttle even lower.. max of 16 connections per second.
2008-01-15 06:02:47 +00:00
Charles Kerr
925153e67b
#620 : assertion failure: `pad_d_len <= 512' in handshake.c:527
2008-01-14 16:17:02 +00:00
Charles Kerr
2c7a7c4253
throttle the number of new connections per second down even further from 48 to 32 because of the continuing "kills my router" reports
2008-01-13 21:05:38 +00:00
Charles Kerr
e7163a5433
#593 : 1.01 crash
2008-01-13 15:52:56 +00:00
Charles Kerr
90f5c61327
tweak the conncetions a little bit
2008-01-11 19:44:45 +00:00
Charles Kerr
876cd4c413
test patch for the "router death" bug: throttle the number of connections made per second
2008-01-11 18:13:09 +00:00
Charles Kerr
fe9cabbe4b
fix r4608 oops
2008-01-11 02:40:32 +00:00
Charles Kerr
39b1db460d
follow the spec's suggestion that new connections be 3x as likely for optimistic unchoke
2008-01-11 02:09:20 +00:00
Charles Kerr
6f6adb1d53
try to ramp up fast connections more quickly.
2008-01-11 00:38:26 +00:00
Charles Kerr
939f1541c6
mingw portability fixes: libtransmission #includes
2008-01-10 19:52:56 +00:00
Charles Kerr
6432363f64
mingw portability fixes: #includes in natpmp.c
2008-01-10 19:27:13 +00:00
Charles Kerr
8c6c822acd
mingw portability fixes: getrlimit/setrlimit in fdlimit
2008-01-10 19:22:11 +00:00
Charles Kerr
3a6396a3cb
mingw portability fixes
2008-01-10 18:52:46 +00:00
Mitchell Livingston
bedfab2ccc
clarify peer upload and download
2008-01-10 00:52:02 +00:00
Charles Kerr
5d93bd2c93
a smaller buffer size seems, counterintuitively, to improve the overall transfer rate when speed limits are turned on, because it gives more peers a chance to be involved in xfer before we hit the limit.
2008-01-09 19:22:25 +00:00
Charles Kerr
591f7f8b10
* improve the unchoking algorithm.
...
* when deciding which peers to connect to, take peer's previous speeds into account
* longer delay interval before reconnecting to peers that didn't give us data
* added uTorrent-inspired "flags" column in tr_peer_stat and gtk's torrent details' "peer" tab
2008-01-09 17:33:43 +00:00
Charles Kerr
8bc02db55e
mollify a noisy debugging message
2008-01-08 20:08:45 +00:00
Charles Kerr
fcd4aa25e8
#601 : crash when in "deep logging" mode
2008-01-08 14:48:05 +00:00
Charles Kerr
549778dc7e
#589 fix crash that occurred when the next-to-last file in a torrent ended on a piece boundary and the last file had a size of 0 bytes.
2008-01-08 03:08:36 +00:00
Charles Kerr
4f0f6e150e
fix another OpenBSD alignment bug reported by naddy
2008-01-08 01:57:48 +00:00
Charles Kerr
6db7a5177f
#598 : fix openbsd alignment & #include issues reported by naddy
2008-01-07 19:17:43 +00:00
Charles Kerr
a7ff9218ab
grumble bikeshed grumble
2008-01-07 17:52:50 +00:00
Charles Kerr
30d00fbc53
cleanup
2008-01-07 06:19:34 +00:00
Mitchell Livingston
efd3910b09
patch from SWE to display the correct # of peers connected
2008-01-07 04:28:36 +00:00
Charles Kerr
a88af6a758
better fix for r4532
2008-01-07 00:42:53 +00:00
Charles Kerr
f98ab5b375
fix "other" error string in IPC. Reported by jan_doa_; fixed by SoftwareElves
2008-01-07 00:19:41 +00:00
Charles Kerr
1e45d3e478
better lazy generation of "allowed set": wait until we get the {have-all|have-none|bitfield} from the peer so that we'll know if they qualify for an allowed set
2008-01-06 22:20:44 +00:00
Charles Kerr
35f73c097c
lazy "allowed set" generation. add regression test for "allowed set" generation.
2008-01-06 21:56:30 +00:00
Charles Kerr
3cfbb199af
remove unnecessary assertion
2008-01-05 19:01:51 +00:00
Charles Kerr
6c3eab0a92
#585 : 1.00 could be sped up by elminating reconnect intervals for some peers
2008-01-05 18:17:56 +00:00
Charles Kerr
15ffb4232e
tr_stat.ratio now returns TR_RATIO_INF when appropriate
2008-01-04 19:13:30 +00:00
Charles Kerr
514f96418b
fix tr_buildPath() crash
2008-01-04 18:24:42 +00:00
Charles Kerr
638f0b0bae
`paused' torrent ctor argument wasn't being honored right.
2008-01-04 05:42:41 +00:00
Charles Kerr
085235b10b
remove some unused #include <ctype.h> directives
2008-01-03 20:17:01 +00:00
Mitchell Livingston
69c4b99995
fix for [4439]
2008-01-03 18:46:33 +00:00
Charles Kerr
09ca9f6dda
maybe fix i18n tracker error reported by haktar
2008-01-03 17:49:45 +00:00
Charles Kerr
57579bf576
#378 - use {get,set}rlimit to deal with open file limits
2008-01-03 16:36:20 +00:00
Charles Kerr
ceb608d9a3
#542 : handle torrent metainfo files whose info.name tag is missing or empty.
2008-01-03 16:01:29 +00:00
Charles Kerr
893b0c10a3
to try to prevent router overloads, make (MAX_RECONNECTIONS_PER_PULSE * RECONNECT_PERIOD_MSEC) smaller.
2008-01-03 05:30:45 +00:00
Charles Kerr
ce7b2521a3
tweak debug messages.
2008-01-03 05:29:31 +00:00
Charles Kerr
ee2cffa196
#579 : assertion failure in ~r4410
2008-01-03 03:45:10 +00:00
Charles Kerr
d417fe8a79
speedup calculatePiecePriority(). This should give faster startup for torrents w/lots of files.
2008-01-02 20:37:22 +00:00
Charles Kerr
2b7a82b9a8
fix r4425 oops
2008-01-02 20:34:20 +00:00
Charles Kerr
0e56fa0baf
test code for #575 (m1b's bug)
2008-01-02 18:05:05 +00:00
Charles Kerr
288e2ca814
don't stop the torrent just because of a tracker error
2008-01-01 23:37:50 +00:00
Charles Kerr
ce6c33b7bf
set copyright info to 2008
2008-01-01 17:20:20 +00:00
Charles Kerr
186681065d
explicitly include unistd.h for ssize_t
2008-01-01 17:01:18 +00:00
Charles Kerr
f9aea628aa
better handshaking with incoming connections from mainline peers
2008-01-01 00:20:07 +00:00
Charles Kerr
c282d753c6
add stats.h to the list of files included in libtransmission's tarball
2007-12-30 19:01:00 +00:00
Charles Kerr
882afbd3c3
add torrent.h to list of files included in libtransmission's tarball
2007-12-30 18:58:17 +00:00
Charles Kerr
245915258f
turn off a debugging message gone wild
2007-12-30 18:46:18 +00:00
Charles Kerr
60fb68cb7a
silence a debug message gone wild
2007-12-28 06:14:18 +00:00
Charles Kerr
c6d2e60f52
fix comment typo reported by BigBossman
2007-12-27 22:50:20 +00:00
Charles Kerr
970211acf0
roll back r4356
2007-12-27 22:38:53 +00:00
Charles Kerr
aacb21fdc4
silence a debug message gone wild
2007-12-27 22:33:24 +00:00
Charles Kerr
f88eb7d771
experimental code that should make tracker interaction (especially shutdown) much faster.
2007-12-27 21:48:41 +00:00
Charles Kerr
e319a6ffe4
dead code removal
2007-12-26 20:45:08 +00:00
Charles Kerr
71efb5c74b
add per-priority-level endgame mode
2007-12-26 07:25:50 +00:00
Charles Kerr
1f3084179e
remove debugging messages that aren't needed anymore.
2007-12-26 07:19:05 +00:00
Charles Kerr
e870440025
add a per-block request TTL of 120 seconds
2007-12-25 17:22:51 +00:00
Charles Kerr
819b83d90d
fix another file priority bug.
2007-12-25 06:37:21 +00:00
Charles Kerr
f8bc11e094
fix a couple of related file priority bugs.
2007-12-25 05:42:33 +00:00
Charles Kerr
473907d891
a little housekeeping: move tr_torrent stuff into its own header
2007-12-25 05:37:32 +00:00
Charles Kerr
16e273ed05
fix torrent parsing bug reported by m1b, SoftwareElves, and BentMyWookie
2007-12-25 01:23:07 +00:00
Charles Kerr
6db02c401b
add message queueing flag to tr_initFull() too
2007-12-24 16:12:23 +00:00
Charles Kerr
bc84156d4f
add a messageLevel argument to tr_initFull()
2007-12-24 16:02:36 +00:00
Charles Kerr
35adeec1d0
(gtk) fix startup port issue by hitting it with a damn big hammer
2007-12-24 07:02:40 +00:00
Charles Kerr
a33f68a344
fix Gimp_'s problem
2007-12-24 05:17:12 +00:00
Charles Kerr
401cfbdb6b
replace the per-torrent PEX setting with a global one, as per discussion with SoftwareElves and BentMyWookie
2007-12-24 05:03:40 +00:00
Charles Kerr
b13d8d1dd6
save a copy of the torrent's metadata in tr_torrentInit(), not tr_torrentParse(). remove dead code from metainfo.c.
2007-12-22 18:00:47 +00:00
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
3ecb9910e0
save per-torrent peer limits in the fastresume file
2007-12-22 16:11:15 +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
9148c9211f
(gtk) tweak the display speed/size units again.
2007-12-22 03:01:14 +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
99d6e5deab
fix r4267 crash reported by John_Clay
2007-12-21 22:29:22 +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
f1baca587b
add torrent-ctor so that xcode can be updated. it's not plugged in yet though.
2007-12-21 16:51:42 +00:00
Charles Kerr
5c4f841c7e
added tr_torrentSetPeerLimits(), tr_torrentGetPeerLimits(), tr_setGlobalPeerLimit(), tr_getGlobalPeerLimit()
2007-12-20 21:44:16 +00:00
Charles Kerr
cf30fac9cf
upgrade to miniupnp-20071213
2007-12-20 20:18:22 +00:00
Mitchell Livingston
911a6ce32e
remove unused variables
2007-12-20 01:15:13 +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
371287136a
fix build error reported by berkut in the forums
2007-12-17 02:21:06 +00:00
Charles Kerr
36391e02c1
add support for TRANSMISSION_HOME environment variable so I can have multiple copies of Transmission running concurrently in different directories.
2007-12-15 22:22:30 +00:00
Charles Kerr
4ff5b472a8
raise the maximum connection limit a bit.
2007-12-15 16:36:43 +00:00
Charles Kerr
1cb314f0cc
try to make the natpmp error messages yet more helpful. thanks to m1b and Lacrocivious
2007-12-15 06:10:24 +00:00
Charles Kerr
fe0640caa7
add messages asking the user to check & make sure that port forwarding is enabled on their router
2007-12-15 05:28:16 +00:00
Charles Kerr
20c5f2a77c
fix off-by-one introduced in r4153
2007-12-15 05:05:23 +00:00
Charles Kerr
10b6e8ff8f
lessons learned from 0.82:
...
* if we can't bind a socket to a peer, take that peer out of the retry pool.
* also, try to connect with more peers up-front.
2007-12-15 04:26:31 +00:00
Charles Kerr
4da5fc85bb
fix bad log message
2007-12-15 03:25:13 +00:00
Charles Kerr
f8f4e1fc32
more helpful error message
2007-12-15 03:17:50 +00:00
Charles Kerr
99e8b9a19d
two arguments were transposed.
2007-12-15 03:14:16 +00:00
Charles Kerr
6ded40d360
increase the number of tracker connections we allow during shutdown.
2007-12-13 23:43:50 +00:00
Charles Kerr
7582f4a929
(maybe) fix shutdown crash in "pulse" reported by pea_
2007-12-13 21:48:39 +00:00
Charles Kerr
de5c84a52c
allocate more sockets to the tracker during shutdown to help get all the `stopped' commands done
2007-12-13 21:08:05 +00:00
Charles Kerr
bddcf5e10d
fix crash on shutdown on natpmp routers reported by SoftwareElves
2007-12-13 20:19:52 +00:00
Charles Kerr
7f335e1bf0
follow Chinstrap's suggestion of waiting a small interval between sending nat commands as per the nat spec
2007-12-13 19:28:51 +00:00
Charles Kerr
a51d790d81
take pea_'s suggestion of not sending out natpmp/upnp discover messages until port forwarding is enabled
2007-12-13 18:56:22 +00:00
Charles Kerr
39773104be
accept tiennou's file-checking tweak that clarifies the log messages
2007-12-13 17:28:13 +00:00
Charles Kerr
c4e6a04131
tweak the debug messages
2007-12-13 17:18:35 +00:00
Mitchell Livingston
1b6a8a9504
display the infinity symbol in stats for ratio when there is upload but no download
2007-12-13 04:31:38 +00:00
Charles Kerr
e1d10bba7e
add extra debugging messages for upnpDiscover()
2007-12-13 02:48:30 +00:00
Charles Kerr
c8c9012697
fix the 500ms remap reported by Chinstrap
2007-12-13 01:20:16 +00:00
Charles Kerr
c2e314743f
added more upnp debugging messages for Chinstrap_
2007-12-09 17:50:05 +00:00
Charles Kerr
7249aed5e4
fix r4109 oops: a debugging console message snuck into svn
2007-12-09 17:17:44 +00:00
Charles Kerr
ffe9e52e14
I think this one-line change may fix all the "Transmission 0.95 ate my data, corrupted my hard drive, and killed my cat!" complaints
2007-12-09 15:26:27 +00:00
Charles Kerr
33f284ead1
let the other config directories that we create also respect umask
2007-12-09 15:22:01 +00:00
Charles Kerr
67a86a2274
finish the `shared' update: bind & listen the incoming port.
...
better logging in network code.
2007-12-09 00:28:34 +00:00
Charles Kerr
b17d8c34f8
undo r4093 for bmw
2007-12-08 19:47:44 +00:00
Charles Kerr
008a403463
ensure that the `file' variable passed to tr_msg() is never NULL
2007-12-08 19:42:07 +00:00
Charles Kerr
73ee11f233
Use libnatpmp for port mapping. rewrite the upnp/natpmp manager.
...
NOTE: this will break the xpjets build until SoftwareElves or a volunteer patches the xcode project file to make a libnatpmp library just like was done for libminiupnp.
2007-12-08 19:34:15 +00:00
Charles Kerr
d3d1263a84
use fizz' suggestion on from ticket #534 on how to make platform.c more portable wrt header include order
2007-12-07 19:25:54 +00:00
Charles Kerr
481a210e82
fix tracker connection error reported by Gimp_
2007-12-05 02:06:05 +00:00
Charles Kerr
39d8c74fcd
small tweak to play nice with old C compilers. Thanks to fizz for reporting & submitting a patch
2007-12-03 19:52:55 +00:00
Charles Kerr
de9080e9ef
fix tyop
2007-12-03 16:51:22 +00:00
Charles Kerr
f0d1fa0a76
finish fixing the recursive mutex + cond bug reported by sedatg & Waldorf
2007-12-03 15:27:38 +00:00
Charles Kerr
c68af92039
fix very annoying recursive mutex + pthread cond bug reported by setatg, Waldorf, and many others
2007-12-03 04:06:45 +00:00
Charles Kerr
7b068ed926
more mutex work
2007-12-02 18:20:37 +00:00
Charles Kerr
5e88ab235b
possibly get the pthread changes compiling for old versions of Linux
2007-12-02 17:15:52 +00:00
Charles Kerr
b14449fe80
possible fix for the crash reported by sedatg in ticket #519
2007-12-02 16:35:44 +00:00
Charles Kerr
abef433926
improve upload speeds when the speed limits are uncapped.
2007-12-01 23:08:34 +00:00
Charles Kerr
f534d0929c
use PMP_MCAST_ADDR, instead of a hardcoded address, in net.c
2007-12-01 05:11:30 +00:00
Charles Kerr
78f3c40484
get nat-pmp working again in Leopard. Thanks to Chinstrap for tracking down the problem & submitting a patch. See the comment in this changeset for more details.
2007-12-01 05:01:02 +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
f2a08d272f
be more forgiving of tracker failure
2007-11-30 17:10:33 +00:00
Charles Kerr
332019593d
speed tweaks based on whitty's feedback
2007-11-29 02:56:31 +00:00
Charles Kerr
f9670dc7ac
throw away all pending `scrape' requests on shutdown... we don't need them then, so they just slow us down
2007-11-29 02:31:21 +00:00
Charles Kerr
827dc86bb4
rewrite the tracker code. this should improve and/or fix a number of bugs, including "too many open files", "router death", "slow internet", and the mutex release crash.
2007-11-29 00:43:58 +00:00
Charles Kerr
1e4b3a0577
make the peer stats a little easier to understand
2007-11-27 21:39:41 +00:00
Charles Kerr
398bc04bcf
housekeeping. revert r3984 at tiennou's request
2007-11-27 15:39:59 +00:00
Charles Kerr
27f08f325d
fix upload speed limit bug tracked down by makira_
2007-11-27 04:27:03 +00:00
Charles Kerr
d0047acc86
reimplement tr_buildPath() using struct evbuffer
2007-11-27 04:11:39 +00:00
Charles Kerr
0663c4aef7
possible fix for Zeph's "too many open files" bug report.
2007-11-26 21:26:01 +00:00
Charles Kerr
81ea9b4abd
sloppy, sloppy. what should've been 1 commit has been 5.
2007-11-26 20:44:53 +00:00
Charles Kerr
033ee7ff58
fix crash-on-exit introduced by stats code
2007-11-26 20:44:19 +00:00
Charles Kerr
cf85da1759
plug in the stats.filesAdded field
2007-11-26 20:37:07 +00:00
Charles Kerr
548e0324ab
fix stupid bug introduced in the last stats commit
2007-11-26 20:27:07 +00:00
Charles Kerr
56b71bd144
remove dead code
2007-11-26 20:22:08 +00:00
Charles Kerr
07f2e6365a
move tr_getDefaultRoute() to natpmp.c because it's the only code that uses it
2007-11-26 20:21:52 +00:00
Charles Kerr
c3c4b699b9
stats
2007-11-26 20:20:46 +00:00
Charles Kerr
2185081fcb
more stats
2007-11-26 20:05:46 +00:00
Mitchell Livingston
bf3bd6bd5d
avoid divide-by-0 in stats
2007-11-26 19:18:00 +00:00
Mitchell Livingston
6b5f1839aa
get last commit building
2007-11-26 19:10:53 +00:00
Charles Kerr
3aae5534bd
work on the stats a little bit.
2007-11-26 18:55:36 +00:00
Charles Kerr
0ed3610468
fix crash on startup reported by Gimp_
2007-11-26 05:03:28 +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
63cb8506ca
fix crash when loading fastresume files
2007-11-26 03:54:20 +00:00
Charles Kerr
ec042e7278
enable SWIFT in trunk
2007-11-25 17:09:09 +00:00
Charles Kerr
a720545256
fix peer-mgr.c shear between 0.9x and trunk
2007-11-25 17:07:12 +00:00
Charles Kerr
d735989aec
fix clientIsSnubbedBy() to work correctly when we're a seed
2007-11-25 16:57:08 +00:00
Mitchell Livingston
bd2de0888e
fix Wyzo
2007-11-24 19:36:26 +00:00
Mitchell Livingston
4a53c761a3
add Wyzo to clients list
2007-11-24 19:19:22 +00:00
Charles Kerr
18b3b388c0
fix oops from last commit
2007-11-23 03:01:13 +00:00
Charles Kerr
5ad14e4abc
fix another 0.94 prerelease crash report... this one from when finishing verifying a torrent that's running.
2007-11-23 02:49:06 +00:00
Charles Kerr
3b04f824e0
fix libT crash reported in the forums
2007-11-23 02:14:21 +00:00
Charles Kerr
8caa113d4b
fix LTEP PEX error reported by Adrian Ulrich in the BitTorrent mailing list
2007-11-22 06:48:08 +00:00
Charles Kerr
6df942138b
fix portmapping crash.
2007-11-22 06:13:57 +00:00
Charles Kerr
87d4bcd278
Change the default port from 9090 to 51413 to get in compliance with IANA's port number assignment scheme. (1024 through 49151 are reserved)
2007-11-22 04:15:22 +00:00
Charles Kerr
91e672d428
some progress on the overall statistics, though probably not visible to end users yet
2007-11-21 20:03:53 +00:00
Charles Kerr
260033847f
fix ticket #451 (Files remain in use after removal)
2007-11-21 16:16:59 +00:00
Mitchell Livingston
a7671a3afc
update clients list to identify test builds
2007-11-21 15:20:07 +00:00
Charles Kerr
9f9901b3fa
tweak the peer limits a bit for faster uploading
2007-11-20 17:29:56 +00:00
Charles Kerr
172efd42fa
fix "manual update" crash reported by Gimp_ and BentMyWookie
2007-11-20 16:50:48 +00:00
Charles Kerr
0a61e04757
now that libevent has a stable 1.4 release out with the features & fixes we wanted, aim third-party/libevent/ at libevent's 1.4 maintainance branch instead of their trunk.
2007-11-20 03:11:50 +00:00
Charles Kerr
9cec81b524
fix the crash reported by pea_, Gimp, and John_Clay [ref: http://pastebin.ca/784834 ]
2007-11-19 21:44:38 +00:00
Charles Kerr
9f0ca608f6
fix r3892 oops
2007-11-19 21:24:53 +00:00
Charles Kerr
b61dcfdbff
add "this session" stats stubs for BentMyWookie
2007-11-19 20:07:21 +00:00
Charles Kerr
f6371c99a3
add "time running" to tr_global_stats
2007-11-19 19:30:24 +00:00
Charles Kerr
4cfa1ca6b5
added tr_global_stats prototypes for BentMyWookie
2007-11-19 17:29:17 +00:00
Charles Kerr
41b1f76d9b
remove more dead code. this scaffolding was to let libevent play nice back when we had one thread per torrent
2007-11-19 16:30:31 +00:00
Charles Kerr
3929b37da3
denis is right about r3880; we should respect umask
2007-11-19 12:59:26 +00:00
Charles Kerr
41cee06b66
oops, this was supposed to be in 3879
2007-11-19 05:52:05 +00:00
Charles Kerr
3704854654
add more asserts up the call chain to find the source of pea_ and Gimp's bug
2007-11-19 04:51:06 +00:00
Charles Kerr
a654f808e3
change TR_MKDIR_PERM from 0777 to 0755
...
change TR_CREAT_PERM from 0666 to 0644
2007-11-19 04:46:49 +00:00
Charles Kerr
aa11440755
*maybe* fix the crash reported by pea_ in the forums and by Gimp in http://pastebin.ca/777952
2007-11-19 04:44:14 +00:00
Charles Kerr
b0f5ff96f3
back to the "router death" issue: throttle how many connections T will try to open at any one time
2007-11-18 17:35:28 +00:00
Charles Kerr
ed72b1b795
fix choking bug that could penalize good peers.
2007-11-18 06:15:13 +00:00
Charles Kerr
a277382578
more download speed tweaks for situations where T is both uploading and downloading.
2007-11-18 04:24:17 +00:00
Charles Kerr
e371009606
this should improve download speeds. test it!
2007-11-18 03:18:26 +00:00
Charles Kerr
9a81cd7637
reintroduce the "SWIFT" algorithm
2007-11-18 01:00:49 +00:00
Charles Kerr
37969406b2
Add "Status" column to tr_peer_stat.
2007-11-17 23:43:33 +00:00
Charles Kerr
54a2bb978b
fix timeout error that caused us to drop connections prematurely
2007-11-17 17:49:30 +00:00
Charles Kerr
a2609ae2a7
fix permissions issue reported by Jaybird in http://transmission.m0k.org/forum/viewtopic.php?t=2944
2007-11-17 16:20:08 +00:00
Charles Kerr
ef3d0df0d9
try to tickle some more information out of John_Clay's bug report
2007-11-17 07:48:51 +00:00
Charles Kerr
77d58126f4
remove yet more dead code
2007-11-17 02:47:47 +00:00
Charles Kerr
135da6efca
tweaking the speed limit settings a little more
2007-11-17 00:30:36 +00:00
Charles Kerr
8d08db716d
speed limit code cleanup
2007-11-17 00:16:26 +00:00
Charles Kerr
cc728b0470
progress on the "speed limits kill my transfer rate" bug.
2007-11-16 21:58:11 +00:00
Charles Kerr
521d32af9d
tweak the libevent read buffer size
2007-11-16 21:47:55 +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
0ac302b302
progress on the "speed limits kill my transfer rate" bug.
2007-11-16 20:40:03 +00:00
Charles Kerr
d2a5dd50d3
remove dead code
2007-11-16 20:38:51 +00:00
Charles Kerr
73680b6263
fix tr_peerMsgsAddRequest memory leak reported by tiennou
2007-11-16 15:45:26 +00:00
Charles Kerr
1ebaf597a4
fix trunk memory leak reported by tiennou
2007-11-16 15:33:57 +00:00
Charles Kerr
787d2b800c
fix benocde crash reported by Gimp_
2007-11-16 06:37:01 +00:00
Charles Kerr
1464dc7962
fix r3830 bug reported by Gimp_
2007-11-16 05:43:47 +00:00
Charles Kerr
c3dce15a9e
if we haven't advertised that we support pex, then even if a peer sends us a pex message, don't send one back.
2007-11-16 04:42:51 +00:00
Charles Kerr
b6b339e25a
fix bencode crash reported earlier today by Gimp_, and possibly also by tiennou
2007-11-16 03:32:42 +00:00
Charles Kerr
807eff8416
remove dead code.
2007-11-15 22:03:22 +00:00
Charles Kerr
a048204380
remove dead code.
2007-11-15 16:43:46 +00:00
Charles Kerr
815fb89b91
fix torrent metafile creation error introduced in trunk in r3735 and reported by tiennou in ticket #478
2007-11-15 15:07:05 +00:00
Charles Kerr
cc42c8aaf6
fix tracker redirect bug reported by sunny
2007-11-15 14:34:48 +00:00
Charles Kerr
257eaee631
more of the same
2007-11-15 05:47:23 +00:00
Charles Kerr
ea3a1387f2
more of the same.
2007-11-15 05:20:38 +00:00
Charles Kerr
8019f8cd2c
raise the number of unchoked peers per torrent
2007-11-15 05:04:21 +00:00
Charles Kerr
a14fe99e00
another download speed tweak
2007-11-15 04:59:37 +00:00
Charles Kerr
c4f15263a0
since many people seem to be having a hard time holding onto good peers, be a little more lenient on how quickly we hang up on peers that have transferred piece data with us.
2007-11-14 05:02:03 +00:00
Charles Kerr
a9e5fff2e6
* fix the `req->length == (uint32_t)( ((block)==((msgs->torrent)->blockCount-1))' bug.
...
* there seems to be a pattern for peers that were (intentionally?) giving incomplete data to trigger the bug above. when a peer does this, give them a strike on its three-strikes-and-you're-banned count
2007-11-13 05:36:43 +00:00
Charles Kerr
6242508fe2
minor tweaks.
2007-11-12 22:26:10 +00:00
Charles Kerr
66c9119a84
tiennou's fix for #461
2007-11-12 15:15:51 +00:00
Charles Kerr
dfba59b97a
tiennou's fix for #463
2007-11-12 15:08:58 +00:00
Charles Kerr
f1e85f5206
Increase the intervals on timers that won't affect performance. This reduces most of Transmission's PowerTOP footprint.
2007-11-11 20:27:13 +00:00
Charles Kerr
8516860fec
fix a bug in tr_stat's availability numbers, reported by BentMyWookie
2007-11-11 16:33:04 +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
adeee3d886
silence some Fast Peer console messages
2007-11-10 22:29:55 +00:00
Charles Kerr
0aee22aaff
have tr_close() call tr_torrentClose() on all running torrents
2007-11-10 22:29:28 +00:00
Charles Kerr
c32f893038
commit tiennou's fast-peers-final patch from ticket 149
2007-11-10 16:06:00 +00:00
Charles Kerr
4cb16901b8
fix tracker wart reported by tiennou
2007-11-10 16:00:59 +00:00
Charles Kerr
76626796f3
make the hard drive less noisy than it was in 0.92
2007-11-10 05:09:40 +00:00
Charles Kerr
e7e479d758
fix r3777 compiler warning reported by SoftwareElves
2007-11-10 05:01:13 +00:00
Charles Kerr
ca03b62a58
* fix a bug that could corrupt peer connections, causing slower speeds and/or fewer connections
...
* add more assertions to smoke out any remaining BT protocol bugs
2007-11-10 04:56:27 +00:00
Charles Kerr
fd430fde90
undoing the r3773-r3774 experiment.
2007-11-09 20:07:52 +00:00
Charles Kerr
fda79c7eef
oops, wrong #include for NSCParameterAssert in r3773.
2007-11-09 19:51:48 +00:00
Charles Kerr
67b719c2de
on Darwin, use NSCParameterAssert() instead of assert().
2007-11-09 19:50:40 +00:00
Charles Kerr
4792788d24
move the gateway discovery from init() to start() so that tr_init() doesn't block.
2007-11-09 16:10:48 +00:00
Charles Kerr
e168cf3f69
don't let incoming peer connections sneak past MAX_CONNECTED_PEERS_PER_TORRENT.
2007-11-09 15:19:12 +00:00
Mitchell Livingston
b382628933
have libtransmission be in charge of checking if nat traversal is disabled when quitting
2007-11-09 15:06:32 +00:00
Charles Kerr
5da8a977c6
* add O_LARGEFILE support to fdlimit for the benefit of 32-bit posix machines
...
* minor tweaks
2007-11-09 04:32:19 +00:00
Charles Kerr
42e70ad53e
fix John_Clay's assertion bugreport
2007-11-09 01:25:34 +00:00
Charles Kerr
99ea26c1c9
* try to get peers to scale up to speed faster.
...
* remove unnecessary steps when receiving block data from peers.
2007-11-09 01:22:15 +00:00
Charles Kerr
39f9f14751
minor tweaks.
2007-11-08 21:25:17 +00:00
Charles Kerr
125bd34bbb
added `plaintext preferred' encryption option.
2007-11-08 21:20:08 +00:00
Charles Kerr
0d819bd67e
more work on the "router death" issue.
2007-11-08 19:43:48 +00:00
Charles Kerr
bc3eff899f
* some work on lessening the way we hammer the router.
...
* move strlcpy and strlcat out of their own files and into utils.c
2007-11-08 04:11:09 +00:00
Charles Kerr
71f4efcbad
update our #includes now that libevent has cleaned up event.h
2007-11-07 18:26:19 +00:00
Charles Kerr
b43bb1483d
fix libevent #include quirk reported by SoftwareElves
2007-11-07 03:13:04 +00:00
Charles Kerr
906c5d6f1f
dead code removal: azId
2007-11-07 01:27:32 +00:00
Charles Kerr
dc6a7b9485
fix crash reported by hussam in #transmission
2007-11-07 00:42:19 +00:00
Charles Kerr
229102a196
more libevent fun. good thing the mac build is broken or I'd've been getting bug reports on this instead :)
2007-11-06 23:23:47 +00:00
Charles Kerr
476de56e45
the libevent header file comments LIED about the return value of evbuffer_add_vprintf()!
2007-11-06 23:10:04 +00:00
Charles Kerr
60aab6c433
remove libtransmission code that duplicates functionality in libevent
2007-11-06 21:14:30 +00:00
Charles Kerr
9df263326d
use Thomas Bernard's miniupnp library instead of rolling our own.
2007-11-06 16:02:50 +00:00
Charles Kerr
5e2b2d34c3
ensure that tr_close() exits gracefully even when the trackers aren't responding.
2007-11-05 05:42:25 +00:00
Charles Kerr
14d8abb323
maybe fix portmapping
2007-11-05 03:56:54 +00:00
Charles Kerr
0f92cb7f30
fix bug reported in the forums by "grabman"
2007-11-05 03:09:27 +00:00
Charles Kerr
7ce8312ddc
fix memory error reported by John_Clay
2007-11-02 20:27:03 +00:00
Charles Kerr
e3764e732b
fix possible benc leak reported by MishaS ( #441 )
2007-11-01 18:44:37 +00:00
Charles Kerr
7cb1791f2a
fix handshake memory leak reported by MishaS ( #442 )
2007-11-01 18:41:13 +00:00
Charles Kerr
3e0e462b10
finish cleaning up the code that was churned during the "corruption" fix.
2007-11-01 13:47:32 +00:00
Charles Kerr
e625b10d6d
"corruption" fix part 3: cleanup. remove unneeded possible points of failure.
2007-10-31 18:10:55 +00:00
Charles Kerr
a6206b036c
"corruption" fix part 2: lots of assertions, and try to complete pieces & ban bad peers sooner
2007-10-31 04:23:51 +00:00
Charles Kerr
4cde721475
fix oops
2007-10-30 20:17:49 +00:00
Charles Kerr
aace9469bb
fix compile warning
2007-10-30 20:11:23 +00:00
Charles Kerr
20ffdfb9d2
remove dirname() and basename() for now
2007-10-30 19:16:07 +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
e0965c3a63
better openssl detection & support: use openssl's pkg-config file.
2007-10-28 19:55:03 +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
ab8ed6507d
#412 - 0.90 "ignores" speed limits (deanr, berkut, SineOtter)
2007-10-28 15:20:24 +00:00
Charles Kerr
92ac49d9c4
compatability with older C copmilers (ticket #422 , patch by fizz)
2007-10-27 21:29:41 +00:00
Charles Kerr
b00ee3e568
Ticket #398 (peer-msgs.c:905: failed assertion `msglen == 0' in 0.90)
2007-10-27 15:45:03 +00:00
Charles Kerr
515d04de1a
Ticket #395 (ensure file exists when starting)
2007-10-27 14:17:51 +00:00
Charles Kerr
747cd0b396
(gtk) if two torrents are selected -- one running, one paused -- both "pause" and "resume" buttons should be enabled. reported by glyphobet.
2007-10-26 23:29:19 +00:00
Charles Kerr
1f607e0560
improve the "can't connect to tracker" error message.
2007-10-26 16:39:00 +00:00
Josh Elsasser
13bd23e44b
Add IPC messages to set and retrieve the encryption mode.
...
Implement encryption mode messages in -daemon and -remote.
2007-10-26 03:43:27 +00:00
Charles Kerr
18de1db5b5
integral sign correctness in makemeta
2007-10-26 03:16:27 +00:00
Charles Kerr
e6fbcaeae6
Quick & dirty fix to crasher ticket #415 .
2007-10-26 03:02:23 +00:00
Charles Kerr
41e9939317
Fix issue #413 "Starting a Torrent when one is checking make it queue after it" reported by tiennou
2007-10-26 01:31:49 +00:00
Charles Kerr
df50cbcabf
Fix 0.90 cache bug that could cause "verify local files" to fail.
2007-10-26 01:13:43 +00:00
Josh Elsasser
906d207ff3
Fix misnumbered IPC constants.
2007-10-26 00:57:29 +00:00
Josh Elsasser
d51713177a
Fix openbsd build.
2007-10-26 00:36:22 +00:00
Mitchell Livingston
b48967245d
trunk: Ensure only a single "?" is used for appending arguments to the announce and scrape URL ( fixes #411 )
2007-10-25 16:52:12 +00:00
Charles Kerr
317705cffc
The OpenBSD build fix caused a Darwin build error. :) Thanks to pea for reporting.
2007-10-25 14:34:20 +00:00
Charles Kerr
8c0e2434f5
fix OpenBSD build error.
2007-10-25 13:59:46 +00:00
Charles Kerr
52261d88fd
Fix 0.90 socket connection leak.
2007-10-25 13:38:34 +00:00
Charles Kerr
4af3c1c82b
use BUILT_SOURCES for version.h to ensure it gets built first
2007-10-24 20:18:13 +00:00
Charles Kerr
82194a2f2f
don't require the user to have svn installed when building from tarball
2007-10-24 19:57:47 +00:00
Charles Kerr
e38311e64e
fix two separate version.h errors
2007-10-24 18:36:53 +00:00
Charles Kerr
f71319b90f
get "make distcheck" working again
2007-10-24 17:20:50 +00:00
Charles Kerr
7371bd29cf
rewind this morning's changes.
2007-10-23 20:42:00 +00:00
Charles Kerr
ed6ffe39e4
fix r3506 bug that prevented incoming peers from connecting
2007-10-23 15:53:57 +00:00
Charles Kerr
799954843e
maybe fix incoming handshakes with peers that don't send their peer_id immediately
2007-10-23 14:14:37 +00:00
Charles Kerr
50c8c88c04
Update the credits
2007-10-23 14:00:17 +00:00
Charles Kerr
216ee3f52b
fix a nasty error with fallback unencrypted peer connections.
2007-10-22 23:31:03 +00:00
Charles Kerr
b704654275
dead code removal.
2007-10-22 23:27:47 +00:00
Charles Kerr
a5946e396c
tweak the logging a bit.
2007-10-22 18:52:36 +00:00
Charles Kerr
e1fbd16941
fix some memory leaks reported by valgrind.
2007-10-22 14:15:16 +00:00
Charles Kerr
814a56046d
fix ul/dl speed wart reported by BentMyWookie
2007-10-21 15:47:26 +00:00
Charles Kerr
c50cadbcaa
remove dead code (TR_STATUS_ACTIVE, TR_STATUS_INACTIVE)
2007-10-20 22:07:21 +00:00
Charles Kerr
264f7ab8b3
Dead code removal (TR_STATUS_STOPPING)
2007-10-20 21:17:37 +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
42d007553d
Tweak the first torrent's recheck state as requested by BentMyWookie
2007-10-20 20:36:01 +00:00
Charles Kerr
8d4ff5818c
Add support for the MSE Tracker Extension (suggested by barry_u and persept)
2007-10-20 20:27:37 +00:00
Charles Kerr
6527f4e12a
dead code removal.
2007-10-20 15:17:36 +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
8b5f76c10e
roll back the clients changes because of the 0.90 freeze
2007-10-19 00:19:16 +00:00
Charles Kerr
58ad607c01
merge the wiki.theory.org, T, and libtorrent client lists. T knows about dozens more clients now.
2007-10-19 00:02:37 +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
78b5c81253
possibly fix r3457 crash reported by chrissturm
2007-10-18 19:33:29 +00:00
Charles Kerr
212470560e
fix overflow error that caused timers with intervals larger than 35 minutes to be lost... which is nastier than it sounds, since that's shorter than many tracker announce intervals.
2007-10-18 18:32:58 +00:00
Charles Kerr
6cef3fd9f9
remove fprintf that snuck in. (Reported by Gimp)
2007-10-18 03:57:19 +00:00
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
2cda7060cd
remove stubs for Azureus extension negotiation
2007-10-17 18:53:17 +00:00
Charles Kerr
3210f92085
const-ify tr_msg()'s input arguments
2007-10-17 18:24:53 +00:00
Charles Kerr
911ff1cdd1
remove tr_peerMsgsSetChoke()'s return value, which was always ignored anyway
2007-10-17 18:23:59 +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
00a425a7d3
further tweaks to the peer connection weights after reading the overnight runlog
2007-10-16 15:05:05 +00:00
Charles Kerr
fa200efd09
more tweaks
2007-10-16 03:14:07 +00:00
Charles Kerr
c9359d8bde
There are only 16 days left for something to replace this as October's stupidest bug.
2007-10-16 03:00:53 +00:00
Charles Kerr
ec30180d76
tweak the weights that decide to reconnect to crappy peers less often.
2007-10-16 02:37:34 +00:00
Charles Kerr
0b04554772
maybe fix crash reported by Lacrocivious in http://pastebin.ca/738142
2007-10-16 02:19:40 +00:00
Charles Kerr
30418e34b8
fix crash reported by John_Clay in http://pastebin.ca/738133
2007-10-16 02:16:57 +00:00
Charles Kerr
8feeb9ee6b
when deciding which peers to try to connect to, add some weights to punish peers that don't transfer piece data with us. We'll still give them another, but at longer intervals than better peers get.
2007-10-16 00:55:17 +00:00
Charles Kerr
e698756c98
remove unused flags
2007-10-15 20:58:39 +00:00
Charles Kerr
efe4847204
new utility (tr_loadFile), and reimplement metainfo's "readtorrent" to use it.
2007-10-15 20:15:34 +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
afff6d08f2
save the tr_torrent::pexDisabled flag in fastresume
2007-10-15 16:35:18 +00:00
Charles Kerr
6eb7edf007
fix choke fibrillation bug in new connections
2007-10-15 16:01:42 +00:00
Mitchell Livingston
cc2db392f5
make libtransmission's pex accessor public, and eliminate a redundant variable in Torrent.[mh]
2007-10-14 22:01:55 +00:00
Charles Kerr
57eaa27970
Fix bug that could initiate pex in private torrents.
2007-10-14 17:21:24 +00:00
Charles Kerr
d96ed80aa2
(1) fix a bug in torrent creation. (2) fix a bug in torrent paths on startup in gtk
2007-10-14 03:26:13 +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
4f33a8da42
Try sharing a DH so that we don't spend so many cpu cycles making new ones when we're working through the peers trying to find good ones.
2007-10-13 23:15:43 +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
4104efbfbf
try to get more connected peers to agree to encrypted connections
2007-10-13 15:15:04 +00:00
Charles Kerr
004ade57f0
fix crash-on-adding-new-torrents introduced in r3387
2007-10-13 14:07:08 +00:00
Charles Kerr
3e878aeba9
tweak the debugging messages a bit.
2007-10-13 14:02:10 +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
89d511e9dd
get fastresume working again (I think)
2007-10-13 04:19:38 +00:00
Charles Kerr
6179809146
break the build so svn users won't corrupt their fastresume files
2007-10-13 04:11:11 +00:00
Charles Kerr
0000a96f78
and, removing a couple of fprintfs
2007-10-13 04:00:50 +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
Mitchell Livingston
64c5255c8e
add Halite to clients
2007-10-12 11:17:38 +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
89564dc3c2
fix the "swarm speed" bug reported by Gimp_
2007-10-11 04:17:28 +00:00
Charles Kerr
3b2ef1054f
8 second timeout during handshake, 2.5 minute handshake afterwards
2007-10-11 03:54:33 +00:00
Charles Kerr
e11999243e
add more debugging messages to track down why we're disconnecting from some peers
2007-10-11 03:36:09 +00:00
Charles Kerr
7e0faec4db
more debugging messages
2007-10-11 03:12:48 +00:00
Charles Kerr
ef4ec75532
Try out some of SoftwareElves' suggestions for faster startup connections
2007-10-11 02:50:05 +00:00
Charles Kerr
ead1ff5b72
encryption key creation is pretty expensive -- defer creating it until we're sure we actually need it for that peer.
2007-10-11 02:22:17 +00:00
Charles Kerr
23d2f77778
(1) maybe fix the "peer->msgs != NULL" bug reported by Dhruvk and John_Clay (2) remove dead code
2007-10-11 00:09:58 +00:00
Charles Kerr
cbaf1b8faa
commit more of tiennou's fastpeers patch
2007-10-10 16:39:12 +00:00
Charles Kerr
76aed9200d
fix a subtle bug with having two connections to the same peer.
2007-10-10 15:59:59 +00:00
Charles Kerr
696800f369
* fix bug that sent a keepalive message too often
2007-10-10 03:03:09 +00:00
Charles Kerr
a9849660f6
* fix bug that incorrectly marked some incoming connections for termination
...
* strip unnecessary linefeeds out of some debug messages
2007-10-10 02:59:30 +00:00
Charles Kerr
2f46064e33
raise the `numwant' value
2007-10-09 18:29:10 +00:00
Charles Kerr
e8d19c5b03
fix stupid bug from yesterday that made uploading difficult.
2007-10-09 05:51:20 +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
f96cbd3ec3
* add intltool macros to make it easier to build from svn.
...
* minor error logging improvement in libtransmission
2007-10-09 02:49:24 +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
e176a25922
* fix a bug with uploading encrypted pice data to another peer
...
* extra sanity tests when uploading data
2007-10-08 16:10:10 +00:00
Charles Kerr
9a79d1e603
the purge flag should take priority over all the other reasons to keep or purge a peer. :p
2007-10-08 01:53:11 +00:00
Charles Kerr
e1b447304b
fix atom initialization issue with r3320
2007-10-08 01:37:20 +00:00
Charles Kerr
161ff6a7a2
ban peers that feed us too many bad blocks.
2007-10-08 01:31:27 +00:00
Charles Kerr
43a016cdb9
fix minor shutdown bug
2007-10-08 00:56:12 +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
568e97d220
recheck the completeness stats after `recheck torrent'
2007-10-07 04:32:37 +00:00
Charles Kerr
5d8f9d8b13
try to connect to peers faster when a torrent is initially started.
2007-10-07 04:14:58 +00:00
Charles Kerr
2381279da6
fix John_Clay's ptrarray.c:201 crash. (maybe.)
2007-10-07 04:14:34 +00:00
Mitchell Livingston
8f7f65388e
set properties for new files
2007-10-06 22:24:50 +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
6d5182af60
fix potential "recheck torrent" deadlock
2007-10-06 01:43:04 +00:00
Charles Kerr
3a6985195d
removed an assertion that depended on valid input from a peer in order to be true.
2007-10-05 05:53:00 +00:00
Charles Kerr
b6483cbf3f
don't allow duplicate requests to the same peer, even during endgame. (alus)
2007-10-05 00:16:47 +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
80979e0240
a little code simplification -- remove unnecessary branches
2007-10-04 20:49:37 +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
0938cb88d4
dead code removal
2007-10-03 21:03:40 +00:00
Charles Kerr
5f2bd1d950
speed improvements... this is getting me 700 KiB/s (which is near to my speed cap) in the ubuntu torrent test
2007-10-03 19:00:51 +00:00
Charles Kerr
877e2bb86e
some more peer tweaks
2007-10-03 18:19:51 +00:00
Charles Kerr
a3d1a254d1
minor source code cleanup...
2007-10-03 16:42:43 +00:00