Andrea Shepard
4c45b3d845
Add unit test for unmeasured bandwidth clipping in consensus
2013-02-19 11:06:24 -05:00
Andrea Shepard
f4d5ca9b5e
Refactor v3_networkstatus test to allow reuse of test for measuredbw
2013-02-19 11:06:24 -05:00
Nick Mathewson
4da083db3b
Update the copyright date to 201.
2013-01-16 01:54:56 -05:00
Nick Mathewson
c35fad2bde
Remove some deadcode for parsing v1 directories
...
Fixes bug 6887. There are opportunities to remove more functions if
authorities can stop serving dummy v1 directory documents
2012-09-18 15:30:27 -04:00
Nick Mathewson
75c9ccd4f8
Merge remote-tracking branch 'public/bug6538'
...
Conflicts:
configure.ac
2012-09-11 17:51:36 -04:00
Linus Nordberg
156ffef249
Have directory authorities vote on IPv6 OR ports according to the spec
...
Define new new consensus method 14 adding "a" lines to vote and
consensus documents.
From proposal 186:
As with other data in the vote derived from the descriptor, the
consensus will include whichever set of "a" lines are given by the
most authorities who voted for the descriptor digest that will be
used for the router.
This patch implements this.
2012-09-04 11:52:22 -04:00
Nick Mathewson
5c3199cda7
In choose-by-bw, scale to better use the range of uint64
...
The smart part of this is based on an approach and a suggestion by
rransom. The unsmart part is my own fault.
2012-08-27 19:36:12 -04:00
Nick Mathewson
07df4dd52d
Refactor the core of choosing by weights into a function
...
This eliminates duplicated code, and lets us test a hairy piece of
functionality.
2012-08-09 14:15:58 -04:00
Nick Mathewson
e13e9c40c8
Never emit the "opt" prefix in any directory stuff
...
Fix for bug 5124.
2012-06-28 15:47:07 -04:00
Nick Mathewson
0fa107a6aa
Update copyright dates to 2012; add a few missing copyright statements
2012-06-04 20:58:17 -04:00
Nick Mathewson
9efee31fae
Synchronize with upstream tinytest again: remove _identifiers
2012-02-13 17:45:15 -05:00
Nick Mathewson
26e789fbfd
Rename nonconformant identifiers.
...
Fixes bug 4893.
These changes are pure mechanical, and were generated with this
perl script:
/usr/bin/perl -w -i.bak -p
s/crypto_pk_env_t/crypto_pk_t/g;
s/crypto_dh_env_t/crypto_dh_t/g;
s/crypto_cipher_env_t/crypto_cipher_t/g;
s/crypto_digest_env_t/crypto_digest_t/g;
s/aes_free_cipher/aes_cipher_free/g;
s/crypto_free_cipher_env/crypto_cipher_free/g;
s/crypto_free_digest_env/crypto_digest_free/g;
s/crypto_free_pk_env/crypto_pk_free/g;
s/_crypto_dh_env_get_dh/_crypto_dh_get_dh/g;
s/_crypto_new_pk_env_rsa/_crypto_new_pk_from_rsa/g;
s/_crypto_pk_env_get_evp_pkey/_crypto_pk_get_evp_pkey/g;
s/_crypto_pk_env_get_rsa/_crypto_pk_get_rsa/g;
s/crypto_new_cipher_env/crypto_cipher_new/g;
s/crypto_new_digest_env/crypto_digest_new/g;
s/crypto_new_digest256_env/crypto_digest256_new/g;
s/crypto_new_pk_env/crypto_pk_new/g;
s/crypto_create_crypto_env/crypto_cipher_new/g;
s/connection_create_listener/connection_listener_new/g;
s/smartlist_create/smartlist_new/g;
s/transport_create/transport_new/g;
2012-01-18 15:53:30 -05:00
Roger Dingledine
ecdea4eeaf
Merge branch 'maint-0.2.2'
2012-01-08 12:17:16 -05:00
Roger Dingledine
78e95b7b71
tell me who votes are actually for, not just where they're from
2012-01-08 10:03:46 -05:00
Nick Mathewson
11d5a9f63d
Initial support for simplest use of prop186 or-address lines
...
This lets a routerinfo_t have a single IPv6 or-address, and adds
support for formatting and parsing those lines.
2011-11-30 11:55:44 -05:00
Sebastian Hahn
e5e4bfd167
Implement consensus method 12 (proposal 178)
2011-11-27 09:29:33 -05:00
Nick Mathewson
1ec22eac4b
Merge remote-tracking branch 'public/bug2003_nm'
2011-10-07 16:43:45 -04:00
Nick Mathewson
9bdde89027
Make the unit tests pass again after the bug2003 fix
2011-09-07 17:48:21 -04:00
Nick Mathewson
676608f9a6
Upgrade to the latest version of tinytest
2011-06-09 17:30:09 -04:00
Nick Mathewson
b2e7c356db
Prefer tt_assert in unit tests, not tor_assert
2011-06-08 20:33:53 -04:00
Nick Mathewson
b1b6552251
Merge remote-tracking branch 'origin/maint-0.2.2'
...
Conflicts:
src/common/crypto.c
2011-03-16 17:16:54 -04:00
Nick Mathewson
3310dd2358
Clean up whitespace
2011-03-16 17:11:30 -04:00
Roger Dingledine
4ff97e3775
Merge branch 'maint-0.2.2'
2011-01-15 22:39:15 -05:00
Sebastian Hahn
026e7987ad
Sanity-check consensus param values
...
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.
2011-01-15 19:42:17 +01:00
Nick Mathewson
1758ef51de
Merge remote branch 'origin/maint-0.2.2'
2011-01-15 13:26:02 -05:00
Nick Mathewson
1393985768
Merge remote branch 'origin/maint-0.2.1' into maint-0.2.2
...
Conflicts:
src/or/routerparse.c
src/or/test.c
2011-01-15 13:25:13 -05:00
Nick Mathewson
8730884ebe
Merge remote branch 'origin/maint-0.2.2'
2011-01-03 11:53:28 -05:00
Nick Mathewson
30b3475e6d
Bump copyright statements to 2011 (0.2.2)
2011-01-03 11:52:09 -05:00
Nick Mathewson
e361de80bb
Merge remote branch 'origin/maint-0.2.2'
...
Conflicts:
src/or/router.c
2010-11-19 16:58:22 -05:00
Nick Mathewson
a33b338c5b
Fix a unit test broken by fix for 2195
2010-11-19 16:50:14 -05:00
Nick Mathewson
45f1e4d5ee
Rename routerstatus_t.is_running to is_flagged_running
...
This was the only flag in routerstatus_t that we would previously
change in a routerstatus_t in a consensus. We no longer have reason
to do so -- and probably never did -- as you can now confirm more
easily than you could have done by grepping for is_running before
this patch.
The name change is to emphasize that the routerstatus_t is_running
flag is only there to tell you whether the consensus says it's
running, not whether it *you* think it's running.
2010-10-01 18:14:27 -04:00
Sebastian Hahn
561ca9b987
Fix misplaced labels
2010-08-16 00:46:44 +02:00
Sebastian Hahn
05072723cb
Create routerparse.h
2010-07-27 10:00:46 +02:00
Sebastian Hahn
69fcbbaa89
Create networkstatus.h
2010-07-27 07:58:16 +02:00
Sebastian Hahn
85f7d54418
Create dirvote.h
2010-07-27 07:58:16 +02:00
Sebastian Hahn
7d4c027fb0
Create dirserv.h
2010-07-27 07:58:16 +02:00
Sebastian Hahn
bec1c838ca
Create directory.h
2010-07-27 07:58:15 +02:00
Sebastian Hahn
cbee969f40
Create routerlist.h
2010-07-27 07:56:25 +02:00
Sebastian Hahn
c53b6cc831
Create router.h
2010-07-27 07:56:25 +02:00
Nick Mathewson
da220157a9
Update copyright dates for files not in maint-0.2.1
2010-02-27 17:19:00 -05:00
Nick Mathewson
98cd8c5d16
Fix a very stupid coverity complaint (CID 416).
...
In its zeal to keep me from saying memset(x, '0', sizeof(x)), Coverity
disallows memset(x, 48, sizeof(x)). Fine. I'll choose a different
magic number, see if I care!
2009-10-26 22:40:41 -04:00
Nick Mathewson
bb22d8fc45
Add functions to serve microdescs and flavored consensuses.
2009-10-18 18:46:12 -04:00
Nick Mathewson
a19981725d
Parse detached signatures and microdesc networkstatuses correctly.
2009-10-15 15:17:13 -04:00
Nick Mathewson
3471057486
Implement signatures for microdesc consensuses right.
...
This means we need to handle the existence of multiple flavors of signature
in a detached signatures document, generate them correctly, and so on.
2009-10-15 15:17:13 -04:00
Nick Mathewson
3b2fc659a8
Refactor consensus signature storage for multiple digests and flavors.
...
This patch introduces a new type called document_signature_t to represent the
signature of a consensus document. Now, each consensus document can have up
to one document signature per voter per digest algorithm. Also, each
detached-signatures document can have up to one signature per <voter,
algorithm, flavor>.
2009-10-15 15:17:13 -04:00
Nick Mathewson
e1ddee8bbe
Code to generate, store, and parse microdescriptors and consensuses.
...
The consensus documents are not signed properly, not served, and not
exchanged yet.
2009-10-15 15:17:13 -04:00
Sebastian Hahn
a24b9e6088
Fix a memleak
...
Found by coverity
test_mem_op_hex was leaking memory, which showed up in a few
tests.
Also, the dir_param test had a memleak of its own.
Found by Coverity
2009-09-27 12:02:35 -04:00
Nick Mathewson
a4d6d83051
Make a NULL check in test_dir.c non-redundant.
...
Should quiet a coverity warning.
2009-09-27 12:01:29 -04:00
Nick Mathewson
cb52e17d3d
Carve out unrelated parts of test_dir_formats
2009-09-23 00:24:43 -04:00
Nick Mathewson
fa693118b1
Split directory tests into their own module.
...
(Also, clean up some whitespace.)
2009-09-23 00:24:43 -04:00