Commit Graph

151 Commits

Author SHA1 Message Date
Charles Kerr 3b8d1e13c4 uninteresting minor stuff like adding const. this commit is just to reduce the shear between trunk and what lands in the file-selection branch. 2007-06-09 15:36:46 +00:00
Mitchell Livingston 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 3f2861f0c7 determine upload/download rates the old way, which is not the most accurate way at a few points, but should have a positive overall impact 2007-05-16 02:03:18 +00:00
Mitchell Livingston a5bf61534e update peer id to include maintenance number 2007-04-11 20:27:41 +00:00
Josh Elsasser 40397dd9f2 Unbreak azureus peer protocol.
Add more peer debug messages.
Fix pex interval.
2007-03-28 06:28:34 +00:00
Josh Elsasser 09c87aad84 Merge PEX branch, I hope this works. 2007-03-23 08:28:01 +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 5a62e83689 Don't use sprintf, strcpy, or strcat. 2007-03-12 00:04:11 +00:00
Josh Elsasser c4ad02aaf3 Remove natpmp and upnp locks and rely on the shared lock. 2007-02-06 05:37: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
Eric Petit ddcfa59c96 Always take the global lock when accessing the torrent list (fixes a race condition crash) 2007-01-29 08:24:09 +00:00
Josh Elsasser adfd4e7ca7 Rework the port handling a bit to allow different bound and advertised ports. 2007-01-27 21:17:10 +00:00
Eric Petit 14aa4e5ab0 Officially give up on making libT reentrant, and simplify our code instead 2007-01-21 07:16:18 +00:00
Eric Petit 09c096731c Another split 2007-01-19 08:36:49 +00:00
Eric Petit 7fc607cf2a When we count the peers we are UL to, just check whether they are chocked 2007-01-19 05:15:22 +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 3e6d071e0d clean up 2007-01-19 01:39:33 +00:00
Mitchell Livingston 348f35f505 retain/release arrays instead of using mutable arrays, and file table only shows files when a single torrent is selected 2007-01-17 02:43:07 +00:00
Mitchell Livingston bd318306e9 remove unneeded cast 2007-01-17 01:32:45 +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 ca2c729abd support in libT for individual torrent speed caps 2006-12-27 01:04:30 +00:00
Mitchell Livingston e880aa48a5 make function names a little more specific 2006-12-27 00:22:38 +00:00
Mitchell Livingston 804b04a41b if torrent is active you can't update the announce info 2006-12-26 20:11:30 +00:00
Mitchell Livingston dc4e0e212b lock torrent when manual announcing 2006-12-26 20:01:16 +00:00
Mitchell Livingston 776153c126 better placement of manual announce 2006-12-26 18:40:51 +00:00
Eric Petit e0ba0d8f8f Fixes a crash and a race condition 2006-12-18 20:48:46 +00:00
Mitchell Livingston 01ebeae829 stop crashing 2006-12-18 06:16:27 +00:00
Mitchell Livingston 4201476099 never mind that 2006-12-18 05:32:32 +00:00
Mitchell Livingston 80bc8e022b uncommit this for now until it can work 2006-12-18 05:28:10 +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 5cdd717e22 use existing variable and remove redundant call 2006-12-17 17:23:21 +00:00
Mitchell Livingston d31bd138fb english grammar 2006-12-17 17:09:00 +00:00
Mitchell Livingston 3374ce9a32 merge multitracker branch:
Adds announce list, support for code 301/302 redirect, improvements to mac inspector, better queueing with errors, random extra wait of up to a minute between announces, and other changes.
2006-12-17 16:36:27 +00:00
Josh Elsasser 44f8325312 Merge scrape branch:
Automatically scrape trackers as needed.
  If tracker supplies a trackerid then use it (untested).
  Use tracker's min interval, clamped to the same range as interval.
  Show total completed downloads in the MacOS X frontend.
