Nick Mathewson
6201b8b361
Make sure the microdesc cache is loaded before setting a v3 md consensus
...
Otherwise, we can wind up munging our reference counts if we set it in
the middle of loading the nodes. This happens because
nodelist_set_consensus() and microdesc_reload_cache() are both in the
business of adjusting microdescriptors' references.
2011-09-28 14:19:39 -04:00
Nick Mathewson
4a10845075
Add some debugging code to microdesc.[ch]
2011-09-28 14:13:49 -04:00
Nick Mathewson
a4b7525c3c
Fix a crash bug in tor_assert(md->held_by_node)
...
The fix is to turn held_by_node into a reference count.
Fixes bug 4118; bugfix on 0.2.3.1-alpha.
2011-09-28 13:40:21 -04:00
Roger Dingledine
e98c9a1bf6
if we have enough usable guards, just pick one
...
we don't need to check whether we don't have enough guards right after
concluding that we do have enough.
slight efficiency fix suggested by an anonymous fellow on irc.
2011-09-27 17:35:31 -04:00
Roger Dingledine
88516f65c9
Merge branch 'maint-0.2.2'
2011-09-24 22:47:53 -04:00
Roger Dingledine
1c2e4d1336
trivial whitespace changes, take two
2011-09-24 22:46:21 -04:00
Nick Mathewson
c42a1886cc
Trivial whitespace fixes
2011-09-24 22:15:59 -04:00
Nick Mathewson
ccceefe136
Add a changes file for Tom Lowenthal's patch for #4063
2011-09-24 22:15:13 -04:00
Tom Lowenthal
5835acc6f9
Ticket #4063 - change circuit build timeout log entries from NOTICE to INFO
2011-09-24 22:12:40 -04:00
George Kadianakis
e2703e3654
Improve wording in some comments and log messages.
2011-09-23 17:50:56 +02:00
Nick Mathewson
5a8dcca8f7
Merge branch 'feature3630-rebased'
2011-09-22 15:54:40 -04:00
Nick Mathewson
fee094afcd
Fix issues in 3630 patch noted by Karsten
2011-09-22 15:07:35 -04:00
Nick Mathewson
a8297a301e
Changes file for feature3630
2011-09-22 15:07:35 -04:00
Nick Mathewson
41dfc4c19c
Make bufferevents work with TokenBucketRefillInterval
2011-09-22 15:07:34 -04:00
Nick Mathewson
052b95e2f1
Refactor connection_bucket_refill(_helper) to avoid roundoff
...
We were doing "divide bandwidth by 1000, then multiply by msec", but
that would lose accuracy: instead of getting your full bandwidth,
you'd lose up to 999 bytes per sec. (Not a big deal, but every byte
helps.)
Instead, do the multiply first, then the division. This can easily
overflow a 32-bit value, so make sure to do it as a 64-bit operation.
2011-09-22 15:07:34 -04:00
Nick Mathewson
1e61184628
Make documentation for TokenBucketRefillInterval match its behavior
2011-09-22 15:07:34 -04:00
Nick Mathewson
0721abbf1b
Move around check for TokenBucketRefillInterval; disallow changes to it
2011-09-22 15:07:34 -04:00
Florian Tschorsch
6b1d8321ae
New torrc option to allow bucket refill intervals of less than 1 sec
...
Implements bug3630.
2011-09-22 15:07:23 -04:00
Nick Mathewson
40288e1e66
Merge remote-tracking branch 'origin/maint-0.2.2'
2011-09-20 10:25:56 -04:00
Nick Mathewson
bfa75f70bb
changes file for bug 4059
2011-09-20 09:56:26 -04:00
Mansour Moufid
1ba90ab655
Fix a potentially useless integer overflow check.
...
GCC 4.2 and maybe other compilers optimize away unsigned integer
overflow checks of the form (foo + bar < foo), for all bar.
Fix one such check in `src/common/OpenBSD_malloc_Linux.c'.
2011-09-20 09:52:44 -04:00
Roger Dingledine
0c0345a3d0
Merge branch 'maint-0.2.2'
2011-09-15 16:35:26 -04:00
Roger Dingledine
ac7b6c508d
Merge branch 'maint-0.2.1' into maint-0.2.2
2011-09-15 16:34:47 -04:00
Karsten Loesing
679f617345
Update to the September 2011 GeoIP database.
2011-09-15 16:33:36 -04:00
Nick Mathewson
2394c74017
Log errno on listener socket creation failure.
...
This may help diagnose bug 4027.
2011-09-15 09:51:48 -04:00
Robert Ransom
c1ac0695d5
Fix a bogus warning
2011-09-14 00:05:03 -07:00
Roger Dingledine
6a799c10ee
bump to 0.2.3.4-alpha-dev
2011-09-13 22:04:47 -04:00
Roger Dingledine
5f4f727d58
slight tweak to unify things
2011-09-13 20:26:32 -04:00
Roger Dingledine
0b0f7d792c
bump to 0.2.3.4-alpha
2011-09-13 19:59:06 -04:00
Roger Dingledine
c133d71bdd
a blurb for 0.2.3.4-alpha
2011-09-13 19:56:59 -04:00
Nick Mathewson
296649fd2b
Provide missing description for our FLEXIBLE_ARRAY_MEMBER defines
...
Apparently autoheader throws a tantrum if you say 'AC_DEFINE([a],
[b])'. Instead you must say 'AC_DEFINE([a], [b], [description of
a])'. We were running into this in our replacement definitions for
FLEXIBLE_ARRAY_MEMBER, which were only getting built on autoconf
versions before 2.61 -- and this made us stop working with those
autoconf versinos.
Fixes bug 2430; bugfix on 0.2.3.1-alpha.
2011-09-13 19:51:37 -04:00
Roger Dingledine
befaa435bd
forward-port the 0.2.2.33 changelog
2011-09-13 19:19:38 -04:00
Roger Dingledine
1fcaeb6092
Merge branch 'maint-0.2.2'
2011-09-13 18:32:00 -04:00
Roger Dingledine
4a351b4b9e
Merge branch 'maint-0.2.1' into maint-0.2.2
...
Conflicts:
src/or/main.c
src/or/router.c
2011-09-13 18:27:13 -04:00
Roger Dingledine
62ec584a30
Generate our ssl session certs with a plausible lifetime
...
Nobody but Tor uses certs on the wire with 2 hour lifetimes,
and it makes us stand out. Resolves ticket 4014.
2011-09-13 18:24:45 -04:00
Roger Dingledine
1e1cc43b57
Merge branch 'maint-0.2.2'
2011-09-12 05:54:55 -04:00
Karsten Loesing
d679ef623f
Update to the September 2011 GeoIP database.
2011-09-12 11:43:51 +02:00
George Kadianakis
2e73f9b3ee
Put some sense into our logging.
...
Transform our logging severities to something more sensible.
Remove sneaky printf()s.
2011-09-12 00:10:07 +02:00
George Kadianakis
d0416ce3ec
Don't warn of stray Bridges if managed proxies are still unconfigured.
...
With managed proxies you would always get the error message:
"You have a Bridge line using the X pluggable transport, but there
doesn't seem to be a corresponding ClientTransportPlugin line."
because the check happened directly after parse_client_transport_line()
when managed proxies were not fully configured and their transports
were not registered.
The fix is to move the validation to run_scheduled_events() and make
sure that all managed proxies are configured first.
2011-09-11 23:51:29 +02:00
George Kadianakis
e8715b3041
Constification.
2011-09-11 23:35:00 +02:00
George Kadianakis
de7565f87f
Make check-spaces happy.
2011-09-11 23:34:36 +02:00
George Kadianakis
c6811c57cb
Enforce transport names being C identifiers.
...
Introduce string_is_C_identifier() and use it to enforce transport
names according to the 180 spec.
2011-09-11 23:34:11 +02:00
George Kadianakis
3136107421
Trivial fixes around the code.
...
* C90-fy.
* Remove ASN comments.
* Don't smartlist_clear() before smartlist_free().
* Plug a mem. leak.
2011-09-11 23:33:31 +02:00
Nick Mathewson
386966142e
Merge remote-tracking branch 'origin/maint-0.2.2'
2011-09-11 16:25:14 -04:00
George Kadianakis
9a42ec6857
Be more defensive in get_transport_bindaddr().
...
Make sure that lines in get_transport_bindaddr() begin with the name
of the transport and a space.
2011-09-11 21:33:02 +02:00
George Kadianakis
ebc232bb79
Fix bug in get_transport_in_state_by_name() when using strcmpstart().
...
We now split the state lines into smartlists and compare the token
properly. Not that efficient but it's surely correct.
2011-09-11 21:22:37 +02:00
George Kadianakis
2703e41d8b
Improve how we access or_state_t.
...
* Use get_or_state()->VirtualOption instead of relying on
config_find_option(), STRUCT_VAR_P and voodoo.
2011-09-11 20:57:01 +02:00
George Kadianakis
0dcf327248
Remove connection_uses_transport() since it was unused.
2011-09-11 20:33:27 +02:00
George Kadianakis
9bf34eb65b
Allow interwined {Client,Server}TransportPlugin lines.
2011-09-11 20:30:08 +02:00
George Kadianakis
a002f0e7c0
Update the transports.c documentation based on the new data.
2011-09-11 20:29:52 +02:00