Charles Kerr
8c9d5359b5
(trunk libT) add more assertions to make Biiaru crash more^H^H^H^H^H^H^H^H^H^H^H^H^H^H^H^Hhelp track down the cause of Biiaru's crashes
2009-01-26 02:51:50 +00:00
Charles Kerr
1e8c374fd5
(trunk libT) fsync busy files every 15 seconds or so. On linux, use posix_fadvise() to tell the system no to cache torrent blocks
2009-01-26 00:36:34 +00:00
Charles Kerr
9d7c74cc8a
(trunk libT) try again to make hudson-t happy wrt posix_fadvise()
2009-01-25 23:47:07 +00:00
Charles Kerr
3b7494efd2
(trunk libT) possibly make hudson-t happy on Linux
2009-01-25 23:40:08 +00:00
Charles Kerr
00125c9726
(trunk libT) add mac, linux, and win32 support for os-level hints that local data will be read in random order, to disable readahead buffering.
2009-01-25 23:33:10 +00:00
Charles Kerr
29661cf245
(trunk libT) new macro, tr_assert(). use it to help smoke out #1749
2009-01-25 16:14:11 +00:00
Charles Kerr
f47cc0cf4d
(trunk libT) #1794 : possible fix -- better handling of zero-size files
2009-01-25 04:22:11 +00:00
Charles Kerr
6d6a76d48a
(trunk libT) more of the same
2009-01-24 17:37:28 +00:00
Charles Kerr
5812b9f05b
(trunk libT) more debugging messages
2009-01-24 17:20:07 +00:00
Charles Kerr
dd00672517
(trunk libT) more experimental code for Biiaru
2009-01-24 16:21:34 +00:00
Charles Kerr
40f3c725d7
(trunk libT) experimental commit that will *possibly* fix the "assert( tr_isPeerIo( io ) )" crash reported by Biiaru and others
2009-01-24 14:49:35 +00:00
Charles Kerr
7f82b7172c
(trunk libT) don't limit peer bandwidth during the handshake phase. this solves a bug that made it difficult to connect to peers when the upload bandwidth is saturated.
2009-01-24 03:17:59 +00:00
Charles Kerr
ce9eff1fb2
(trunk libT) #1743 : potential threading issue in tr_list. only affects 1.50b[1-3]
2009-01-24 02:33:25 +00:00
Charles Kerr
0b5558c3e3
(trunk libT) silence curl_easy_setopt -Wunreachable-code warnings
2009-01-24 00:25:11 +00:00
Charles Kerr
13c22f88ff
(trunk libT) fix some code that the newly-added gcc warnings didn't like
2009-01-23 18:44:15 +00:00
Charles Kerr
6f95a057d0
(trunk libT) when deleting a torrent's local data -- folders and files -- use remove() instead of unlink() because the former handles both folders and files gracefully
2009-01-22 21:43:46 +00:00
Charles Kerr
b6c73370e3
(trunk libT) #1734 : encrypted peers' outgoing RC4 stream can be corrupted by sending protocol messages out-of-order
2009-01-22 14:32:29 +00:00
Charles Kerr
46aa5c6fc0
(trunk libT) well, maybe it's not a problem with sending the pex messages, but with parsing it...
2009-01-22 04:20:30 +00:00
Charles Kerr
ba5d3f068d
(trunk libT) add a couple of simple debugging messages
2009-01-21 04:02:39 +00:00
Charles Kerr
06887c9e9e
(trunk libT) better implementation of r7761 to take into account feedback from repattila in the forums
2009-01-20 15:47:25 +00:00
Charles Kerr
4cbbefd656
(trunk libT) bah, fix r7761 oops
2009-01-20 05:45:03 +00:00
Charles Kerr
69404a8c36
(trunk libT) when pruning out slow peers, don't prune if we don't have good candidates to replace them.
2009-01-20 03:32:54 +00:00
Charles Kerr
1375c707ed
(trunk libT) fix uninitialized variable in bandwidth code
2009-01-20 02:43:21 +00:00
Charles Kerr
dfd5c70916
(trunk libT) fix crash-on-add-torrent-from-clutch reported by anf6
2009-01-20 02:03:09 +00:00
Charles Kerr
2131e8f403
(trunk libT) fix two bugs introduced yesterday's add-torrent changes and uncovered/reported by anf6
2009-01-19 21:37:34 +00:00
Charles Kerr
cfe1358626
(trunk libT) #1715 : More stats information in rpc session-stats command
2009-01-19 21:17:29 +00:00
Charles Kerr
daaa450f8e
(trunk libT) put ful's theory to the test wrt function pointers
2009-01-19 18:11:47 +00:00
Charles Kerr
1d08afa717
(trunk libT) s/function_done/tr_idle_function_done/
2009-01-19 14:10:39 +00:00
Charles Kerr
4d228289ce
(trunk libT) prefer `int' over `ssize_t'
2009-01-19 14:05:43 +00:00
Charles Kerr
69f59b423a
(trunk libT) possible fix for the `few peers' errors reported on OS X. denis_, merlyn3d, give this a spin...
2009-01-19 13:55:41 +00:00
Charles Kerr
27cb7caf55
(trunk libT) In RPC, add general support for nonblocking methods, and specific support for adding a torrent via its URL and fetching it via curl without blocking.
2009-01-18 15:24:26 +00:00
Charles Kerr
b6588f442b
(trunk libT) have tr_strndup() take an ssize_t instead of an int
2009-01-18 15:15:41 +00:00
Charles Kerr
5ea9bcacbc
(trunk libT) fix a minor memory leak.
2009-01-18 15:15:10 +00:00
Charles Kerr
9c9c94a81d
(trunk libT) discard peers from the tracker or pex that have a port of 0 or a multicast address.
2009-01-17 23:14:35 +00:00
Charles Kerr
4f95edf647
(trunk libT) minor cleanup
2009-01-17 22:49:15 +00:00
Charles Kerr
c1e1fedff9
(trunk libT) check in some of the extra error logging messages developed last night while chasing down the problem denis found
2009-01-17 15:08:20 +00:00
Charles Kerr
f5ace9a71c
(trunk daemon) #1704 : --info and/or --files should show the download directory
2009-01-17 14:58:50 +00:00
Charles Kerr
d95a45b701
(trunk libT) fix IPv6 reported & solved by erdgeist. add debugging message to help track down any future problems.
2009-01-16 23:17:31 +00:00
Charles Kerr
bc2b7fcb03
(trunk libT) minor tweaks to reduce libtransmission shear between trunk and 1.5x
2009-01-16 17:29:42 +00:00
Charles Kerr
c99f941d16
(trunk libT) make file preallocation optional via settings.json. choices are: full, sparse, and none
2009-01-16 16:38:16 +00:00
Erick Turnquist
88a399eb20
(trunk libT) fix r7717
2009-01-16 06:40:23 +00:00
Charles Kerr
4b414e8f2d
(trunk libT) fix tracker IPv6 error reported by the earth spirit
2009-01-16 04:36:36 +00:00
Charles Kerr
a6a29923c7
(trunk) add interface versioning to the RPC spec
2009-01-16 01:03:33 +00:00
Charles Kerr
9c5b6e7d15
(trunk libT) #1698 : RunTime Check failure
2009-01-14 13:30:51 +00:00
Charles Kerr
7a91840639
(trunk libT) Remove tr_peerMgrHasConnections, it isn't used anywhere
2009-01-14 01:37:24 +00:00
Charles Kerr
2c1afe07a4
(trunk libT) fix an r7707 bug in tr_sessionGetActiveTorrentCount()
2009-01-13 21:06:07 +00:00
Charles Kerr
486c55c1ed
(trunk libT) peerMgr: operate directly on tr_torrent and not peerMgr+torrentHash
2009-01-13 21:00:05 +00:00
Charles Kerr
f945058de0
(trunk libT) minor torrent iteration cleanup. (wereHamster, charles)
2009-01-13 16:51:38 +00:00
Charles Kerr
08403324bd
(trunk libT) Remove tr_torrentNext() from the public libT API (wereHamster)
2009-01-13 16:39:19 +00:00
Charles Kerr
db58b89f6e
(trunk libT) Clean up RPC server initialization (wereHamster)
2009-01-13 16:35:06 +00:00
Charles Kerr
8b72408948
(trunk libT) Get rid of peer-mgr-private.h (from wereHamster)
2009-01-13 16:32:43 +00:00
Charles Kerr
30c47d3b6f
(trunk libT) #1655 : rpc-spec 4.2: "session-stats" returns a new object instead of the response arguments
2009-01-13 04:43:38 +00:00
Charles Kerr
a13e0755f0
(trunk libT) close open files immediately after they're done downloading
2009-01-12 21:59:53 +00:00
Charles Kerr
dab899f132
(trunk libT) #1427 : Files are kept open in read/write mode after a torrent finishes
2009-01-12 19:58:16 +00:00
Charles Kerr
bb8451344f
(trunk libT) #1592 : file priorities are not preserved after exiting & starting a new session
2009-01-12 18:02:28 +00:00
Charles Kerr
2f6b56671f
(trunk libT) win32 portability patch from Alexey
2009-01-11 17:02:04 +00:00
Charles Kerr
fe816d8135
(trunk) update the GPL code's copyright dates
2009-01-10 23:09:07 +00:00
Charles Kerr
c2e1f78cf4
(trunk libT) #1634 : better utf8 validation of metainfo "files" field
2009-01-10 22:56:26 +00:00
Charles Kerr
92ee6566db
(trunk libT) #1675 : better utf8 validation of metainfo name, creator, and comment fields
2009-01-10 22:48:58 +00:00
Charles Kerr
d4c5e904b5
(trunk libT) fix minor compiler warning that cropped up when upgrading our ConvertUTF8
2009-01-10 19:29:01 +00:00
Charles Kerr
0321204894
(trunk libT) upgrade our copy of Unicode Inc's freeware ConvertUTF.[ch]
2009-01-10 17:59:49 +00:00
Charles Kerr
c6a454d2e2
(trunk libT) win32 portability fixes, reported by Alexey
2009-01-10 02:22:13 +00:00
Charles Kerr
7683452514
(trunk libT) undo r7645 based on feedback that the experimental code did improve performance.
2009-01-09 19:24:40 +00:00
Charles Kerr
b545dbe28a
(trunk libT) fix downloadDir error reported & tracked down by wereHamster
2009-01-09 18:39:30 +00:00
Charles Kerr
a1b2af981c
(trunk libT) annotate tr_cpBlockBitfieldSet() as suggested by wereHamster.
2009-01-09 17:55:48 +00:00
Charles Kerr
2702fc289a
(trunk libT) finally get around to making upload-slots-per-torrent a settings.json option, thanks to friendly prodding from ful in #transmission
2009-01-09 15:45:44 +00:00
Charles Kerr
f7db63329d
(trunk libT) clear out the experimental code that accumulated while trying to find the fix to the tracker-announces-never-finish bug. This revision is 1.42's version plus bugfixes.
2009-01-08 20:35:10 +00:00
Charles Kerr
e7b9a2eaa2
(trunk libT) fix evbuffer oops
2009-01-08 20:33:33 +00:00
Charles Kerr
55aa6d834f
(trunk libT) make the default number of open files 32 rather than 16, and make it configurable via settings.json. (Reported by Lucius Windschuh via denis_)
2009-01-08 19:20:24 +00:00
Charles Kerr
f3db4c14b7
(trunk libT) The buffer is static anyway, no need to malloc it
2009-01-08 14:05:30 +00:00
Charles Kerr
98420365e9
(trunk libT) remove a small number of redundant or unnecessary asserts
2009-01-08 04:43:00 +00:00
Charles Kerr
6917cac918
(trunk libT) fix odd handshake bug reported by wereHamster
2009-01-07 22:06:40 +00:00
Charles Kerr
30ebbdaacb
(trunk libT) re-enable the completion sanity tests for the benefit of the nightly builds
2009-01-07 17:22:17 +00:00
Charles Kerr
141847b902
(trunk libT) update the copyrights on some files that no longer have old code in them
2009-01-07 06:53:29 +00:00
Charles Kerr
c5ecccdd24
(trunk libT) much faster implementation of tr_cpBlockBitfieldSet()
2009-01-07 02:22:11 +00:00
Charles Kerr
196c3c19c3
(trunk libT) apparently the r7629 tr_cpBlockBitfieldSet() speedup introduced a bug.
2009-01-06 14:43:15 +00:00
Charles Kerr
c0acf3e920
(trunk libT) hm, checked in the wrong version.
2009-01-06 07:48:30 +00:00
Charles Kerr
7581f04242
(trunk libT) faster tr_cpBlockBitfieldSet()
2009-01-06 07:45:15 +00:00
Erick Turnquist
2a6c7dd0fa
(trunk libT) Fix an assertion failure in ptrarrays when values are equal.
...
This bug manifest itself due to a subtle change in tr_compareAddresses(), but
was always there. An assertion would fail if two (obviously adjacent) values
were equal.
2009-01-06 03:22:10 +00:00
Charles Kerr
73d32850ed
(trunk libT) fix refcount error in the new peer-io refcount code
2009-01-06 03:21:22 +00:00
Charles Kerr
3ff145f058
(trunk libT) two bugfixes in one: (1) fix leaking tr_handshake objects reported by BentMyWookie (2) fix yet another permutation of the tr_isBandwidth() assertion failure -- maybe the last one? -- reported by Waldorf
2009-01-06 00:24:44 +00:00
Charles Kerr
30a989f1df
(trunk libT) fix the new-code errors reported by ZogG and Rolcol and Spaham
2009-01-05 18:20:47 +00:00
Charles Kerr
fd26f21400
(trunk libT) fix a minor memory leak reported by Valgrind
2009-01-05 18:18:13 +00:00
Charles Kerr
1b527610dd
(trunk libT) yet another step in the debugging cycle, crash report from ZogG and Rolcol
2009-01-05 07:57:10 +00:00
Charles Kerr
124658791a
(trunk libT) probably fix r7618 reported in #transmission by Rolcol
2009-01-05 06:45:08 +00:00
Charles Kerr
5ccd5a7700
(trunk libT) fix the much-hated "Assertion failed: (tr_isPeerIo( io ))". Also, repeated calls to tr_date() were taking up about 78% of the time in tr_stat(), so instead of calling multiple times, call it once in tr_stat() and pass that value around to the functions that need it.
2009-01-05 04:27:54 +00:00
Charles Kerr
2eb1faa5e8
(trunk libT) minor speedup tweaks in peer-request hotspots
2009-01-04 18:01:15 +00:00
Charles Kerr
6681107c00
(trunk libT) remove a small memory leak in the request-list unit test s.t. valgrind will be happy
2009-01-04 17:46:27 +00:00
Charles Kerr
ca6dd89e10
(trunk libT) minor tr_ptrArray API cleanup
2009-01-04 16:59:15 +00:00
Charles Kerr
cf79c87d7e
(trunk libT) forgot to "svn add" request-list-test.c before committing...
2009-01-04 16:58:09 +00:00
Charles Kerr
6d21e557f5
(trunk libT) fix r7610 bug reported by BentMyWookie
2009-01-04 16:48:31 +00:00
Charles Kerr
51e68d6e56
(trunk libT) new peer request fifo queue with log(N) search time. new unit tests for the queue. new utility tr_lowerBound()
2009-01-04 16:29:44 +00:00
Charles Kerr
a0390c6111
(trunk libT) remove unnecessary prototype
2009-01-04 04:37:47 +00:00
Charles Kerr
2b38f6f81a
(trunk libT) don't use void* when doing pointer math.
2009-01-04 04:37:26 +00:00
Charles Kerr
8690d83ba4
(trunk libT) minor improvement to testing to see if two requests are equal
2009-01-04 02:49:30 +00:00
Charles Kerr
f2c9d270b0
(trunk libT) do scrape paused torrents.
2009-01-04 02:05:17 +00:00
Charles Kerr
422d1b0f97
(trunk libT) don't scrape paused torrents.
2009-01-04 02:01:57 +00:00
Charles Kerr
ead8254b85
(trunk libT) tr_torrentStat() speedups
2009-01-03 23:11:29 +00:00
Mitchell Livingston
cc8e16ed20
only increment the tier count for valid tiers
2009-01-03 21:27:48 +00:00
Charles Kerr
78cf80d3c0
(trunk libT) experimental code to get more peers faster
2009-01-03 07:23:26 +00:00
Charles Kerr
7fcad8a45b
(trunk libT) fix r7594 typo
2009-01-03 05:07:45 +00:00
Charles Kerr
5afd327b15
(trunk libT) use ssize_t where appropriate in tr_peerIoFlush()
2009-01-03 04:57:40 +00:00
Charles Kerr
1e77d1313e
(trunk libT) oh ffs
2009-01-03 03:58:35 +00:00
Charles Kerr
dfa0622a6c
(trunk libT) add "deep log" message to help track down freeze reported by the|Navigator. also, small + cheap speedup in tr_deepLoggingIsActive()
2009-01-03 02:43:17 +00:00
Charles Kerr
0d2d375125
(trunk libT) inline a few more torrent methods
2009-01-03 00:25:27 +00:00
Charles Kerr
cee6610ebb
(trunk libT) inline the tr_bencIs*() utility functions
2009-01-03 00:11:31 +00:00
Charles Kerr
c86780de8b
(trunk libT) avoid unnecessary duplicate calls to tr_date() in tr_bandwidthUsed()
2009-01-02 23:48:51 +00:00
Charles Kerr
49f46dcddb
(trunk libT) revert r7548, which broke very low speed download limits.. the simplified peer-msgs parsing didn't distinguish between piece & raw data until the piece was done downloading.
2009-01-02 23:28:57 +00:00
Charles Kerr
4addf02246
(trunk libT) fix a typo that made jhujhiti giggle
2009-01-02 22:06:11 +00:00
Charles Kerr
d756d6b58f
(trunk libT) commit some debugging messages that were added to trackdown the multicast filter issue
2009-01-02 21:50:51 +00:00
Erick Turnquist
5086cbe47c
(trunk libT) use IN_MULTICAST macro
2009-01-02 21:45:55 +00:00
Charles Kerr
86d3e70121
(trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ratecontrol, contain the it directly rather than a pointer to one allocated elsewhere on the heap.
2009-01-02 20:42:35 +00:00
Charles Kerr
d202c5ecea
(trunk libT) inline the ptrarray one-liners
2009-01-02 20:19:10 +00:00
Charles Kerr
5e9af46612
(trunk libT) make the tr_bandwidth macros into safer inline funcs. inline utils' one-liners.
2009-01-02 20:12:23 +00:00
Charles Kerr
b41cf9f231
(trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bandwidth, contain the it directly rather than a pointer to one allocated elsewhere on the heap.
2009-01-02 19:56:06 +00:00
Charles Kerr
73f500e5be
(trunk libT) inline parts of peer-io and bandwidth, too
2009-01-02 17:46:22 +00:00
Charles Kerr
199e38dd66
(trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_completion, contain the it directly rather than a pointer to one allocated elsewhere on the heap.
2009-01-02 17:01:55 +00:00
Charles Kerr
d6b4db4a78
(trunk libT) add "inline" hint to several one-liner functions
2009-01-02 06:28:22 +00:00
Charles Kerr
5e806dc816
* add autoconf test AC_C_INLINE to do the Right Thing for "inline", "__inline__", and "__inline".
...
* make tr_isAddress(), tr_isDirection(), and a bunch of the tr_torrent() macro functions into true inline functions
2009-01-02 05:11:50 +00:00
Charles Kerr
0cd572a0da
(trunk libT) make tr_isAddress() and tr_isDirection() inline
2009-01-02 04:47:37 +00:00
Charles Kerr
8eda177838
(trunk libT) very minor style cleanup in tr_bandwidthAllocate()
2009-01-02 04:46:38 +00:00
Charles Kerr
2eb2dacd50
(trunk libT) Fix sparse warnings: symbol 'XXX' shadows an earlier one
2009-01-01 18:38:49 +00:00
Charles Kerr
82c5aca513
(trunk libT) Remove UNUSED attribute, the function argument is being used
2009-01-01 18:36:58 +00:00
Charles Kerr
e5fc032d9c
(trunk libT) Remove unused field: struct tr_peermsgs::peerSentBitfield
2009-01-01 18:35:21 +00:00
Erick Turnquist
e9f32d7523
(trunk libT) < Rolcol> For example: I have a lot of addresses in the message
...
log as "funny looking address" as something like ::ffff:192.168.1.1
These were coming from pex6. Apparently there is a client out there that sends
us IPv4 peers in mapped form. It's valid, but a little strange...
2009-01-01 00:34:44 +00:00
Erick Turnquist
bd5463a37e
(trunk libT) fix another endian oops
2009-01-01 00:23:09 +00:00
Erick Turnquist
37ac4b3fbf
(trunk libT) fix endian oops in tr_suspectAddress()
2009-01-01 00:15:15 +00:00
Erick Turnquist
50d73a884f
(trunk libT) Stop trying to connect to multicast addresses. Also, bump "funny
...
looking address" messages from tr_dbg to tr_err so I can get bug reports with
the message for once!
2008-12-31 21:25:52 +00:00
Charles Kerr
618949aded
(trunk libT) take the timeout condition out of tr_bandwidthAllocate(). This may have the short-term effect of adding 1.41's `freeze' behavior into trunk for a bit. Yay!
2008-12-31 21:15:22 +00:00
Charles Kerr
5381e20e9b
(trunk libT) improve piece verification speed by providing a larger buffer, and add a mechanism to reuse it when verifying an entire torrent at once.
2008-12-31 18:08:13 +00:00
Charles Kerr
2ea88f30f5
(trunk libT) make the evbuffer pool threadsafe
2008-12-31 14:29:28 +00:00
Charles Kerr
217d3d3c91
(trunk libT) this diff has held #1631 at bay for 18 hours now... is it finally fixed? :)
2008-12-31 14:28:20 +00:00
Charles Kerr
1bcc998694
(trunk libT) fix a couple of minor memory leaks
2008-12-30 22:19:52 +00:00
Charles Kerr
6bec82d0a6
(trunk libT) have tr_bencSaveAsJSON() use an evbuffer
2008-12-30 22:07:39 +00:00
Charles Kerr
71864c18e2
(trunk libT) blockIteratorNew() was overallocating much more memory than it used.
2008-12-30 21:18:30 +00:00
Charles Kerr
20e1222078
(trunk libT) patch from wereHamster to recycle the zlib deflate stream s.t. we don't have to keep reallocating it
2008-12-30 20:40:48 +00:00
Charles Kerr
ad69a937ef
(trunk libT) have a pool of reusable evbuffers
2008-12-30 20:32:00 +00:00
Charles Kerr
53b25c7b49
(trunk libT) patch from wereHamster to simplify BT message parsing
2008-12-30 19:44:49 +00:00
Charles Kerr
694a980348
(trunk daemon) #1618 : patch from er13 to make transmission-daemon's encryption, port, and peer limit command-line arguments similar to transmission-remote's
2008-12-30 18:18:34 +00:00
Charles Kerr
56d04f76ad
(trunk libT) use a static buffer for fillOutputBuffer()
2008-12-30 08:25:39 +00:00
Charles Kerr
2b4193b200
(trunk libT) remove obsolete tr_peerMgr.c's getConnectedPeers()
2008-12-30 08:20:16 +00:00
Charles Kerr
f2d9179b64
(trunk libT) #1632 : bandwidth.c: 428: tr_bandwidthUsed: Assertion `tr_isBandwidth( b )' failed
2008-12-30 03:45:12 +00:00
Charles Kerr
d463cdb509
(trunk libT) eliminate a couple more unnecessary malloc() + free() pairs
2008-12-30 03:29:09 +00:00
Charles Kerr
1c71e622e1
(trunk libT) minor cleanup: use symbolic name instead of magic numbers; use tr_bool instead of int
2008-12-30 02:43:51 +00:00
Charles Kerr
640c952ce8
(trunk libT) fix r7535 bug reported by Rolcol
2008-12-30 02:42:45 +00:00
Charles Kerr
cad0ec892c
(trunk libT) avoid an unnecessary evbuffer_new() + evbuffer_free() pair in message logging
2008-12-30 02:36:17 +00:00
Charles Kerr
68ad6f452c
(trunk libT) probable fix for #1631
2008-12-30 01:02:53 +00:00
Charles Kerr
f761311018
(trunk libT) avoid a few more unnecessary malloc() + free() pairs
2008-12-30 00:56:10 +00:00
Charles Kerr
246efcbca2
(trunk libT) fix obsolete `iobuf' reference. (wereHamster)
2008-12-29 21:19:31 +00:00
Charles Kerr
a8e15578f3
(trunk libT) use torrent's unique ID as the torrent's lookup key
2008-12-29 21:17:48 +00:00
Charles Kerr
eff510da18
(trunk libT) simplify web.c's remove_finished_tasks() a bit
2008-12-29 19:02:12 +00:00
Charles Kerr
798bac0fcb
(trunk libT) omit unnecessary malloc/free calls in peer-io
2008-12-29 19:01:47 +00:00
Charles Kerr
9ea0489471
this should've been in r7529
2008-12-29 18:12:25 +00:00
Charles Kerr
415f04059f
(trunk libT) wrap tr_inf(), tr_msg(), tr_dbg() calls inside a check to see if that debugging level is active. That way that function calls in the vararg list won't be invoked unless that level of verbosity is actually turned on.
2008-12-29 18:11:56 +00:00
Charles Kerr
c52d9fedab
(trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_publisher, contain the it directly rather than a pointer to one allocated elsewhere on the heap.
2008-12-29 18:10:07 +00:00
Charles Kerr
3a01d2e619
(trunk libT) recycle the tr_list nodes when possible
2008-12-29 17:28:14 +00:00
Charles Kerr
e7ffb4da03
Add "SD" to the clients list as Xunlei as reported by malucas72 in the forums.
2008-12-29 16:34:59 +00:00
Charles Kerr
7a4002dd3a
(trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_bitfield, contain it directly rather than a pointer to one allocated elsewhere on the heap.
2008-12-29 09:51:54 +00:00
Charles Kerr
427f639664
(trunk libT) avoid some unnecessary memory fragmentation... for composited objects that have a tr_ptrArray, contain the tr_ptrArray directly rather than a pointer to one allocated elsewhere on the heap.
2008-12-29 08:54:36 +00:00
Charles Kerr
db381a5e40
(trunk libT) revert #7517 since it didn't do any good. disable http connection reuse.
2008-12-29 07:51:09 +00:00
Charles Kerr
1582135e3c
(trunk libT) experimental test for #1631 in web.c::setsock()
2008-12-26 20:14:47 +00:00
Charles Kerr
f0efd7fea8
(trunk libT) #1627 : OSX mutex lockup in 141 and up to 7490
2008-12-24 17:45:27 +00:00
Charles Kerr
6f8e5352ab
(trunk libT) fix connectivity error reported by Stargazer. Also, add more debug statements to track down errors like this in the future
2008-12-24 02:50:08 +00:00
Charles Kerr
460f862dbc
(trunk libT) add yet another ACL diagnostic message
2008-12-23 21:34:07 +00:00
Charles Kerr
dfcc9173e5
(trunk libT) #include "session.h" cleanup from wereHamster
2008-12-23 17:27:15 +00:00
Charles Kerr
82d349d221
(trunk libT) fix minor r7474 issue
2008-12-23 17:23:07 +00:00
Charles Kerr
c4e11a12e3
(trunk libT) socket performance tweak by wereHamster
2008-12-23 17:11:31 +00:00
Charles Kerr
303356d110
(trunk) #1029 : When removing local data only remove data from the torrent
2008-12-23 16:04:11 +00:00
Charles Kerr
5d1c109fc4
(trunk libT) speed improvments from wereHamster
2008-12-22 19:16:06 +00:00
Charles Kerr
55f263312f
(trunk) patch from wereHamster to finish off tr_handle
2008-12-22 19:14:43 +00:00
Charles Kerr
94a491aefb
(trunk libT) remove unused functions tr_list_insert_sorted(), tr_list_foreach(). make tr_list_find_data() private.
2008-12-22 17:35:10 +00:00
Charles Kerr
d142a075c4
(trunk libT) fix a Windows portability bug reported by Alexey
2008-12-22 05:19:52 +00:00
Charles Kerr
1310fea91e
(trunk libT) peer-io.c: remove dead code and get rid of a couple of GOTOs
2008-12-22 04:55:07 +00:00
Charles Kerr
acdd8c860c
(trunk libT) minor cleanups found while diffing for backport to 1.4x in r7455
2008-12-22 00:52:44 +00:00
Charles Kerr
32ebb868e7
(trunk libT) one more ACL warning
2008-12-21 19:35:38 +00:00
Charles Kerr
d39354c306
(trunk libT) add html and console hints about whitelist status & configuration
2008-12-21 19:23:41 +00:00
Erick Turnquist
38efb62100
add some debugging stuff to track down where some bogus addresses are coming from
2008-12-21 19:13:52 +00:00
Charles Kerr
2b0ece7614
(trunk libT) remove tr_peermsgs.minActiveRequests based on wereHamster's feedback
2008-12-21 18:31:28 +00:00
Charles Kerr
8556ce653f
(trunk libT) comments, tr_bool correctness, better runtime tests.
2008-12-21 18:15:00 +00:00
Charles Kerr
fefa352b11
(trunk libT) remove unused PEER_PULSE_INTERVAL
2008-12-21 17:51:46 +00:00
Charles Kerr
f77ae353bb
(trunk) configure.ac portability tweak suggested by fulgas
2008-12-21 00:22:41 +00:00
Charles Kerr
cb5d259f21
(trunk libT) fix an r7441 function pointer error reported by fulgas in #transmission
2008-12-21 00:05:54 +00:00
Charles Kerr
72ded3b272
try to rework the bandwidth code yet again s.t. it satisfies all three: (1) fairly distributes bandwidth across all peers, (2) scales well in high-bandwidth situations, (3) is good at hitting and staying at bandwidth limits/goals
2008-12-20 22:19:34 +00:00
Erick Turnquist
a68764fcba
(trunk libT) Don't log two "errors" we expect to see from time-to-time.
...
EAFNOSUPPORT: On OS X, socket() incorrectly throws EAFNOSUPPORT for certain
IP/Port combinations. There is nothing we can do about this.
ENETUNREACH: #1606 is evidence that some trackers return IPv6 peers when
contacted over IPv4. This code will silently ignore "network unreachable"
errors for IPv6 connections.
2008-12-20 08:51:32 +00:00
Erick Turnquist
49b84fb805
(trunk libT) make sure we don't block IPv6 peers, which aren't included in bluetack bocklists
2008-12-20 02:56:44 +00:00
Erick Turnquist
72ee19dcca
(trunk libT) Refactor ipv6 bind socket check
...
This will let the RPC server use the same test mechanism eventually. Networking code belongs in net.c anyway.
2008-12-18 05:55:22 +00:00
Charles Kerr
53b730420f
another test commit for vraa.. this is just an experiment; probably eats a lot of memory
2008-12-18 03:27:07 +00:00
Charles Kerr
d4b4f39754
test commit for vraa
2008-12-18 03:22:08 +00:00
Charles Kerr
d125ebd86a
(trunk libT) turn off some testing log messages
2008-12-17 14:15:19 +00:00
Charles Kerr
3a61b0c6eb
(trunk libT) tweak the new peer IO code a bit to handle EINPROGRESS
2008-12-17 13:29:03 +00:00
Charles Kerr
de24179d05
(trunk libT) fix assertion error reported by Rolcol earlier today in #transmission
2008-12-17 03:38:02 +00:00
Erick Turnquist
be4dc0d674
(trunk libT) use an enum tr_address_type instead of uint8_t for tr_address.type
2008-12-17 01:39:24 +00:00
Charles Kerr
1a7ab297ea
(trunk libT) more runtime safety checks
2008-12-16 23:31:05 +00:00
Charles Kerr
69b8caa93b
(trunk libT) yet another assertion commit
2008-12-16 22:52:04 +00:00
Charles Kerr
15ecde281b
(trunk libT) fix jhujhiti's pex crash
2008-12-16 22:28:19 +00:00
Charles Kerr
a94e104040
(trunk libT) really fuck up the peer i/o code. also this breaks the mac build until someone removes iobuf.c from libtransmission's list of files.
2008-12-16 22:08:17 +00:00
Erick Turnquist
2d427751d6
fix another bad assert *eyes charles*
2008-12-16 21:44:53 +00:00
Erick Turnquist
0a2c5efb65
Fix "ISO C90 forbids mixed declarations and code"
2008-12-16 21:35:14 +00:00
Erick Turnquist
86257e03f1
Fix tr_isAddress()
2008-12-16 21:28:06 +00:00
Charles Kerr
31e49df302
(trunk libT) add a similar check to the peer->addr in the place where crash is occurring
2008-12-16 21:12:14 +00:00
Charles Kerr
de5228c415
(trunk libT) more runtime safety checks
2008-12-16 21:06:47 +00:00
Charles Kerr
56663b860b
(trunk libT) add more startup debug messages in the RPC server
2008-12-16 16:13:21 +00:00
Charles Kerr
748a9f1c92
(trunk libT) add some assertions to tr_compareAddresses()
2008-12-16 06:46:27 +00:00
Charles Kerr
3739f5c72c
(trunk libT) fix oops: accidentally committed an fprintf() debug message. hi, titer.
2008-12-16 06:35:51 +00:00
Charles Kerr
07f0efe8e1
maybe make hudson-t's trunk linux builds happy
2008-12-16 01:11:54 +00:00
Charles Kerr
48c7c65f1b
(trunk libT) fix build error reported by KyleK and hudson-t
2008-12-16 00:57:24 +00:00
Charles Kerr
9594112d27
updated email address
2008-12-16 00:20:44 +00:00
Charles Kerr
e813ea69ab
(trunk libT) probable fix for the "greedy peer" bug
2008-12-15 21:22:08 +00:00
Charles Kerr
4e33fd5467
try to make hudson-t happy
2008-12-15 20:26:26 +00:00
Charles Kerr
41ea885946
put the consts back in to make jhjhiti happy
2008-12-15 04:37:44 +00:00
Charles Kerr
2e8d3a6b61
15:11 < jhujhiti> charles_: there are no bugs
2008-12-15 04:34:06 +00:00
Charles Kerr
54be88dec3
(trunk libT) add ipv6 support by jhujhiti. I think this is the largest user-contributed patch we've ever used... thanks jhujhiti :)
2008-12-15 00:17:08 +00:00
Charles Kerr
a9f8c517a0
(trunk) fix gtk bug of not remembering users' settings for per-torrent peer limits
2008-12-14 22:57:08 +00:00
Charles Kerr
4f9ae41046
(trunk libT) fix type error reported by JhuJhiti
2008-12-14 22:48:11 +00:00
Charles Kerr
788b397ecc
(trunk libT) more semantic cleanup: tr_handle->tr_session, int->tr_bool, int->tr_port
2008-12-14 11:21:11 +00:00
Charles Kerr
e56643d7e7
(trunk daemon) added --dump option to dump the settings to stderr and exit.
2008-12-14 01:22:06 +00:00
Charles Kerr
d52631cb67
(trunk libT) #1595 : Always search in PACKAGE_DATA_DIR when serving Web files
2008-12-14 01:19:50 +00:00
Mitchell Livingston
02521f4bf8
simplify the "randomize port" text
2008-12-14 00:50:41 +00:00
Mitchell Livingston
2707962707
#1559 Simplify tr_sessionInitFull - Mac client
2008-12-14 00:31:33 +00:00
Charles Kerr
78a68337fd
(trunk libT) remove unneeded key
2008-12-14 00:23:00 +00:00
Charles Kerr
f1419a95c0
(trunk libT) semantic cleanup: int -> tr_bool
2008-12-13 23:39:12 +00:00
Charles Kerr
6b0d98a695
(trunk) #1559 : Simplify tr_sessionInitFull
2008-12-13 23:17:36 +00:00
Charles Kerr
35f40bdfa6
(trunk libT) #1593 : Setting upload to 0 kills all download
2008-12-13 22:52:15 +00:00
Charles Kerr
0272708d32
(trunk libT) remove a couple of redundant and/or unused fields from struct peer_atom and tr_peermsgs.
2008-12-12 02:44:21 +00:00
Charles Kerr
0471e6d765
(trunk libT) make tr_bencDictMerge() support limited nested merges
2008-12-12 02:26:33 +00:00
Charles Kerr
72b9845a5e
(trunk libT) #1559 (partial): add tr_bencDictMerge() + unit tests. patch by KyleK and charles_
2008-12-12 02:12:17 +00:00
Charles Kerr
451058d5cd
(libT) add some documentation about the three separate peer structs and how they are related.
2008-12-11 17:02:34 +00:00
Charles Kerr
65fe66c470
(trunk libT) fix bug which caused libtransmission to hold onto nonproductive peers for longer than it should've
2008-12-11 07:04:46 +00:00
Mitchell Livingston
7b17087c70
#1157 ability to pick a random port in libtransmission; mac preference to pick a random port on launch and on button click
2008-12-11 04:41:23 +00:00
Charles Kerr
23b8321463
(trunk libT) back out the changes for #1580 ; closing that ticket as invalid
2008-12-11 00:39:47 +00:00
Charles Kerr
4ad84bb275
(rpc) #1584 : include version in session-get response
2008-12-10 21:46:24 +00:00
Charles Kerr
7403048738
(trunk libT) #1580 : use a 65K read buffer for the hash check, even for embedded systems.
2008-12-10 13:57:21 +00:00
Charles Kerr
9f1709352b
(trunk libT) make the upnp description a little easier to differentiate between separate instances of Transmission
2008-12-10 06:12:04 +00:00
Charles Kerr
6e66d09fbf
(trunk libT) fix minor r7266 oops that could keep us from disconnecting if we made a peer connection to ourself
2008-12-10 05:20:28 +00:00
Charles Kerr
8eecf37a54
(trunk libT) #1580 : increase the read buffer for the "verify local data" reader to make it a little faster
2008-12-10 03:45:57 +00:00
Charles Kerr
0a63e94096
(trunk libT) fix r7336 oops reported by RolCol, m1b, and KyleK
2008-12-10 03:44:20 +00:00
Charles Kerr
7eee937c56
(trunk libT) experimental code to try & fix the "one torrent / one peer eats all my bandwidth" issue reported in the forums & irc
2008-12-09 22:05:45 +00:00
Charles Kerr
2efe49c2eb
(trunk libT) better fix for the previous commit
2008-12-09 21:39:05 +00:00
Charles Kerr
b4470fff72
(trunk libT) fix blocklist.c build error on cygwin by adding #include <errno.h>. reported by stdisease
2008-12-09 21:31:03 +00:00
Charles Kerr
3a970c9fd9
(trunk libT) fix INET6_ADDRSTRLEN build error on cygwin, reported by stdisease in #transmission
2008-12-09 20:56:24 +00:00
Charles Kerr
a33b78fc53
(daemon) #1510 : kysucix's patch to give an option to delete local data via RPC when removing a torrent.
2008-12-09 17:01:49 +00:00
Charles Kerr
519b4d3f5e
(trunk libT) if an individual torrent's speed limit is set, don't pay attention to the global speed limit
2008-12-09 15:09:26 +00:00
Charles Kerr
718c1caa96
(trunk libT) #1565 : give the peer requests a higher send priority. thanks to jusid for testing and sleuthing above & beyond the call of duty
2008-12-08 20:36:36 +00:00
Charles Kerr
81e636ad89
(libT) #1577 : honor the peer's BEP 10 reqq key, if they provide it.
2008-12-08 20:23:10 +00:00
Charles Kerr
5999fef70a
(trunk libT) #1569 : tr_sessionIsSpeedLimitEnabled() returns wrong value
2008-12-06 17:01:18 +00:00
Charles Kerr
76ce949419
(libT) fix a minor memory leak.
2008-12-06 02:21:50 +00:00
Charles Kerr
11cda23c81
#1566 : dpkg-buildpackage fails if make has not been run
2008-12-06 02:13:49 +00:00
Charles Kerr
9e98dcd248
(libT) minor cleanup: using tr_bool, fixing up bad code indentation, using %zu on size_t instead of casting to int...
2008-12-05 22:56:19 +00:00
Charles Kerr
eb90a55608
(libT) #1562 : 1.40 sends unnecessary `cancel' messages when choked
2008-12-05 01:12:55 +00:00
Charles Kerr
5d36543c40
(libT) #1557 : handshake peer-id doesn't match the peer-id sent in the tracker announce
2008-12-04 05:27:59 +00:00
Charles Kerr
223deaf2b6
(libT) #1545 : 1.41b1: speed temporarily jumps to 2x the upload limit
2008-12-04 03:31:14 +00:00
Charles Kerr
81c9bc0371
(libt) #1554 : EPROTO (in peer-msgs.c) not defined on Windows
2008-12-03 13:21:41 +00:00
Charles Kerr
92dff35710
(libT) more tr_bool, tr_port junk
2008-12-03 07:10:09 +00:00
Charles Kerr
3bc08c53f0
(libT) #1552 : Blocklists fail when Windows newlines are present
2008-12-03 05:28:09 +00:00
Charles Kerr
aa9b1d2b8e
(libT) misc cleanup: use tr_bool and tr_port where appropriate
2008-12-03 04:55:10 +00:00
Charles Kerr
181b9ed905
(libT) extra assertions and safeguards for #1523 : crash in tr_fdFileCheckout() when starting daemon
2008-12-03 01:25:45 +00:00
Charles Kerr
761d7dba8e
(libT) when picking peers to connect to, all other things being equal, pick peers from more reliable sources
2008-12-03 01:22:24 +00:00
Charles Kerr
b9b67ee2c2
(libT) libcurl configuration tweaks
2008-12-02 23:54:26 +00:00
Charles Kerr
bdffa5ce20
(libT) #1454 : List of files selection/priority resetting
2008-12-02 23:27:45 +00:00
Charles Kerr
166c6e5f3c
(libT) add tr_peer_stat.isSeed
2008-12-02 23:16:01 +00:00
Charles Kerr
6615e162c6
(libT) that last commit should be a tr_bool, not an int. (BentMyWookie)
2008-12-02 22:51:44 +00:00
Charles Kerr
b8e6d5fbdc
(libT) #1398 : don't accept incoming peer connections when all torrents are paused
2008-12-02 22:25:51 +00:00
Charles Kerr
d4ee0d714a
(libT) #1379 : support "partial seeds" BEP 22
2008-12-02 19:46:51 +00:00
Charles Kerr
341b40f192
libT) fix another r7234 bug reported by John_Clay
2008-12-02 19:38:46 +00:00
Charles Kerr
c414377c1a
(libT) fix r7234 bug reported by John_Clay
2008-12-02 19:06:08 +00:00
Charles Kerr
9d39ed2540
(libT) misc cleanup
2008-12-02 18:24:26 +00:00
Charles Kerr
f927ea5d63
(libT) #1549 : support fast exensions' "reject" and "have all/none" messages
2008-12-02 17:10:54 +00:00
Mitchell Livingston
31482813b9
BeOS and Amiga support is, at least for now, a lost cause and hasn't worked for long over a year - removing from the source (if you for whatever unknown reason still need this, get it through SVN)
2008-12-02 03:57:01 +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
Mitchell Livingston
c2b6fde6dd
#1548 Peers rapidly connect and reconnect after removing fast support.
2008-12-02 00:37:10 +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
a588eaddc8
(libT) fix a small pex memory leak
2008-12-01 05:57:59 +00:00
Charles Kerr
37414ea274
(libT) fix memory leak introduced in r7186
2008-12-01 05:56:39 +00:00
Charles Kerr
f4f908be92
(libT) #1542 : SIGSEGV in tr_publisherPublish
2008-11-30 21:36:49 +00:00
Charles Kerr
f0571fe25d
(libT) #1537 : uTorrent Mac Beta Peer ID
2008-11-30 17:10:43 +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
66beb8db29
(libT) add the #include guards to "private" third party header files.
2008-11-30 01:43:18 +00:00
Charles Kerr
a2ad4f6543
(libT) patch from jhujhiti to add ipv6 support.
2008-11-30 00:47:18 +00:00
Charles Kerr
40299a2284
(libT) silence the net.c warnings I introduced yesterday :/
2008-11-29 21:34:06 +00:00
Mitchell Livingston
69877384f1
remove unused GroupsWindow.xib; don't allow group rows to be renamed from the group list
2008-11-29 21:03:47 +00:00
Charles Kerr
40b5fc5351
(libT) #1532 : patch from jhujhiti to remove (unused) fast extensions
2008-11-29 20:37:34 +00:00
Charles Kerr
7fee78a697
(libT) re-enable lazy bitfields
2008-11-29 19:16:31 +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
b3c4061b1c
(libT) fix potential underflow in bandwidth allocation code
2008-11-28 21:35:01 +00:00
Charles Kerr
ca433d44ae
(libT) make peer-io's output buffer size more flexible based on the peer's speed
2008-11-28 16:00:29 +00:00
Charles Kerr
516ba0564a
(libT) disable the so_sndbuf / so_rcvbuf code for now
2008-11-28 07:42:08 +00:00
Charles Kerr
b46375fd8c
(libT) #1527 : don't send pex messages if we don't have any new information to send
2008-11-28 05:48:17 +00:00
Charles Kerr
dc72deac34
(libT) tweak the speed allocation a little more.
2008-11-27 18:56:58 +00:00
Charles Kerr
bc51d19c0d
(libT) #1491 : json floats decimal separator depends on language settings
2008-11-27 18:35:26 +00:00
Charles Kerr
924b9230f8
(libT) fix typo that prevented bandwidth.h from being included in the tarball
2008-11-27 10:23:54 +00:00
Charles Kerr
2e27756016
(libT) fix a compiler warning.
2008-11-26 18:54:35 +00:00
Charles Kerr
2690766076
(libT) make the the speed measurements a little more accurate
2008-11-26 18:00:37 +00:00
Charles Kerr
9de7ccf7da
(libT) slightly more accurate reporting of piece data vs. raw data
2008-11-26 15:58:26 +00:00
Charles Kerr
ff651209c8
(libT) remove debugging statement that got checked in by accident
2008-11-26 05:58:10 +00:00
Charles Kerr
628c574c07
(libT) performance tweaks
2008-11-26 02:57:32 +00:00
Charles Kerr
645610f995
(libT) fix cut and paste bug. I think this is the crash everyone in #transmission is chiming in about.
2008-11-26 02:56:04 +00:00
Charles Kerr
f44248a7d7
(libT) yet another stab at getting bandwidth management under control. this version may suck less than previous attempts. It also breaks the mac build until someone adds iobuf.[ch] to xcode...
2008-11-25 21:35:17 +00:00
Charles Kerr
8e6529ad8f
(libT) I wonder if this will have any affect on the bug reported by Wizardling.
2008-11-24 21:59:00 +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