Charles Kerr
9248143ce8
fix recursive crash when stopping a torrent, reported by plantain. silence a few more console messages.
2007-09-21 14:20:55 +00:00
Charles Kerr
4d15bbdc2a
slightly less broken handling of cases where we can't bind to our listening port.
2007-09-21 05:31:29 +00:00
Mitchell Livingston
76da1185ca
merge encryption branch to trunk (xcode project is still out of date)
2007-09-20 16:32:01 +00:00
Charles Kerr
5f5a743790
the new tracker code seems to be working, so now it's time for me to learn yet again how much better users are at noticing bugs than I am. :)
2007-08-16 20:00:06 +00:00
Charles Kerr
0f85cc3297
continue whittling away at internal.h to reduce the global #include dependencies
2007-07-31 14:26:44 +00:00
Charles Kerr
d209052051
add portability wrapper for in_port_t...
2007-07-30 18:04:10 +00:00
Charles Kerr
ebb141b232
better encapsulation of platform-specific constructs: tr_thread_t, tr_cond_t, tr_lock_t
2007-07-30 15:27:52 +00:00
Charles Kerr
e07d0220a9
this looks bug but it's not: just janitorial cleanup, moving #includes from headers into source file
2007-07-29 18:11:21 +00:00
Josh Elsasser
1ecbe8da65
Change a couple functions to take an in_addr pointer instead of an in_addr.
...
Forward declare struct in_addr and include the relevant headers in the .c files where it's used.
2007-07-14 16:29:21 +00:00
Charles Kerr
b79beeff66
clean up #includes a bit.
2007-07-09 20:10:42 +00:00
Eric Petit
981ede4d4b
Fixes a typo that caused us to reject all incoming connections
2007-07-04 15:04:05 +00:00
Charles Kerr
f0950d7390
lots of performance improvements. fun!
...
* dynamically resize the request queue on a per-peer basis based on its speed
* fix a huge bug that sabotaged the `swift' performance
* on startup, unchoke peers much sooner
* bump MAX_PEERS and PERCENT_PEER_WANTED
* do a better job of estimating speed on torrents less than 30 seconds old.
* getting an unrecognized extension ID, ignore it instead of stopping the torrent.
2007-06-29 05:45:17 +00:00
Charles Kerr
7e09d157cd
Thread safety improvements. Also, stopping/starting/rechecking/etc. torrents no longer blocks the calling thread. Since this a big commit, it will probably create some short-term pain via new bugs.
2007-06-26 18:45:03 +00:00
Charles Kerr
e161544761
adding experimental implementation of Tamilmani's `Swift' tit-for-tat algorithm for testing. To tweak or disable, change the values around line 50 of libtransmission/peer.c
2007-06-21 14:47:26 +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
09c87aad84
Merge PEX branch, I hope this works.
2007-03-23 08:28:01 +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
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
adfd4e7ca7
Rework the port handling a bit to allow different bound and advertised ports.
2007-01-27 21:17:10 +00:00
Eric Petit
40d8abb68f
More simplifications
2007-01-21 19:42:11 +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
15fdfda60f
small memleaks
2007-01-20 05:07:00 +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