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