Commit Graph

19506 Commits

Author SHA1 Message Date
Nick Mathewson
852fd1819e Free placeholder circid/chan->circuit map entries on exit
In circuitlist_free_all, we free all the circuits, removing them from
the map as we go, but we weren't actually freeing the placeholder
entries that we use to indicate pending DESTROY cells.

Fix for bug 11278; bugfix on the 7912 code that was merged in
0.2.5.1-alpha
2014-03-25 10:14:26 -04:00
Nick Mathewson
1a7794e475 Merge remote-tracking branch 'public/bug11061_024' 2014-03-25 10:02:22 -04:00
Nick Mathewson
5e9672904c Fix SOCKSPort documentation layout
In the end this required a slightly nasty hack using a dummy anchor as
an option heading in order to make the "Other recognized __flags__"
line indent properly.

Fixes bug 11061; Bugfix on 61d740ed.
2014-03-25 10:01:08 -04:00
Roger Dingledine
85ef58e5ba quiet the debug message in circuit_build_times_disabled()
something recently made it get called once per second, which will clutter
up your debug log file.
2014-03-24 02:33:17 -04:00
Nick Mathewson
a6afebd8de Changes file for bug 11276.
The crypto_early_init() function could only be called at most twice,
and both of those were during startup.  AFAICT leaking the first set
of locks was the only non-idempotent thing.
2014-03-23 15:59:51 -04:00
Nick Mathewson
6709a1f58d Merge remote-tracking branch 'arma/bug11276' 2014-03-23 15:57:56 -04:00
Nick Mathewson
3ddbf2880f Merge remote-tracking branch 'public/bug11275_024' 2014-03-23 15:56:23 -04:00
Nick Mathewson
b00f10b9fd changes file for bug 11275 2014-03-23 15:55:13 -04:00
Roger Dingledine
eff16e834b Stop leaking 'sig' at each call of router_append_dirobj_signature()
The refactoring in commit cb75519b (tor 0.2.4.13-alpha) introduced
this leak.
2014-03-23 15:53:51 -04:00
Roger Dingledine
ddaeb4deee Be more lenient in our fix for bug 11149
There are still quite a few 0.2.3.2x relays running for x<5, and while I
agree they should upgrade, I don't think cutting them out of the network
is a net win on either side.
2014-03-23 02:53:08 -04:00
Roger Dingledine
c08b47977e Never run crypto_early_init() more than once
Previously we had set up all the infrastructure to avoid calling it
after the first time, but didn't actually use it.
2014-03-23 00:38:17 -04:00
Nick Mathewson
f560eeadc3 Remove the unused circuit_dump_by_chan().
Also remove its helper function.
2014-03-23 00:28:39 -04:00
Nick Mathewson
2cfc4453c2 Merge remote-tracking branch 'public/bug9683_rebased' 2014-03-23 00:20:05 -04:00
Nick Mathewson
f4e2c72bee Merge remote-tracking branch 'karsten/task-11070' 2014-03-23 00:18:48 -04:00
Nick Mathewson
f2c6c5e69c Merge branch 'ticket11149' 2014-03-23 00:18:11 -04:00
Nick Mathewson
a53e9bfeb4 bump to 0.2.5.3-alpha-dev 2014-03-23 00:15:25 -04:00
Roger Dingledine
d336d407d6 whitespace fix 2014-03-23 00:12:40 -04:00
Roger Dingledine
e4c7fdd48c bring hacking more up to date 2014-03-22 23:36:10 -04:00
Nick Mathewson
29a67e73be Actually I am releasing tonight 2014-03-22 22:37:08 -04:00
Nick Mathewson
b9c0b06d00 Set a date in the changelog 2014-03-22 22:01:42 -04:00
Nick Mathewson
2bd7280d79 Increment version to 0.2.5.3-alpha 2014-03-22 21:07:50 -04:00
Nick Mathewson
2fae74d6c3 Merge remote-tracking branch 'origin/maint-0.2.4'
This is an "ours" merge, taking nothing, since we already had the
changes that were in a83abcf5ee
2014-03-20 13:55:55 -04:00
Nick Mathewson
a83abcf5ee Fix unittest compilation with --disable-curve25519
This is a fix for 9700, which we already fixed in 0.2.5.x, but which
got left in 0.2.4.x.

