| Commit message (Expand) | Author | Age |
* | Prefer measured bandwidths over advertised when computing things for votes on... | Andrea Shepard | 2013-02-27 |
* | Fix a comment in tor_main.c•••We don't use subversion or src/*/makefile.am any longer
| Nick Mathewson | 2013-02-25 |
* | fix a wide line | Nick Mathewson | 2013-02-19 |
* | Merge branch 'bug8065_v2' | Nick Mathewson | 2013-02-19 |
|\ |
|
| * | Downgrade an assert to LD_BUG•••This should prevent crashes on further recurrence of 8065, and help
diagnose such if they occur
| Nick Mathewson | 2013-02-19 |
* | | Merge branch 'bug2286_unit_test_squashed' | Nick Mathewson | 2013-02-19 |
|\ \
| |/
|/| |
|
| * | Refactor storing of measured_bw versus Unmeasured=1.•••This patch moves the measured_bw field and the has_measured_bw field
into vote_routerstatus_t, since only votes have 'Measured=XX' set on
their weight line.
I also added a new bw_is_unmeasured flag to routerstatus_t to
represent the Unmeasured=1 flag on a w line. Previously, I was using
has_measured_bw for this, which was quite incorrect: has_measured_bw
means that the measured_bw field is set, and it's probably a mistake
to have it serve double duty as meaning that 'baandwidth' represents a
measured value.
While making this change,I also found a harmless but stupid bug in
dirserv_read_measured_bandwidths: It assumes that it's getting a
smartlist of routerstatus_t, when really it's getting a smartlist of
vote_routerstatus_t. C's struct layout rules mean that we could never
actually get an error because of that, but it's still quite incorrect.
I fixed that, and in the process needed to add two more sorting and
searching helpers.
Finally, I made the Unmeasured=1 flag get parsed. We don't use it for
anything yet, but someday we might.
This isn't complete yet -- the new 2286 unit test doesn't build.
| Nick Mathewson | 2013-02-19 |
| * | Add unit test for unmeasured bandwidth clipping in consensus | Andrea Shepard | 2013-02-19 |
| * | Note some annoyinc copy-and-paste code | Nick Mathewson | 2013-02-19 |
| * | Tweak consensus method 17 based on arma's comments•••Instead of capping whenever a router has fewer than 3 measurements,
we cap whenever a router has fewer than 3 measurements *AND* there
are at least 3 authorities publishing measured bandwidths.
We also generate bandwidth lines with a new "Unmeasured=1" flag,
meaning that we didn't have enough observations for a node to use
measured bandwidth values in the authority's input, whether we capped
it or not.
| Nick Mathewson | 2013-02-19 |
| * | New consensus method: clip the maximum votable unmeasured bw•••If we're deciding on a node's bandwidth based on "Bandwidth="
declarations, clip it to "20" or to the maxunmeasuredbw parameter,
if it's voted on.
This adds a new consensus method.
This is "part A" of bug 2286
| Nick Mathewson | 2013-02-05 |
* | | touchups on 78582760 | Roger Dingledine | 2013-02-19 |
* | | Revise some comments in router.c•••Avoid the phrase "legally valid" (as opposed to valid but not legal)?
And document what functions really do.
Fix for bug 6935.
| Nick Mathewson | 2013-02-19 |
* | | Fix a bug that roger found in the wide_circ_id code | Nick Mathewson | 2013-02-15 |
* | | Merge remote-tracking branch 'public/bug8207' | Nick Mathewson | 2013-02-15 |
|\ \ |
|
| * | | Make hidden service authorization work again.•••The refactoring in commit 471ab340325 wasn't complete enough: we
were checking the auth_len variable, but never actually setting it,
so it would never seem that authentication had been provided.
This commit also removes a bunch of unused variables from
rend_service_introduce, whose unusedness we hadn't noticed because
we were wiping them at the end of the function.
Fix for bug 8207; bugfix on 0.2.4.1-alpha.
| Nick Mathewson | 2013-02-11 |
* | | | Merge remote-tracking branch 'public/wide_circ_ids'•••Conflicts:
src/or/channel.h
src/or/connection_or.c
src/or/cpuworker.c
| Nick Mathewson | 2013-02-15 |
|\ \ \ |
|
| * | | | Replace magic constants for wide_circ_ids with inline function calls | Nick Mathewson | 2013-02-09 |
| * | | | Implement proposal-214 rules for CircID checking. | Nick Mathewson | 2012-11-06 |
| * | | | Add a pointless 2-byte memset in cell_pack•••There is probably no code that can write the 2 bytes at the end of the
packed_cell_t when the cell is only a 512-byte cell, but let's not get
overconfident there.
| Nick Mathewson | 2012-11-06 |
| * | | | Allow a v4 link protocol for 4-byte circuit IDs.•••Implements proposal 214.
Needs testing.
| Nick Mathewson | 2012-11-06 |
* | | | | make check-spaces | Nick Mathewson | 2013-02-15 |
* | | | | Merge remote-tracking branch 'public/feature4994-rebased' | Nick Mathewson | 2013-02-15 |
|\ \ \ \ |
|
| * | | | | Restore the entry/dirguard distinction.•••We shouldn't be calling choose_random_entry() for directory
conncetions; that's what choose_random_dirguard() is for.
| Nick Mathewson | 2013-02-12 |
| * | | | | generalize choose_random_entry()'s dirinfo parameter•••Now we can specify to skip bridges that wouldn't be able to answer the
type of dir fetch we're launching.
It's still the responsibility of the rest of the code to prevent us from
launching a given dir fetch if we have no bridges that could handle it.
| Roger Dingledine | 2013-02-02 |
| * | | | | use microdescriptors if *any* of our bridges can handle them•••Now as we move into a future where most bridges can handle microdescs
we will generally find ourselves using them, rather than holding back
just because one of our bridges doesn't use them.
| Roger Dingledine | 2013-02-02 |
* | | | | | Authorities were adding downtime for every relay every restart•••Stop marking every relay as having been down for one hour every
time we restart a directory authority. These artificial downtimes
were messing with our Stable and Guard flag calculations.
Fixes bug 8218 (introduced by the fix for 1035). Bugfix on 0.2.2.23-alpha.
| Roger Dingledine | 2013-02-14 |
* | | | | | Merge remote-tracking branch 'arma/bug1992' | Nick Mathewson | 2013-02-14 |
|\ \ \ \ \ |
|
| * | | | | | get rid of the new caching notion in resolve_my_address()•••and replace it with the good old-fashioned two functions approach
| Roger Dingledine | 2013-02-12 |
| * | | | | | simplify timing checks•••now that both timers are on the same schedule, there's no point
tracking separate timers.
| Roger Dingledine | 2013-02-11 |
| * | | | | | Check for IP address change every minute, not 15 minutes•••Relays used to check every 10 to 60 seconds, as an accidental side effect
of calling directory_fetches_from_authorities() when considering doing
a directory fetch. The fix for bug 1992 removes that side effect. At the
same time, bridge relays never had the side effect, leading to confused
bridge operators who tried crazy tricks to get their bridges to notice
IP address changes (see ticket 1913).
The new behavior is to reinstate an every-60-seconds check for both
public relays and bridge relays, now that the side effect is gone.
| Roger Dingledine | 2013-02-11 |
| * | | | | | Stop trying to resolve our hostname so often•••For example, we were doing a resolve every time we think about doing a
directory fetch. Now we reuse the cached answer in some cases.
Fixes bugs 1992 (bugfix on 0.2.0.20-rc) and 2410 (bugfix on
0.1.2.2-alpha).
| Roger Dingledine | 2013-02-11 |
| * | | | | | Teach resolve_my_address() to return a cached answer•••I didn't make any of the callers use this feature yet.
| Roger Dingledine | 2013-02-11 |
* | | | | | | Fix two more coverity-spotted leaks in master.•••One is a probably-impossible leak if we fail to sign a consensus;
another occurs when we can't look up the user we're trying to chown
our sockets to.
| Nick Mathewson | 2013-02-11 |
* | | | | | | Avoid null-pointer deref in pathbias_is_new_circ_attempt•••Coverity is worried about this (CID 980653). It hasn't happened in
testing, but we might as well make sure it can't happen.
| Nick Mathewson | 2013-02-11 |
|/ / / / / |
|
* | | | | | Fix a nigh-impossible overflow in cpuworker.c•••When we compute the estimated microseconds we need to handle our
pending onionskins, we could (in principle) overflow a uint32_t if
we ever had 4 million pending onionskins before we had any data
about how onionskins take. Nevertheless, let's compute it properly.
Fixes bug 8210; bugfix on 0.2.4.10. Found by coverity; this is CID
980651.
| Nick Mathewson | 2013-02-11 |
* | | | | | oops; add a missing semicolon | Nick Mathewson | 2013-02-11 |
* | | | | | Merge remote-tracking branch 'public/bug7816_023' | Nick Mathewson | 2013-02-11 |
|\ \ \ \ \ |
|
| * | | | | | Fix another memory leak•••This one occurs when changing configuration options. Found by
coverity.
| Nick Mathewson | 2013-02-11 |
* | | | | | | Merge remote-tracking branch 'public/bug8208' | Nick Mathewson | 2013-02-11 |
|\ \ \ \ \ \ |
|
| * | | | | | | Check whether ei is non-NULL before altering it.•••This fixes a crash bug if we fail to generate an extrainfo
descriptor.
Fixes bug 8208; bugfix on 0.2.3.16-alpha.
| Nick Mathewson | 2013-02-11 |
* | | | | | | | Suppress a coverity false positive in connection_edge_package_raw_inbuf•••Coverity is worried that we're checking entry_conn in some cases,
but not in the case where we set entry_conn->pending_optimistic_data.
This commit should calm it down (CID 718623).
| Nick Mathewson | 2013-02-11 |
| |_|_|_|/ /
|/| | | | | |
|
* | | | | | | Fix a copy-and-paste issue found by coverity•••Fixes CID 980650; bugfix on 0.2.4.10-alpha.
| Nick Mathewson | 2013-02-11 |
* | | | | | | Merge remote-tracking branch 'public/bug8158' | Nick Mathewson | 2013-02-11 |
|\ \ \ \ \ \ |
|
| * | | | | | | Add doxygen for bug8158 functions | Nick Mathewson | 2013-02-08 |
| * | | | | | | Coalesce identical adjacent microdescriptor vote lines. | Nick Mathewson | 2013-02-08 |
| * | | | | | | Refactor generating the m lines in a vote into its own function | Nick Mathewson | 2013-02-08 |
* | | | | | | | Avoid generating extra spaces when explaining how we guessed our address | Nick Mathewson | 2013-02-11 |
* | | | | | | | Refactor resolve_my_address() so logs are more accurate / helpful•••It returns the method by which we decided our public IP address
(explicitly configured, resolved from explicit hostname, guessed from
interfaces, learned by gethostname).
Now we can provide more helpful log messages when a relay guesses its IP
address incorrectly (e.g. due to unexpected lines in /etc/hosts). Resolves
ticket 2267.
While we're at it, stop sending a stray "(null)" in some cases for the
server status "EXTERNAL_ADDRESS" controller event. Resolves bug 8200.
| Roger Dingledine | 2013-02-11 |
* | | | | | | | log the hostname that resolve_my_address() used to guess our IP | Roger Dingledine | 2013-02-11 |