2006-12-02 01:46:54 +00:00
Eric Petit 3f129d8829 Adds progress in tr_peer_stat_t 2006-11-10 04:21:46 +00:00
Mitchell Livingston fa59a58a82 don't know how this happened... 2006-10-13 19:04:29 +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
Josh Elsasser d202bc4f1e Fix a few minor style nits.
Use a floats instead of uint8_ts for piece percentages.
2006-10-13 00:23:20 +00:00
Mitchell Livingston 663c671f93 Initial attempt at against the completeness of a specific piece. 2006-10-12 23:34:20 +00:00
Josh Elsasser f7c3910a79 Fix possible uint64_t underflow which could cause insanely huge (16,000,000 TB)
upload and/or download totals to be reported to the tracker.
2006-09-26 22:36:04 +00:00
Eric Petit 8a7edafb4e Don't attach peers to inactive torrents (should fix the CLOSE_WAIT connection leaks) 2006-09-26 11:16:40 +00:00
Eric Petit c6df4005e1 Remember whether a peer comes from an incoming or outcoming connection 2006-09-25 21:56:52 +00:00
Josh Elsasser 0257761670 Merge nat-traversal branch to trunk. 2006-09-25 18:37:45 +00:00
Josh Elsasser 43e6dd56aa Rework the message stuff again to be easier on the frontend. 2006-08-22 02:12:58 +00:00
Josh Elsasser d07b688c86 Unbreak BeOS build. 2006-08-18 08:46:19 +00:00
Josh Elsasser 86d9310274 Try to keep track of the overall speed of the swarm.
Patch by Denis Ahrens.
2006-08-16 19:21:09 +00:00
Mitchell Livingston 199bb19e14 Check for connected peers, as well as better peer table resizing behavior. 2006-08-15 00:59:44 +00:00
Josh Elsasser f41a6ade33 Retrieve peer address as a string via tr_torrentPeers(). 2006-08-14 22:42:32 +00:00
Mitchell Livingston ebf7b6eac1 Lock and unlock while accessing peers in libtransmission.
Handle lack of client id in clients.h rather than the gui.
2006-08-14 22:27:34 +00:00
Mitchell Livingston 3b56abf6fa Add uTorrent to clients. 2006-08-13 21:38:19 +00:00
Mitchell Livingston f6eea9e591 Free even more memory. 2006-08-13 21:24:23 +00:00
Mitchell Livingston 62d9f1ebb1 Get peers separately from the rest of the stats. This should also get rid of a memory leak. 2006-08-13 21:16:18 +00:00
Mitchell Livingston e392a84e36 Fix a memory leak. 2006-08-13 19:55:59 +00:00
Mitchell Livingston f76f1c3091 Some changes to getting peers in libtransmission. Now it uses a separate structure for the GUI accessing peers. 2006-08-13 19:43:15 +00:00
Mitchell Livingston e17b795634 lock torrent before accessing peers 2006-08-13 16:19:19 +00:00
Mitchell Livingston 2a36da8b60 Some new accessors for libtransmission...I don't see what harm these can do 2006-08-12 00:38:26 +00:00
Mitchell Livingston af77d3d170 Small iterator change in libtransmission by oleo. 2006-08-09 22:53:27 +00:00
Eric Petit 67cbcb68b1 AmigaOS4 patch by Andrea Palmate 2006-07-23 19:39:02 +00:00
Eric Petit f199e0a9d9 Revert [619] 2006-07-16 19:39:23 +00:00
Mitchell Livingston 5d36721a15 Remove old Sparkle... 2006-07-16 19:28:19 +00:00
Josh Elsasser e75f0a6fab What was I thinking? 2006-07-11 20:53:46 +00:00
Josh Elsasser 2c5bb97b0b Fix a couple more memory leaks in edge cases. 2006-07-07 23:13:51 +00:00
Josh Elsasser 02e5485c0f Move the ETA cap of 99:59:59 from libtransmission to the MacOS X GUI.
Display the ETA better in the GTK GUI.
2006-07-04 22:31:14 +00:00
Eric Petit e1cf898983 Don't crash when pausing a torrent that is checking files
(refs http://transmission.m0k.org/forum/viewtopic.php?p=2445#2445)
2006-06-20 14:29:12 +00:00
Eric Petit 2e177da783 Quick fix for #69 (flush disk cache when complete) 2006-06-20 00:34:24 +00:00
Eric Petit cca3cab9fc Fixes #22 (all torrents apparently at 0 % when T restarts) 2006-06-13 00:28:03 +00:00
Josh Elsasser 0600f3d4aa Add support to libtransmission and the MacOS X GUI for saving private copies of
torrent files.
2006-06-09 19:53:35 +00:00
Eric Petit f98fe6a1b0 Added $Id$ keywords and updated a few headers 2006-05-29 21:21:23 +00:00
Eric Petit 3db5194740 Clean up, perform all DNS resolutions in a common thread. This should
fix the remaining issues with many open torrents
2006-04-22 21:39:17 +00:00
Eric Petit 58ec8a3b19 Show tracker errors again 2006-04-08 15:56:26 +00:00
Eric Petit 62bcf17b22 Fixed a couple of bugs introduced in [164] 2006-04-08 15:10:52 +00:00
Eric Petit 7449c80d67 Should fix a race condition 2006-04-07 20:17:40 +00:00
Josh Elsasser f256fa2cce Fixed bug where incorrect stats were being reported to the tracker.
This was introduced when download and upload totals became persistent.
2006-04-07 17:30:30 +00:00
Eric Petit b9a53769f9 Adds download rate limit 2006-04-07 12:09:08 +00:00
Josh Elsasser 794bd1a801 I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
I will not commit without compiling first.
2006-04-05 09:37:18 +00:00
Josh Elsasser 3ea2daa3bc Bind the default port when starting the first torrent
if it hasn't been done already.
2006-04-05 09:27:10 +00:00
Eric Petit a1830a25bf Merge from branches/new_api:r161 2006-03-23 12:39:39 +00:00
Eric Petit eba49d3d2a Quick fix for the 'getting unconnectable' problem (adds a timeout on
incoming connections)
2006-03-03 12:53:55 +00:00
Josh Elsasser a2066e56bf libtransmission:
Lazily bind the listening port to avoid spurious
 'Could not bind port 9090' error on startup.
2006-02-24 14:10:15 +00:00
Josh Elsasser a72881fdda Save resume information when a torrent finishes downloading. 2006-02-08 17:48:18 +00:00
Josh Elsasser 9911026409 Merge the version 1 extensible resume file format,
as well as compatability code to read the existing version 0 files.
Note that older versions of transmission won't understand the version 1 format
and a hash check will be done on all the files.

Save uploaded and downloaded totals in the resume file.
2006-02-08 16:31:49 +00:00
Eric Petit fcd1c9a1a8 Force rates to 0 when paused, and download rate to 0 when seeding.
Increased OS X UI update interval to 1 second.
2006-02-07 02:32:50 +00:00
Eric Petit ae8ef0dc83 Fixes a little memleak 2006-01-30 07:01:35 +00:00
Eric Petit cf392ea2c6 New choking algorithm (still needs work, it's inefficient, untested and
misses optimistic choking)
2006-01-30 06:54:31 +00:00
Eric Petit 76079f50e3 Fixed the build 2006-01-30 06:07:06 +00:00
Eric Petit 8c733df6a6 Added a rate calculator for each peer
Set up files for the choking algorithm (does nothing yet)
2006-01-30 04:42:43 +00:00
Eric Petit 28d43da1d1 Removed now unused tables and some now unused code 2006-01-30 02:13:40 +00:00
Eric Petit 58ec7a7e97 Rewrote rate control, background work for the download limit, the dl/ul
limits per torrent and for the choking algorithm
2006-01-30 01:58:27 +00:00
Eric Petit 07b9da73fc Update 2006-01-11 2006-01-12 19:12:58 +00:00
Eric Petit f32ca66210 Update 2005-12-29 2006-01-12 19:01:41 +00:00
Eric Petit 6c0a54caa5 Update 2005-12-25 2006-01-12 18:58:57 +00:00
Eric Petit 616ae26efa Update 2005-12-13 2006-01-12 18:52:15 +00:00
Eric Petit 835c3284dd Update 2005-11-24 2006-01-12 18:40:47 +00:00
Eric Petit 23ef3653e3 Update 2005-11-21 2006-01-12 18:33:20 +00:00
Eric Petit aad7bf22cb Update 2005-11-18 2006-01-12 18:32:29 +00:00
Eric Petit d2cc6ce7c6 Update 2005-11-17 2006-01-12 18:29:20 +00:00
Eric Petit 8adc2d7338 Update 2005-11-01 2006-01-12 18:20:48 +00:00