Charles Kerr
aa9b1d2b8e
(libT) misc cleanup: use tr_bool and tr_port where appropriate
2008-12-03 04:55:10 +00:00
Charles Kerr
166c6e5f3c
(libT) add tr_peer_stat.isSeed
2008-12-02 23:16:01 +00:00
Charles Kerr
d4ee0d714a
(libT) #1379 : support "partial seeds" BEP 22
2008-12-02 19:46:51 +00:00
Charles Kerr
0d5fed6442
(libT) re-apply jhujhiti's IPv6 patch. This merges in my tr_port cleanup, so any new bugs are mine :/
2008-12-02 03:41:58 +00:00
Charles Kerr
a14621c363
(libT) janitorial: use the tr_port type whenever we have a `port' as a function argument or as a field in a struct.
2008-12-01 20:51:01 +00:00
Charles Kerr
7fa9813955
(libT) #252 : revert r7195 (jhujhiti's IPv6 test patch). It seems to be the culprit in a `thrashing' issue reported by Waldorf and m1b in irc -- the behavior appeared between r7183 and r7187 -- so this commit is to trigger off a nightly build w/o the patch to test with in irc.
2008-12-01 20:21:06 +00:00
Charles Kerr
c910993b68
#1379 lay some very early groundwork for "partial seeds" -- change tr_completion's enum to use the partial seed terminology
2008-11-30 01:52:45 +00:00
Charles Kerr
a2ad4f6543
(libT) patch from jhujhiti to add ipv6 support.
2008-11-30 00:47:18 +00:00
Charles Kerr
d12af295c1
use tr_bool instead of C bitfields. ( http://blogs.msdn.com/oldnewthing/archive/2008/11/26/9143050.aspx )
2008-11-28 22:11:41 +00:00
Charles Kerr
a1cd6d85dc
(libT) add #ifdefs to ensure that client apps don't #include private libtransmission headers.
2008-11-24 20:17:36 +00:00
Charles Kerr
0bcff74d52
minor code cleanup
2008-11-23 16:30:09 +00:00
Charles Kerr
f8a7c4b347
#1406 : need tr_getDefaultDownloadDir() for consistency between apps
2008-11-15 17:39:54 +00:00
Charles Kerr
42fe27c067
more fucking around with the speed measurements.
2008-11-08 02:49:04 +00:00
Charles Kerr
10566eece9
(libT) #849 : preallocate files when possible to prevent disk fragmentation
2008-11-05 05:56:06 +00:00
Charles Kerr
b263a5f0e2
(libT) tr_handle --> tr_session
2008-11-02 22:21:59 +00:00
Charles Kerr
188adb1d6a
reverse patch #6948 . one of the new gcc attributes seems to be causing trouble.
2008-10-23 02:37:21 +00:00
Charles Kerr
f0eddb5c20
(libT) move the TR_GNUC macros from utils.h to a standalone header file so other libT headers can use them without getting an extra dependency tree.
2008-10-22 18:42:37 +00:00
Charles Kerr
674307add7
Add a new token, TR_DEFAULT_ENCRYPTION, and use it as the default in the various clients.
...
Add a new #define, TR_EMBEDDED. When it's set, gettext is disabled and non-encrypted connections are the default.
2008-10-22 17:16:12 +00:00
Charles Kerr
6c96058d32
(libT) add tr_getMessageQueuing() for Spry
2008-10-21 19:40:12 +00:00
Charles Kerr
0c4f300f1b
#1369 : clarify the different torrent status & callbacks' APIs and typenames
2008-10-20 17:54:56 +00:00
Charles Kerr
9d7ef3bf38
#1366 : annotated the tr_info.torrent field to reflect its deprecated nature
2008-10-20 16:04:26 +00:00
Charles Kerr
2adcf84784
#1366 : move tr_ctor{Set,Get}Save() to a package-private header.
2008-10-20 16:00:14 +00:00
Charles Kerr
67282cb794
further win32 portability fixes from Spry
2008-10-19 17:43:04 +00:00
Charles Kerr
b04be5fb2e
make MAX_PATH_LENGTH private to libtransmission. add tr_dirname() and tr_basename() utility / portability wrappers
2008-10-14 03:39:16 +00:00
Charles Kerr
24b75a7d74
maybe fix the mac build
2008-10-03 04:57:06 +00:00
Charles Kerr
4fab4c9e9b
(libT) finish killing tr_errno.
2008-10-03 04:49:06 +00:00
Charles Kerr
6cba9305ae
add a separate flag for enabling/disabling the rpc address whitelist
2008-10-01 22:59:29 +00:00
Charles Kerr
bddf34d7a8
#1309 : Web/RPC interface ACL ignored
2008-10-01 20:23:57 +00:00
Charles Kerr
8903960174
a little more cleanup of the rpc server stuff.
2008-09-26 04:41:13 +00:00
Charles Kerr
4c34b2bc89
rpc-server cleanups. add true wildmat control. break the Mac build a little harder.
2008-09-25 18:48:09 +00:00
Charles Kerr
cc89872dd4
run libT, cli, daemon, gtk through the source-code formatter "uncrustify" as promised/threatened
2008-09-23 19:11:04 +00:00
Charles Kerr
4fe1e1dae3
first draft at having more accurate speed controls
2008-09-17 19:44:24 +00:00
Mitchell Livingston
7b62feac10
enable lazy bitfields
2008-08-26 21:44:51 +00:00
Charles Kerr
82815a74d2
#1214 : add RPC support for per-peer status,ul,dl,address info
2008-08-22 17:59:31 +00:00
Mukund Sivaraman
317281f87c
Don't show an error when transmission is run twice
...
Instead, present the main window. This commit also auto-generates
the dbus bindings.
2008-08-17 12:39:26 +00:00
Charles Kerr
d06f101e57
#220 : lazy bitfields
2008-08-16 21:06:57 +00:00
Charles Kerr
f4a5315ec4
#1156 : make the RPC callbacks a little more flexible to make thread issues easier on the mac client
2008-08-14 02:12:29 +00:00
Charles Kerr
c75c512ff1
readability improvments #1 , #2 , #3 , #4 . (muks)
2008-08-12 13:51:11 +00:00
Charles Kerr
51aff87443
lots of C correctness tweaks suggested by sparse/cgcc
2008-08-11 19:05:02 +00:00
Charles Kerr
7974a1e50a
(libT) add proxy port arg as requested by BentMyWookie
2008-07-15 01:03:03 +00:00
Charles Kerr
eb254b8a54
#1042 : "Announce allowed: Never"
2008-07-11 11:51:15 +00:00
Charles Kerr
9fb3bf6412
sync the man pages with the cli/daemon/remote changes
2008-07-08 17:44:33 +00:00
Charles Kerr
1cd9f2351e
have daemon and cli use tr-getopt too.
2008-07-08 16:50:34 +00:00
Charles Kerr
6cce27bf54
(rpc) simplify the rpc accessors
2008-06-16 03:47:50 +00:00
Charles Kerr
af8e44a5e7
maybe *now* 1.30 is feature complete: by popular demand, add proxy support for SOCKS4/SOCKS5. This will break the mac build temporarily.
2008-06-11 20:45:53 +00:00
Charles Kerr
71c2cdd1ea
#966 : allow blocklist support in the daemon. add extra info in the man page explaining how to add blocklists.
2008-06-11 20:09:36 +00:00
Charles Kerr
f0229ed8ad
(libT) allow custom blocklists... now all you need to do is place a file in the blocklists/ folder and Transmission will automatically use it the next time it starts.
2008-06-11 16:15:45 +00:00
Charles Kerr
b94893a4c9
wire up the backend proxy support.
2008-06-10 16:16:31 +00:00
Charles Kerr
393ebbc24a
more webseed work.
2008-06-10 02:36:52 +00:00
Charles Kerr
61b41adf1a
have idle webseeds return a speed of -1 instead of 0 so that we can differentiate between stalled and idle. document this in transmission.h.
2008-06-10 01:46:36 +00:00
Charles Kerr
837f997e6c
(libT) new API for webseed statistics: tr_torrentGetWebSpeeds()
2008-06-10 01:38:12 +00:00
Charles Kerr
e3e3bee8b5
#800 initial support for GetRight-style fetching of data through http and ftp servers specified in the .torrent's "url-list" tag
2008-06-07 21:26:41 +00:00
Charles Kerr
ab17f553c4
get RPC password protections working in libT and the gtk+ client. mac, daemon, and cli need to be synced.
2008-06-05 16:23:03 +00:00
Charles Kerr
c724a73fb4
RPC ACL: (1) add a new call for testing ACLs (2) add wildcard notation support (3) add regression tests for the ACL tester and wildcard handler
2008-06-04 17:14:58 +00:00
Charles Kerr
044bfbad39
add tr_torrentSetDoneDate() too
2008-06-03 19:42:54 +00:00
Charles Kerr
870c4d7650
add tr_torrentSetAddedDate() and tr_torrentSetActivityDate()
2008-06-03 19:22:22 +00:00
Charles Kerr
e1a23350d4
(1) add a doneDate to tr_torrent and tr_stat. (2) save tr_torrent.doneDate and tr_torrent.activityDate between sessions in the .resume file.
2008-06-03 19:16:12 +00:00
Charles Kerr
f8d40cdf00
(libT): added an ACL tester to tr_sessionSetRPCACL() and return an error string if the ACL can't be parsed.
2008-06-02 19:44:19 +00:00
Charles Kerr
5db4ca7fa3
#981 : add tr_stat.dateAdded to libT; add "sort by age" to gtk+ client
2008-06-02 04:41:55 +00:00
Charles Kerr
f6dd06c367
r5987 tweak: silence a couple of console debugging messages that snuck into the commit
2008-06-01 01:55:05 +00:00
Charles Kerr
07c1b28e9e
#838 (Adding trackers to existing torrents): add a backend API for this (tr_torrentSetAnnounceList) and implement a GUI for it in the gtk+ client.
2008-06-01 01:40:32 +00:00
Charles Kerr
468a883f23
API cleanup: s/tr_torrentRates/tr_sessionGetSpeed/
2008-05-30 15:19:07 +00:00
Charles Kerr
eb02b3e494
#972 : merge upstream version of Jean Gressmann's JSON_parser
2008-05-29 03:24:26 +00:00
Charles Kerr
f5400da1bb
(libT) shave a few bytes from tr_info and tr_torrent's memory footprints.
2008-05-26 12:52:38 +00:00
Charles Kerr
70fcc56beb
(libT) (1) shave a few bytes from tr_peer and tr_ratecontrol's footprints. (2) remove some dead code.
2008-05-26 12:14:35 +00:00
Charles Kerr
7bfe7cc471
remove unused functions tr_torrentSetActiveCallback() and tr_torrentClearActiveCallback()
2008-05-23 20:33:54 +00:00
Charles Kerr
53d8574b11
* change tr_stat.activityDate's and tr_stat.startedDate's type to time_t, since that's how everyone uses them anyway
...
* add a little more documentation to tr_stat and tr_ctor in transmission.h
2008-05-23 20:04:41 +00:00
Charles Kerr
d18fb68fbc
sine we now have two public ports (peer and rpc), rename "publicPort" as "peerPort"
2008-05-23 16:18:58 +00:00
Charles Kerr
0621c67c41
more cleanup work:
...
(1) kill the pointless "tr_tracker_stat" struct.
(2) kill the unused "tr_torrentRemoveSaved()" function.
(3) kill the redundant "nextManualAnnounceTime" variable.
(4) make the TR_ERROR_IS_* macros private.
2008-05-22 23:11:21 +00:00
Charles Kerr
26b5a16630
(libt) more janitorial work on cleaning up tr_session*() and tr_torrent*() functions: session stats, torrent count, and manual update.
2008-05-22 20:44:41 +00:00
Charles Kerr
9fdb8afdf0
(rpc) remove TR_RPC_TORRENT_CLOSING. formalize "torrent-list"'s response in the rpc spec.
2008-05-22 19:24:11 +00:00
Charles Kerr
dceabc5661
make tr_stat identical in transmission.h and rpc-spec.txt.
2008-05-22 16:59:51 +00:00
Charles Kerr
7b209acc1b
more janitorial cleanup on the "tr_session*" namespace. Today's victim: tr_handle_status.
2008-05-22 12:31:47 +00:00
Charles Kerr
e406dcc2ab
rename tr_torrentClose() as tr_torrentFree() and make it private. change client code to use tr_torrentRemove() instead. This fixes the confusion between the two methods that led to #954
2008-05-21 17:14:58 +00:00
Charles Kerr
c7b9c8c043
( #954 ) rpc: add "torrent-remove" method. rename tr_torrentDelete() as tr_torrentRemove() for consistency with various parts of the code.
2008-05-20 23:58:59 +00:00
Charles Kerr
2c79888a93
RPC/IPC redesign
2008-05-18 16:44:30 +00:00
Charles Kerr
be9427931a
ipc: add session accessor/mutators.
...
transmission.h: make the session API more consistent.
2008-05-12 16:33:17 +00:00
Charles Kerr
2186d852f1
json ipc: implement torrent-add, torrent-set-file, torrent-get-file
2008-05-12 13:05:06 +00:00
Charles Kerr
33839f77be
new utility for iterating through torrents: tr_torrentNext()
2008-05-10 00:19:00 +00:00
Charles Kerr
7ef2511ca8
#377 : preliminary https support. this commit probably breaks mac and cli and is not for the faint of heart.
2008-04-24 01:42:53 +00:00
Charles Kerr
0c1599608d
add statistics "reset" button
2008-04-22 14:07:42 +00:00
Charles Kerr
002ce54335
#848 : UPnP users always have to wait for NAT-PMP to fail first
2008-04-12 21:47:10 +00:00
Charles Kerr
fc866f51f3
minor tr_torrentStat cleanup
2008-04-12 15:56:21 +00:00
Charles Kerr
57c7fcb507
#857 : DSCP support for Transmission
2008-04-12 00:29:49 +00:00
Charles Kerr
f12ac60d0a
update a couple of the tr_stat fields based on feedback from BMW
2008-04-11 23:05:14 +00:00
Charles Kerr
77abc21659
tidy up some libtransmission filenames.
2008-04-11 17:01:13 +00:00
Mitchell Livingston
8c5da6178b
remove the ability to disable scraping - the demand for this feature is too low currently (this also reenables scraping on all clients)
2008-04-09 20:50:14 +00:00
Charles Kerr
9f3f0c03e6
#843 : download eta should consider availability
2008-04-06 14:42:47 +00:00
Charles Kerr
b71a2985b3
#684 : Use XDG basedir spec for configuration and cache files in $HOME
2008-04-05 20:12:11 +00:00
Charles Kerr
16880cee99
#765 , part 1: add backend support for disabling tracker scrapes
2008-04-05 16:49:26 +00:00
Charles Kerr
fd0e71c00a
hack on IPC a bit because it's been too long since I broke it
2008-04-03 21:38:32 +00:00
Charles Kerr
5890eaef34
encapsulate the blocklist a little better so that we can add more blocklists in the future if necessary
2008-04-01 19:20:21 +00:00
Charles Kerr
eb24ad760d
(1) make tr_torrentRates() faster.
...
(2) new function: tr_torrentGetStatus() for when you need the status but not the overhead of tr_stat
2008-04-01 02:35:04 +00:00
Charles Kerr
3e4168025b
experimental commit to save 1888 bytes from each tr_torrent
2008-03-31 19:34:20 +00:00
Charles Kerr
51a82e70c1
remove `TR_STATUS_DONE' from libtransmission's public API. It's useful as an internal state but not for code calling libtransmission.
2008-03-31 17:59:16 +00:00
Charles Kerr
24d35e7098
added tr_blocklistGetRuleCount().
2008-03-30 00:00:28 +00:00
Charles Kerr
a09b43a4b4
add tr_blocklistIsEnabled(), tr_blocklistSetEnabled(). add a blocklist flag to tr_initFull().
2008-03-29 23:12:34 +00:00
Charles Kerr
e5b04e45d5
add tr_blocklistExists( const tr_handle * );
2008-03-29 22:16:33 +00:00
Charles Kerr
e7ba6b7b15
first (and incomplete) pass at peer blocking. this commit is to get the API into SVN so the mac client can access them
2008-03-29 18:37:07 +00:00
Charles Kerr
36689ca7c3
#809 : reduce memory overhead in tr_info structure
2008-03-23 03:15:05 +00:00
Charles Kerr
c63b548195
fix bug that caused very large torrents to crash Transmission
2008-03-22 18:10:59 +00:00
Charles Kerr
56364f2ae8
add a tr_errno specifically for failed checksums so they can be differentiated from "Generic error"
2008-03-18 17:02:08 +00:00
Charles Kerr
913f2843b2
#740 : back out the previous "fix" because it caused an regression in the mac client
2008-03-18 16:26:45 +00:00
Charles Kerr
29f092197f
#138 : per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages#138: per-torrent messages
2008-03-13 03:53:18 +00:00
Charles Kerr
24e05bf3fb
harden the bitfield handling to handle corrupt messages from peers. This is in response to Ryoujin's crash report in the forums ( http://forum.transmissionbt.com/viewtopic.php?p=20414#20414 )
2008-03-02 23:44:34 +00:00
Charles Kerr
0c2f5ac1ce
expanded description of the behavior of tr_torrentParse().
2008-02-28 02:43:28 +00:00
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
8cc587a66f
more housekeeping: benc_val_t --> tr_benc
2008-02-26 21:58:58 +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
4456c2dd90
(gtk) #544 : remove fast-resume cache when appropriate
2008-02-19 05:03:56 +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
e581d5228e
add tr_ctor{Set,Get}DeleteSource()
2008-02-13 02:24:12 +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
b1cd6ecccc
remove unused "max unchoked peers" feature. fix obsolete TR_FLAG_SAVE comment.
2008-01-23 17:06:36 +00:00
Charles Kerr
0dd150844a
make tr_handleStatus() return a const
2008-01-21 18:24:37 +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
d48f7a0026
housekeeping. tweak comments, group API calls a bit.
2008-01-15 22:00:58 +00:00
Mitchell Livingston
bedfab2ccc
clarify peer upload and download
2008-01-10 00:52:02 +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
15ffb4232e
tr_stat.ratio now returns TR_RATIO_INF when appropriate
2008-01-04 19:13:30 +00:00
Charles Kerr
ce6c33b7bf
set copyright info to 2008
2008-01-01 17:20:20 +00:00
Charles Kerr
e319a6ffe4
dead code removal
2007-12-26 20:45:08 +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
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
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
93f69d2b5c
(gtk) add options to set global & per-torrent peer connection limits
2007-12-22 00:06:38 +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
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
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
1e4b3a0577
make the peer stats a little easier to understand
2007-11-27 21:39:41 +00:00
Charles Kerr
c3c4b699b9
stats
2007-11-26 20:20:46 +00:00
Charles Kerr
3aae5534bd
work on the stats a little bit.
2007-11-26 18:55:36 +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
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
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
a277382578
more download speed tweaks for situations where T is both uploading and downloading.
2007-11-18 04:24:17 +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
66c9119a84
tiennou's fix for #461
2007-11-12 15:15:51 +00:00
Charles Kerr
125bd34bbb
added `plaintext preferred' encryption option.
2007-11-08 21:20:08 +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
e6fbcaeae6
Quick & dirty fix to crasher ticket #415 .
2007-10-26 03:02:23 +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
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
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
e698756c98
remove unused flags
2007-10-15 20:58:39 +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
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
e4fec9eefd
add tr_stat.peersKnown to indicate how many peers exist in the peer `pool'
2007-10-01 15:51:54 +00:00
Charles Kerr
cba61802cf
remove newly-unused field tr_peer_stat::isConnected
2007-10-01 15:41:42 +00:00
Charles Kerr
f0c9f9a99a
add a callback to notify clients when a torrent's state changes
2007-09-28 14:51:34 +00:00
Charles Kerr
d3077bbce1
round 2 of minor revisions to tr_stat
2007-09-27 03:30:22 +00:00
Charles Kerr
439c1f38c1
some experimental code. (1) try to improve throughput to peers. (2) add first draft of new tr_stat fields requested by BentMyWookie (3) raise the per-torrent peer limit to 100 to match LibTorrent's defaults
2007-09-27 03:03:38 +00:00
Charles Kerr
ee6a0b8945
modify the tr_stat struct as hashed out by charles_ and BentMyWookie. sync gtk, ipc, and wx clients.
2007-09-26 01:55:04 +00:00
Charles Kerr
904359a049
* fix oops from last checkin
...
* remove some unused fields from internal structures
2007-09-25 22:37:23 +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
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
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
f158112ece
clarify the speedlimit comments
2007-08-03 15:55:32 +00:00
Charles Kerr
ba3dc008fc
get the socket/net code working on win32 too
2007-07-31 16:55:47 +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
79a0081092
a nice patch that makes the three most CPU-hogging functions (as reported by Shark) essentially free and reduces memory overhead by 8 bytes per piece per torrent. Lots of asserts for extra testing fun.
2007-07-28 15:43:34 +00:00
Charles Kerr
730d6df742
* fix overflow error from earlier today. (this was the crash talked about in IRC)
...
* fix long-standing error that occurred when pieceSize isn't evenly divisible by blockSize
* speed up and macro-ize piece-to-block conversions
2007-07-25 01:59:46 +00:00
Charles Kerr
dd55805012
much faster rechecking of incomplete torrents. added tr_stat_t.recheckProgress field.
2007-07-24 01:33:59 +00:00
Charles Kerr
809ec63e95
new utility function for app startup: tr_loadTorrents()
2007-07-21 18:46:54 +00:00
Charles Kerr
bbac082af5
finish splitting the rate control from one state into two states as requested by BMW
2007-07-20 08:33:59 +00:00
Charles Kerr
4ef1592e6b
more work on the speed limits as hammered out w/BentMyWookie
2007-07-20 03:24:04 +00:00
Josh Elsasser
99e471f05d
Replace nice readable bitshifts with ugly hex constants
...
to avoid the compiler warning about our weird error codes.
2007-07-18 18:09:03 +00:00
Charles Kerr
dbe96a9e82
fold per-torrent ul/dl speed cap settings into libtransmission. synchronize gtk+ client with this change. breaks os x client.
2007-07-18 05:27:45 +00:00
Charles Kerr
82fbfb4c47
disambiguate some of the tr_stat_t variables' names
2007-07-16 00:50:43 +00:00
Charles Kerr
7229f6c56b
remove more functions made obsolete by tr_torrentFile().
2007-07-15 20:29:57 +00:00
Charles Kerr
59459feb26
replace tr_torrentGetFileStatus() with tr_torrentFiles() for BMW
2007-07-15 20:05:32 +00:00
Charles Kerr
321b01d430
make tr_torrentStat() const.
...
malloc, rather than calloc, the buffer in strndup.
2007-07-15 19:12:54 +00:00
Charles Kerr
ad6ae58e06
fix the bugs outlined by cluthi81 in ticket #255 .
2007-07-15 17:36:56 +00:00
Charles Kerr
73ca83a455
split tr_stat_t's peersTotal into peersTotal and peersConnected
2007-07-15 17:19:07 +00:00
Charles Kerr
4311b160b5
add tr_torrentGetFileStatus() for BentMyWookie
2007-07-15 03:26:22 +00:00
Charles Kerr
b667ad3037
... and do the same for tr_torrentGetFileDL()
2007-07-13 01:17:21 +00:00
Charles Kerr
a3eb718162
revise tr_torrentSetFilePriorities() for BMW
2007-07-13 00:27:47 +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
adb3d2399b
fix dnd-setting bug created while splitting DND and priorities into two separate entities
2007-07-10 03:41:16 +00:00
Charles Kerr
ed226a32ac
splitting dnd and priorities apart, and moving the file storage for those fields into fastresume
2007-07-10 03:12:46 +00:00
Charles Kerr
58f89cdc77
replace the unhelpful error message "error: insufficient resources" with more descriptive cases
2007-07-01 01:50:14 +00:00
Charles Kerr
6c6732ed39
make tr_torrentInfo() a const function
2007-06-30 13:36:58 +00:00
Charles Kerr
6890359001
Make tr_torrentParseHash() public
2007-06-28 23:35:02 +00:00
Charles Kerr
831cd4a3da
better documentation on tr_torrentParse()'s behavior
2007-06-28 01:20:10 +00:00
Charles Kerr
63fce9cf06
simplify tr_torrentParse() based on BWM's feedback
2007-06-27 23:22:09 +00:00
Charles Kerr
8e401729cd
Modified tr_torrentCanAdd() to give the new functionality BMW suggests
2007-06-27 14:54:31 +00:00
Charles Kerr
47a5ff4120
add tr_torrentCanAdd() as per BentMyWookie's request... clear tracker error string when restarting... fix r2202 "completed" announce bug.
2007-06-27 05:14:38 +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
Charles Kerr
06e761d950
* fix error checking large files reported by Gimp_
...
* portability changes to pathname/filename building
* small gratuitous changes
2007-06-18 19:39:52 +00:00
Charles Kerr
932438eba5
Fix very large file error reported by Gimp_
2007-06-18 05:05:16 +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
Mitchell Livingston
4ada334f57
patches from Charles Kerr to update the Inspector in GTK and fix some memory leaks
2007-06-06 00:30:13 +00:00
Mitchell Livingston
0f9766145b
patch from Charles Kerr: perform file checking one at a time ( fixes #124 )
2007-05-28 15:23:28 +00:00
Mitchell Livingston
b4d71e2e9a
store date of last activity
2007-05-25 19:14:42 +00:00
Josh Elsasser
81a6d96d6e
Remove tr_handle_t argument from tr_torrentClose().
2007-05-23 04:45:20 +00:00
Mitchell Livingston
3af24be44e
separate code for determining if there is a download with same name and location
2007-05-11 18:56:59 +00:00
Josh Elsasser
5fe9d0fcea
Check error codes correctly in instead of reporting all errors as 'assert'.
...
Add TR_ERROR_IO_SPACE and TR_ERROR_IO_RESOURCES.
2007-05-09 18:41:22 +00:00
Josh Elsasser
a3ca76cced
Don't bencode signed integers as unsigned.
2007-05-09 07:00:08 +00:00
Mitchell Livingston
7e19df5444
only allow one active transfer with the same name in the same location
2007-05-05 14:43:52 +00:00
Mitchell Livingston
305ccf1cd5
add ability to remove torrent cache
2007-04-28 01:34:39 +00:00
Mitchell Livingston
ea839e8ca9
expand the last commit a bit so that ratio is calculated with the actual downloaded amount if amount downloaded in T is 0. This should eliminate ever showing infinity for ratio.
2007-04-20 23:51:15 +00:00
Josh Elsasser
63bb617fa4
Add more I/O error codes.
2007-04-20 02:05:07 +00:00
Josh Elsasser
498cbddb2e
Add remaining file download to tr_stat_t.
2007-04-04 00:55:53 +00:00
Josh Elsasser
58333068e8
Cache peer client name.
...
Don't create an 'unknown client' name with nonprintable characters.
2007-04-03 18:22:58 +00:00
Josh Elsasser
7e03349f76
Merge r1634 to trunk.
2007-04-02 20:38:23 +00:00
Josh Elsasser
b8d03e5958
Add API function to disable PEX for a torrent.
2007-03-31 19:19:09 +00:00
Josh Elsasser
3394f8d2a4
Revert unintended changes.
2007-03-26 19:21:25 +00:00
Josh Elsasser
d390c4c871
Don't save or load cached peers for private torrents.
2007-03-26 19:19:33 +00:00
Josh Elsasser
09c87aad84
Merge PEX branch, I hope this works.
2007-03-23 08:28:01 +00:00
Josh Elsasser
92637d591e
Optionally return the info hash after attempting to load a duplicate torrent.
2007-03-22 18:07:22 +00:00
Josh Elsasser
494ca91fd6
Append a frontend-specific tag to saved torrents.
...
This prevents one frontend from deleting a saved torrent used by another.
2007-03-13 06:56:50 +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
efdc43ebb7
Add function to return the progress of each file in a torrent.
2007-02-23 11:26:48 +00:00
Josh Elsasser
f67ad8cf47
Add a new interface to make the public port available to the frontend.
2007-02-06 04:26:40 +00:00
Josh Elsasser
263bf6ff0c
Check for private flag in main dict too.
2007-01-27 22:37:10 +00:00
Eric Petit
7a6401c7b4
Split transmission.c: everything related to the accept/upnp/choking
...
thread was moved to shared.c
2007-01-19 04:42:31 +00:00
Eric Petit
e5e6a8b5df
Merge io branch into trunk
2007-01-14 12:00:21 +00:00
Mitchell Livingston
becb19f763
global bandwidth limits only apply to transfers that are not set to overide them
2007-01-08 21:53:55 +00:00
Mitchell Livingston
d6104b6f71
move ratio from mac code to libT code
2006-12-30 19:24:09 +00:00
Mitchell Livingston
e880aa48a5
make function names a little more specific
2006-12-27 00:22:38 +00:00
Mitchell Livingston
776153c126
better placement of manual announce
2006-12-26 18:40:51 +00:00
Mitchell Livingston
01ebeae829
stop crashing
2006-12-18 06:16:27 +00:00
Mitchell Livingston
7274eebefc
store upload rate / download rate in peer struct
2006-12-18 05:04:35 +00:00
Josh Elsasser
343e51abbe
Add peer's port to tr_peer_stat_t.
2006-12-18 03:45:22 +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
4306c7cfa5
add support in libT and the mac interface for displaying comment, creator, and date created
2006-11-23 01:38:18 +00:00
Eric Petit
3f129d8829
Adds progress in tr_peer_stat_t
2006-11-10 04:21:46 +00:00
Mitchell Livingston
c521f412ad
in info show the number of incoming connections next to total connections
2006-10-13 18:58:12 +00:00