Charles Kerr
884135d853
fix: sonarcloud ( #2356 )
...
* refactor: replace #define with constexpr in some utils
* fix: use-std-string-instead-of-c-array sonarcloud warning
* fix: use init-statement sonarcloud warning
* fix: explain-empty-function sonarcloud warning
* fix: move #include directive to top sonarcloud warning
* fix: replace-void-ptr-arg-with-more-meaningful-type sonarcloud warning
* fix: replace-redundant-type-with-auto warning
* fix: use-init-statement sonarcloud warning
* fix: make type a pointer-to-const sonarcloud warning
* fix: cli tyop
* fix: replace-redundant-type-with-auto warning
* fix: use-init-statement sonarcloud warning
* fix: replace-redundant-type-with-auto warning
* fix: use-init-statement sonarcloud warning
* fix: replace-redundant-type-with-auto warning
* fix: make type a pointer-to-const sonarcloud warning
* fix: make type a pointer-to-const sonarcloud warning
* fix: replace-redundant-type-with-auto warning
* refactor: replace #define with constexpr in rpcimpl
2021-12-28 11:23:47 -06:00
Charles Kerr
42b1362760
refactor: tidy libtransmission includes ( #2316 )
2021-12-15 15:25:42 -06:00
Charles Kerr
c46ce2da06
refactor: add tr_torrentWebseed(), tr_torrentWebseedCount() ( #2277 )
...
* refactor: add tr_torrentWebseedCount()
2021-12-07 12:11:28 -06:00
Charles Kerr
2977636d58
fix: sonarcloud warnings ( #2260 )
...
* fix: add-explicit-keyword-to-constructor warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1tyuB-2farvsyMPiZl&open=AX1tyuB-2farvsyMPiZl
* fix: use a structured binding declaration
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1tyuHH2farvsyMPiZm&open=AX1tyuHH2farvsyMPiZm
* Fix implicit-conversion-loses-precision warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1tyuH22farvsyMPiZn&open=AX1tyuH22farvsyMPiZn
* fix use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1tyuO42farvsyMPiZw&open=AX1tyuO42farvsyMPiZw
* fix implicit-conversion-loses-precision warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1tyuO42farvsyMPiZs&open=AX1tyuO42farvsyMPiZs
* fix: implicit-conversion-loses-precision warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1tyuO42farvsyMPiZt&open=AX1tyuO42farvsyMPiZt
* fix handle-this-exceeption-or-do-not-catch-it warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1y7t12cIz3krp3mVpV&open=AX1y7t12cIz3krp3mVpV
* fix make-this-variable-a-reference-to-const warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1y7t12cIz3krp3mVpW&open=AX1y7t12cIz3krp3mVpW
* fix replace-redundant-type-with-auto warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1y7t12cIz3krp3mVpY&open=AX1y7t12cIz3krp3mVpY
* Fix use-try_emplace-instead-of-emplace warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0WPk3QwxvzFbF6whWN&open=AX0WPk3QwxvzFbF6whWN
* Fix: make-this-a-pointer-to-const warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0bZPUXjI_aUyxGBxB4&open=AX0bZPUXjI_aUyxGBxB4
* Fix use-std::make_unique warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0WPk0twxvzFbF6whWC&open=AX0WPk0twxvzFbF6whWC
* Fix: replace-push_back-with-emplace_back warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0BraL_0QLXO0pQ_Bfv&open=AX0BraL_0QLXO0pQ_Bfv
* Fix: use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0bZPXajI_aUyxGBxB8&open=AX0bZPXajI_aUyxGBxB8
* Fix: replace-redundant-type-with-auto warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0bZPXajI_aUyxGBxB9&open=AX0bZPXajI_aUyxGBxB9
* Fix: replace-emplace-with-try_emplace warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0bZPXajI_aUyxGBxB_&open=AX0bZPXajI_aUyxGBxB_
* Fix: extract-assignment-from-operation warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0bZPXajI_aUyxGBxCA&open=AX0bZPXajI_aUyxGBxCA
* Fix use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX1op6_hUBCnp-Grmra8&open=AX1op6_hUBCnp-Grmra8
* fix: use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0L8qgMUnpKTxYiu5CN&open=AX0L8qgMUnpKTxYiu5CN
* Revert "Fix use-std::make_unique warning"
This reverts commit 463a742f34
.
* fix: make-parameter-a-pointer-to-const warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX06St241usi2gyYkPTZ&open=AX06St241usi2gyYkPTZ
* fix: make-parameter-a-pointer-to-const warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX06St241usi2gyYkPTa&open=AX06St241usi2gyYkPTa
* fix: use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX01Itn2f_SST5i7BN1o&open=AX01Itn2f_SST5i7BN1o
* fix: use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AXziv55-MuQoG-Y-NgLX&open=AXziv55-MuQoG-Y-NgLX
* fix: use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AX0_a_JGNJn7rAzml_68&open=AX0_a_JGNJn7rAzml_68
* fix: replace-redundant-type-with-auto warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AXzyMRYbK9dvryvWm8XA&open=AXzyMRYbK9dvryvWm8XA
* fix: use-init-statement warning
Xref: https://sonarcloud.io/project/issues?id=transmission_transmission&issues=AXziv52fMuQoG-Y-NgLW&open=AXziv52fMuQoG-Y-NgLW
2021-12-01 17:11:57 -06:00
Charles Kerr
de169c7ec3
refactor: tr_completion ( #2220 )
...
* refactor: refactor tr_completion + add test coverage for it
2021-11-25 12:26:51 -06:00
Charles Kerr
073c6af1d6
refactor: swarm ( #2103 )
...
* refactor: encapsulate request tracking in a class
Introduces a new class to peer-mgr, `ClientRequests`, which tracks what
active requests we've got pending: which blocks, when the requests were
sent, and who they were sent to.
This shouldn't change peer-mgr behavior. Its goal is to carve out some
of peer-mgr's data structures and encapsulte them behind an API that's
simpler to understand.
* refactor: move ActiveRequests to its own file
* perf: avoid duplicate call to tr_cpMissingBlocksInPiece
2021-11-19 12:37:38 -06:00
Charles Kerr
02b9e17207
refactor: make tr_peerIo a class ( #1928 )
...
* refactor: make tr_peerIo a class
No behavioral changes.
Use `new` and `delete` and change `struct` references to `class`.
* refactor: make some tr_peerIo fields const
* refactor: reorganize tr_peerIo fields to remove padding holes
* refactor: remove redundant field tr_peerIo.isIncoming
* refactor: make tr_peerIo.inbuf, .outbuf fields const*
2021-10-11 16:54:16 -05:00
Charles Kerr
0783e9691d
refactor: make tr_swarm a class ( #1915 )
2021-10-09 19:13:40 -05:00
Charles Kerr
454f55a9a2
fixup! refactor: prefer constexpr functions over static inline ones ( #1887 ) ( #1899 )
...
do not declare tr_peerMsgs as both a struct and a class
2021-10-07 20:12:53 -05:00
Charles Kerr
3b72a1feea
refactor: use C++ inheritance for tr_peer, tr_peerMsgs, and tr_webseed ( #1877 )
...
* refactor: use C++ inheritance for tr_peer, tr_peerMsgs, and tr_webseed
2021-10-07 08:33:55 -05:00
Charles Kerr
83f21b8e0e
refactor: prefer constexpr functions over static inline ones ( #1887 )
...
* refactor: prefer constexpr functions over static inline ones
2021-10-06 17:24:04 -05:00
Charles Kerr
cc204e0b2c
refactor: prefer "using" over "typedef" ( #1883 )
...
* refactor: prefer "using" over "typedef"
2021-10-06 09:26:07 -05:00
Charles Kerr
d6cb99e57c
perf: use scrape to know when a private swarm is all-seeds ( #1780 )
...
* perf: use scrape to know when a swarm is all-seeds
For private torrents, the tracker is the sole source of peers. So when a
private torrent's tracker responds that there are 0 leechers, we can use
that information to mark the entire swarm as seeders and to not initiate
connections to those peers if we are seeding. This can help seedboxes to
more efficiently pick which swarms to prioritize.
This strategy is not used on public torrents, since new seeder-to-seeder
connections can be useful there for pex.
This PR changes tr_peerMgrAddPex() to (1) remove tr_atom.seedProbability
field (which was not as robust as intended) and (2) add batches of peers
instead of a single peer.
* fix: only use all-seeds check for private torrents
2021-09-09 15:25:30 -05:00
Mike Gelfand
db3d40d0ed
Switch to clang-format for code formatting, include Mac client
2021-08-16 00:38:29 +03:00
Charles Kerr
7f147c65fb
refactor: fix more sonarcloud warnings ( #1508 )
...
* refactor: const correctness
* refactor: use getpwuid_r instead of getpwuid
* chore: simplify dict walking loop logic
* refactor: remove dead store assignment in announcer
* refactor: use std::make_shared
2020-11-05 16:46:21 -06:00
Charles Kerr
677dc73eac
refactor: use GTest for running tests ( #1383 )
...
* refactor: use google-test on libtransmission tests
2020-08-11 13:11:55 -05:00
Charles Kerr
fa6df52d58
chore: remove unused methods ( #1207 )
...
* chore: remove unused methods in qt client
* chore: remove unused libtransmission methods
* chore: remove unused gtk methods
* chore: remove more unused libtransmission methods
* chore: remove more unused code found by @reardonia
2020-05-11 17:20:46 -05:00
Mike Gelfand
5b29fe1556
Ensure include guard is the first non-comment line
2017-11-14 23:21:28 +03:00
Mike Gelfand
18aabdeb06
Introduce peer socket struct to improve readability
2017-06-28 18:50:05 +03:00
Mike Gelfand
dadffa2c0f
Align type qualifiers to the right (code style)
...
This way all the qualifiers (`const`, `volatile`, `mutable`) are grouped
together, e.g. `T const* const x` vs. `const T* const x`. Also helps reading
types right-to-left, e.g. "constant pointer to constant T" vs. "constant
pointer to T which is constant".
2017-04-20 19:53:20 +03:00
Mike Gelfand
d7930984ef
Adjust uncrustify config, reformat all but Mac client
...
There're places where manual intervention is still required as uncrustify
is not ideal (unfortunately), but at least one may rely on it to do the
right thing most of the time (e.g. when sending in a patch).
The style itself is quite different from what we had before but making it
uniform across all the codebase is the key. I also hope that it'll make the
code more readable (YMMV) and less sensitive to further changes.
2017-04-20 10:01:22 +03:00
Mike Gelfand
2248d3670f
Get rid of $Id$ SVN keywords in source files
2016-09-02 23:10:15 +03:00
Jordan Lee
1af60ad6ad
use '#pragma once' instead of #ifndef..#define..#endif guards
2016-03-29 16:37:21 +00:00
Mike Gelfand
949e02b933
Define and use tr_socket_t and TR_BAD_SOCKET instead of int and -1.
...
Test socket validity by comparing to TR_BAD_SOCKET instead of various
(and sometimes wrong) other tests like `x >= 0`, `x != -1`, `x > 0`,
`x > -1`, `x` (valid), and `x < 0`, `x == -1` (invalid).
2015-03-18 07:34:26 +00:00
Mike Gelfand
440f482d01
Replace tabs with spaces; remove trailing spaces
2015-01-02 11:15:31 +00:00
Mitchell Livingston
0e01879974
Use built-in _WIN32 macro instead of WIN32
2014-07-04 00:00:07 +00:00
Jordan Lee
02cff80c2d
Copyedit the license's revised text: (1) remove unnecessary repitition use of the word 'license' from the top of the header and source files (2) add the standard 'we hope it's useful, but no warranty' clause to COPYING (3) make explicit that linking OpenSSL is allowed (see https://people.gnome.org/~markmc/openssl-and-the-gpl.html for background) (4) sync the Qt and GTK+ clients' license popups with COPYING's revised text
2014-01-21 03:10:30 +00:00
Jordan Lee
4b9626bb83
Licensing changes:
...
1. add the option the code to be used under GPLv2 or GPLv3; previously only GPLv2 was allowed
2. add the "proxy option" as described in GPLv3 so we can add future licenses without having to bulk-edit everything again :)
3. remove the awkward "exception for MIT code in Mac client" clause; it was unnecessary and confusing.
2014-01-19 01:09:44 +00:00
Jordan Lee
4904b923fb
(trunk) restore copyright year as suggested in email by rms
2014-01-18 20:56:57 +00:00
Jordan Lee
3fb74c4e00
(trunk, libT) fix tr_torrentStat() regression in the nightlies reported in #5294 by mw3demo
2013-05-27 21:04:48 +00:00
Jordan Lee
96691dd019
(libT) make the class hierarchy between tr_peer, tr_peerMsgs, and tr_webseed a little less ad-hoc
2013-02-04 16:23:33 +00:00
Jordan Lee
f370a76c57
move tr_peer.encryptionPreference to tr_peermsgs.encryptionPreference
2013-02-03 22:45:32 +00:00
Jordan Lee
3cb7595b85
(libT) move the tr_peer declaration from peer-mgr.h to peer-common.h
2013-02-03 22:40:00 +00:00
Jordan Lee
84aed36ba9
(libT) copyediting: whitespace/indentation
2013-02-02 20:17:52 +00:00
Jordan Lee
388da24dd0
(libT) add package-visible API hook for when a block is downloaded. Add unit test to confirm that when the last file finishes downloading, its .part suffix is removed and it's moved from the incomplete to complete dir
2013-01-26 23:08:51 +00:00
Jordan Lee
c1559f3cc4
(trunk, libT) first drop of the tr_quark patch.
2012-12-22 20:35:19 +00:00
Jordan Lee
aea6d7cd6f
(trunk, libT) #5168 'make libtransmission's public funcs nonblocking when possible' -- remove tr_torrentRef() and tr_torrentUnref() as discussed in https://trac.transmissionbt.com/ticket/5168#comment:8
2012-12-14 20:04:37 +00:00
Jordan Lee
079c78981c
(trunk) #5168 'make libtransmission's public funcs nonblocking when possible' -- first attempt.
2012-12-12 20:22:57 +00:00
Jordan Lee
3d38723ad9
Follow more common whitespace style conventions in the C code (libtransmission, daemon, utils, cli, gtk).
2012-12-05 17:29:46 +00:00
Jordan Lee
3398a48e57
(trunk libT) #4402 "Transmission Bandwidth allocation getting overflows" -- use gvdl's patch '4402-uint-bpsoverflow.patch'
2012-07-01 02:17:35 +00:00
Jordan Lee
2317f08d38
(trunk libT) #4338 "improved webseed support" -- patch by alexat
2011-07-10 15:24:51 +00:00
Jordan Lee
4230cd7786
(trunk libT) don't cache unininteresting peer addresses between sessions
...
For example, if we're both seeds, or if the peer is not connectible, don't bother caching it for the next session. If it's still alive, we'll find it up through DHT or tracker announces next time around. As with r12253, this commit's intention is to reduce the number of unproductive peer_atoms that we waste time trying to connect to.
2011-03-29 15:23:54 +00:00
Jordan Lee
83c0e4f011
(trunk libT) break the mac build and introduce new crashes.
...
This is partially to address #4145 "Downloads stuck at 100%" by refactoring the bitset, bitfield, and tr_completion; however, the ripple effect is larger than usual so things may get worse in the short term before getting better.
livings124: to fix the mac build, remove bitset.[ch] from xcode
2011-03-28 16:31:05 +00:00
Jordan Lee
1b825079be
(trunk libT) API cleanup of the tr_address functions to make them more consistent.
...
This is loosely related to #2910 , but only in the sense of laying the groundwork for #2910 's fix...
2011-03-25 05:34:26 +00:00
Jordan Lee
f7005889d1
(trunk libT) copyediting: clean up the "#include <event2/*>" directives in libtransmission's header files
2011-03-24 22:45:04 +00:00
Jordan Lee
b4d36aeb54
(trunk) #4138 "use stdbool.h instead of tr_bool" -- done.
2011-03-22 15:19:54 +00:00
Jordan Lee
b4538e0625
(trunk libT) copyediting.
...
1. make some accidentally-public functions/variables private
2. comment out tr_generateAllowedSet() since we're not using it
3. argument list indentation
2011-03-07 14:33:45 +00:00
Jordan Lee
9bf2434e14
(trunk) copyediting: remove trailing spaces from source code lines in daemon/ gtk/ libtransmission/ and utils/
2011-03-04 23:26:10 +00:00
Jordan Lee
b10aea6fcc
(trunk) #4072 "remove the 'know peer count' field in Inspector" -- remove it from libtransmission too
2011-03-04 04:50:50 +00:00
Jordan Lee
0c36e0c9de
(trunk libT) remove the unused tr_ratecontrol code. switch webseed over to using tr_bandwidth.
2011-03-03 18:33:24 +00:00
Jordan Lee
9d95bd151d
(trunk libT) #4035 "In seed state, transmission disconnect from leechers" -- fixed.
2011-02-24 14:35:45 +00:00
Jordan Lee
f2b4a59eda
(trunk libT) #4051 "Use composition for the tr_history fields in tr_peer" -- fixed.
...
If we use composition on these objects we can save a handful of pointers per peer. This isn't a big deal, but it's an easy/safe change to do.
2011-02-23 06:01:16 +00:00
Juliusz Chroboczek
704f984bdf
Implement atom->utp_failed and peerMgrSetUpFailed.
2011-02-18 00:43:31 +00:00
Jordan Lee
f00799f80c
if we successfully finish a handshake using uTP, mark the peer as supporting uTP
2011-02-18 00:41:06 +00:00
Juliusz Chroboczek
8599d7c037
Modify peer-io to work with UTP sockets.
...
This is not supposed to work yet -- it just adds new fields to the data
structures to get the UTP code to compile.
2011-02-18 00:23:51 +00:00
Jordan Lee
879a2afcbd
Update the copyright year in the source code comments.
...
The Berne Convention says that the copyright year is moot, so instead of adding another year to each file as in previous years, I've removed the year altogether from the source code comments in libtransmission, gtk, qt, utils, daemon, and cli.
Juliusz's copyright notice in tr-dht and Johannes' copyright notice in tr-lpd have been left alone; it didn't seem appropriate to modify them.
2011-01-19 13:48:47 +00:00
Juliusz Chroboczek
96141bdbff
Consolidate both versions of tr_isPex into a single function.
...
There used to be two versions of tr_isPex; one correct in peer-mgr.c,
and one buggy in resume.c. The buggy version caused us to reject all
peers with non-trivial flags when resuming.
2011-01-16 15:47:09 +00:00
Charles Kerr
e5bb3205a1
(trunk) Join the 21st century and use only 1 space at the end sentences. This commit is nearly as important as the semi-annual ones that remove trailing spaces from the ends of lines of code... :)
2010-12-27 19:18:17 +00:00
Charles Kerr
f8355d654f
(trunk libT) #3242 "use added.f's 'connectable' flag" -- added.
2010-12-14 18:33:48 +00:00
Charles Kerr
1eb2b44b75
(trunk libT) remove 120 unused ints and 2 unused time_t fields per-peer, whoo
2010-10-08 13:33:50 +00:00
Daniel Lee
afc7c5355e
(libT) #3453:Torrent does not stop when set per torrent seed ratio is reached before torrent is completed
...
(libT) #3578:Interested flag isn't cleared when transitioning from leeching to seeding
2010-09-25 00:34:15 +00:00
Charles Kerr
6e5af03d78
(trunk) #3045 "speed units" -- change the public API of libtransmission based on feedback from livings
2010-07-04 06:07:21 +00:00
Charles Kerr
cdcc4705aa
(trunk) #3045 "make libtransmission's API byte-oriented instead of KiB-oriented." -- implemented. This is a largish commit and will break the mac build for a little while.
2010-07-03 00:25:22 +00:00
Charles Kerr
db44d81b24
(trunk) #3256 "libtransmission/publish.[ch] should be replaced" -- apply publish.diff for 2.10
2010-06-19 14:33:10 +00:00
Charles Kerr
38a254ba78
(trunk libT) as long as I'm committing these CPU tweaks, might as well throw in #3289 too. To undo all this, we can revert to r10745
2010-06-14 12:01:50 +00:00
Charles Kerr
546bca723b
(trunk libT) #3159 "better decision-making when choosing which peers to initiate new connections with" -- experimental commit
2010-04-20 21:54:03 +00:00
Charles Kerr
b850349479
(trunk) #2993 "'Downloaded' much greater than 'Have' or 'verified'" -- add new congestion-based throttle for 2.0
2010-03-08 04:29:58 +00:00
Charles Kerr
a334b422c3
(trunk) remove unnecessary #includes
2010-01-28 13:33:40 +00:00
Charles Kerr
182cbb8b90
(trunk) one of the less-interesting commits in a while: remove trailing spaces from lines
2010-01-05 23:47:50 +00:00
Charles Kerr
5c26afdb52
happy new year!
2010-01-04 21:00:47 +00:00
Charles Kerr
d9369718b3
(trunk) #2548 "T's request queue can send out too many duplicate requests" -- (1) fix r9465 implementation bug that caused some peers to get starved of requests if they rejected a request or choked, then unchoked us. (2) increase a block request's TTL by 15 seconds to reduce cancel/req cycles between two or more blocks (3) add a debug mode to the GTK+ client's peer tab to watch the pending requests counts both up & down
2009-12-16 18:20:01 +00:00
Charles Kerr
d6f7df8c9a
(trunk libT) #2508 "atom->port never updated" -- (1) fix r9434 bug that used the wrong byte ordering scheme for port numbers. This is why most of the .resume file's peers are worthless in betas 1 and 2. :( (2) in the resume file, change the dictionary key for peers so that the worthless peers won't be reloaded on startup in beta 3.
2009-12-16 00:45:18 +00:00
Charles Kerr
78ead8c3dd
(trunk) update the copyright notices
2009-12-05 02:19:24 +00:00
Charles Kerr
f69e335291
(trunk) #2096 : Magnet, BEP #9 support
2009-11-24 02:16:31 +00:00
Charles Kerr
22f7a64aa2
(trunk libT) #2575 : PEX is not meant to do forwarding
2009-11-20 07:47:31 +00:00
Charles Kerr
b906c125ac
(trunk libT) #2548 : T's request queue can send out too many duplicate requests
2009-11-08 23:20:00 +00:00
Charles Kerr
4d817b0701
(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...(trunk libT) undo r9465 + r9466, which was the experimental new request manager. It still still needs some tinkering before it's ready for the nightlies...
2009-11-02 00:17:30 +00:00
Charles Kerr
0a4d8602e0
(trunk libT) #2548 : T's request queue can send out too many duplicate requests
2009-11-01 02:10:47 +00:00
Charles Kerr
3680896a19
(trunk libT) #2508 atom->port never updated
2009-10-29 16:10:03 +00:00
Charles Kerr
00197cc461
(trunk libT) undo today's earlier commit r9381 for #2508 -- looks like I introduced a bug into the patch.
2009-10-22 19:08:45 +00:00
Charles Kerr
bb541fc8d6
(trunk libT) #2508 : atom->port never updated
2009-10-22 15:05:56 +00:00
Charles Kerr
fb83a0464e
(trunk libT) #2395 : caching too many peers between sessions makes startup slow and uses too much memory (KyleK, stdisease, et al)
2009-09-10 02:20:35 +00:00
Charles Kerr
8e676171d4
(trunk libT) move tr_bitfield into its own, package-visible source files. this may break the mac build temporarily until the xcode file gets synced
2009-06-15 00:11:06 +00:00
Charles Kerr
452cb27f9e
(trunk libT) re-start work on making libT doxygen friendly. still a long ways to go on this.
2009-05-29 19:17:12 +00:00
Charles Kerr
8504baf7aa
(trunk libT) #2022 : Torrentbar shows wrong speeds: Webseed-peers aren't taken into account
2009-05-28 02:28:14 +00:00
Charles Kerr
9fe388cf70
(trunk libT) BitTorrent message #9 is for setting the peer's DHT listening port, not their BitTorrent listening port. (tiennou)
2009-05-16 14:31:18 +00:00
Charles Kerr
f9aa317998
(trunk) improvements to peer-mgr.c. also, new temporary assert()s to help test them.
2009-05-09 06:08:21 +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
486c55c1ed
(trunk libT) peerMgr: operate directly on tr_torrent and not peerMgr+torrentHash
2009-01-13 21:00:05 +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
fe816d8135
(trunk) update the GPL code's copyright dates
2009-01-10 23:09:07 +00:00
Charles Kerr
9594112d27
updated email address
2008-12-16 00:20:44 +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
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
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
0d5fed6442
(libT) re-apply jhujhiti's IPv6 patch. This merges in my tr_port cleanup, so any new bugs are mine :/
2008-12-02 03:41:58 +00:00
Charles Kerr
a14621c363
(libT) janitorial: use the tr_port type whenever we have a `port' as a function argument or as a field in a struct.
2008-12-01 20:51:01 +00:00
Charles Kerr
7fa9813955
(libT) #252 : revert r7195 (jhujhiti's IPv6 test patch). It seems to be the culprit in a `thrashing' issue reported by Waldorf and m1b in irc -- the behavior appeared between r7183 and r7187 -- so this commit is to trigger off a nightly build w/o the patch to test with in irc.
2008-12-01 20:21:06 +00:00
Charles Kerr
a2ad4f6543
(libT) patch from jhujhiti to add ipv6 support.
2008-11-30 00:47:18 +00:00
Charles Kerr
40b5fc5351
(libT) #1532 : patch from jhujhiti to remove (unused) fast extensions
2008-11-29 20:37:34 +00:00