Mitchell Livingston
7103fcb57e
#741 typo in transmission.h comment
2008-02-27 20:11:04 +00:00
Charles Kerr
9ee96fd0dc
add `verify' command to ipc.
2008-02-27 17:38:39 +00:00
Charles Kerr
5d233f86c4
make struct ipc_info opaque. const-ify the ipcparse functions where possible.
2008-02-27 16:47:58 +00:00
Charles Kerr
f82e8e581b
remove unused "label" field. make ipc_havemsg() private. make ipc_parse()'s buf arg const.
2008-02-27 08:07:13 +00:00
Charles Kerr
494acbfa85
tear out about 1/3 of ipcparse's overhead.
2008-02-27 06:01:46 +00:00
Charles Kerr
8cc587a66f
more housekeeping: benc_val_t --> tr_benc
2008-02-26 21:58:58 +00:00
Charles Kerr
325665caa2
svn propset svn:keywords 'Date Rev Author Id' filename
2008-02-26 21:08:51 +00:00
Charles Kerr
d2f1c7aff3
added tr_sha1_to_hex()
2008-02-25 20:21:22 +00:00
Charles Kerr
e4a59e5e27
fix minor compiler warning.
2008-02-25 03:09:55 +00:00
Charles Kerr
f2f24e936d
tear out the "fast peer" code from refillPulse() altogether
2008-02-25 01:35:20 +00:00
Charles Kerr
b9a9e1f1a8
disable some fastpeer code that's too expensive.
2008-02-25 01:29:30 +00:00
Charles Kerr
7f0a06b920
flesh out the possible values for the new tracker fields in tr_stat
2008-02-22 02:39:15 +00:00
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