This is a partial backport of a0a855d586
2014-03-20 13:53:32 -04:00
Nick Mathewson
452aa18680 Merge remaining changes/* items into ChangeLog
(Not taking bug11235 since it's a whitespace fix)
2014-03-19 20:28:10 -04:00
Nick Mathewson
8a647291c8 extract some changelog principles into doc/HACKING 2014-03-19 20:24:15 -04:00
Roger Dingledine
89154380ac sort stanzas by interest, and sort by version within stanzas
(users want to know about client fixes before they want to know about
unit test fixes.)
2014-03-19 19:11:25 -04:00
Roger Dingledine
b16344d945 missing colon 2014-03-19 19:05:42 -04:00
Roger Dingledine
5de0e08b27 use the formatting from 0.2.4.21 for the 0.2.4.21 changelog stanza 2014-03-19 19:04:35 -04:00
Roger Dingledine
39342b66c0 fix a few grammar things, and deprecate 'servers' and 'nodes'
also clarify a few explanations. so far so good!
2014-03-19 19:03:21 -04:00
Nick Mathewson
1dc000f7df copy-edit the 0.2.5.3-alpha changelog even more 2014-03-18 22:52:09 -04:00
Nick Mathewson
42e7eb7017 Work on the changelog for 0.2.5.3-alpha some more 2014-03-18 22:29:56 -04:00
Andrea Shepard
6c161d1812 Add changes file for bug #11235 2014-03-18 10:28:25 -07:00
Andrea Shepard
3b31b45ddb Appease make check-spaces 2014-03-18 10:26:44 -07:00
Nick Mathewson
61090bb64f changes file for bug11232 2014-03-18 10:59:51 -04:00
Nick Mathewson
dfdeb6418d Fix a ubsan warning in addr_mask_get_bits
ubsan doesn't like us to do (1u<<32) when 32 is wider than
unsigned.  Fortunately, we already special-case
addr_mask_get_bits(0), so we can just change the loop bounds.
2014-03-18 10:49:39 -04:00
Nick Mathewson
2aea6ca326 Fix a ubsan warning in our ctypes replacements
ubsan doesn't like 1<<31, since that's an undefined integer
overflow.  Instead, we should do 1u<<31.
2014-03-18 10:47:26 -04:00
Nick Mathewson
aaa33f144c csiphash: don't attempt unaligned access
In digestmap_set/get benchmarks, doing unaligned access on x86
doesn't save more than a percent or so in the fast case.  In the
slow case (where we cross a cache line), it could be pretty
expensive.  It also makes ubsan unhappy.
2014-03-18 10:43:46 -04:00
Nick Mathewson
204f7255f4 memarea.c: use flexible array member for mem
This make clang's memory sanitizer happier that we aren't reading
off the end of a char[1].  We hadn't replaced the char[1] with a
char[FLEXIBLE_ARRAY_MEMBER] before because we were doing a union
trick to force alignment.  Now we use __attribute__(aligned) where
available, and we do the union trick elsewhere.

Most of this patch is just replacing accesses to (x)->u.mem with
(x)->U_MEM, where U_MEM is defined as "u.mem" or "mem" depending on
our implementation.
2014-03-18 10:02:27 -04:00
Nick Mathewson
98b1aad201 Fix a use-after-free in test_circuitlist.c
Found by clang-3.4 analyzers.
2014-03-18 09:47:13 -04:00
Karsten Loesing
7450403410 Take out remaining V1 directory code. 2014-03-18 10:40:10 +01:00
Nick Mathewson
d769cab3e5 Defensive programming: null [pn]_chan,circ_id in circuit_mark_for_close_
Doing this as part of the patch for #9683 to prevent possible bugs
down the line
2014-03-14 11:58:34 -04:00
Nick Mathewson
1a74360c2d Test code for implementation of faster circuit_unlink_all_from_channel
This contains the obvious implementation using the circuitmux data
structure.  It also runs the old (slow) algorithm and compares
the results of the two to make sure that they're the same.

Needs review and testing.
2014-03-14 11:57:51 -04:00
Nick Mathewson
d01cf18ecb should_disable_dir_fetches() now returns 1 if DisableNetwork==1
This change prevents LD_BUG warnings and bootstrap failure messages
when we try to do directory fetches when starting with
DisableNetwork == 1, a consensus present, but no descriptors (or
insufficient descriptors) yet.

Fixes bug 11200 and bug 10405.  It's a bugfix on 0.2.3.9-alpha.
Thanks to mcs for walking me through the repro instructions!
2014-03-14 10:42:49 -04:00
Nick Mathewson
102bb1c04f Update to latest tinytest
(This pulls in some fixes to tinytest_demo.c, which Tor doesn't build.)
2014-03-14 10:09:04 -04:00
Nick Mathewson
cd9d08a5e1 Sort the 0.2.5.3-alpha changelog entries a little better.
Still haven't edited any.

Also, remove all the changes/* entries that got merged back in
6b5ef3889d.
2014-03-13 11:34:51 -04:00
Nick Mathewson
9991c5f001 Clarify ClientOnly documentation
The option is unneeded, not meaningless, so explain what it does.

Patch from Matt Pagan; fixes 9059.
2014-03-13 10:35:52 -04:00
Nick Mathewson
119896cd43 Fix some leaks/missed checks in the unit tests
Coverity spotted these.
2014-03-13 10:07:10 -04:00
Nick Mathewson
a522e9492b Sort the 0.2.5.3-alpha changelog a little 2014-03-12 15:58:18 -04:00
Nick Mathewson
6b5ef3889d Start work on an 0.2.5.3-alpha changelog.
This collects all the changes file, and find the stuff that also
appeared new in 0.2.4.21.
2014-03-12 15:53:58 -04:00
Nick Mathewson
b1ec216fbc bugfix-on for 5018_notice 2014-03-12 11:11:26 -04:00