Nick Mathewson
df5e8f65bc
Add more missing documentation, and correct an error in container.c documentation: Don't introduce two parameters called n when you're calling an algorithm O(n).
...
svn:r17783
2008-12-26 17:35:08 +00:00
Nick Mathewson
b68379b13b
Add DOCDOC entries for undocumented static and global variables.
...
svn:r17739
2008-12-22 19:00:05 +00:00
Nick Mathewson
1e5f457461
Fix most DOCDOCs remaining and/or added by redox.
...
svn:r17734
2008-12-22 17:53:04 +00:00
Nick Mathewson
1725c0c8a5
Add DOCDOC comments for all undocumented functions. Add missing *s to other comments so that they will get recognized as doxygen.
...
svn:r17729
2008-12-22 14:56:28 +00:00
Nick Mathewson
bf80e2df3f
Replace calls to time(NULL) that occur on the order of once per read, one per write, or once per cell with calls to a function that looks at a cached value of time. This is tricksy to benchmark, since it will only help on systems where time() is a syscall and syscalls are relatively slow.
...
svn:r17690
2008-12-18 17:19:04 +00:00
Nick Mathewson
122170c1d3
Downlgrade tweak, and answer lots of XXX021s. No actual code fixes in this patch.
...
svn:r17686
2008-12-18 16:11:24 +00:00
Nick Mathewson
ecaee1d927
Remove fixed xxx020s; downgrade unfixed ones.
...
(The unfixed ones are being downgraded to regular XXXs mainly on the rationale that they don't seem to be exploding Tor, and they were apparently not showstoppers for 0.2.0.x-final.)
svn:r17682
2008-12-18 16:11:03 +00:00
Nick Mathewson
7678ac5193
Move edge-only flags from connection_t to edge_connection_t.
...
svn:r17643
2008-12-17 14:59:28 +00:00
Nick Mathewson
04ec7d1f98
Now that tor_assert is no longer using a broken force-to-boolean formulation, we can tor_assert a bitfield without a gcc compile error.
...
svn:r17598
2008-12-11 20:28:50 +00:00
Nick Mathewson
ae33d3ead7
Apply rovv's fix for bug 824.
...
svn:r16975
2008-09-26 15:30:26 +00:00
Nick Mathewson
8bc1536a9e
Add patch 4 from Karsten for proposal 121, slightly modified. Karsten should definitely re-review the bits I changed.
...
svn:r16955
2008-09-24 14:44:29 +00:00
Roger Dingledine
4fd9880540
give rend_client_desc_here a slightly more accurate name
...
svn:r16916
2008-09-16 10:26:15 +00:00
Roger Dingledine
38f2272d5d
patch from karsten for bug 814. whew.
...
svn:r16915
2008-09-16 10:17:04 +00:00
Roger Dingledine
2bde30efa6
read_to_buf should take an int *error_socket and return it.
...
svn:r16909
2008-09-14 08:35:41 +00:00
Karsten Loesing
52fbfc5d45
Correct indentation.
...
svn:r16819
2008-09-09 22:19:41 +00:00
Roger Dingledine
d37fae2f4e
Catch and report a few more bootstrapping failure cases when Tor
...
fails to establish a TCP connection. Cleanup on 0.2.1.x.
svn:r16803
2008-09-09 06:25:39 +00:00
Nick Mathewson
baeb260ad1
Refactor use of connection_new so that we get more verifiable typesafety.
...
svn:r16785
2008-09-05 22:09:44 +00:00
Nick Mathewson
3f2b7078d2
Use warn_too_many_conns() when accept() fails with a resource limit.
...
svn:r16751
2008-09-04 15:22:55 +00:00
Nick Mathewson
730f1b6d3f
Oops. Make warn_too_many_conns() actually work.
...
svn:r16686
2008-08-29 17:01:15 +00:00
Nick Mathewson
fcf817f897
Switch global_identifier on connections to a 64-bit field and move it to connection_t. When procession onionskins, look up the connection by this field rather than by addr:port. This will keep us from dropping onionskins. How many dropped circuits are dropped because of this bug?
...
svn:r16558
2008-08-15 13:55:01 +00:00
Nick Mathewson
30422b5df1
Rate-limit "too-many-sockets" messages; they can get needlessly verbose.
...
svn:r16480
2008-08-09 15:35:37 +00:00
Nick Mathewson
60a0ae198d
Patch cleanups from karsten
...
svn:r16479
2008-08-09 15:13:28 +00:00
Nick Mathewson
d9601c65e0
r17666@tombo: nickm | 2008-08-07 15:12:30 -0400
...
Make tor_addr_from_sockaddr also give away the port in a useful format
svn:r16458
2008-08-07 19:13:35 +00:00
Nick Mathewson
9855c1d06f
r17645@31-33-44: nickm | 2008-08-05 16:28:01 -0400
...
Make unspecified addresses also cause connection_is_rate_limited to say 0.
svn:r16437
2008-08-05 20:28:03 +00:00
Nick Mathewson
960a0f0a99
r17641@31-33-44: nickm | 2008-08-05 16:07:53 -0400
...
Initial conversion of uint32_t addr to tor_addr_t addr in connection_t and related types. Most of the Tor wire formats using these new types are in, but the code to generate and use it is not. This is a big patch. Let me know what it breaks for you.
svn:r16435
2008-08-05 20:08:19 +00:00
Nick Mathewson
3ce6e2fba2
r17346@aud-055: nickm | 2008-07-24 15:37:19 +0200
...
Make generic address manipulation functions work better. Switch address policy code to use tor_addr_t, so it can handle IPv6. That is a good place to start.
svn:r16178
2008-07-24 13:44:04 +00:00
Roger Dingledine
8fa912a8c5
If we close our OR connection because there's been a circuit
...
pending on it for too long, we were telling our bootstrap status
events "REASON=NONE". Now tell them "REASON=TIMEOUT".
svn:r15369
2008-06-20 04:42:17 +00:00
Roger Dingledine
94dabd2c23
If you're using bridges, generate "bootstrap problem" warnings
...
as soon as you run out of working bridges, rather than waiting
for ten failures -- which will never happen if you have less than
ten bridges.
svn:r15368
2008-06-20 04:34:39 +00:00
Roger Dingledine
c6a94718cd
Directory authorities shouldn't complain about bootstrapping
...
problems just because they do a lot of reachability testing and
some of the connection attempts fail.
svn:r15348
2008-06-18 07:34:04 +00:00
Roger Dingledine
8c85eef9b0
start sending "bootstrap problem" status events when we're having troubles
...
reaching relays.
svn:r15116
2008-06-11 01:14:23 +00:00
Roger Dingledine
42f21007a3
consolidate all our edge/circ/orconn reason-to-foo-or-back functions
...
svn:r15115
2008-06-11 00:17:02 +00:00
Roger Dingledine
baa3cea213
Start noticing and reporting bootstrapping failures too. It looks like
...
we never bothered learning why OR conns fail, so next step is to add some
infrastructure for that.
svn:r15091
2008-06-09 18:32:43 +00:00
Roger Dingledine
5dc8062afa
what, we went from v4 to v6?
...
svn:r14428
2008-04-23 18:37:24 +00:00
Roger Dingledine
5e299b5e01
minor fixes that have been accumulating
...
svn:r14378
2008-04-16 00:12:44 +00:00
Roger Dingledine
20f927c2dd
forward-port r14373
...
svn:r14374
2008-04-15 23:06:31 +00:00
Nick Mathewson
e6b617bf05
r18872@catbus: nickm | 2008-03-16 23:56:48 -0400
...
Only dump all guard node status to the log when the guard node status actually changes. Downgrade the 4 most common remaining INFO log messages to DEBUG.
svn:r14069
2008-03-17 04:07:51 +00:00
Nick Mathewson
11e464c331
r18753@catbus: nickm | 2008-03-11 14:56:39 -0400
...
Make some assert()s into tor_assert()s. Make some tor_assert()s called from logging into assert()s, and document why.
svn:r13977
2008-03-11 18:56:41 +00:00
Nick Mathewson
eefe2a3562
r18462@catbus: nickm | 2008-02-27 14:15:57 -0500
...
Add better warnings for the error that produced bug 614, and downgrade from a tor_assert() to a tor_fragile_assert().
svn:r13752
2008-02-27 19:19:34 +00:00
Nick Mathewson
3452486ac6
r14422@tombo: nickm | 2008-02-24 17:09:56 -0500
...
Whitespace fixes
svn:r13700
2008-02-24 22:11:18 +00:00
Nick Mathewson
dde81de3dd
r14419@tombo: nickm | 2008-02-24 16:55:11 -0500
...
Patch from tup: use sizeof sockaddr_un as the size of a unix sockaddr. Fixes unix controlsocket binding on openbsd.
svn:r13697
2008-02-24 22:11:00 +00:00
Nick Mathewson
e0de72dd87
r14410@tombo: nickm | 2008-02-23 16:51:46 -0500
...
Fix the last of the -Wshorten-64-to-32 warnings.
svn:r13696
2008-02-24 22:10:08 +00:00
Nick Mathewson
e7db789e82
r14399@tombo: nickm | 2008-02-22 14:09:38 -0500
...
More 64-to-32 fixes. Partial backport candidate. still not done.
svn:r13680
2008-02-22 19:09:45 +00:00
Nick Mathewson
e68760ac0f
r14388@tombo: nickm | 2008-02-21 22:44:28 -0500
...
More 64-to-32 fixes.
svn:r13672
2008-02-22 03:44:36 +00:00
Nick Mathewson
0ba2bfeef6
r14363@31-33-219: nickm | 2008-02-21 11:11:33 -0500
...
Answer the next-to-last XXX020rc item.
svn:r13658
2008-02-21 16:12:01 +00:00
Nick Mathewson
e2f25558b9
r14362@31-33-219: nickm | 2008-02-21 11:01:10 -0500
...
Change some of our log messages related to closed TLS connections in order to better reflect reality.
svn:r13657
2008-02-21 16:11:58 +00:00
Roger Dingledine
a60f7caa54
start allowing clients to give up on trackhostexits targets if
...
five circuit attempts fail for a given stream. part of the fix
for bug 437. still an XXX020rc remaining.
svn:r13648
2008-02-21 09:00:54 +00:00
Roger Dingledine
b28a342e35
resolve one more, and leave two for nick.
...
svn:r13644
2008-02-21 05:53:50 +00:00
Nick Mathewson
063ced8903
r18296@catbus: nickm | 2008-02-20 23:30:11 -0500
...
Answer one xxx020 item; move 7 other ones to a new "XXX020rc" category: they should get fixed before we cut a release candidate. arma: please review these to see whether you have fixes/answers for any. Please check out the other 14 XXX020s to see if any look critical for the release candidate.
svn:r13640
2008-02-21 04:30:14 +00:00
Roger Dingledine
1c8bd320be
pass bucket sizes num_read and num_written around as size_ts
...
rather than ints
svn:r13610
2008-02-20 02:17:41 +00:00
Roger Dingledine
0977c29196
notice an integer overflow if we ever get source files with more
...
than 65k lines in them. also pointed out by veracode.
svn:r13606
2008-02-20 00:46:09 +00:00
Nick Mathewson
0399538b90
r18233@catbus: nickm | 2008-02-19 18:46:07 -0500
...
Count sockets returned from socketpair() too. This is probably not the socket counting bug.
svn:r13600
2008-02-19 23:46:08 +00:00
Nick Mathewson
9479dd3768
r18226@catbus: nickm | 2008-02-19 18:01:01 -0500
...
Brown-paper-bag time. We were failing to count all the sockets from accept().
svn:r13595
2008-02-19 23:01:07 +00:00
Roger Dingledine
4c1e516a09
cleanups and changelog entry for r13540
...
svn:r13542
2008-02-17 16:52:24 +00:00
Roger Dingledine
bd959adcb7
patch from karsten:
...
Resolved problems with (re-)fetching hidden service descriptors.
Before, v0 descriptors were not fetched at all (fix on 0.2.0.18-alpha),
re-fetching of v2 descriptors did not stop when a v0 descriptor was
received (fix on 0.2.0.18-alpha), and re-fetching of v2 descriptors did
not work in all cases (fix on 0.2.0.19-alpha).
svn:r13540
2008-02-17 16:47:47 +00:00
Nick Mathewson
ca4eb987c8
r14182@tombo: nickm | 2008-02-15 17:20:51 -0500
...
Defer, downgrade, or address more XXX020s. The remaining ones are all ones we should deal with before release.
svn:r13530
2008-02-15 23:39:08 +00:00
Nick Mathewson
d48f6425e5
r18066@catbus: nickm | 2008-02-13 11:22:19 -0500
...
Bugfix from Karsten: "Reversed r13439; v2 rendezvous descriptors were only re-fetched when a directory connection did not finish, not when a directory correctly replied with an error code like 404; bug found by nwf.
svn:r13492
2008-02-13 16:23:28 +00:00
Nick Mathewson
be1e577d5e
Re-fetch v2 rendezvous descriptor only when first try failed. Patch from karsten.
...
svn:r13439
2008-02-09 02:51:20 +00:00
Nick Mathewson
272d37deb3
r17989@catbus: nickm | 2008-02-08 18:09:23 -0500
...
Fix a new segfault when poisoning a non-present socks request.
svn:r13433
2008-02-08 23:09:26 +00:00
Nick Mathewson
eecc44dab8
r17963@catbus: nickm | 2008-02-07 10:14:25 -0500
...
Be more thorough about memory poisoning and clearing. Add an in-place version of aes_crypt in order to remove a memcpy from relay_crypt_one_payload.
svn:r13414
2008-02-07 16:10:33 +00:00
Nick Mathewson
842a33ff20
Update some copyright notices: it is now 2008.
...
svn:r13412
2008-02-07 05:31:47 +00:00
Nick Mathewson
4d70094b6e
r17951@catbus: nickm | 2008-02-06 14:34:13 -0500
...
Add more documentation; change the behavior of read_to_buf_tls to be more consistent. Note a longstanding problem with current read/write interfaces.
svn:r13407
2008-02-06 19:34:32 +00:00
Nick Mathewson
6e2946fb5d
r17949@catbus: nickm | 2008-02-06 13:21:12 -0500
...
Fix bandwidth bucked calculations again, I think. Bugfix on 0.1.2.x. Backport candidate.
svn:r13406
2008-02-06 18:21:16 +00:00
Nick Mathewson
a869574c56
r17947@catbus: nickm | 2008-02-06 11:57:53 -0500
...
Fix a bunch of DOCDOC items; document the --quiet flag; refactor a couple of XXXX020 items.
svn:r13405
2008-02-06 16:58:05 +00:00
Nick Mathewson
9c7eaa7a9d
r17918@catbus: nickm | 2008-02-05 16:39:17 -0500
...
Remove a few #if-0d items.
svn:r13392
2008-02-05 21:39:56 +00:00
Nick Mathewson
91bac90310
r17863@catbus: nickm | 2008-02-01 00:27:07 -0500
...
Bugfix from weasel: possible fix for 593: make connection_write_to_buf("") work when using zlib compression.
svn:r13347
2008-02-01 05:27:12 +00:00
Roger Dingledine
c973eb5e23
start to clean up r13250: retry v2 renddesc fetches when we
...
fail to reach the dirserver too.
svn:r13251
2008-01-24 04:45:30 +00:00
Roger Dingledine
a49f14d0d4
When we setconf ClientOnly to 1, close any current OR and Dir
...
listeners. Reported by mwenge.
svn:r13214
2008-01-21 21:21:19 +00:00
Roger Dingledine
b79850d574
Make "ClientOnly 1" config option disable directory ports too.
...
svn:r13213
2008-01-21 21:00:50 +00:00
Nick Mathewson
edf5e70784
r15891@tombo: nickm | 2008-01-12 19:20:24 -0500
...
Basic hacks to get TLS handshakes working: remove dead code; fix post-handshake logic; keep servers from writing while the client is supposed to be renegotiating. This may work. Needs testing.
svn:r13122
2008-01-13 00:20:47 +00:00
Nick Mathewson
a7ef07b4bd
r15693@tombo: nickm | 2007-12-25 19:11:29 -0500
...
Here, have some terribly clever new buffer code. It uses a mbuf-like strategy rather than a ring buffer strategy, so it should require far far less extra memory to hold any given amount of data. Also, it avoids access patterns like x=malloc(1024);x=realloc(x,1048576);x=realloc(x,1024);append_to_freelist(x) that might have been contributing to memory fragmentation. I've tested it out a little on peacetime, and it seems to work so far. If you want to benchmark it for speed, make sure to remove the #define PARANOIA; #define NOINLINE macros at the head of the module.
svn:r12983
2007-12-26 00:12:08 +00:00
Roger Dingledine
1d8a8063b9
clean up copyrights, and assign 2007 copyrights to The Tor Project, Inc
...
svn:r12786
2007-12-12 21:09:01 +00:00
Nick Mathewson
d8ad247dfd
r15088@tombo: nickm | 2007-11-30 23:47:29 -0500
...
Add support to get a callback invoked when the client renegotiate a connection. Also, make clients renegotiate. (not enabled yet, until they detect that the server acted like a v2 server)
svn:r12623
2007-12-01 08:09:48 +00:00
Nick Mathewson
c3a745951b
r16570@catbus: nickm | 2007-11-08 11:04:20 -0500
...
Keep track, for each OR connection, of the last time we added a non-padding cell to its outbuf. Use this timestamp, not "lastwritten" to tell if it is time to close a circuitless connection. (We can'tuse lastwritten, since lastwritten is updated when ever the connection flushes anything, and by that point we can no longer tell what is a padding cell and what is not.)
svn:r12437
2007-11-08 16:19:07 +00:00
Nick Mathewson
0e993e6008
r16523@catbus: nickm | 2007-11-07 11:35:49 -0500
...
Improve "tls error. breaking" message a little.
svn:r12411
2007-11-07 16:37:08 +00:00
Nick Mathewson
47fd6f7267
r16464@catbus: nickm | 2007-11-06 14:53:28 -0500
...
Also avoid overflow on or_conn->read_bucket
svn:r12401
2007-11-06 19:54:32 +00:00
Nick Mathewson
be1a5191f8
r16462@catbus: nickm | 2007-11-06 14:40:58 -0500
...
Fix bug 544: do not allow buckets to overflow. Backportable.
svn:r12400
2007-11-06 19:42:37 +00:00
Nick Mathewson
e94fad36ac
r16409@catbus: nickm | 2007-11-05 10:38:25 -0500
...
Split handshake state into its own structure. Revise versions and netinfo code to use this structure.
svn:r12380
2007-11-05 18:15:44 +00:00
Roger Dingledine
5c4a00e796
minor cleanups
...
svn:r11890
2007-10-11 22:19:18 +00:00
Nick Mathewson
b62d379f92
r15689@catbus: nickm | 2007-10-11 16:40:25 -0400
...
Fix bug 451. This was a nasty bug, so let's fix it twice: first, by banning recursive calls to connection_handle_write from connection_flushed_some; and second, by not calling connection_finished_flushing() on a closed connection. Backport candidate.
svn:r11882
2007-10-11 20:45:26 +00:00
Roger Dingledine
919f421c6c
get rid of the spurious "Freeing linked %s connection" complaints.
...
they happen whenever we fail to establish a connection.
svn:r11854
2007-10-10 22:59:34 +00:00
Nick Mathewson
1f4eafdb91
r15619@catbus: nickm | 2007-10-10 00:23:45 -0400
...
Fix bug 483: downgrade a harmless "Hey your accept() implementation sucks" warning to an info.
svn:r11828
2007-10-10 04:24:02 +00:00
Nick Mathewson
8439c4ec2f
r15512@catbus: nickm | 2007-10-02 16:27:43 -0400
...
Make some functions static; remove some dead code.
svn:r11750
2007-10-02 20:35:23 +00:00
Nick Mathewson
113367bc01
r14722@catbus: nickm | 2007-08-20 10:54:29 -0400
...
Add debugging warning to not abort in the case of bug 483. This is probably not an actual error case, so we should figure out what is really causing it and do something more sensible.
svn:r11215
2007-08-20 14:59:05 +00:00
Nick Mathewson
1f244d3943
r14639@catbus: nickm | 2007-08-17 17:45:28 -0400
...
Compile without warnings on MinGW, even with --enable-gcc-warnings enabled.
svn:r11157
2007-08-17 21:46:34 +00:00
Nick Mathewson
915c4c3ab8
r14001@catbus: nickm | 2007-07-29 21:31:53 -0400
...
Try to call time(NULL) a little less.
svn:r10980
2007-07-30 01:32:12 +00:00
Roger Dingledine
ca7c53d3cc
Be even more aggressive about separating local traffic from relayed
...
traffic when RelayBandwidthRate is set. (Refines proposal 111.)
svn:r10974
2007-07-29 22:13:44 +00:00
Nick Mathewson
7f3e2378b6
r13908@catbus: nickm | 2007-07-25 18:55:47 -0400
...
Patch from Robert Hogan: set conn->dns_server_port correctly so that we can close dns server ports when they change, thus avoiding crashes and dangling references and other sources of unhappiness.
svn:r10933
2007-07-25 22:57:07 +00:00
Nick Mathewson
483c1e9017
r13774@catbus: nickm | 2007-07-16 12:23:28 -0400
...
Tweaks on constrained socket buffers patch from coderman: Add a changelog; rename some variables; fix some long lines and whitespace; make ConstrainedSockSize a memunit; pass setsockopt a void.
svn:r10843
2007-07-16 16:23:36 +00:00
Nick Mathewson
f4a6673758
r13773@catbus: nickm | 2007-07-16 11:58:25 -0400
...
Initial "constrained socket buffers" patch from coderman. needs tweaking.
svn:r10842
2007-07-16 16:23:34 +00:00
Roger Dingledine
2c2f7ee6a4
fix a memory leak from r10504 (i think)
...
svn:r10829
2007-07-15 08:11:56 +00:00
Nick Mathewson
19389a3674
r13328@catbus: nickm | 2007-06-08 17:14:55 -0400
...
Arg. Irix apparently #defines sa_family to something. Thus, naming fields or variables "sa_family" will not work.
svn:r10541
2007-06-08 21:14:58 +00:00
Nick Mathewson
1866ad3506
r13274@catbus: nickm | 2007-06-05 19:06:30 -0400
...
Remove some deadcode that seems unlikely to return
svn:r10509
2007-06-06 04:51:25 +00:00
Nick Mathewson
210beff55a
r13266@catbus: nickm | 2007-06-05 16:38:08 -0400
...
Patch from peter palfrader: control interface via unix domain socket
svn:r10504
2007-06-05 20:54:49 +00:00
Peter Palfrader
b6c6dd7e55
Change an assert into a tor_assert
...
svn:r10495
2007-06-05 01:09:09 +00:00
Peter Palfrader
32d12dcfbc
Fix retry_all_listeners() and retry_listeners() description to match code. We are smarter than comparing lengths of want- and have-listeners.
...
svn:r10487
2007-06-04 16:58:57 +00:00
Peter Palfrader
502879e0b4
Remove force flag from retry_all_listeners() and retry_listeners(). It always was 0.
...
svn:r10486
2007-06-04 16:54:42 +00:00
Nick Mathewson
147e439c94
r13174@catbus: nickm | 2007-06-03 17:39:20 -0400
...
Patch from robert hogan: avoid crash when DNS port is set more than once.
svn:r10471
2007-06-03 21:39:24 +00:00
Nick Mathewson
9d1af71b70
r13053@catbus: nickm | 2007-05-29 13:35:33 -0400
...
Move connection_should_read_from_linked_conn into main.c, which is the only file that uses it.
svn:r10394
2007-05-29 18:20:56 +00:00
Nick Mathewson
f89a3b1448
r13050@catbus: nickm | 2007-05-29 13:31:11 -0400
...
Resolve all but 3 DOCDOCs.
svn:r10393
2007-05-29 17:31:13 +00:00
Roger Dingledine
0c047b87f5
polish r9933-r9994
...
svn:r10335
2007-05-25 19:41:31 +00:00