Commit Graph

713 Commits

Author SHA1 Message Date
Charles Kerr d4e1c19e32 better algorithm to decide on a good piece size. (SoftwareElves & charles_) 2007-06-19 06:01:30 +00:00
Charles Kerr 5128d0a434 fix terribly nasty bencode corruption bug from r2024 regarding the sorting of dictionary keys in tr_bencDictAdd(). this corrupts all the pointers that are already floating out there to existing values in the dictionary... if BitTornado really needs these to be sorted, then we should sort a temporary copy in tr_bencSave(), not here in our internal structures. 2007-06-19 03:01:57 +00:00
Charles Kerr 64ce2edbfb * makemeta: don't add dotfiles to the torrents
* bencode: trying to chase down a memory leak
2007-06-19 01:49:56 +00:00
Charles Kerr 4eea50e991 ugly code removal: we were calling stat() three times on each file! (BMW: builder struct changed slightly... this shouldn't affect the mac client but you might want to recompile to confirm) 2007-06-19 00:08:39 +00:00
Mitchell Livingston a4d5dfa328 avoid ridiculously rate divide-by-0 2007-06-19 00:08:06 +00:00
Charles Kerr 9791bb6f22 better error message (BigBossman) 2007-06-18 21:03:10 +00:00
Charles Kerr 64c21325e8 make the torrent file parser errors more useful. (John_Clay) 2007-06-18 20:56:04 +00:00
Charles Kerr 7afba516ff fix platform.c oops reported by BigBossman 2007-06-18 20:36:25 +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
Eric Petit 1636fc70d2 BeOS fixes 2007-06-14 11:41:09 +00:00
Josh Elsasser cf6994f559 Fix upnp verbose logging to show outgoing http requests. 2007-06-10 23:12:43 +00:00
Josh Elsasser 0eaedc2fe3 Return bad-format message when appropriate.
Fix supported message to be more accurate.
2007-06-10 22:56:18 +00:00
Josh Elsasser 1315161ae4 Add some code for verbose UPnP logging which can be enabled at compile-time. 2007-06-10 22:26:59 +00:00
Josh Elsasser de7287a829 Add a missing quote and fix UPnP regressions. 2007-06-10 22:01:46 +00:00
Josh Elsasser b19a3ec7d9 Add bad-format message. 2007-06-10 20:31:52 +00:00
Eric Petit ba5bb320ca Bencoded dictionaries are now sorted alphabetically, this should fix
compatibility with some clients, incl. BitTornado-based ones.
(Reported by roee88 from LH-ABC)
2007-06-10 15:38:58 +00:00
Charles Kerr 3b8d1e13c4 uninteresting minor stuff like adding const. this commit is just to reduce the shear between trunk and what lands in the file-selection branch. 2007-06-09 15:36:46 +00:00
Mitchell Livingston 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 f7501a0dd6 attempt to kill an io bug 2007-05-31 23:40:56 +00:00
Mitchell Livingston 16627cc209 patch to avoid unneeded io checking when starting 2007-05-30 05:16:43 +00:00
Mitchell Livingston 3852bbb6e6 some rewriting of the filter bar so it can dynamically place the buttons, and some extra, yet-to-be-used code 2007-05-29 02:00:23 +00:00
Mitchell Livingston 73c6c3324e when pausing and then resuming a checking transfer, recheck from the start 2007-05-28 22:32:39 +00:00
Mitchell Livingston 78afc2f205 swap a condition in the io code 2007-05-28 16:51:18 +00:00
Mitchell Livingston c8ac8e312b make stalled check work for minutes, not seconds 2007-05-28 16:40:56 +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 422fff124c remove double malloc 2007-05-27 23:35:59 +00:00
Mitchell Livingston 0eca8679f8 patch to speed up io from denisx 2007-05-27 23:32:26 +00:00
Josh Elsasser e24eea37a6 Prevent our __unused hack from breaking standard headers on linux. 2007-05-27 16:30:04 +00:00
Mitchell Livingston 3d48ed389d swap download and upload activity checks 2007-05-25 21:44:26 +00:00
Mitchell Livingston e5a199d813 set activity when actually uploading 2007-05-25 21:38:24 +00:00
Mitchell Livingston 5441c5e145 define as activity as when uploading/downloading occurs 2007-05-25 21:20:54 +00:00
Mitchell Livingston b4d71e2e9a store date of last activity 2007-05-25 19:14:42 +00:00
Mitchell Livingston 7b64d78751 fix some layout formatting 2007-05-25 16:21:59 +00:00
Mitchell Livingston 8696495ee2 patch from softwareelves that relaxes the requirements for activity for peers in low peer situations 2007-05-24 20:09:32 +00:00
Mitchell Livingston 07bc103001 this shouldn't have been committed 2007-05-24 16:01:20 +00:00
Mitchell Livingston 13ab13d0d0 fix bug where when a file location was changed the valid download amount would double 2007-05-24 15:57:04 +00:00
Josh Elsasser 8fbb4eab67 Move a macro. 2007-05-24 07:11:59 +00:00
Josh Elsasser 28a4d4544e Rename ipc to ipcparse 2007-05-24 04:05:50 +00:00
Josh Elsasser c52162219e Silence some warnings. 2007-05-24 04:02:36 +00:00
Josh Elsasser 8d61b3e49e Move ipc parsing code into libt. 2007-05-24 03:44:40 +00:00
Josh Elsasser 81a6d96d6e Remove tr_handle_t argument from tr_torrentClose(). 2007-05-23 04:45:20 +00:00
Mitchell Livingston 1e44ce5e13 show Blizzard Downloader actual version (this could become wrong in future versions) 2007-05-21 15:25:28 +00:00
Mitchell Livingston c00208a8f6 add Blizzard Downloader to clients (still need to figure out the exact way version is shown) 2007-05-21 15:02:11 +00:00
Mitchell Livingston 913a83ed27 when seeding don't connect to seeders...it's just common sense 2007-05-16 03:05:25 +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 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 5aa4e9a664 differentiate old-style and new-style Transmission peer id (so version 1.01, etc is identified correctly) 2007-05-09 03:05:38 +00:00
Mitchell Livingston d2d8f9cf3c add BTQueue to clients 2007-05-09 02:55:10 +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 91e4607c64 remove inaccurate comments about announce interval 2007-05-04 17:44:31 +00:00
Mitchell Livingston 8345d49e29 add an option to reverse the sort order 2007-05-02 19:35:34 +00:00
Mitchell Livingston 7105312fba add a missing function declaration 2007-04-30 19:43:43 +00:00
Mitchell Livingston f09cc4c7f3 add Bitflu and FoxTorrent to clients 2007-04-30 01:29:00 +00:00
Mitchell Livingston 7100463899 ensure the download/upload rates that are sent to the tracker are reset when sending "started" 2007-04-29 15:28:56 +00:00
Mitchell Livingston a8a2e03d13 use malloc instead of calloc 2007-04-28 03:44:09 +00:00
Mitchell Livingston 305ccf1cd5 add ability to remove torrent cache 2007-04-28 01:34:39 +00:00
Josh Elsasser 9aaa36a431 Fix a parsing bug which could be triggered by a truncated xml file. 2007-04-26 05:40:24 +00:00
Mitchell Livingston 8fdce9f5a7 send port info 2007-04-22 15:05:14 +00:00
Mitchell Livingston 16aad395e2 streamline eta calculation 2007-04-21 13:57:30 +00:00
Mitchell Livingston 83a565b5f1 simplify ratio calculation a little 2007-04-21 13:48:05 +00:00
Mitchell Livingston d31d79b15b determine ratio by using download amount as the larger of amount downloaded by T and percent times file size 2007-04-21 06:38:37 +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
Mitchell Livingston dbc1e1619e if seeding without ever downloading with T, calculate ratio by using the file size as amount downloaded 2007-04-20 23:31:49 +00:00
Josh Elsasser 63bb617fa4 Add more I/O error codes. 2007-04-20 02:05:07 +00:00
Josh Elsasser f9613c4dbc Quick hack to get some PPP UPnP devices working. 2007-04-20 01:27:58 +00:00
Josh Elsasser 312fe89d7b Add some debugging code that's handy for parsing upnp root files. 2007-04-20 00:39:52 +00:00
Mitchell Livingston 049e1dbebf better identify some versions of Bits on Wheels 2007-04-19 06:22:37 +00:00
Josh Elsasser 5495191412 Fix paths on OSX. 2007-04-18 19:32:53 +00:00
Josh Elsasser 6f1c25a22e Don't use uninitialized variables. 2007-04-18 16:41:37 +00:00
Josh Elsasser 132e4f5c8c Merge daemon branch to trunk. 2007-04-18 16:39:10 +00:00
Josh Elsasser 19c4640dbd Fix stupid, stupid mistake preventing frontend from seeing changed public port. 2007-04-17 02:35:14 +00:00
Josh Elsasser 32f9de0ab9 Don't disconnect azureus peers with a newer peer protocol version,
they seem to be able to speak version 1 to us just fine.
Fix a bug with disconnecting peers when attempting to send empty PEX message.
2007-04-16 21:21:00 +00:00
Josh Elsasser 1323459ad4 Fix port crap. 2007-04-16 05:48:52 +00:00
Josh Elsasser 57d06d55e8 Don't try port mapping if binding the port fails. 2007-04-15 07:36:24 +00:00
Josh Elsasser bb6f766112 Escape nonprintable characters in TYPE_STR values in tr_bencPrint output. 2007-04-15 06:21:12 +00:00
Mitchell Livingston a5bf61534e update peer id to include maintenance number 2007-04-11 20:27:41 +00:00
Mitchell Livingston a14208fbf6 typo fix in new message 2007-04-11 14:14:04 +00:00
Josh Elsasser 8ed9e5d964 Replace the 'Nice try...' message with something more reassuring. 2007-04-11 05:31:40 +00:00
Josh Elsasser eccba76d2b Fix UPnP for vendors which specify relative paths and no urlbase. 2007-04-09 23:06:28 +00:00
Josh Elsasser e15e9e72ee Whoops, set tr_info_t->torrent for non-saved torrents again. 2007-04-08 21:25:01 +00:00
Josh Elsasser aeb6efb6dd Refactor multitracker code a bit. 2007-04-08 05:41:44 +00:00
Mitchell Livingston 704346726e change and simplify the version string a bit 2007-04-07 18:58:56 +00:00
Mitchell Livingston 96e9685c6a add missing ) 2007-04-06 01:52:16 +00:00
Mitchell Livingston 5a74dcf285 add maintenance number (z in x.y.z) to user-agent 2007-04-05 23:26:14 +00:00
Mitchell Livingston 91f7df5efd add qBittorrent to clients 2007-04-05 22:07:44 +00:00
Eric Petit 127a26bc7b Don't assume that peers send us blocks in the same order we sent the requests (another cause of overdownloading) 2007-04-05 16:23:00 +00:00
Eric Petit a1a09d21ab Send 'cancel' messages when getting choked, in case the peer doesn't drop our previous requests as expected (one cause of overdownloading) 2007-04-05 16:01:40 +00:00
Josh Elsasser 498cbddb2e Add remaining file download to tr_stat_t. 2007-04-04 00:55:53 +00:00
Josh Elsasser fea458dcb5 I suck at logic, bad. 2007-04-03 18:43:26 +00:00
Josh Elsasser 5035d519cc Don't return a NULL client string when not connected. 2007-04-03 18:43:01 +00:00
Josh Elsasser 0cb6a81077 Don't try to generate a client string for a peer before we have their handshake. 2007-04-03 18:34:55 +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
Mitchell Livingston dc456f31e6 add BitBuddy to clients 2007-04-03 13:30:19 +00:00
Josh Elsasser 4cdada4c1f Use frontend-specific tags for resume files. 2007-04-03 05:39:41 +00:00
Josh Elsasser 7d67c4b457 Fix benc list allocations for like the fourth time.
Hopefully this time it actually works.
2007-04-03 00:51:22 +00:00
Josh Elsasser 574902b461 Fix benc list/dict allocation. 2007-04-02 21:19:53 +00:00
Josh Elsasser 9bb7063378 Silence some warnings. 2007-04-02 20:49:08 +00:00
Josh Elsasser 7e03349f76 Merge r1634 to trunk. 2007-04-02 20:38:23 +00:00
Mitchell Livingston 593bf0e71a add TuoTu to clients 2007-04-01 01:24:36 +00:00
Josh Elsasser b8d03e5958 Add API function to disable PEX for a torrent. 2007-03-31 19:19:09 +00:00
Josh Elsasser a3ad4c4cc4 Unbreak multifile torrents. 2007-03-31 19:10:32 +00:00
Josh Elsasser ebcc73121b Remove tr_bencListIter(), it was a stupid idea. 2007-03-31 17:40:28 +00:00
Mitchell Livingston f42bf86042 add CTorrent to clients 2007-03-31 00:14:32 +00:00
Josh Elsasser 5a59d210c4 Truncate files that are too large during initial hash check. 2007-03-30 17:35:23 +00:00
Josh Elsasser 978b5cec11 Add iterator function for bencoded lists. 2007-03-30 00:12:39 +00:00
Josh Elsasser 0c1c57a62a Eliminate an error-prone varargs function. 2007-03-29 21:02:59 +00:00
Josh Elsasser 66cb8d5835 Move debug message, we don't want to see it 30 times a second. 2007-03-29 01:09:03 +00:00
Josh Elsasser 367426b51b Show peers found and used when adding new peers.
Accept --without-foo in addition to --disable-foo in the configure script.
2007-03-29 00:19:09 +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
Mitchell Livingston 84fad8a25f slightly updated help 2007-03-28 01:23:21 +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 df24b7bc09 Fix private flag check to treat torrents with private=0 as public. 2007-03-25 15:37:08 +00:00
Josh Elsasser d976deba1a A couple trivial improvements to tree.h
Import queue.h from openbsd.
2007-03-23 08:41:15 +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
Mitchell Livingston ccf8d753c6 improve KTorrent id a bit more 2007-03-16 14:28:57 +00:00
Mitchell Livingston 04da2af57c more accurate ktorrent client id 2007-03-16 04:53:40 +00:00
Mitchell Livingston bdde9a60f6 silence some warnings 2007-03-14 02:20:35 +00:00
Mitchell Livingston aa1705226c add BTG to clients 2007-03-14 02:08:40 +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 18c171d0ae Send the correct bitfield in the bitfield message. 2007-03-09 01:43:10 +00:00
Josh Elsasser 67bfe9af61 Merge bitfield fix from r1548 to the trunk. 2007-03-08 06:04:47 +00:00
Mitchell Livingston df6877d104 "creator" was set to "comment" by a typo in [1524] 2007-03-06 03:39:48 +00:00
Josh Elsasser 0e79140f26 Don't clobber the private flag during torrent initialization.
Display if the private flag is set in transmissioncli -i
2007-03-06 01:58:14 +00:00
Josh Elsasser c3acb84ab5 Fix calloc args. 2007-03-06 00:56:30 +00:00
Josh Elsasser fc76c65794 Check all offsets and lengths received from the peer before using them. 2007-03-06 00:49:35 +00:00
Josh Elsasser e9b4fd8aff Do bounds checking on bitfields. 2007-03-05 23:03:38 +00:00
Josh Elsasser caebe8b862 Use memset instead of bzero. 2007-03-05 03:41:13 +00:00
Josh Elsasser 2e65e41d75 Check for zero-length torrent name after stripping slashes. 2007-03-05 00:18:05 +00:00
Josh Elsasser 41a81769e3 Better checking of metainfo.
Strip / out of filenames and path components.
Safely handle . and .. in file paths.
2007-03-05 00:07:48 +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 963a4fdc81 Clamp file progress to 0.0-1.0
Clear focus when opening files dialog.
2007-02-23 11:49:18 +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
Mitchell Livingston 0ee76befd9 remove unused custom subclass 2007-02-16 02:56:19 +00:00
Mitchell Livingston 6eb1677fd4 updated formatting for TorrentStorm 2007-02-14 16:33:17 +00:00
Mitchell Livingston f983fe04a6 add Shad0w's client 2007-02-14 16:30:11 +00:00
Mitchell Livingston 62bbab9ab5 added Tribler to clients 2007-02-14 16:21:59 +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
Josh Elsasser b2fb0bbf3c Clean up NAT-PMP code a little.
Correctly handle a NAT-PMP device mapping a different public port than requested.
2007-02-06 03:24:55 +00:00
Mitchell Livingston 5d2ae4eb61 simplify options for download limits in inspector with 3 check states: mixed for system defaults, checked for override with limit, and no check for no limit 2007-02-02 17:33:32 +00:00
Mitchell Livingston 370e9ab355 do the same calculation one time per loop 2007-01-31 16:23:07 +00:00
Mitchell Livingston 85044acbd6 add Ares Galaxy to clients 2007-01-31 02:11:18 +00:00
Mitchell Livingston 4871222fa5 add Deluge and another Shareaza format to clients 2007-01-31 02:08:32 +00:00
Eric Petit 6ab640c50b Fixes a race condition 2007-01-30 20:06:42 +00:00
Eric Petit 706a2ade11 Ugly workaround for the deadlock introduced in [1445] 2007-01-29 12:16:56 +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 6ebeef7924 Correctly bencode strings containing nul characters. 2007-01-28 23:26:57 +00:00
Josh Elsasser 3388b93542 When sending a nat-pmp packet, treat EHOSTDOWN as a temporary error. 2007-01-28 08:54:19 +00:00
Josh Elsasser 0ac5a12189 Clean up the peer message code a little. 2007-01-28 02:23:09 +00:00
Josh Elsasser f884a9c4d4 Store the peers's listening port instead of the peer connections's remote port. 2007-01-28 00:24:41 +00:00
Josh Elsasser 263bf6ff0c Check for private flag in main dict too. 2007-01-27 22:37:10 +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
Josh Elsasser 1a55f5272d Remove misleading error message. 2007-01-26 01:14:15 +00:00
Josh Elsasser 7af80be925 Fix a case where NAT-PMP could falsely report a mapped port. 2007-01-25 21:23:31 +00:00
Josh Elsasser ace19f1003 Fix stupid mistake. 2007-01-23 23:46:10 +00:00
Eric Petit 1eb3cf2a8e Should fix #193 2007-01-23 20:54:54 +00:00
Eric Petit c1963147d3 Probably fixes the recent problem with disappearing peers 2007-01-23 17:59:21 +00:00
Eric Petit 2bad2cae4b Removed the need for all the tiny mallocs in ratecontrol by using a fixed sized, circular history 2007-01-22 22:58:51 +00:00
Eric Petit 40d8abb68f More simplifications 2007-01-21 19:42:11 +00:00
Eric Petit 2b0e28a004 clean up 2007-01-21 12:38:50 +00:00
Eric Petit 7d6d317ed1 Fixes BeOS warnings 2007-01-21 08:43:58 +00:00
Eric Petit 1634595bb0 Compile before you commit 2007-01-21 07:32:31 +00:00
Eric Petit 09c277257b Mark a peer as uploading if we are unchoked *and* interested 2007-01-21 07:27:57 +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 e63e4ab38f Reorganizes a few things, don't accept two connections from the same IP 2007-01-21 06:42:05 +00:00
Eric Petit f0e1e50055 Unused function/field 2007-01-21 05:03:24 +00:00
Eric Petit 15fdfda60f small memleaks 2007-01-20 05:07:00 +00:00
Eric Petit 93cb1c89ad Make sure we don't malloc(0), and save peers in the cache file even if we haven't successfully connected to them yet 2007-01-20 04:29:33 +00:00
Eric Petit da84461d9c Don't let tr_torrentStop return until files are closed, so that the UI can trash them safely if requested (fixes #186) 2007-01-19 15:24:20 +00:00
Eric Petit 4a567871bb clean up 2007-01-19 11:19:20 +00:00
Eric Petit 918c083618 Fix warnings 2007-01-19 08:40:06 +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
Eric Petit 4b9df2981b Ooops 2007-01-18 03:12:54 +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
Mitchell Livingston 2fa4abe63f change to scrape frequency 2007-01-17 01:06:52 +00:00
Mitchell Livingston 7f142247b7 add BitPump 2007-01-16 15:49:13 +00:00
Mitchell Livingston 20eebf6092 remove unneeded function/warning 2007-01-16 04:20:45 +00:00
Mitchell Livingston 5e17b596d6 avoid calculations if the bandwidth limit is 0, since it always will return the same value 2007-01-15 19:16:32 +00:00
Eric Petit a768ecf0d2 Stupid bug that causes us to never check the hash and never send HAVE messages 2007-01-15 18:18:06 +00:00
Eric Petit cc3bf0cab9 Fixes redirecting (announce has '%'s in it) 2007-01-15 09:00:47 +00:00
Mitchell Livingston c351ac51f8 typo 2007-01-14 16:57:31 +00:00
Eric Petit 4386cba273 Use tr_cond* a bit more 2007-01-14 12:11:06 +00:00
Eric Petit e5e6a8b5df Merge io branch into trunk 2007-01-14 12:00:21 +00:00
Eric Petit 58a8bdedf0 BeOS fix 2007-01-14 08:51:15 +00:00
Mitchell Livingston 7abfceceac a little less redundant checking of global bandwidth, and added myself as working on back-end 2007-01-12 17:16:20 +00:00
Mitchell Livingston 3cbb5fa681 correctly get the scrape interval 2007-01-12 05:05:11 +00:00
Josh Elsasser 1cdf0839c1 Silence gcc warning. 2007-01-10 23:38:33 +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 58209af347 small improvement 2007-01-08 15:18:05 +00:00
Mitchell Livingston e5b24d929e add bittyrant to client id's 2007-01-08 04:41:18 +00:00
Mitchell Livingston 3bc7585b5b typo caused pressed action button to be flipped 2007-01-02 14:01:05 +00:00
Mitchell Livingston 237a7c6b71 better tornado-style client identification 2007-01-02 03:46:47 +00:00
Mitchell Livingston 56c4ade75f added BT Protocol Daemon to clients 2007-01-02 03:33:55 +00:00
Mitchell Livingston 6e812353f1 add eXeem to clients 2007-01-01 20:03:52 +00:00
Mitchell Livingston 5c0230cfcb bindings + formatters = trouble....revert to glue code for speed limit, torrent limit, and port fields in prefs...more to come later 2006-12-31 21:38:35 +00:00
Mitchell Livingston d6104b6f71 move ratio from mac code to libT code 2006-12-30 19:24:09 +00:00
Mitchell Livingston 48ccd81283 add TorrentTopia 2006-12-30 18:00:45 +00:00
Eric Petit 2a4be1b0cd Don't use names that can conflict with system functions - Patch by Christian Weisgerber 2006-12-30 00:27:05 +00:00
Mitchell Livingston fdc0ece03f add burst! to clients 2006-12-29 02:09:16 +00:00
Josh Elsasser 6f39467deb Handle urlbase properly in UPnP root file. 2006-12-27 05:16:12 +00:00
Josh Elsasser 82ead7c85b Whoops, read UPnP root urlbase correctly. 2006-12-27 03:45:51 +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 de82956141 define variables at top 2006-12-26 18:43:46 +00:00
Mitchell Livingston 776153c126 better placement of manual announce 2006-12-26 18:40:51 +00:00
Mitchell Livingston f57626a6b1 support manual announcing to tracker (as in user forces an announce) in libT...when implemented in a front end it should limit the use of this 2006-12-26 04:17:37 +00:00
Mitchell Livingston 286683b5a5 Xtorrent, not XTorrent 2006-12-24 01:08:23 +00:00
Mitchell Livingston 0aa4d36809 divide error logic in tracker code into multiple variables, allowing to determine if all errors in connecting were from unreachable trackers 2006-12-23 21:18:58 +00:00
Mitchell Livingston 594d887a36 move arctic to the azureus-style section 2006-12-23 20:34:45 +00:00
Mitchell Livingston b9fe71990c add XTorrent to clients 2006-12-23 20:27:24 +00:00
Mitchell Livingston 153e11ee4b add Arctic Torrent 2006-12-23 15:53:49 +00:00
Mitchell Livingston e783610d2c Plus is v2 2006-12-22 23:35:23 +00:00
Mitchell Livingston ffc4c30d0d add client Bittorrent Plus! 2006-12-22 23:34:35 +00:00
Mitchell Livingston 21f2eb9566 added lphant client 2006-12-22 16:20:33 +00:00
Eric Petit 34fbe3a79a When httpPulse gives us TR_ERROR, don't forget to mark the attempt as NOREACH - otherwise if the previous query was successful, we'd try to connect again and again as fast as we could 2006-12-21 12:59:40 +00:00
Mitchell Livingston ad3125f6b1 add client FlashGet 2006-12-20 17:26:32 +00:00
Mitchell Livingston 9c87aad53c JVTorrent client id 2006-12-19 16:30:34 +00:00
Mitchell Livingston 3d787a7e77 add libtorrent to clients 2006-12-19 15:23:48 +00:00
Mitchell Livingston 38b3198613 better identification of clients with weird formats that might conflict with others 2006-12-19 03:22:46 +00:00
Mitchell Livingston 46cef6d780 add G3 Torrent 2006-12-19 02:57:36 +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
Mitchell Livingston 718a39cd16 libT now stores peer upload rate 2006-12-18 04:56:27 +00:00
Josh Elsasser 058b31aaf7 Silence warning. 2006-12-18 03:49:15 +00:00
Josh Elsasser 343e51abbe Add peer's port to tr_peer_stat_t. 2006-12-18 03:45:22 +00:00
Mitchell Livingston ae94e3c275 add limewire client id 2006-12-17 22:11:02 +00:00
Mitchell Livingston 4b44da5a8c ctorrent client id 2006-12-17 21:15:33 +00:00
Mitchell Livingston 38b97ccf13 don't scrape if stopping 2006-12-17 17:35:39 +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
Mitchell Livingston f79b141ab1 formatting 2006-12-16 20:05:20 +00:00
Mitchell Livingston aa4eb92fbb a little better id conversion 2006-12-16 02:39:12 +00:00
Mitchell Livingston ea9de21173 add queen bee to clients 2006-12-16 02:27:02 +00:00
Mitchell Livingston 9041bf4efe better identify ABC 2006-12-15 17:37:16 +00:00
Mitchell Livingston f4bcbc77e7 mainline client checked once 2006-12-15 06:16:20 +00:00
Mitchell Livingston 8ee41e6b06 xbt client 2006-12-15 05:39:06 +00:00
Mitchell Livingston 3409f51ef0 should identify BitLord clients according to the bittorrent specs (although it might not be completely accurate) 2006-12-15 05:27:51 +00:00
Mitchell Livingston 21ed57092a don't leak in the pool (heh heh) 2006-12-13 18:30:11 +00:00
Josh Elsasser a5c14049ef Fix a spurious compiler warning. 2006-12-11 19:42:08 +00:00
Mitchell Livingston ee37bbb335 small correction 2006-12-11 01:25:28 +00:00
Mitchell Livingston 1a22401c36 better client version display for some clients 2006-12-11 01:23:09 +00:00
Mitchell Livingston 9c6264d4b8 ascii conversion fix 2006-12-07 23:08:44 +00:00
Mitchell Livingston 1d43fbea7f more accurate BitTornado id 2006-12-07 22:28:00 +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
Josh Elsasser 1f7be3430f Fix an infinite loop triggered by an invalid HTTP chunked response. 2006-11-28 21:45:37 +00:00
Mitchell Livingston d47fe45226 merge tracker address and announce address into one field in the inspector 2006-11-23 04:10:16 +00:00
Mitchell Livingston 096f550d4a stupid typo 2006-11-23 02:55:28 +00:00
Mitchell Livingston 4c32f40f3b small adjustments to inspector and check for utf-8 strings 2006-11-23 02:53:47 +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
Mitchell Livingston de7bdd1a87 add Electric Sheep to clients list 2006-11-19 21:33:49 +00:00
Eric Petit 716482bd85 Make sure strcatUTF8 leaves the string null terminated (spotted by Adam Bozanich) 2006-11-18 06:01:50 +00:00
Eric Petit ad0b19375f Handle torrents with empty folders (fixes #12) 2006-11-10 21:30:32 +00:00
Eric Petit 3f129d8829 Adds progress in tr_peer_stat_t 2006-11-10 04:21:46 +00:00
Eric Petit 7b375e9736 Fix for ABC 3.1.0 2006-11-09 20:49:51 +00:00
Eric Petit 9b3802f23a Saves a list of peers when you pause a torrent, and tries to reconnect to them next time you resume it 2006-11-09 04:45:14 +00:00
Mitchell Livingston 52e66c96f8 Don't request more peers if stopping (or changing ports). 2006-11-09 04:38:32 +00:00
Eric Petit 773a0ff0b6 BeOS/BONE compile fix 2006-10-17 18:48:04 +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 631df817ae Fix for trackers that include parameters in announce URL. 2006-10-13 07:42:55 +00:00
Josh Elsasser f97c34da93 Try to get home directory with getpwuid(getuid()) if getenv("HOME") fails. 2006-10-13 06:29:26 +00:00
Josh Elsasser 4f3adfc8d7 Prevent overflow when reading/converting strings from the torrent metainfo. 2006-10-13 00:26:35 +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 025f466489 I guess I don't know how xml namespaces work. 2006-09-28 03:33:17 +00:00
Josh Elsasser bc366f8de1 How about we actually put an <?xml?> tag in the xml we send? 2006-09-28 02:33:02 +00:00
Josh Elsasser 6fd43ab22b More miscellaneous UPnP fixes. 2006-09-28 02:27:42 +00:00
Josh Elsasser ab661c6dc9 Minor UPnP compatibility fixes. 2006-09-28 01:40:51 +00:00
Josh Elsasser a1983664f2 Don't verify part of the UPnP root descript that apparently isn't standard. 2006-09-28 00:17:56 +00:00
Josh Elsasser 7bb623eb43 Add more UPnP debugging messages. 2006-09-27 23:23:22 +00:00
Josh Elsasser 9d17424799 Fix extra space in tracker HTTP request line. 2006-09-27 22:23:42 +00:00
Josh Elsasser 13c827a76e Add missing prototype for tr_peerIsIncoming(). 2006-09-26 22:37:53 +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
Josh Elsasser 5b58c7aec0 Properly exit the upnp device pulse when a loop is detected. 2006-09-26 18:43:02 +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 40158c766f Add KTorrent, libTorrent and MLDonkey to clients list. 2006-09-22 10:05:51 +00:00
Mitchell Livingston 297d2862e1 stupid mistake in last commit 2006-09-12 01:41:17 +00:00
Mitchell Livingston 0c11cb4319 Add Opera to the clients list. 2006-09-12 01:38:57 +00:00
Josh Elsasser ff8cef150c Add an assertion. 2006-09-08 23:19:15 +00:00
Mitchell Livingston 8aeb2fba5a add bitrocket to the client id's (you have to acknowledge the competition...) 2006-09-07 21:42:41 +00:00
Josh Elsasser 50ed4c6770 Allow a couple of the message functions to be called before the first tr_init() 2006-08-30 16:35:33 +00:00
Josh Elsasser a647015714 Add time to messages. 2006-08-22 02:32:46 +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 69f43ff729 Make message level available to message handler callback. 2006-08-20 22:45:04 +00:00
Josh Elsasser 8bc4cefa2d Allow frontend to change message output level.
Rename tr_setErrorFunction() to tr_setMessageFunction()
2006-08-20 18:15:25 +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 f6cd9ef67f Better BitTorrent client identification. 2006-08-16 01:52:20 +00:00
Josh Elsasser cc242002a1 Try to find a UTF-8 filename in single-file mode too. 2006-08-15 21:38:36 +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
Mitchell Livingston d232d371b5 IP address in peer table 2006-08-14 22:59:30 +00:00
Josh Elsasser f41a6ade33 Retrieve peer address as a string via tr_torrentPeers(). 2006-08-14 22:42:32 +00:00
Mitchell Livingston bb5e80c98d Add bits on wheels to clients list. 2006-08-14 22:33:41 +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 402e827a87 Fix for when the returned client string is "unknown client (" 2006-08-13 21:56:20 +00:00
Josh Elsasser 1c7d77b501 Use the proper name of uTorrent through the magic of UTF-8. 2006-08-13 21:42:19 +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
Josh Elsasser bf69e47d5d Use UTF-8 encoded name and paths in torrent file if available. 2006-08-12 21:52:09 +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 beebc5bbfa Typo 2006-08-06 17:16:15 +00:00
Eric Petit 67cbcb68b1 AmigaOS4 patch by Andrea Palmate 2006-07-23 19:39:02 +00:00
Josh Elsasser 555f12b64a Allow frontend to supply a custom function for displaying libtransmission errors. 2006-07-16 23:40:22 +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
Eric Petit 67eaa8809b Increased limit on the size of torrent files 2006-07-16 16:05:43 +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 a2962c4a71 Don't leak memory when bencode parsing fails. 2006-07-07 16:21:30 +00:00
Josh Elsasser 23965844d9 Don't try to free memory that we never allocated. 2006-07-04 23:59: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 db26a7e23a Don't assume that a download is a folder if there only is one
file (fixes #36)
2006-06-20 02:34:34 +00:00
Eric Petit 2e177da783 Quick fix for #69 (flush disk cache when complete) 2006-06-20 00:34:24 +00:00
Eric Petit f366b9819c Fixes scraping with transmissioncli (#79) 2006-06-20 00:28:16 +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 e1c5b19b46 Fix bug where upload and download totals were discarded when fastresume failed. 2006-06-11 04:32:41 +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 e72c5580c6 Split and moved makefiles into a seperate folder, fixes and speed-up to
the retrieving of the SVN revision, OS X packages now show the revision
if this isn't a release build
2006-05-31 12:54:53 +00:00
Eric Petit a3d3d1f33d Splits VERSION_STRING and VERSION_REVISION, removes duplication of flags
in the Xcode project file
2006-05-29 22:44:21 +00:00
Eric Petit f98fe6a1b0 Added $Id$ keywords and updated a few headers 2006-05-29 21:21:23 +00:00
Eric Petit aeb4c6e208 Toughens the criteria for banning, tries to make guesses about the peers two got banned for a few pieces because of someone else 2006-05-13 17:28:54 +00:00
Eric Petit a006c25025 Adds automatic peer banning.
At first, peers get only banned for the bad pieces they've contributed to, i.e. we continue to ask them for other parts of the torrent. If more bad data keeps coming, the peer gets completely banned.
Based on Jeremiah Morris' patch.
2006-05-13 06:48:37 +00:00
Eric Petit 9235d148b0 Be more flexible in case the dictionary isn't at the beginning of the
body (refs http://transmission.m0k.org/forum/viewtopic.php?t=298)
2006-05-03 17:41:51 +00:00
Eric Petit 1ec413ea5c Fixes warnings 2006-04-26 10:59:09 +00:00
Josh Elsasser cf56d58f06 A couple minor i18n cleanups.
Add italian translation.
Add an install make target for transmissioncli and transmission-gtk.
2006-04-25 08:14:37 +00:00