aboutsummaryrefslogtreecommitdiff
path: root/src/or/relay.c
Commit message (Collapse)AuthorAge
* r16670@catbus: nickm | 2007-11-14 14:56:30 -0500Nick Mathewson2007-11-14
| | | | | | | Initial phase of proposal 110: accept RELAY_EARLY cells, and turn them into RELAY cells when sending them on over a v1 OR connection. svn:r12496
* r14227@Kushana: nickm | 2007-08-27 11:33:28 -0400Nick Mathewson2007-08-27
| | | | | | | Add a new ClientDNSRejectInternalAddresses option (default: on) to refuse to believe that any address can map to or from an internal address. This blocks some kinds of potential browser-based attacks, especially on hosts using DNSPort. Also clarify behavior in some comments. Backport candiate? svn:r11287
* r14093@catbus: nickm | 2007-08-08 01:49:54 -0400Nick Mathewson2007-08-08
| | | | | | | Include fewer redundant headers; use the compiler search paths better. svn:r11060
* r14001@catbus: nickm | 2007-07-29 21:31:53 -0400Nick Mathewson2007-07-30
| | | | | | | Try to call time(NULL) a little less. svn:r10980
* Be even more aggressive about separating local traffic from relayedRoger Dingledine2007-07-29
| | | | | | | traffic when RelayBandwidthRate is set. (Refines proposal 111.) svn:r10974
* Keep streamids from different exits on a circuit separate. ThisRoger Dingledine2007-07-12
| | | | | | | | | bug may have allowed other routers on a given circuit to inject cells into streams. Reported by lodger; fixes bug 446. [Bugfix on 0.1.2.x] svn:r10818
* r13666@catbus: nickm | 2007-07-10 13:10:00 -0400Nick Mathewson2007-07-10
| | | | | | | Get the RESOLVE controller code working. svn:r10781
* r13143@catbus: nickm | 2007-06-01 16:43:40 -0400Nick Mathewson2007-06-02
| | | | | | | Try to fix some mipspro compiler warnings. There will still be some left. svn:r10444
* r13050@catbus: nickm | 2007-05-29 13:31:11 -0400Nick Mathewson2007-05-29
| | | | | | | Resolve all but 3 DOCDOCs. svn:r10393
* polish r9933-r9994Roger Dingledine2007-05-25
| | | | svn:r10335
* r12936@catbus: nickm | 2007-05-24 14:12:34 -0400Nick Mathewson2007-05-24
| | | | | | | Review XXXX comments without a version; upgrade some to XXXX020. svn:r10315
* r12769@catbus: nickm | 2007-05-16 17:32:01 -0400Nick Mathewson2007-05-16
| | | | | | | Fix warnings from -Wunsafe-loop-optimizations, which incidentally turned up a logic bug in connection_or_flush_from_first_active_circuit that would overcount the number of cells flushed. svn:r10199
* r12768@catbus: nickm | 2007-05-16 17:25:33 -0400Nick Mathewson2007-05-16
| | | | | | | Fix GCC warnings related to local parameters/variables getting shadowed. svn:r10198
* minor cleanupsRoger Dingledine2007-04-30
| | | | svn:r10050
* r12544@catbus: nickm | 2007-04-29 21:08:58 -0400Nick Mathewson2007-04-30
| | | | | | | Fix an assertion when we call tor_free_all before calling do_main_loop(). Discovered by weasel. svn:r10046
* stop generating a 6-gig info-level log file after a day of runningRoger Dingledine2007-04-25
| | | | svn:r10023
* r12458@catbus: nickm | 2007-04-19 15:52:23 -0400Nick Mathewson2007-04-19
| | | | | | | Fix a bug in displaying memory pool usage. Also dump cell allocation, and track padded_cell_ts as they are allocated and freed, to make sure we are not leaking cells. svn:r9992
* r12456@catbus: nickm | 2007-04-19 14:47:01 -0400Nick Mathewson2007-04-19
| | | | | | | Make dumpmemusage() dump cell pool usage information. svn:r9991
* r12349@catbus: nickm | 2007-04-11 09:18:15 -0400Nick Mathewson2007-04-11
| | | | | | | Add code to shrink the cell memory pool by discarding empty chunks that have been empty for the last 60 seconds. Also, instead of having test.c duplicate declarations for exposed functions, put them inside #ifdef foo_PRIVATE blocks in the headers. This prevents bugs where test.c gets out of sync. svn:r9944
* r12344@catbus: nickm | 2007-04-10 21:27:25 -0400Nick Mathewson2007-04-11
| | | | | | | Fix documentation and usage of 2nd argument to mp_pool_new. svn:r9942
* r12338@catbus: nickm | 2007-04-10 20:29:05 -0400Nick Mathewson2007-04-11
| | | | | | | Document memory pool implementation, and tweak it even mor. See? Programming is fun. svn:r9940
* r12337@catbus: nickm | 2007-04-10 17:55:26 -0400Nick Mathewson2007-04-11
| | | | | | | Add support for using memory pools to allocate queued cell; pass --disable-cell-pool to configure to disable this. svn:r9939
* r12332@catbus: nickm | 2007-04-10 12:24:45 -0400Nick Mathewson2007-04-10
| | | | | | | Yet another attempted Bug 411 fix: Under some circumstances, a circuit can have cells without being active. The likeliest is that it has been unlinked from all connections in preparation for closing. Therefore, stop enforcing this non-invariant. svn:r9936
* r12330@catbus: nickm | 2007-04-09 19:15:42 -0400Nick Mathewson2007-04-09
| | | | | | | Split type of "packed cell" from "parsed cell"; pack cells before queueing them on circuits. This will help us avoid dumb errors when we confuse the two types. svn:r9935
* Fix a crash bug in cell queues: It is possible for a connection_write_to_buf ↵Nick Mathewson2007-03-29
| | | | | | to close the connection or otherwise unlink the circuit, which makes the circuit nonactive, which invalidates the pointer from the circuit to the next circuit on the active ring. Also add a bunch of asserts, most #ifdefed out. svn:r9915
* r12654@Kushana: nickm | 2007-03-25 19:03:44 -0400Nick Mathewson2007-03-26
| | | | | | | Add documentation for cell queue functions; make destroy cells result in cell queues getting cleared before the destroy gets sent. svn:r9907
* r12652@Kushana: nickm | 2007-03-25 15:01:48 -0400Nick Mathewson2007-03-26
| | | | | | | A surprisingly simple patch to stop reading on edge connections when their circuits get too full, and start again when they empty out. This lets us remove the logic to block begin_dir conns when the corresponding or conns get full: it was already broken by cell queues anyway. svn:r9905
* r12651@Kushana: nickm | 2007-03-24 18:26:42 -0400Nick Mathewson2007-03-26
| | | | | | | Initial version of circuit-based cell queues. Instead of hammering or_conns with piles of cells, queue cells on their corresponding circuits, and append them to the or_conn as needed. This seems to work so far, but needs a bit more work. This will break the memory-use-limitation patch for begin_dir conns: the solution will be a fun but fiddly. svn:r9904
* r12644@0-41-wifi: nickm | 2007-03-23 16:02:23 -0400Nick Mathewson2007-03-24
| | | | | | | Eliminate more redundant circuit_t arguments when edge_connection_t is already supplied and the circuit is already attached. svn:r9900
* r12643@0-41-wifi: nickm | 2007-03-23 14:56:35 -0400Nick Mathewson2007-03-24
| | | | | | | Refactor a bunch of functions that take edge_connection_t not to also take a crypt_path_t; the cpath is implicit. svn:r9899
* r12074@catbus: nickm | 2007-03-04 15:11:43 -0500Nick Mathewson2007-03-04
| | | | | | | Make all LD_BUG log messsages get prefixed with "Bug: ". Remove manually-generated "Bug: "s from log-messages. (Apparently, we remembered to add them about 40% of the time.) svn:r9733
* more cleanups; getting closerRoger Dingledine2007-02-26
| | | | svn:r9655
* r11895@catbus: nickm | 2007-02-23 15:12:58 -0500Nick Mathewson2007-02-23
| | | | | | | Make remap stream events have a souce; make them generated every time we get a successful connected or resolved cell. Also change reported stream target address to IP consistently when we get the IP from an exit node. svn:r9624
* r11775@catbus: nickm | 2007-02-12 16:39:09 -0500Nick Mathewson2007-02-12
| | | | | | | Update copyright dates. svn:r9570
* r11673@catbus: nickm | 2007-02-06 14:40:07 -0500Nick Mathewson2007-02-07
| | | | | | | Report stream end events where a resolve succeeded or where we got a socks protocol error correctly, rather than calling both of them "INTERNAL". Turn ALREADY_SOCKS_REPLIED into a flag rather than a reason. This will help debug 367 part 2 a little. svn:r9511
* r11641@catbus: nickm | 2007-02-05 13:59:26 -0500Nick Mathewson2007-02-05
| | | | | | | Add a REMAP state to stream events so that controllers can learn exactly when the target address for a stream has changed. May help Vidalia resolve confusions related to bug 375. svn:r9484
* r11736@Kushana: nickm | 2006-12-28 17:46:23 -0500Nick Mathewson2006-12-29
| | | | | | | Mark a pile of XXXX comments as targetted for 0.1.2: some because they look important, some because they look easy. svn:r9205
* Infrastructure to test BEGIN_DIR cells.Roger Dingledine2006-12-13
| | | | | | | | | | New socks command CONNECT_DIR. New config option TunnelDirConns that builds a circ ending at the directory server and delivers a BEGIN_DIR cell if it's running 0.1.2.2-alpha or later. We still need to make one-hop circs when appropriate, while making other conns avoid them. svn:r9098
* general cleanups from looking through or-cvsRoger Dingledine2006-10-29
| | | | svn:r8855
* r9307@Kushana: nickm | 2006-10-20 13:53:54 -0400Nick Mathewson2006-10-20
| | | | | | | Have connection_about_to_close use an end_reason field in edge_connection_t to tell what reason to tell the controller for closing the stream. Set end_reason in connection_edge_end, connection_mark_unattached_ap, and everwhere we set edge_has_sent_end. Add a changelog entry. svn:r8779
* r9306@Kushana: nickm | 2006-10-20 13:27:43 -0400Nick Mathewson2006-10-20
| | | | | | | Enable reasons for stream events in all cases but CLOSED in about_to_close_connection. That one will take a little longer. svn:r8778
* r9298@dhcp-18-188-67-85: nickm | 2006-10-20 11:25:07 -0400Nick Mathewson2006-10-20
| | | | | | | Weasel correctly notes that we should not discard the return value from connection_exit_begin_con. Right now, the return value is always discardable, so this does not actually cause a bug, but it might later. So fix it. svn:r8774
* r9289@31-35-219: nickm | 2006-10-20 09:43:22 -0400Nick Mathewson2006-10-20
| | | | | | | Fix longstanding bug in connection_exit_begin_conn(): Since connection_edge_end() exits when the connection is unattached, we were never sending RELAY_END cells back for failed RELAY_BEGIN attempts. Fix this. This might make clients that were otherwise timing out either fail faster or retry faster, which is good news for us. svn:r8770
* clean up and downgrade some log messagesRoger Dingledine2006-10-15
| | | | svn:r8727
* r9017@totoro: nickm | 2006-10-13 01:27:33 -0400Nick Mathewson2006-10-13
| | | | | | | Second patch to work on circuit close reasons from Mike Perry. Disabled partially; see comment. Whitespace cleaned up. svn:r8699
* more minor cleanupsRoger Dingledine2006-10-07
| | | | svn:r8630
* if we fail to build a circuit to an intended enclave, and it'sRoger Dingledine2006-10-01
| | | | | | | not mandatory that we use that enclave, stop wanting it. svn:r8559
* r9032@Kushana: nickm | 2006-09-29 18:51:42 -0400Nick Mathewson2006-09-29
| | | | | | | Now, all log messages should be distinct. svn:r8545
* r8997@Kushana: nickm | 2006-09-28 23:40:22 -0400Nick Mathewson2006-09-29
| | | | | | | | | | | | | | [Needs review.] Add a BEGIN_DIR relay cell type for an easier in-protocol way to connect to directory servers through Tor. Previously, clients could only connect to director servers over Tor from exit nodes, but couldn't get directory information anonymously from a non-exit cache without getting a directory server involved. This needs testing, and needs client-side code to actually exercise it. svn:r8527
* r8895@Kushana: nickm | 2006-09-21 20:05:11 -0400Nick Mathewson2006-09-22
| | | | | | | Debug client-side reverse dns code. svn:r8452