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
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
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
Nick Mathewson
df836b45b0
Merge remote-tracking branch 'asn/bug5018_notice'
2014-03-12 11:10:51 -04:00
Nick Mathewson
def0cac3ee
Merge remote-tracking branch 'origin/maint-0.2.4'
2014-03-11 11:23:46 -04:00
Nick Mathewson
9077118ee2
Remove the unused router_hex_digest_matches
...
When I removed some unused functions in 5bfa373eee
, this became
unused as well.
2014-03-11 11:17:46 -04:00
Nick Mathewson
cce06b649e
Merge remote-tracking branch 'asn/bug11069_take2'
2014-03-11 11:04:47 -04:00
George Kadianakis
1c475eb018
Throw control port warning if we failed to connect to all our bridges.
2014-03-10 22:52:07 +00:00
George Kadianakis
cc1bb19d56
Tone down the log message for when we don't need a PT proxy.
2014-03-10 22:05:31 +00:00
Nick Mathewson
b8ceb464e5
Merge branch 'bug11156_squashed'
2014-03-10 14:08:38 -04:00
Nick Mathewson
0c04416c11
Merge branch 'bug11043_take2_squashed'
2014-03-10 14:08:29 -04:00
George Kadianakis
6606e676ee
Don't do directory fetches before all PTs have been configured.
2014-03-10 14:07:56 -04:00
George Kadianakis
8c8e21e296
Improve the log message for when the Extended ORPort is not enabled.
2014-03-10 12:54:46 -04:00
Nick Mathewson
1365ff5b9a
Upgrade to the latest version of tinytest.
...
This brings us to tinytest commit 709a36ba63ff16d8.
The only big change tor-side is that we don't need our own test_mem_op
operation any longer.
2014-03-06 18:06:08 -05:00
Nick Mathewson
065097b81b
tinytest tt_{mem,str}_op now handle NULLs better
...
Now a NULL argument to either makes it fail, not crash.
Fies bug 9004; bugfix on 0.2.2.4-alpha.
2014-03-06 12:12:13 -05:00
Nick Mathewson
a50690e68f
Merge remote-tracking branch 'origin/maint-0.2.4'
2014-03-06 11:52:22 -05:00
Nick Mathewson
4a2a1e572e
Merge branch 'bug11108'
2014-03-06 10:22:40 -05:00
Nick Mathewson
967d9c9f10
Clarify default behavior of {SOCKS,Dir}Policy harder
...
Improvement on 11108 fix; suggested by cypherpunks.
2014-03-06 10:21:59 -05:00
Nick Mathewson
d3c5df6cf6
Give the HTTPS url for jenkins in doc/HACKING
2014-03-06 10:03:24 -05:00
Nick Mathewson
cbf9e74236
Correct the URL in the "a relay on win95???" message
...
This is a fix for 9393; it's not a bugfix on any Tor version per se,
but rather on whatever Tor version was current when we reorganized the
wiki.
2014-03-06 09:57:42 -05:00
Nick Mathewson
663aba07e5
Fix whitespace errors, all of them mine.
2014-03-05 14:36:32 -05:00
Nick Mathewson
22ccfc6b5f
Rename PredictedCircsRelevanceTime->PredictedPortsRelevanceTime
...
All circuits are predictive; it's the ports that are expiring here.
2014-03-05 14:35:07 -05:00
Nick Mathewson
103cebd924
Merge branch 'ticket9176_squashed'
...
Conflicts:
doc/tor.1.txt
2014-03-05 14:32:05 -05:00
Nick Mathewson
25374d307d
Fix wide lines.
2014-03-05 14:31:13 -05:00
Nick Mathewson
2c25bb413e
Lower the maximum for PrecictedCircsRelevanceTime to one hour
2014-03-05 14:31:13 -05:00
unixninja92
4f03804b08
Fixed spacing.
2014-03-05 14:31:13 -05:00
unixninja92
d47d147307
More correctly documented PredictedCircsRelevanceTime in tor.1.txt
2014-03-05 14:31:13 -05:00
unixninja92
5c310a4fa2
Added max value to PredictedCircsRelevanceTime.
2014-03-05 14:31:13 -05:00
unixninja92
52fbb9f623
Added Documentation for PredictedCircsRelevanceTime config file argument.
2014-03-05 14:31:13 -05:00
unixninja92
898154f717
PredictedCircsRelevanceTime: limit how long we predict a port will be used
...
By default, after you've made a connection to port XYZ, we assume
you might still want to have an exit ready to connect to XYZ for one
hour. This patch lets you lower that interval.
Implements ticket 91
2014-03-05 14:29:54 -05:00
Nick Mathewson
f0b2dc83b6
Merge remote-tracking branch 'arma/ticket5528'
...
Conflicts:
src/or/router.c
src/test/test_dir.c
2014-03-05 12:44:40 -05:00
Nick Mathewson
1295490862
Merge remote-tracking branch 'public/bug8788'
2014-03-05 12:17:31 -05:00
Nick Mathewson
27d231ca13
Document alternate bandwidth/memory unit spellings
2014-03-04 12:12:36 -05:00
Nick Mathewson
496fe685fd
Include v3 in documented 'protocols' in rend_service_descriptor_t
...
Also make it unsigned and document that it's for INTRODUCE cell versions.
Fixes 9099; bugfix on 0.2.1.5-alpha, which introduced the v3 protocol.
2014-03-04 12:03:18 -05:00
Nick Mathewson
ab225aaf28
Merge branch 'bug10169_025_v2'
...
Conflicts:
src/test/test.c
2014-03-04 11:03:30 -05:00
Nick Mathewson
bb37544214
Merge remote-tracking branch 'public/bug10169_024' into bug10169_025_v2
...
Conflicts:
src/common/compat_libevent.h
src/or/relay.c
2014-03-04 11:00:02 -05:00
Nick Mathewson
46118d7d75
Merge remote-tracking branch 'public/bug10169_023' into bug10169_024
...
Conflicts:
src/or/relay.c
2014-03-04 10:54:54 -05:00
Nick Mathewson
bfa0e022bc
Mention doc/HACKING in the readme
2014-03-04 10:34:25 -05:00
Nick Mathewson
0db39eb89f
ATTR_NORETURN is needed on lost_owning_controller now
...
This should fixes some "hey, that function could have
__attribute__((noreturn))" warnings introduced by f96400d9
.
Bug not in any released version of Tor.
2014-03-03 10:54:20 -05:00
Nick Mathewson
4050dfa320
Warn if ports are specified in {Socks,Dir}Policy
...
We have ignored any ports listed here since 80365b989
(0.0.7rc1),
but we didn't warn the user that we were ignoring them. This patch
adds a warning if you put explicit ports in any of the options
{Socks,Dir}Policy or AuthDir{Reject,Invalid,BadDir,BadExit}. It
also adjusts the manpage to say that ports are ignored.
Fixes ticket 11108.
2014-03-03 10:45:39 -05:00
Nick Mathewson
d98f743b28
Fix compilation warnings in tor_addr_make_null patch
...
There was one "missing prototype" warning because the test function
wasn't static, and one "unused parameter" warning about the "data"
parameter.
Also, I added a couple of tests to make sure that the "make_null"
addresses really were the addresses we expected, by formatting them
as strings.
2014-03-03 10:05:02 -05:00