Charles Kerr
b2a6def953
(trunk libT) fix small dead code. found by clang static analyzer and reported by d0k
2009-05-13 19:04:14 +00:00
Erick Turnquist
2719372bc6
(trunk) #1497 Options to listen on specific network sockets
2009-04-15 21:05:58 +00:00
Charles Kerr
a2b53f5cbd
(trunk libT) more speed tweaks from valgrind
2009-04-12 14:52:17 +00:00
Erick Turnquist
2f8d56e77f
(trunk libT) make IPv6's two IPv4-compatible address formats invalid peer addresses
...
IPv4 peers should only be seen from an IPv4-connected tracker.
2009-03-27 01:31:17 +00:00
Erick Turnquist
dd7eb76718
(trunk libT) remove tr_suspectAddress() since all seems well
2009-03-27 01:14:25 +00:00
Erick Turnquist
72297dbdb4
(trunk libT) suppress ipv6 EHOSTUNREACH as well as ENETUNREACH
2009-02-08 22:52:47 +00:00
Erick Turnquist
fc767a3f03
(trunk libT) don't attempt to connect to (half-complete) ipv6 link-local addresses
2009-02-08 22:45:30 +00:00
Erick Turnquist
61e505b8d1
(trunk libT) don't attempt to set V6ONLY on ipv4 sockets
2009-02-07 01:14:41 +00:00
Erick Turnquist
94b98030cb
(trunk libT) stop using ipv4-mapped listener sockets. this should have the added effect of fixing #1789
2009-02-07 00:34: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
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
2f6b56671f
(trunk libT) win32 portability patch from Alexey
2009-01-11 17:02:04 +00:00
Charles Kerr
c6a454d2e2
(trunk libT) win32 portability fixes, reported by Alexey
2009-01-10 02:22:13 +00:00
Erick Turnquist
5086cbe47c
(trunk libT) use IN_MULTICAST macro
2009-01-02 21:45:55 +00:00
Charles Kerr
0cd572a0da
(trunk libT) make tr_isAddress() and tr_isDirection() inline
2009-01-02 04:47:37 +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
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
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
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
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
de5228c415
(trunk libT) more runtime safety checks
2008-12-16 21:06:47 +00:00
Charles Kerr
748a9f1c92
(trunk libT) add some assertions to tr_compareAddresses()
2008-12-16 06:46:27 +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
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
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
40299a2284
(libT) silence the net.c warnings I introduced yesterday :/
2008-11-29 21:34:06 +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
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
be5e6774ad
(libT) #1468 : another stab at getting the peer transfer speeds both fast and a little more consistent.
2008-11-24 04:21:23 +00:00
Charles Kerr
853a67fbfc
(libT) define peer connections' sockets' so_sndbuf size in the tr_session struct.
2008-11-21 16:32:55 +00:00
Charles Kerr
93b3dc5617
increase the socket's SNDBUF size
2008-11-16 21:16:14 +00:00
Charles Kerr
84dcaab5f4
remove dead code
2008-10-22 13:57:30 +00:00
Charles Kerr
b5c2f14387
(libT) dead code removal
2008-10-14 20:44:41 +00:00
Charles Kerr
cc89872dd4
run libT, cli, daemon, gtk through the source-code formatter "uncrustify" as promised/threatened
2008-09-23 19:11:04 +00:00
Charles Kerr
d06f101e57
#220 : lazy bitfields
2008-08-16 21:06:57 +00:00
Charles Kerr
93898401fb
more connection management changes
2008-08-16 16:00:49 +00:00
Charles Kerr
20b283584b
one more piece of Aloisius' performance patch: set SO_SNDBUF to 2x MTU
2008-07-24 20:58:58 +00:00
Charles Kerr
2f239319b0
add a portability wrapper ``tr_snprintf()'' around snprintf()
2008-07-15 17:16:57 +00:00
Charles Kerr
5ed97a1c04
refactor out some dead code in net.c, and probably give jhujhiti fits
2008-05-30 15:43:10 +00:00
Charles Kerr
e6070f04f2
remove more dead code
2008-05-28 16:56:38 +00:00
Charles Kerr
cd6ef35854
(libT) remove dead code
2008-05-28 16:52:31 +00:00
Charles Kerr
19fbb3ef2c
string folding
2008-04-21 15:22:54 +00:00
Charles Kerr
57c7fcb507
#857 : DSCP support for Transmission
2008-04-12 00:29:49 +00:00
Charles Kerr
21124a8de8
strings work: (1) folding similar strings together for easier tranlation (2) gtk: use consistent shortcuts/phrases/terminology between the preferences and "open torrent" dialogs (3) promote the port forwarding messages from Debug to Info as per BMW's request
2008-03-18 19:14:21 +00:00
Charles Kerr
777c0de53a
more i18n strings work
2008-03-06 21:59:00 +00:00
Charles Kerr
84a8592d1d
first cut at adding i18n hooks into libtransmission.
2008-03-04 02:02:25 +00:00
Charles Kerr
deaeb24cb5
cleanup #includes for errno & strerror
2008-02-19 04:16:04 +00:00
Charles Kerr
939f1541c6
mingw portability fixes: libtransmission #includes
2008-01-10 19:52:56 +00:00
Charles Kerr
ce6c33b7bf
set copyright info to 2008
2008-01-01 17:20:20 +00:00
Charles Kerr
f8f4e1fc32
more helpful error message
2007-12-15 03:17:50 +00:00
Charles Kerr
99e8b9a19d
two arguments were transposed.
2007-12-15 03:14:16 +00:00
Charles Kerr
67a86a2274
finish the `shared' update: bind & listen the incoming port.
...
better logging in network code.
2007-12-09 00:28:34 +00:00
Charles Kerr
73ee11f233
Use libnatpmp for port mapping. rewrite the upnp/natpmp manager.
...
NOTE: this will break the xpjets build until SoftwareElves or a volunteer patches the xcode project file to make a libnatpmp library just like was done for libminiupnp.
2007-12-08 19:34:15 +00:00
Charles Kerr
f534d0929c
use PMP_MCAST_ADDR, instead of a hardcoded address, in net.c
2007-12-01 05:11:30 +00:00
Charles Kerr
78f3c40484
get nat-pmp working again in Leopard. Thanks to Chinstrap for tracking down the problem & submitting a patch. See the comment in this changeset for more details.
2007-12-01 05:01:02 +00:00
Charles Kerr
8c0e2434f5
fix OpenBSD build error.
2007-10-25 13:59:46 +00:00
Charles Kerr
f96cbd3ec3
* add intltool macros to make it easier to build from svn.
...
* minor error logging improvement in libtransmission
2007-10-09 02:49:24 +00:00
Charles Kerr
fef89a3bc7
* record the ports of incoming sockets. we might need them later if we want to disconnect and reconnect.
...
* for portability, use libevent API for some socket upkeep
2007-09-25 23:10:34 +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
Josh Elsasser
2ead51f79d
Use __BEOS__ to test for beos instead of relying on the build to set SYS_BEOS.
...
Add missing headers and other miscellaneous fixes for beos.
2007-08-04 01:17:39 +00:00
Charles Kerr
ef2fc4fdcf
More win32 portability fixes. we now talk to tracker & peers; hash checks work, downloads seem to work. w00t
2007-08-02 23:33:40 +00:00
Charles Kerr
6763ec75e8
more portability fixes
2007-08-02 21:58:34 +00:00
Charles Kerr
1fd5f90a77
win32 cleanly compiles and starts now. (still doesn't atually *work*, but we're getting closer...)
2007-08-02 19:43:29 +00:00
Charles Kerr
26caf4f5dd
More Win32 portability changes
2007-08-01 00:40:49 +00:00
Charles Kerr
ba3dc008fc
get the socket/net code working on win32 too
2007-07-31 16:55:47 +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
e6e6d574db
second draft of a fix for the tracker communication bug reported by TMT
2007-07-13 01:34:14 +00:00
Charles Kerr
790476ac23
clean up #includes a bit.
2007-07-12 17:51:45 +00:00
Charles Kerr
b79beeff66
clean up #includes a bit.
2007-07-09 20:10:42 +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
3e6d071e0d
clean up
2007-01-19 01:39:33 +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
Josh Elsasser
0257761670
Merge nat-traversal branch to trunk.
2006-09-25 18:37:45 +00:00
Josh Elsasser
d07b688c86
Unbreak BeOS build.
2006-08-18 08:46:19 +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
f98fe6a1b0
Added $Id$ keywords and updated a few headers
2006-05-29 21:21:23 +00:00
Eric Petit
1ec413ea5c
Fixes warnings
2006-04-26 10:59:09 +00:00
Eric Petit
3db5194740
Clean up, perform all DNS resolutions in a common thread. This should
...
fix the remaining issues with many open torrents
2006-04-22 21:39:17 +00:00
Eric Petit
766e834cde
Code cleanup
2006-04-22 17:12:59 +00:00
Eric Petit
62bcf17b22
Fixed a couple of bugs introduced in [164]
2006-04-08 15:10:52 +00:00
Eric Petit
256bda38ce
Adds non-blocking (threaded) DNS resolution
2006-03-24 12:18:38 +00:00
Eric Petit
07b9da73fc
Update 2006-01-11
2006-01-12 19:12:58 +00:00
Eric Petit
a6aa884776
Import from 2005-10-26
2006-01-12 17:43:21 +00:00