aboutsummaryrefslogtreecommitdiff
path: root/src/or/or.h
Commit message (Collapse)AuthorAge
* TransProxyType replaces TransTPROXY optionNick Mathewson2014-02-03
| | | | | | | I'm making this change now since ipfw will want its own option too, and proliferating options here isn't sensible. (See #10582 and #10267)
* More fixes to rip out all of the v2 directory code.Karsten Loesing2014-02-03
| | | | (This was a squash commit, but I forgot to squash it. Sorry! --Nick)
* Merge remote-tracking branch 'public/bug10758'Nick Mathewson2014-02-03
|\
| * Rip out all of the v2 directory code.Nick Mathewson2014-01-29
| | | | | | | | | | | | The remaining vestige is that we continue to publish the V2dir flag, and that, for the controller, we continue to emit v2 directory formats when requested.
* | Add support for TPROXY via new TransTPRoxy optionNick Mathewson2014-01-31
|/ | | | Based on patch from "thomo" at #10582.
* Merge branch 'finish_prop157'Nick Mathewson2013-11-18
|\
| * Make the dir-key-crosscert element requiredNick Mathewson2013-11-14
| | | | | | | | | | | | | | | | | | | | | | | | In proposal 157, we added a cross-certification element for directory authority certificates. We implemented it in 0.2.1.9-alpha. All Tor directory authorities now generate it. Here, as planned, make it required, so that we can finally close proposal 157. The biggest change in the code is in the unit test data, where some old hardcoded certs that we made long ago have become no longer valid and now need to be replaced.
* | Merge remote-tracking branch 'origin/maint-0.2.4'Nick Mathewson2013-11-15
|\ \ | | | | | | | | | | | | | | | | | | | | | Conflicts: src/or/relay.c Conflict changes were easy; compilation fixes required were using using TOR_SIMPLEQ_FIRST to get head of cell queue.
| * \ Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-11-15
| |\ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | Conflicts: src/or/or.h src/or/relay.c Conflicts were simple to resolve. More fixes were needed for compilation, including: reinstating the tv_to_msec function, and renaming *_conn_cells to *_chan_cells.
| | * Improved circuit queue out-of-memory handlerNick Mathewson2013-11-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, when we ran low on memory, we'd close whichever circuits had the most queued cells. Now, we close those that have the *oldest* queued cells, on the theory that those are most responsible for us running low on memory, and that those are the least likely to actually drain on their own if we wait a little longer. Based on analysis from a forthcoming paper by Jansen, Tschorsch, Johnson, and Scheuermann. Fixes bug 9093.
| | * Send NETINFO on receiving a NETINFO if we have not yet sent one.Nick Mathewson2013-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (Backport to Tor 0.2.3) Relays previously, when initiating a connection, would only send a NETINFO after sending an AUTHENTICATE. But bridges, when receiving a connection, would never send AUTH_CHALLENGE. So relays wouldn't AUTHENTICATE, and wouldn't NETINFO, and then bridges would be surprised to be receiving CREATE cells on a non-open circuit. Fixes bug 9546.
* | | Merge branch 'prop221_squashed_024'Nick Mathewson2013-11-01
|\ \ \ | | | | | | | | | | | | | | | | Conflicts: src/or/or.h
| * | | circuit_build_failed: distinguish "got DESTROY" caseNick Mathewson2013-11-01
| |/ / | | | | | | | | | | | | | | | | | | Roger spotted this on tor-dev in his comments on proposal 221. We etect DESTROY vs everything else, since arma likes network timeout indicating failure but not overload indicating failure.
* | | Merge branch 'morestats4' into morestats5Karsten Loesing2013-10-28
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: doc/tor.1.txt src/or/config.c src/or/connection.h src/or/control.c src/or/control.h src/or/or.h src/or/relay.c src/or/relay.h src/test/test.c
| * | | Tweak CIRC_BW event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Rename n_read and n_written in origin_circuit_t to make it clear that these are only used for CIRC_BW events. - Extract new code in control_update_global_event_mask to new clear_circ_bw_fields function.
| * | | Tweak TB_EMPTY event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Avoid control_event_refill_global function with 13 arguments and increase code reuse factor by moving more code from control.c to connection.c. - Avoid an unsafe uint32_t -> int cast. - Add TestingEnableTbEmptyEvent option. - Prepare functions for testing. - Rename a few functions and improve documentation.
| * | | Tweak CELL_STATS event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Move cell_command_to_string from control.c to command.c. - Use accessor for global_circuitlist instead of extern. - Add a struct for cell statistics by command instead of six arrays. - Split up control_event_circuit_cell_stats by using two helper functions. - Add TestingEnableCellStatsEvent option. - Prepare functions for testing. - Rename a few variables and document a few things better.
| * | | Tweak CONN_BW event based on comments by nickm.Karsten Loesing2013-05-25
| | | | | | | | | | | | | | | | | | | | | | | | - Rename read/write counters in connection_t to make it clear that these are only used for CONN_BW events. - Add TestingEnableConnBwEvent option.
| * | | Add new CIRC_BW event.Karsten Loesing2013-05-16
| | | |
| * | | Add new TB_EMPTY event.Karsten Loesing2013-05-16
| | | | | | | | | | | | | | | | Jointly authored with Rob Jansen <jansen@cs.umn.edu>.
| * | | Add new CELL_STATS event.Karsten Loesing2013-05-16
| | | | | | | | | | | | | | | | Jointly authored with Rob Jansen <jansen@cs.umn.edu>.
| * | | Add new CONN_BW event.Karsten Loesing2013-05-16
| | | | | | | | | | | | | | | | Jointly authored with Rob Jansen <jansen@cs.umn.edu>.
* | | | Add TestingDirAuthVoteGuard option for specifying relays to vote Guard on.Linus Nordberg2013-10-07
| | | | | | | | | | | | | | | | Addresses ticket 9206.
* | | | Merge remote-tracking branch 'origin/maint-0.2.4'Nick Mathewson2013-09-20
|\ \ \ \ | | |/ / | |/| |
| * | | Get ready to stop sending timestamps in INTRODUCE cellsNick Mathewson2013-09-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For now, round down to the nearest 10 minutes. Later, eliminate entirely by setting a consensus parameter. (This rounding is safe because, in 0.2.2, where the timestamp mattered, REND_REPLAY_TIME_INTERVAL was a nice generous 60 minutes.)
* | | | Add a --dump-config option to help testing option parsing.Nick Mathewson2013-09-13
| | | |
* | | | Patch for 4647 (rewrite command line parser)Cristian Toader2013-09-13
| | | |
* | | | Merge remote-tracking branch 'origin/maint-0.2.4'Nick Mathewson2013-08-25
|\| | |
| * | | Send NETINFO on receiving a NETINFO if we have not yet sent one.Nick Mathewson2013-08-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Relays previously, when initiating a connection, would only send a NETINFO after sending an AUTHENTICATE. But bridges, when receiving a connection, would never send AUTH_CHALLENGE. So relays wouldn't AUTHENTICATE, and wouldn't NETINFO, and then bridges would be surprised to be receiving CREATE cells on a non-open circuit. Fixes bug 9546.
* | | | Hide the contents of the circuit_build_times structure.Nick Mathewson2013-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There were only two functions outside of circuitstats that actually wanted to know what was inside this. Making the structure itself hidden should help isolation and prevent us from spaghettifying the thing more.
* | | | Merge remote-tracking branch 'majek/bug9108'Nick Mathewson2013-08-15
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: src/or/circuitlist.h
| * | | | Fix #9108 - make global_circuitlist a doubly linked listMarek Majkowski2013-06-20
| | | | |
* | | | | Merge branch 'bug5040_4773_rebase_3'Nick Mathewson2013-08-15
|\ \ \ \ \
| * | | | | Warn if the Extended ORPort listens on a public IP address.George Kadianakis2013-08-15
| | | | | |
| * | | | | Better documentation for ext_or_auth_correct_client_hash.George Kadianakis2013-08-15
| | | | | |
| * | | | | Fix a number of issues with the #5040 code.George Kadianakis2013-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Don't leak if a transport proxy sends us a TRANSPORT command more than once. - Don't use smartlist_string_isin() in geoip_get_transport_history(). (pointed out by Nick) - Use the 'join' argument of smartlist_join_strings() instead of trying to write the separator on our own. (pointed out by Nick) - Document 'ext_or_transport' a bit better. (pointed out by Nick) - Be a bit more consistent with the types of the values of 'transport_counts'. (pointed out by Nick)
| * | | | | Make the Extended ORPort understand the TRANSPORT command.George Kadianakis2013-07-18
| | | | | |
| * | | | | Prepare codebase for the implementation of Extended ORPort auth.George Kadianakis2013-07-18
| | | | | |
| * | | | | Document code and change the Extended ORPort command numbers.George Kadianakis2013-07-18
| | | | | |
| * | | | | Skeleton ExtORPort implementation. Needs testing, documentation.Nick Mathewson2013-07-18
| | | | | | | | | | | | | | | | | | | | | | | | Does not implement TransportControlPort yet.
* | | | | | Merge remote-tracking branch 'origin/maint-0.2.4'Nick Mathewson2013-07-31
|\ \ \ \ \ \ | |/ / / / / |/| | / / / | | |/ / / | |/| | |
| * | | | NumDirectoryGuards now tracks NumEntryGuards by defaultRoger Dingledine2013-07-30
| | | | | | | | | | | | | | | | | | | | | | | | | Now a user who changes only NumEntryGuards will get the behavior she expects. Fixes bug 9354; bugfix on 0.2.4.8-alpha.
* | | | | Use TOR_SIMPLEQ for packed_cell_tNick Mathewson2013-07-18
| | | | |
* | | | | Write function that parses ServerTransportOptions torrc lines.George Kadianakis2013-07-18
| | | | | | | | | | | | | | | | | | | | And use it to validate them.
* | | | | cosmetic cleanupsRoger Dingledine2013-07-14
| | | | |
* | | | | Merge remote-tracking branch 'public/gsoc-ctoader-cap-phase1-squashed'Nick Mathewson2013-07-12
|\ \ \ \ \ | |_|/ / / |/| | | |
| * | | | Add a basic seccomp2 syscall filter on LinuxCristian Toader2013-07-11
| | | | | | | | | | | | | | | | | | | | | | | | | It's controlled by the new Sandbox argument. Right now, it's rather coarse-grained, it's Linux-only, and it may break some features.
* | | | | Merge remote-tracking branch 'origin/maint-0.2.4'Nick Mathewson2013-06-18
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge remote-tracking branch 'origin/maint-0.2.3' into maint-0.2.4Nick Mathewson2013-06-18
| |\ \ \ \ | | | |_|/ | | |/| | | | | | | | | | | | | | | | | Conflicts: src/or/config.c src/or/relay.c
| | * | | Implement a real OOM-killer for too-long circuit queues.Nick Mathewson2013-06-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This implements "algorithm 1" from my discussion of bug #9072: on OOM, find the circuits with the longest queues, and kill them. It's also a fix for #9063 -- without the side-effects of bug #9072. The memory bounds aren't perfect here, and you need to be sure to allow some slack for the rest of Tor's usage. This isn't a perfect fix; the rest of the solutions I describe on codeable.