summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-02-07Tolerate curve25519 backends where the high bit of the pk isn't ignoredNick Mathewson
Right now, all our curve25519 backends ignore the high bit of the public key. But possibly, others could treat the high bit of the public key as encoding out-of-bounds values, or as something to be preserved. This could be used to distinguish clients with different backends, at the cost of killing a circuit. As a workaround, let's just clear the high bit of each public key indiscriminately before we use it. Fix for bug 8121, reported by rransom. Bugfix on 0.2.4.8-alpha.
2013-02-04Merge branch 'bug8153'Nick Mathewson
2013-02-04Reinstate some fixes/tweaks from 6e4a4002Nick Mathewson
These seem to have gotten conflicted out of existence while mike was working on path bias stuff. Thanks to sysrqb for collecting these in a handy patch.
2013-02-04Fix a warning when building with --disable-curve25519Nick Mathewson
It appears that the code for 7291 gave an unused-value warning when built with --disable-curve25519.
2013-02-04Fix compilation with --disable-curve25519 optionNick Mathewson
The fix is to move the two functions to format/parse base64 curve25519 public keys into a new "crypto_format.c" file. I could have put them in crypto.c, but that's a big file worth splitting anyway. Fixes bug 8153; bugfix on 0.2.4.8-alpha where I did the fix for 7869.
2013-02-04Whoops: evdns_log, not tor_log, in src/ext/eventdns.cNick Mathewson
2013-02-01Merge remote-tracking branch 'public/feature7706'Nick Mathewson
2013-02-01Merge remote-tracking branch 'public/bug7708_023_v3_squashed'Nick Mathewson
2013-02-01Clarify documentation of connection_finished_flushingNick Mathewson
2013-02-01Fix serious breakage in connection_handle_write_implNick Mathewson
When we first implemented TLS, we assumed in conneciton_handle_write that a TOR_TLS_WANT_WRITE from flush_buf_tls meant that nothing had been written. But when we moved our buffers to a ring buffer implementation back in 0.1.0.5-rc (!), we broke that invariant: it's possible that some bytes have been written but nothing. That's bad. It means that if we do a sequence of TLS writes that ends with a WANTWRITE, we don't notice that we flushed any bytes, and we don't (I think) decrement buckets. Fixes bug 7708; bugfix on 0.1.0.5-rc
2013-02-01Merge branch 'ticket8081_squashed'Nick Mathewson
2013-02-01Fix a couple of warnings on the 8081 branch.Nick Mathewson
2013-02-01Add EntryGuardPathUseBias to state file keyword list.Mike Perry
2013-02-01Increment an informational counter for use failed state.Mike Perry
This informational counter is probably now redundant, but might as well keep it consistent I guess.
2013-02-01Rename and relocate the bw weight scale param getter.Mike Perry
It had nothing to do with circuit build times.
2013-02-01Fix a log typo found by sysrqb.Mike Perry
2013-02-01Bounds-check path bias rate parameters.Mike Perry
The other remaining parameters don't really need range checks.
2013-02-01Refactor code that rolls back the use stateMike Perry
Also document it better. Mention this refactoring in the comments for the path state machine.
2013-02-01Refactor and rename pathbias rate evaluation.Mike Perry
2013-02-01Refactor the scaling parameter fetching into a single function.Mike Perry
Also, deprecate the torrc options for the scaling values. It's unlikely anyone but developers will ever tweak them, even if we provided a single ratio value.
2013-02-01Mark entry guard state dirty everwhere the pathbias code touches it.Mike Perry
2013-02-01Add a tristate to guard against unexpected circ purpose transitionsMike Perry
2013-02-01Clarify state transition and related pathbias commentsMike Perry
2013-02-01Merge branch 'rename_log_7599'Nick Mathewson
2013-02-01Help us track bug 8093:Roger Dingledine
Improve the log message when "Bug/attack: unexpected sendme cell from client" occurs.
2013-02-01fix wide lines from tor_log renameNick Mathewson
2013-02-01Fix a silly mistake in the tor_mathlog() documentation. Give it a unit test.Nick Mathewson
2013-02-01Remove old wrapper code and defines for keeping log() and log(3) apartNick Mathewson
This is the non-automated portion of bug 7599.
2013-02-01Rename log() to tor_log() for loggingNick Mathewson
This is meant to avoid conflict with the built-in log() function in math.h. It resolves ticket 7599. First reported by dhill. This was generated with the following perl script: #!/usr/bin/perl -w -i -p s/\blog\(LOG_(ERR|WARN|NOTICE|INFO|DEBUG)\s*,\s*/log_\L$1\(/g; s/\blog\(/tor_log\(/g;
2013-01-31typo in crypto_curve25519.c comment, spotted by rransomNick Mathewson
2013-01-31whitespace fixNick Mathewson
2013-01-31Merge branch 'double-0-check'Nick Mathewson
2013-01-30Use %d, not %02d, for decimal percentagesNick Mathewson
Cosmetic tweak on 5956; not in any released tor.
2013-01-30Merge branch 'rename_queue_macros_squashed'Nick Mathewson
2013-01-30Rename all of the macros in tor_queue.h to start with TOR_Nick Mathewson
2013-01-30Merge branch 'bug5956_squashed'Nick Mathewson
2013-01-30Parameterize FRAC_USABLE_NEEDED for fraction of circuitsNick Mathewson
Instead of hardcoding the minimum fraction of possible paths to 0.6, we take it from the user, and failing that from the consensus, and failing that we fall back to 0.6.
2013-01-30Compute whether we're ready to build circuits based on fraction of pathsNick Mathewson
Previously we did this based on the fraction of descriptors we had. But really, we should be going based on what fraction of paths we're able to build based on weighted bandwidth, since otherwise a directory guard or two could make us behave quite oddly. Implementation for feature 5956
2013-01-30Add an optional out-arg to count_usable_descriptorsNick Mathewson
This way we get the usable nodes themselves, so we can feed them into frac_nodes_with_descriptors
2013-01-30Add a function to compute fraction of nodes (by weighted bw) with descriptorsNick Mathewson
2013-01-30Document the ?? country code.Nick Mathewson
2013-01-29Detect platforms where memset(0) doesn't set doubles to 0.0.Nick Mathewson
This is allowed by the C statndard, which permits you to represent doubles any way you like, but in practice we have some code that assumes that memset() clears doubles in structs. Noticed as part of 7802 review; see 8081 for more info.
2013-01-29Fix unit test to not expect v2 directory request geoip infoNick Mathewson
When we implemented #5823 and removed v2 directory request info, we never actually changed the unit tests not to expect it. Fixes bug 8084; bug not in any released version of Tor.
2013-01-28Merge branch 'bug7802' of ssh://git-rw.torproject.org/mikeperry/torAndrea Shepard
2013-01-24Merge branch 'time_based_onionqueue_v2' of ssh://git-rw.torproject.org/nickm/torAndrea Shepard
2013-01-22Bug 8024: Check for null/closed channel before probing.Mike Perry
2013-01-22Merge remote-tracking branch 'public/bug8012'Nick Mathewson
2013-01-21More of b30d06255c24165 for #6826: fix compat_libevent compilationNick Mathewson
It looks like there was a compilation error for 6826 on some platforms. Removing even more now-uncallable code to handle detecting libevent versions before 1.3e. Fixes bug 8012; bug not in any released Tor.
2013-01-20squash! Remove a source of error during path bias scalingMike Perry
Improve debug logs and fix a state fencepost error.
2013-01-20squash! Implement Path use bias accounting.Mike Perry
Make a debug log more informative.