aboutsummaryrefslogtreecommitdiff
path: root/src/or/or.h
Commit message (Collapse)AuthorAge
* Add an "auto" option to UseBridgesNick Mathewson2011-06-02
| | | | | | | UseBridges 1 now means "connect only to bridges; if you know no bridges, don't make connections." UseBridges auto means "Use bridges if they are known, and we have no EntryNodes set, and we aren't a server." UseBridges 0 means "don't use bridges."
* Merge remote-tracking branch 'public/bug3270' into maint-0.2.2Nick Mathewson2011-05-30
|\
| * Use a 64-bit type to hold sockets on win64.Nick Mathewson2011-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | On win64, sockets are of type UINT_PTR; on win32 they're u_int; elsewhere they're int. The correct windows way to check a socket for being set is to compare it with INVALID_SOCKET; elsewhere you see if it is negative. On Libevent 2, all callbacks take sockets as evutil_socket_t; we've been passing them int. This patch should fix compilation and correctness when built for 64-bit windows. Fixes bug 3270.
* | Set timestamp_dirty on HS circuits as circuit_expire_building requiresRobert Ransom2011-05-30
| | | | | | | | | | | | Fixes part of #1297; bugfix on 48e0228f1e031a709c1deb149c7dfd187c3609cf, when circuit_expire_building was changed to assume that timestamp_dirty was set when a circuit changed purpose to _C_REND_READY. (It wasn't.)
* | Merge branch 'feature3049-v2' into maint-0.2.2Nick Mathewson2011-05-23
|\ \ | |/ |/| | | | | Conflicts: src/common/Makefile.am
| * Implement TAKEOWNERSHIP commandRobert Ransom2011-05-20
| |
| * Fix comment typoRobert Ransom2011-05-20
| |
| * Implement __OwningControllerProcess optionRobert Ransom2011-05-20
| | | | | | | | Implements part of feature 3049.
* | Clean up the 2972 implementation a littleSebastian Hahn2011-05-15
| |
* | Add UnixSocketsGroupWritable config flagJérémy Bobbio2011-05-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When running a system-wide instance of Tor on Unix-like systems, having a ControlSocket is a quite handy mechanism to access Tor control channel. But it would be easier if access to the Unix domain socket can be granted by making control users members of the group running the Tor process. This change introduces a UnixSocketsGroupWritable option, which will create Unix domain sockets (and thus ControlSocket) 'g+rw'. This allows ControlSocket to offer same access control measures than ControlPort+CookieAuthFileGroupReadable. See <http://bugs.debian.org/552556> for more details.
* | Handle transitions in Automap*, VirtualAddrNetwork correctlyNick Mathewson2011-05-13
| | | | | | | | | | | | | | | | | | | | Previously, if they changed in torrc during a SIGHUP, all was well, since we would just clear all transient entries from the addrmap thanks to bug 1345. But if you changed them from the controller, Tor would leave old mappings in place. The VirtualAddrNetwork bug has been here since 0.1.1.19-rc; the AutomapHosts* bug has been here since 0.2.0.1-alpha.
* | Add a ControlPortFileGroupWritable optionNick Mathewson2011-05-13
| |
* | Write automatically-chosen control ports to a file.Nick Mathewson2011-05-13
| |
* | "(Socks|Control|etc)Port auto" now tells Tor to open an arbitrary portNick Mathewson2011-05-13
|/ | | | This is the major part of the implementation for trac issue 3076.
* Merge remote-tracking branch 'public/bug3022_v2' into maint-0.2.2Nick Mathewson2011-05-09
|\
| * Only authorities should automatically download v2 networkstatus documentsNick Mathewson2011-04-28
| | | | | | | | | | | | | | | | | | | | | | Clients and relays haven't used them since early 0.2.0.x. The only remaining use by authorities learning about new relays ahead of scedule; see proposal 147 for what we intend to do about that. We're leaving in an option (FetchV2Networkstatus) to manually fetch v2 networkstatuses, because apparently dnsel and maybe bwauth want them. This fixes bug 3022.
* | CONN_LOG_PROTECT()'s first argument may not be 0Sebastian Hahn2011-05-09
|/ | | | | | Make that explicit by adding an assert and removing a null-check. All of its callers currently depend on the argument being non-null anyway. Silences a few clang complaints.
* warn if we launch too many circuits for a given streamRoger Dingledine2011-04-27
|
* If EntryNodes and ExcludeNodes overlap, obey ExcludeNodes.Roger Dingledine2011-04-26
|
* Make SIGNAL DUMP work on FreeBSDSebastian Hahn2011-04-15
| | | | | | | | | While doing so, get rid of the now unnecessary function control_signal_act(). Fixes bug 2917, reported by Robert Ransom. Bugfix on commit 9b4aa8d2abbce71398e58188209a1b1d04885b96. This patch is loosely based on a patch by Robert (Changelog entry).
* Merge remote-tracking branch 'public/xxx_fixups' into maint-0.2.2Nick Mathewson2011-04-07
|\ | | | | | | | | Conflicts: src/or/or.h
| * Add XXX023s for our timestamp_dirty abuse.Nick Mathewson2011-03-25
| |
| * Triage the XXX022 and XXX021 comments remaining in the codeNick Mathewson2011-03-25
| | | | | | | | | | Remove some, postpone others, leave some alone. Now the only remaining XXX022s are ones that seem important to fix or investigate.
* | Use timevals, not time_t, when expiring circuits.Nick Mathewson2011-03-30
|/ | | | | | | | | | | | | | We've got millisecond timers now, we might as well use them. This change won't actually make circuits get expiered with microsecond precision, since we only call the expiry functions once per second. Still, it should avoid the situation where we have a circuit get expired too early because of rounding. A couple of the expiry functions now call tor_gettimeofday: this should be cheap since we're only doing it once per second. If it gets to be called more often, though, we should onsider having the current time be an argument again.
* Doxygen documentation for about 100 things that didn't have anyNick Mathewson2011-03-16
| | | | About 860 doxygen-less things remain in 0.2.2
* Merge remote branch 'arma/bug2510' into maint-0.2.2Nick Mathewson2011-03-14
|\
| * fix two issues pointed out by nickmRoger Dingledine2011-03-13
| |
* | Tweak the bug2250 fix slightlySebastian Hahn2011-03-01
| | | | | | | | | | | | Rename the _UsingTestingTorNetwork hidden option to _UsingTestNetworkDefaults (thanks Nick for the suggestion) and added a changes file.
* | Fix GETINFO config-text for private networksSebastian Hahn2011-02-26
| | | | | | | | | | | | | | | | | | | | | | | | In private networks, the defaults for some options are changed. This means that in options_validate(), where we're testing that the defaults are what we think they are, we fail. Use a workaround by setting a hidden configuration option _UsingTestingTorNetwork when we have altered the configuration this way, so that options_validate() can do the right thing. Fixes bug 2250, bugfix on 0.2.1.2-alpha (the version introducing private network options).
* | Merge branch 'bug1863_bwhist' into maint-0.2.2Nick Mathewson2011-02-25
|\ \
| * | Add Maxima lists to bandwidth state.Nick Mathewson2011-01-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now, Tor routers don't save the maxima values from the bw_history_t between sessions. That's no good, since we use those values to determine bandwidth. This code adds a new BWHist.*Maximum set of values to the state file. If they're not present, we estimate them by taking the observed total bandwidth and dividing it by the period length, which provides a lower bound. This should fix bug 1863. I'm calling it a feature.
* | | Merge branch 'log_domains' into maint-0.2.2Nick Mathewson2011-02-22
|\ \ \ | |_|/ |/| |
| * | Add a torrc option to report log domainsNick Mathewson2011-01-25
| | |
* | | Add an option to disable the block-private-addresses featureNick Mathewson2011-01-26
| | | | | | | | | | | | Suggested by rransom. Probably necessary for testing network mode.
* | | Add client code to detect attempts to connect to 127.0.0.1 etcNick Mathewson2011-01-25
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | We detect and reject said attempts if there is no chosen exit node or circuit: connecting to a private addr via a randomly chosen exit node will usually fail (if all exits reject private addresses), is always ill-defined (you're not asking for any particular host or service), and usually an error (you've configured all requests to go over Tor when you really wanted to configure all _remote_ requests to go over Tor). This can also help detect forwarding loop requests. Found as part of bug2279.
* | Tighten accepted circwindow parametersSebastian Hahn2011-01-15
| | | | | | | | Based on discussion in bug 2317, these values seem to be sane.
* | Provide constant limits for all consensus paramsSebastian Hahn2011-01-15
| | | | | | | | | | This addresses Nick's concern about doing non-constant bounds checking inside networkstatus_get_param().
* | Sanity-check consensus param valuesSebastian Hahn2011-01-15
|/ | | | | | | | | | | | | | | We need to make sure that the worst thing that a weird consensus param can do to us is to break our Tor (and only if the other Tors are reliably broken in the same way) so that the majority of directory authorities can't pull any attacks that are worse than the DoS that they can trigger by simply shutting down. One of these worse things was the cbtnummodes parameter, which could lead to heap corruption on some systems if the value was sufficiently large. This commit fixes this particular issue and also introduces sanity checking for all consensus parameters.
* Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2Nick Mathewson2011-01-03
|\ | | | | | | | | | | Conflicts: src/common/test.h src/or/test.c
| * Bump copyright statements to 2011Nick Mathewson2011-01-03
| |
* | Merge remote branch fix_security_bug_021 into fix_security_bug_022Nick Mathewson2010-12-15
|\| | | | | | | | | | | | | Conflicts: src/common/memarea.c src/or/or.h src/or/rendclient.c
| * Make payloads into uint8_t.Nick Mathewson2010-12-15
| | | | | | | | This will avoid some signed/unsigned assignment-related bugs.
| * Backport END_STREAM_REASON_NOROUTE for client use.Sebastian Hahn2010-08-18
| | | | | | | | (Partial backport of 150ed553dfce9, 161b275028e90, and 4c948ffd6.)
* | Break NoPublish supportSebastian Hahn2010-11-10
| |
* | Change Natd into NATD in our options.Sebastian Hahn2010-11-10
| | | | | | | | | | Breaking this out of the last commit because this might be more controversial.
* | Synx manpage and source wrt option capitalizationSebastian Hahn2010-11-10
| | | | | | | | | | | | We had a spelling discrepancy between the manpage and the source code for some option. Resolve these in favor of the manpage, because it makes more sense (for example, HTTP should be capitalized).
* | Comment out the (unused) RunTesting optionSebastian Hahn2010-11-10
| | | | | | | | | | | | The code that makes use of the RunTesting option is #if 0, so setting this option has no effect. Mark the option as obsolete for now, so that Tor doesn't list it as an available option erroneously.
* | Merge commit 'mikeperry/bug1772' into maint-0.2.2Roger Dingledine2010-09-30
|\ \
| * | Nominaly lower the minimum timeout value to 1500.Mike Perry2010-09-29
| | | | | | | | | | | | | | | This won't change any behavior, since it will still be rounded back up to 2seconds, but should reduce the chances of some extra warns.
* | | Merge branch 'bug1772' into maint-0.2.2Roger Dingledine2010-09-29
|\| |