teor
e0477de0e2
Remove undefined directive-in-macro in test_util_writepid
...
clang 3.7 complains that using a preprocessor directive inside
a macro invocation in test_util_writepid in test_util.c is undefined.
Fix on 79e85313aa
on 0.2.7.1-alpha.
2015-06-03 04:19:05 +10:00
Nick Mathewson
3d653dff5e
Add a master-key-ed25519 line for convenience
2015-06-01 11:24:55 -04:00
Nick Mathewson
3028507e96
More check-spaces fixes
2015-06-01 10:56:54 -04:00
Nick Mathewson
d31877c6bf
Fix some memory leaks in ed25519 code and tests
2015-06-01 10:26:11 -04:00
Andrea Shepard
0e0b65db4f
Appease make check-spaces
2015-06-01 12:59:14 +00:00
Nick Mathewson
ba17968534
Fix another int-to-ptr cast.
2015-05-29 14:09:11 -04:00
Nick Mathewson
27bc0da14d
Fix a sizeof(ptr) mistake in test-memwipe.c
2015-05-29 13:50:12 -04:00
Nick Mathewson
b66f4cfc9d
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-05-28 14:06:01 -04:00
Nick Mathewson
97a2dbb3e3
There sure are a lot of these in test_hs.c. CID 1301385
2015-05-28 13:17:24 -04:00
Nick Mathewson
9f289e3b9e
Another test_hs leak. CID 1301383.
2015-05-28 13:13:15 -04:00
Nick Mathewson
83ad7d2fbb
Memory leak in tor_cert_parse. CID 1301382.
2015-05-28 13:11:54 -04:00
Nick Mathewson
3262f3c3f6
Fix leak-on-test-failure in test_routerkeys.c
...
CID 1301379
2015-05-28 13:06:30 -04:00
Nick Mathewson
0585d4e94b
Memory leak in test_hs_rend_data
...
CID 1301377
2015-05-28 13:01:48 -04:00
Nick Mathewson
72714270e2
Fix memory leak in test_routerkeys
...
CID 1301376
2015-05-28 13:00:25 -04:00
Nick Mathewson
a348df6d8b
Avoid dereferencing null on unit test failure for link handshakes.
...
This fixes CID 1301368 -- found by coverity
2015-05-28 12:41:00 -04:00
Nick Mathewson
1b52e95028
Merge branch '12498_ed25519_keys_v6'
...
Fixed numerous conflicts, and ported code to use new base64 api.
2015-05-28 11:04:33 -04:00
Nick Mathewson
8f15423b76
Do not allocate our ed-link crosscert till after tls ctx
...
We need this to prevent some annoying chutney crash-at-starts
2015-05-28 10:47:47 -04:00
Nick Mathewson
3bee74c6d1
Generate weird certificates correctly
...
(Our link protocol assumes that the link cert certifies the TLS key,
and there is an RSA->Ed25519 crosscert)
2015-05-28 10:47:47 -04:00
Nick Mathewson
57189acd6f
# This is a combination of 2 commits.
...
# The first commit's message is:
Regenerate ed25519 keys when they will expire soon.
Also, have testing-level options to set the lifetimes and
expiration-tolerances of all key types, plus a non-testing-level
option to set the lifetime of any auto-generated signing key.
# The 2nd commit message will be skipped:
# fixup! Regenerate ed25519 keys when they will expire soon.
2015-05-28 10:42:30 -04:00
Nick Mathewson
79db24b3d5
Sign extrainfo documents with ed25519
...
Extrainfo documents are now ed-signed just as are router
descriptors, according to proposal 220. This patch also includes
some more tests for successful/failing parsing, and fixes a crash
bug in ed25519 descriptor parsing.
2015-05-28 10:42:22 -04:00
Nick Mathewson
b600b68b20
Revise makedesc.py: teach it how to emit ed signatures and crosscerts
...
Also, add a trivial ed25519-signed routerinfo to the tests.
2015-05-28 10:41:50 -04:00
Nick Mathewson
4d1a0ece5c
Fix memory leaks in test_link_handshake.c
2015-05-28 10:41:50 -04:00
Nick Mathewson
55bb7bbafd
Tests for AUTHENTICATE cell functionality.
2015-05-28 10:41:50 -04:00
Nick Mathewson
b75361c5ed
Start testing cell encoders/processers for the v3 handshake.
...
An earlier version of these tests was broken; now they're a nicer,
more robust, more black-box set of tests. The key is to have each
test check a handshake message that is wrong in _one_ way.
2015-05-28 10:41:50 -04:00
Nick Mathewson
24b720a984
Include ed25519 keys in microdescriptors.
2015-05-28 10:41:49 -04:00
Nick Mathewson
006b7ce5ff
Fix the position-check for ed25519 certs to work with annotations
...
When there are annotations on a router descriptor, the
ed25519-identity element won't be at position 0 or 1; it will be at
router+1 or router-1.
This patch also adds a missing smartlist function to search a list for
an item with a particular pointer.
2015-05-28 10:41:49 -04:00
Nick Mathewson
eacbe03c71
Key-pinning back-end for directory authorities.
...
This module implements a key-pinning mechanism to ensure that it's
safe to use RSA keys as identitifers even as we migrate to Ed25519
keys. It remembers, for every Ed25519 key we've seen, what the
associated Ed25519 key is. This way, if we see a different Ed25519
key with that RSA key, we'll know that there's a mismatch.
We persist these entries to disk using a simple format, where each
line has a base64-encoded RSA SHA1 hash, then a base64-endoded
Ed25519 key. Empty lines, misformed lines, and lines beginning with
a # are ignored. Lines beginning with @ are reserved for future
extensions.
2015-05-28 10:41:49 -04:00
Nick Mathewson
efa21bb941
Implement proposal 228: cross-certification with onion keys
...
Routers now use TAP and ntor onion keys to sign their identity keys,
and put these signatures in their descriptors. That allows other
parties to be confident that the onion keys are indeed controlled by
the router that generated the descriptor.
2015-05-28 10:40:57 -04:00
Nick Mathewson
fe5d2477aa
Implement ed25519-signed descriptors
...
Now that we have ed25519 keys, we can sign descriptors with them
and check those signatures as documented in proposal 220.
2015-05-28 10:40:56 -04:00
Nick Mathewson
818e6f939d
prop220: Implement certificates and key storage/creation
...
For prop220, we have a new ed25519 certificate type. This patch
implements the code to create, parse, and validate those, along with
code for routers to maintain their own sets of certificates and
keys. (Some parts of master identity key encryption are done, but
the implementation of that isn't finished)
2015-05-28 10:40:56 -04:00
Nick Mathewson
8ca3773f68
Fix unit tests on MSVC2013.
...
Patch from "NewEraCracker." Fixes bug16030; bugfix on 0.2.6.2-alpha.
2015-05-26 10:34:07 -04:00
Yawning Angel
452cebc4a4
Remove support for OpenSSL without ECC.
...
As OpenSSL >= 1.0.0 is now required, ECDHE is now mandatory. The group
has to be validated at runtime, because of RedHat lawyers (P224 support
is entirely missing in the OpenSSL RPM, but P256 is present and is the
default).
Resolves ticket #16140 .
2015-05-21 17:07:30 +00:00
Nick Mathewson
ed02a409cf
Merge branch 'bug16034_no_more_openssl_098_squashed'
...
Conflicts:
src/test/testing_common.c
2015-05-20 15:33:22 -04:00
Nick Mathewson
f8f407d66a
Now that OpenSSL 0.9.8 is dead, crypto_seed_rng() needs no args
...
It needed an argument before because it wasn't safe to call
RAND_poll() on openssl 0.9.8c if you had already opened more fds
than would fit in fd_set.
2015-05-20 15:27:36 -04:00
Nick Mathewson
971f0f8e18
Remove code to support OpenSSL 0.9.8
2015-05-20 15:27:36 -04:00
Nick Mathewson
d5e4a63436
Fix some compilation warnings
2015-05-18 15:57:21 -04:00
Nick Mathewson
cc1943bf6e
Merge remote-tracking branch 'dgoulet/bug16021_027_01'
2015-05-18 11:29:50 -04:00
cypherpunks
b54626fd11
Silence two make rules
2015-05-18 11:29:07 -04:00
David Goulet
a324d7e8e1
Test: add unit test for rend_data_t object and functions
...
Closes #16021
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-05-14 12:08:54 -04:00
David Goulet
acfa374048
Test: fix HS_DESC to expect descriptor ID
...
With #15881 implemented, this adds the missing descriptor ID at the end of
the expected control message.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-05-14 10:46:38 -04:00
David Goulet
c1ffeadff4
Add missing descriptor ID to HS_DESC control event
...
For FAILED and RECEIVED action of the HS_DESC event, we now sends back the
descriptor ID at the end like specified in the control-spec section 4.1.25.
Fixes #15881
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-05-14 10:46:38 -04:00
Nick Mathewson
e086db7952
Merge branch 'writing_tests'
2015-05-07 15:29:56 -04:00
Nick Mathewson
79e85313aa
Write the outlines of a WritingTests.txt document
...
Also, add some sample tests to be examples.
2015-05-07 15:29:16 -04:00
teor
75fc4d5511
Remove test for strclear as it no longer exists in the codebase
2015-05-06 18:27:26 +10:00
teor
e60c612447
Use standard float.h header and resolve undefined left shift behaviour
2015-05-06 18:09:10 +10:00
teor
0fcd150959
Add unit tests for cast_double_to_int64().
2015-05-06 18:08:18 +10:00
Karsten Loesing
dad5eb7e1f
Tweak teor's and dgoulet's #13192 patches.
...
- Rewrite changes file.
- Avoid float comparison with == and use <= instead.
- Add teor's tor_llround(trunc(...)) back to silence clang warnings.
- Replace tt_assert() with tt_i64_op() and friends.
- Fix whitespace and a comment.
2015-05-06 18:05:16 +10:00
David Goulet
dcf0f808c0
Test: change INT64_MAX to DBL_MAX in laplace test
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-05-06 18:05:15 +10:00
David Goulet
aecc354ee7
Test: remove edge cases that assert in laplace test
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-05-06 18:05:15 +10:00
teor
09cac24373
Handle edge cases in the round_*_to_next_multiple_of functions
...
Consistently check for overflow in round_*_to_next_multiple_of.
Check all round_*_to_next_multiple_of functions with expected values.
Check all round_*_to_next_multiple_of functions with maximal values.
Related to HS stats in #13192 .
2015-05-06 18:05:15 +10:00
teor
6d54bdbdcf
Handle edge cases in laplace functions
...
Avoid division by zero.
Avoid taking the log of zero.
Silence clang type conversion warnings using round and trunc.
The existing values returned by the laplace functions do not change.
Add tests for laplace edge cases.
These changes pass the existing unit tests without modification.
Related to HS stats in #13192 .
2015-05-06 18:05:15 +10:00
Nick Mathewson
f61088ce23
Fix a few more memory leaks; not in any released Tor
2015-05-05 11:08:05 -04:00
cypherpunks
26e0f8635a
Add missing newline in memwipe test.
2015-04-30 12:15:34 -04:00
Nick Mathewson
6ed5733169
Fix another test failure
...
We need the test scripts to become +x *after* they are created.
2015-04-28 10:47:37 -04:00
Yawning Angel
915c7438a7
Add "ADD_ONION"/"DEL_ONION" and "GETINFO onions/*" to the controller.
...
These commands allow for the creation and management of ephemeral
Onion ("Hidden") services that are either bound to the lifetime of
the originating control connection, or optionally the lifetime of
the tor instance.
Implements #6411 .
2015-04-28 10:19:08 -04:00
Nick Mathewson
63a90f2df4
Mark set-test-permissions as .PHONY; use u+x only
2015-04-24 16:10:34 -04:00
Nick Mathewson
f6167f51ac
Revert "Add +x to these .in files; see if it helps"
...
This reverts commit ecf98313d6
.
It didn't help.
2015-04-24 16:05:41 -04:00
Nick Mathewson
d579d751dc
Kludge include.am to work with automake <1.12
...
The SH_LOG_COMPILER feature doesn't work with older automakes, and
those are still in use in many environments we want to support
development on, like Debian Stable.
Instead, use autoconf substitution to fill out the shebang lines on
the shell scripts, and an intermediate make target to make them
executable.
This is a bugfix on the patches for #15344 . Bug not in any released
tor.
2015-04-24 08:41:53 -04:00
Nick Mathewson
ecf98313d6
Add +x to these .in files; see if it helps
2015-04-23 16:15:21 -04:00
Nick Mathewson
54000d7ad9
Merge remote-tracking branch 'dgoulet/bug14847_027_06'
2015-04-23 12:24:35 -04:00
Nick Mathewson
9b6e57290f
Fix crash-test for assertion failure
...
When we made assertions not get compiled in for the coverage case, we
missed one case where, for our tests, we really DO want to have an
assertion fail: the backtrace test.
Bugfix on 1228dd293b60a8eaab03472fa29428c5e2752c44; bug not in any
released tor
2015-04-23 10:25:16 -04:00
cypherpunks
0e89abfa73
Integrate backtrace test into the automake test suite.
...
For this to work bt_test.py now returns an exit code indicating success or
failure. Additionally, check-local and its specific dependencies are now
obsolete so they are removed.
2015-04-23 09:56:25 -04:00
cypherpunks
c535494238
Integrate ntor test into the automake test suite.
2015-04-23 09:56:16 -04:00
cypherpunks
21e2425307
Integrate zero_length_keys test into the automake test suite.
...
The zero length keys test now requires the path to the Tor binary as the first
parameter to ensure the correct Tor binary is used without hard coding a path.
The wrapper script calls the zero length keys test for each test separately to
ensure the correct shell is used (as configured by autoconf). Another solution
would have been to place the tests into separate functions so multiple tests
could be run internally. This would have made a diff of considerable size and
frankly it is outside the scope of this fix.
2015-04-23 09:56:12 -04:00
Nick Mathewson
01d988d72f
Merge remote-tracking branch 'teor/bug-15642-v3-fallback-unit-tests'
2015-04-23 09:22:16 -04:00
Nick Mathewson
647b7d37c2
Merge remote-tracking branch 'public/bug15745_027_03'
2015-04-23 09:10:35 -04:00
Nick Mathewson
3acee61422
Merge branch 'feature15652_squashed'
2015-04-23 09:09:33 -04:00
Nick Mathewson
55118d90ca
Fix some implicit conversion warnings
2015-04-23 09:09:20 -04:00
Yawning Angel
196499da73
Use a custom Base64 encoder with more control over the output format.
2015-04-23 09:06:58 -04:00
teor
d68bbb0a29
Unit tests for consider_adding_dir_servers() as modified in #15642
...
Unit tests for the 10 valid combinations of set/NULL config options
DirAuthorities, AlternateBridgeAuthority, AlternateDirAuthority,
and FallbackDir.
Add assertion in consider_adding_dir_servers() for checks in
validate_dir_servers():
"You cannot set both DirAuthority and Alternate*Authority."
2015-04-23 00:16:04 +10:00
David Goulet
dd07c78524
Test: fix HSFETCH control command with latest change
...
The expected message of the command now expects "650+" and "650 OK".
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
28cf9f2186
Control: unbolt rend_data from HS desc event
...
The HS_DESC event was using rend_data_t from the dir connection to reply the
onion address and authentication type. With the new HSFETCH command, it's
now possible to fetch a descriptor only using the descriptor id thus
resulting in not having an onion address in any HS_DESC event.
This patch removes rend_query from the hs desc control functions and replace
it by an onion address string and an auth type.
On a successful fetch, the service id is taken from the fetched descriptor.
For that, an extra parameter is added to "store as a client" function that
contains the cache entry stored.
This will make the control event functions scale more easily over time if
other values not present in rend_data_t are needed since the rend_data from
the dir connection might not contained everything we need.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:22:54 -04:00
David Goulet
7db58445fd
Control: add HS_DESC_CONTENT event
...
As defined in section 4.1.26 in the control-spec.txt, this new event replies
the content of a successfully fetched HS descriptor. This also adds a unit
test for the controller event.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-04-21 14:15:02 -04:00
Yawning Angel
9a9ab455a3
Use correct severity in the get_if_addrs tests.
2015-04-21 16:42:07 +00:00
Nick Mathewson
e48ad353a3
Add test for random-int-in-range
2015-04-21 11:41:31 -04:00
teor
af2b6bdaba
Fix spaces in crypto.h and test-memwipe.c
2015-04-15 19:42:41 +10:00
Yawning Angel
e891deb021
Disable the udp_socket_trick_blackbox tests that fail due to #12377
...
Till someone writes get_interface_address6 interface enumeration that is
routing table aware, these tests will continue to fail on certain
systems because the get_interface_address6() code is broken.
2015-04-10 18:13:34 +00:00
Nick Mathewson
f9327848ba
Collect badness values in ntor_ref.py; don't just clobber.
...
Fixes bug 15591; patch from joelanders
2015-04-09 11:57:55 -04:00
Sebastian Hahn
e10e6f78b1
Update entrynodes unit test for dirs
...
We no longer base our opinion on whether someone is a directory solely
on the routerstatus we might have for that relay, but also on a
routerinfo. Remove logic in test checking that. This broke unit tests in
05f7336624
.
Reported by toralf on #tor-dev, thanks!
2015-04-01 21:10:39 +02:00
Nick Mathewson
cd8f13b5cb
Merge branch 'bug13736'
2015-04-01 13:46:50 -04:00
Nick Mathewson
aa7b792250
Merge remote-tracking branch 'yawning/feature15435'
2015-04-01 13:34:14 -04:00
Nick Mathewson
1ac3cb4823
work around lack of AF_CCITT
2015-03-31 15:56:52 -04:00
Nick Mathewson
02c3879f87
Merge remote-tracking branch 'teor/ticket15431-event-mask-tests'
2015-03-31 14:57:04 -04:00
Nick Mathewson
725d6157df
fix some compilation warnings
2015-03-31 14:42:01 -04:00
Nick Mathewson
30e933b136
Merge branch 'ticket14710_squashed'
2015-03-31 14:37:09 -04:00
rl1987
33fbb5011d
Use tor_inet_pton() (not inet_pton()) in testcases.
2015-03-31 14:37:02 -04:00
rl1987
5e759127f8
Remove unused function.
2015-03-31 14:37:02 -04:00
rl1987
b5f84fde49
IPv6 case for whitebox test.
2015-03-31 14:37:02 -04:00
rl1987
a4f89e21a6
Whitebox test for get_interface_address6_via_udp_socket_hack().
...
Also, fix some whitespace mishaps.
2015-03-31 14:37:02 -04:00
rl1987
c03493ad13
Skipping the AF_INET6 case because bug #12377 makes it fail.
2015-03-31 14:37:02 -04:00
rl1987
6af471f394
Rework the black box test, like Yawning and nickm suggested.
2015-03-31 14:37:01 -04:00
rl1987
a13f944314
Black box test for get_interface_address6_via_udp_socket_hack().
2015-03-31 14:36:35 -04:00
Yawning Angel
fda61e030e
Implement "TOR_PT_EXIT_ON_STDIN_CLOSE".
...
Background processes spawned by Tor now will have a valid stdin.
Pluggable transports can detect this behavior with the aformentioned
enviornment variable, and exit if stdin ever gets closed.
2015-03-26 12:55:12 +00:00
Nick Mathewson
dde4ffeb97
Merge remote-tracking branch 'dgoulet/bug15377_027_01'
2015-03-24 16:27:27 -04:00
David Goulet
2dc5d790d3
Test: add missing libor.a in include.am
...
Also add test-memwipe to .gitignore file.
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-03-24 16:04:30 -04:00
Nick Mathewson
9e80fc8171
Merge remote-tracking branch 'sebastian/coverage_builds'
2015-03-24 15:16:49 -04:00
Nick Mathewson
8f951d0196
Put an upper bound on test_workqueue -I argument
...
This makes coverity happy, since it doesn't like us looping against
a value which might be INT_MAX.
This is CID 1268069
2015-03-24 10:49:29 -04:00
Sebastian Hahn
1a50cb88e6
Fix test-network.sh argument parsing
...
The bash on one of my machines didn't understand the question mark
correctly, it didn't end up accepting flavor. We can spell it out
explicitly.
2015-03-22 09:43:50 +01:00
teor
99c10a95e4
Add unit tests for control_event_is_interesting()
...
Part of ticket 15431, checks for bugs similar to 13085.
2015-03-22 14:24:41 +11:00
Sebastian Hahn
1228dd293b
Disable assertions during coverage builds
...
This removes roughly 5000 branches in my testing. We never want to
trigger assertions even during tests, so this is sane. Implements #15400 .
2015-03-21 02:34:44 +01:00
Nick Mathewson
e82e600d6e
Here is a test for memwipe.
...
It invokes undefined behavior, I'm afraid, since there's no other
c-legal way to test whether memwipe() works when we're not allowed to
look at it.
Closes ticket 15377.
2015-03-19 18:47:24 -04:00
cypherpunks
17cbc4350f
Use output variables instead of relative paths.
...
Fixes the following rules in out-of-tree builds;
- check-spaces
- check-docs
- check-logs
- Doxygen
- coverage-html
And cleans up additional directories;
- coverage_html
- doc/doxygen
2015-03-14 13:00:04 -04:00
Nick Mathewson
511ca9b91c
Remove DynamicDHGroups as obsoleted by PluggableTransports or P256.
...
Closes ticket 13736.
2015-03-14 12:40:55 -04:00
Nick Mathewson
3ee2fca7ca
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-12 13:16:22 -04:00
Nick Mathewson
eb68ea20f8
Merge remote-tracking branch 'public/feature15212_026' into maint-0.2.6
2015-03-12 13:15:08 -04:00
Nick Mathewson
985687bc4f
Fix check-spaces
2015-03-10 10:10:35 -04:00
Nick Mathewson
d29a8ad564
Add link protocol version counts to the heartbeat message
...
Closes ticket 15212
2015-03-10 10:07:41 -04:00
Nick Mathewson
0ec135b696
Merge remote-tracking branch 'origin/maint-0.2.6'
2015-03-09 11:14:03 -04:00
Tom van der Woerdt
d39ede7f20
testing_common.c: avoid side-effects of tor_assert
2015-03-09 11:10:58 -04:00
Andrea Shepard
d97f43dc8b
Fix formatting
2015-03-02 10:24:58 +00:00
Nick Mathewson
d7fcaca3fc
Have zero_length_keys.sh use an empty torrc file.
...
Fixes 15033; bugfix on 0.2.6.3-alpha.
2015-02-26 15:22:37 -05:00
Nick Mathewson
3e30d4df7f
Have zero_length_keys.sh use an empty torrc file.
...
Fixes 15033; bugfix on 0.2.6.3-alpha.
2015-02-26 15:21:31 -05:00
Nick Mathewson
1b913777c7
Merge remote-tracking branch 'atagar/trac14806'
2015-02-25 09:30:29 -05:00
Nick Mathewson
0dde4d6fa2
Merge remote-tracking branch 'yawning/bug14922'
2015-02-25 08:56:34 -05:00
Nick Mathewson
af60e7566e
Update test_status.c to accommodate changes in heartbeat messages
...
Fixes #15012 ; bug not in any released Tor
2015-02-24 10:05:34 -05:00
cypherpunks
5246e8f992
Remove lingering mempool code
2015-02-23 11:19:31 -05:00
rl1987
385558c32f
Fix endianness issues in test_config_resolve_my_address().
...
Since resolve_my_address() yields IP address in host order there is
no need to use byteorder functions for conversion.
2015-02-23 09:57:17 -05:00
Roger Dingledine
0e4bdc4005
clean up comments and whitespace a bit
2015-02-18 19:27:02 -05:00
Nick Mathewson
afe10e4707
whitespace fixes
2015-02-18 10:55:56 -05:00
Nick Mathewson
6cdb213b6c
Combine test_helpers.[ch] and testhelper.[ch]
2015-02-18 09:19:38 -05:00
Nick Mathewson
96211bcf71
Merge branch 'bug9321_rerebase'
...
Conflicts:
src/or/dirvote.h
src/test/include.am
src/test/test_entrynodes.c
2015-02-18 09:17:02 -05:00
George Kadianakis
028ede2f5e
Add unittests for the guardfraction feature.
2015-02-18 09:09:34 -05:00
George Kadianakis
c2b13e22e7
Unittest prep: Move get_yesterday_date_str() to helper file.
...
We want to use this function in our guardfraction unittests, so make a
test_helpers module and move it there.
2015-02-18 09:09:34 -05:00
Yawning Angel
cbd26157c5
Remove tor_strclear(), and replace previous calls with memwipe().
2015-02-17 18:53:33 +00:00
Nick Mathewson
c3813e2e64
Use --list-fingerprint instead of process control in zero_length_keys.sh
...
Using kill and wait in this way may have been making windows
builders unhappy.
2015-02-17 08:30:32 -05:00
Nick Mathewson
8375663adf
Wrap two long lines
2015-02-17 08:30:28 -05:00
Nick Mathewson
5d2a23397a
Fix a few coverity "Use after NULL check" warnings
...
Also remove the unit test mocks that allowed get_options() to be
NULL; that's an invariant violation for get_options().
2015-02-16 15:40:15 -05:00
Nick Mathewson
5644d92dd7
Merge remote-tracking branch 'sebastian/bug14875'
2015-02-12 14:50:13 -05:00
Sebastian Hahn
87a95b0236
Actually get all interface addresses
...
If we guessed a buffer size too small, we never increased the buffer and
tried again
Also simplify the interface of ifreq_to_smartlist a little
2015-02-12 14:54:39 +01:00
Nick Mathewson
f794a09164
Merge branch 'bug14478_squashed'
2015-02-11 15:59:41 -05:00
Sebastian Hahn
dfb409b8b0
Put error messages to stderr
...
Thanks weasel :)
Also remove stray debug output
2015-02-11 15:59:34 -05:00
Sebastian Hahn
c5f176b9b0
Change exit code of zero_length_keys script
...
Weasel notes that exit codes above 128 are for when a script dies from a
signal.
2015-02-11 15:59:34 -05:00
Sebastian Hahn
6ecd6e27da
Avoid undefined behaviour of test
...
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-11 15:59:34 -05:00
Sebastian Hahn
0a0c5d7c0e
Check that mktemp result is a directory
...
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-11 15:59:34 -05:00
Sebastian Hahn
f84a54c159
Clean up after zero length key test
2015-02-11 15:59:34 -05:00
Nick Mathewson
d7a1e83f50
Merge remote-tracking branch 'public/remove_freelist'
2015-02-11 15:09:01 -05:00
Nick Mathewson
caf28519d9
Merge branch 'bug12844'
...
Conflicts:
src/or/circuituse.c
src/test/include.am
src/test/test_entrynodes.c
2015-02-11 15:06:04 -05:00
Nick Mathewson
6f331645c7
Remove mempools and buf freelists
...
They have been off-by-default since 0.2.5 and nobody has complained. :)
Also remove the buf_shrink() function, which hasn't done anything
since we first stopped using contiguous memory to store buffers.
Closes ticket 14848.
2015-02-11 09:03:50 -05:00
Damian Johnson
44abbf5ab6
Dropping test_cmdline_args.py
...
Before a couple weeks ago didn't know Tor had these tests, interesting! Stem
already has tests for spawning tor processes but lacked any with this targeted
focus on its arguments.
I've added our own counterpart for these tests. Many are direct copies but
there were others I improved a little...
https://trac.torproject.org/projects/tor/ticket/14109
https://gitweb.torproject.org/stem.git/commit/?id=137d193a026638f066e817e3396cebbbb6ace012
Now that Tor uses Stem to supplement its tests no reason for these to live
separately. Tested by simply building tor and confirming test_cmdline_args.py
is no longer in the generated Makefile.
2015-02-08 21:34:36 -08:00
teor
d0759da14e
Avoid calling SMARTLIST_FOREACH on a NULL smartlist in tests
...
Check if each smartlist is NULL before calling SMARTLIST_FOREACH on it.
Bug discovered by the clang static analyzer.
Apple clang 600.0.56 (LLVM 3.5svn) on x86_64-apple-darwin14.1.0.
2015-02-08 23:41:37 +11:00
Sebastian Hahn
136b1d8ed0
Remove useless export in zero length key test
...
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-06 21:56:26 +01:00
Sebastian Hahn
d695f7b423
Don't use invalid exit values in zero length key test
...
Shell exit values must fall into the range of [0-255], so let's honour
this. In practice, the "exit -1" from the old code set an exit value of
255 on most systems, so let's pick that.
Fixes part of bug #14478 , patch idea suggested by an anonymous
contributor. Thanks!
2015-02-06 21:55:59 +01:00
Nick Mathewson
e36faeec1d
Merge remote-tracking branch 'sebastian/bug13993'
2015-02-06 15:42:53 -05:00
Sebastian Hahn
e0c3de40ad
Fix check-spaces complaints
2015-02-06 21:36:40 +01:00
Sebastian Hahn
b3bc871214
Add unit test for #13290
2015-02-06 21:04:05 +01:00
Nick Mathewson
ac8f235446
fix a unit tests memory leak (my fault)
2015-02-03 15:58:48 -05:00
Nick Mathewson
d03e1da232
Merge remote-tracking branch 'public/bug9635_warnings_025'
...
Conflicts:
src/test/test.c
2015-02-02 16:31:32 -05:00
rl1987
a9caeb961f
Test for 13865.
2015-02-02 14:38:36 -05:00
Nick Mathewson
fac8d40886
Merge remote-tracking branch 'public/prop227_v2'
...
Conflicts:
src/test/test_dir.c
2015-01-30 07:36:55 -05:00
Nick Mathewson
bd630a899a
Correctly reject packages lines with empty entries
2015-01-29 14:09:57 -05:00
Nick Mathewson
8f9fb3e8fa
Try to fix some more memory leaks in the unit tests
2015-01-23 11:35:05 -05:00
Nick Mathewson
614fbf1812
Fix some memory leaks in new address tests
2015-01-23 11:26:40 -05:00
Nick Mathewson
034e2788f8
whitespace fixes
2015-01-23 11:18:28 -05:00
Nick Mathewson
7322de15dc
Split the slow unit tests into their own binary
...
This can run in parallel with the faster ones and the other tests.
2015-01-23 11:15:53 -05:00
Nick Mathewson
420037dcef
Merge branch 'if_addr_refactoring_squashed'
...
Conflicts:
src/test/include.am
src/test/test.c
2015-01-23 10:13:37 -05:00
rl1987
3966145dff
Refactor code that looks up addresses from interfaces
...
Now the code has separate implementation and examination functions,
uses smartlists sanely, and has relatively decent test coverage.
2015-01-23 10:07:17 -05:00
Nick Mathewson
5d4bb6f61f
Merge remote-tracking branch 'public/ticket9969'
...
Conflicts:
src/or/directory.c
src/or/routerlist.c
src/or/routerlist.h
src/test/include.am
src/test/test.c
2015-01-23 09:36:00 -05:00
Nick Mathewson
b677ccd3ab
Merge remote-tracking branch 'public/ticket13762'
2015-01-23 08:55:31 -05:00
Nick Mathewson
23fc1691b6
Merge branch 'better_workqueue_v3_squashed'
2015-01-21 14:47:16 -05:00
David Goulet
f52ac5be74
Fix: change copyright year in workqueue and thread tests
...
Signed-off-by: David Goulet <dgoulet@ev0ke.net>
2015-01-21 14:31:02 -05:00
Nick Mathewson
2e8b8c8698
Make check-spaces happier.
2015-01-19 11:56:03 -05:00
Nick Mathewson
f92b01b963
Remove a now-needless testing workaround.
2015-01-19 11:55:52 -05:00
Nick Mathewson
1053af0b9c
Merge branch 'bug7555_v2_squashed'
...
Conflicts:
src/or/connection_edge.c
2015-01-19 11:43:41 -05:00
Nick Mathewson
4b23b398a3
Merge branch 'bug8546_squashed'
...
Conflicts:
src/or/connection.c
src/or/or.h
src/or/relay.c
2015-01-16 09:31:50 -05:00
Nick Mathewson
13dac5e463
Move entry_port_cfg_t fields in entry_connection_t
...
Also rename some options for uniformity, and apply this script:
@@
entry_connection_t *conn;
@@
conn->
+entry_cfg.
\(
isolation_flags
\|
session_group
\|
socks_prefer_no_auth
\|
ipv4_traffic
\|
ipv6_traffic
\|
prefer_ipv6
\|
cache_ipv4_answers
\|
cache_ipv6_answers
\|
use_cached_ipv4_answers
\|
use_cached_ipv6_answers
\|
prefer_ipv6_virtaddr
\)
2015-01-16 09:22:58 -05:00
George Kadianakis
bb56fd1f8f
unittests: use tt_i64_op() instead of tt_int_op() in laplace tests.
...
Do this in even more places to try to fix the build.
2015-01-15 11:08:22 -05:00
Nick Mathewson
a52e549124
Update workqueue implementation to use a single queue for the work
...
Previously I used one queue per worker; now I use one queue for
everyone. The "broadcast" code is gone, replaced with an idempotent
'update' operation.
2015-01-15 11:05:22 -05:00
Nick Mathewson
88e36eaf0e
Fix the checkdir/perms test when umask==077
...
Fixes 14215; bugfix on 0.2.6.2-alpha. Reported by "cypherpunks".
2015-01-15 10:24:27 -05:00
George Kadianakis
354ddf8712
unittests: use tt_i64_op() instead of tt_int_op() in laplace tests.
2015-01-15 15:14:33 +00:00
George Kadianakis
25e7821bb1
unittests: Change some tt_assert()s to tt_int_op()s.
2015-01-15 14:43:58 +00:00
George Kadianakis
45bc5a0743
Restrict sample values of the Laplace distribution to int64_t.
...
This helps avoid undefined behavior from casting big double values to
int64_t. Fixes #14090 .
2015-01-15 14:43:58 +00:00
Nick Mathewson
cc6529e9bb
Fix check-spaces
2015-01-14 11:19:35 -05:00
Nick Mathewson
e5f8c772f4
Test and fix workqueue_entry_cancel().
2015-01-14 11:17:46 -05:00
Nick Mathewson
ebbc177005
Add shutdown and broadcast support to test_workqueue.
2015-01-14 11:17:46 -05:00
Nick Mathewson
81354b081b
Add unit test for thread IDs.
2015-01-14 11:17:43 -05:00
Nick Mathewson
7a63005220
Basic unit test for condition variables.
2015-01-14 11:17:09 -05:00
Nick Mathewson
74b782645a
Move thread tests into their own module
2015-01-14 11:09:47 -05:00
Nick Mathewson
c51f7c23e3
Test a little more of compat_threads.c
2015-01-14 11:05:56 -05:00
Nick Mathewson
93ad89e9d2
Rename bench_workqueue -> test_workqueue and make it a unit test.
2015-01-14 11:05:56 -05:00
Nick Mathewson
c7eebe237d
Make pending work cancellable.
2015-01-14 10:56:27 -05:00
Nick Mathewson
a82604b526
Initial workqueue implemention, with a simple test.
...
It seems to be working, but more tuning is needed.
2015-01-14 10:56:24 -05:00
Nick Mathewson
b72acd725a
More tests as suggested by rl1987
2015-01-14 09:10:35 -05:00
Nick Mathewson
03f783c045
remove a bogus comment
2015-01-13 13:59:39 -05:00
Nick Mathewson
73d1d153dc
remove needless AllowDotExit in test_entryconn_rewrite_mapaddress_automap_onion2
2015-01-13 13:56:59 -05:00
Nick Mathewson
73ccf0b33f
Uncomment a test
2015-01-13 13:42:20 -05:00
Nick Mathewson
9d0fab9872
Allow MapAddress and Automap to work together
...
The trick here is to apply mapaddress first, and only then apply
automapping. Otherwise, the automap checks don't get done.
Fix for bug 7555; bugfix on all versions of Tor supporting both
MapAddress and AutoMap.
2015-01-13 12:41:15 -05:00
Nick Mathewson
ab6bd78eca
(Disabled, failing) test for the bug in 7555.
2015-01-13 12:26:04 -05:00
Nick Mathewson
6cbe016cb1
Fix memory leaks in entryconn tests.
2015-01-13 12:13:46 -05:00
Nick Mathewson
05a80bb46c
More unit tests for rewriting entry connection addresses
2015-01-13 11:08:33 -05:00
Nick Mathewson
a0b4c2f1bd
On jessie, we need a =, not a ==
2015-01-12 22:30:40 -05:00
Nick Mathewson
7257f2e31d
mktemp wants some Xs
2015-01-12 21:45:41 -05:00
Nick Mathewson
038804e13d
Tweak zero_length_keys.sh and test/include.am to make out-of-tree builds work
2015-01-12 21:28:01 -05:00
Nick Mathewson
bba995e666
Begin writing unit tests for rewrite code
2015-01-12 21:08:43 -05:00
Nick Mathewson
2edfdc02a2
Merge remote-tracking branch 'teor/bug13111-empty-key-files-fn-empty'
2015-01-12 14:06:14 -05:00
Nick Mathewson
c83d838146
Implement proposal 227-vote-on-package-fingerprints.txt
...
This implementation includes tests and a little documentation.
2015-01-10 15:09:07 -05:00
teor
ac2f90ed00
Speed up hidden service bootstrap by reducing the initial post delay
...
Drop the MIN_REND_INITIAL_POST_DELAY on a testing network to 5 seconds,
but keep the default at 30 seconds.
Reduces the hidden service bootstrap to 25 seconds from around 45 seconds.
Change the default src/test/test-network.sh delay to 25 seconds.
Closes ticket 13401.
2015-01-10 22:34:29 +11:00
teor
f8ffb57bc4
Merge branch 'master' of https://git.torproject.org/tor into bug13111-empty-key-files-fn-empty
...
Conflicts:
src/or/connection_edge.c
Merged in favour of origin.
2015-01-10 17:20:06 +11:00
teor
debd7862bb
Test that tor correctly handles zero-length keys
...
Check that tor generates new keys, and overwrites the empty key files.
Test that tor generates new keys when keys are missing (existing
behaviour).
Test that tor does not overwrite key files that already contain data
(existing behaviour).
Tests fixes to bug 13111.
2015-01-10 17:14:29 +11:00
Nick Mathewson
6f171003ce
fix new mingw64 compilation warnings
2015-01-08 10:44:30 -05:00
Nick Mathewson
90db39448d
Downgrade warnings about extrainfo incompatibility when reading cache
...
Fixes 13762.
2015-01-07 13:11:06 -05:00
Nick Mathewson
79aaad952f
appease "make check-spaces"
2015-01-07 10:09:09 -05:00
Nick Mathewson
cb54cd6745
Merge branch 'bug9286_v3_squashed'
2015-01-07 10:06:50 -05:00
Nick Mathewson
7984fc1531
Stop accepting milliseconds in various directory contexts
...
Have clients and authorities both have new behavior, since the
fix for bug 11243 has gone in. But make clients still accept
accept old bogus HSDir descriptors, to avoid fingerprinting trickery.
Fixes bug 9286.
2015-01-07 10:05:55 -05:00
Nick Mathewson
108808e98e
Fix obsolete usage of test_{str_},eq macros
2015-01-06 15:25:20 -05:00
Nick Mathewson
ae9efa863e
Merge remote-tracking branch 'public/bug13661_025'
2015-01-06 15:16:28 -05:00
Nick Mathewson
cf2ac8e255
Merge remote-tracking branch 'public/feature11791'
2015-01-06 13:52:54 -05:00
Nick Mathewson
f4221a809a
Make test_cmdline_args.py work on Windows
...
Patch from Gisle Vanem on tor-dev ml
2015-01-06 13:26:52 -05:00
Nick Mathewson
f54e54b0b4
Bump copyright dates to 2015, in case someday this matters.
2015-01-02 14:27:39 -05:00
Nick Mathewson
e85f0c650c
Merge branch 'resolvemyaddr_squashed'
2014-12-29 10:00:34 -05:00
Nick Mathewson
feed26d037
Make the resolvemyaddr unit tests pass when local dns is hijacked
...
If you are in a coffee shop that returns a helpful redirect page for
"onionrouter", or on an ISP that does the same, the test as written
would fail.
2014-12-29 10:00:22 -05:00
Nick Mathewson
3538dfc91f
Fix memory leaks in resolvemyaddr tests
2014-12-29 10:00:22 -05:00
Nick Mathewson
c07747be2e
Fix compilation errors in resolvemyaddr tests
2014-12-29 10:00:22 -05:00
rl1987
28217b969e
Adding comprehensive test cases for resolve_my_address.
...
Also, improve comments on resolve_my_address to explain what it
actually does.
2014-12-29 09:59:47 -05:00
Nick Mathewson
eda5cebd6c
Add another cellintptr use; fixes 14031
2014-12-26 19:17:24 -05:00
Michael Scherer
aabaed6f49
add support for systemd notification protocol
...
This permit for now to signal readiness in a cleaner way
to systemd.
2014-12-23 11:06:01 -05:00
Nick Mathewson
808e2b856b
Tweak channel unit tests so we don't see coverity complaints
...
channel_write_*_cell() can delete its argument, so coverity doesn't
like us doing pointer comparison against that argument later.
Silly.
2014-12-22 16:06:05 -05:00
Nick Mathewson
03d2df62f6
Fix a bunch of memory leaks in the unit tests. Found with valgrind
2014-12-22 12:27:26 -05:00
Nick Mathewson
13f26f41e4
Fix some coverity issues in the unit tests
2014-12-22 11:13:01 -05:00
Nick Mathewson
3d85df9569
LLONG_MIN => INT64_MIN.
2014-12-19 14:12:35 -05:00
Karsten Loesing
816e6f2eac
Fix unit test.
...
Looks like we forgot to update unit tests when we switched from 32-bit to
64-bit ints while tweaking 7cd53b7
.
2014-12-19 18:37:43 +01:00
Nick Mathewson
64787e99fa
Merge branch 'asn-karsten-task-13192-5-squashed'
2014-12-19 10:35:47 -05:00
Karsten Loesing
7cd53b75c1
Add better support to obfuscate statistics.
2014-12-10 11:16:26 +01:00
Nick Mathewson
3c0e09ef81
Add fakechans.h to noinst_headers
2014-12-04 09:19:44 -05:00
Nick Mathewson
58df153163
Fix more 64/32 warnings in test_channel.c
2014-12-04 09:16:49 -05:00
Nick Mathewson
11c044e46a
Initialize libevent in circuitmux/destroy_cell_queue test
2014-12-04 09:11:13 -05:00
Nick Mathewson
11b652acb3
Fix some 32-bit build issues in the tests
...
When comparing 64-bit types, you need to use tt_[ui]64_op().
Found by Jenkins
2014-11-28 10:06:10 -05:00
Nick Mathewson
49976fabc4
Fix a likely bug found by coverity in test_scheduler.c.
...
Andrea, do you agree with this?
This is CID 1256186
2014-11-27 23:21:46 -05:00
Nick Mathewson
a28df3fb67
Merge remote-tracking branch 'andrea/cmux_refactor_configurable_threshold'
...
Conflicts:
src/or/or.h
src/test/Makefile.nmake
2014-11-27 22:39:46 -05:00
Nick Mathewson
734ba5cb0a
Use smaller zlib objects when under memory pressure
...
We add a compression level argument to tor_zlib_new, and use it to
determine how much memory to allocate for the zlib object. We use the
existing level by default, but shift to smaller levels for small
requests when we have been over 3/4 of our memory usage in the past
half-hour.
Closes ticket 11791.
2014-11-17 11:43:50 -05:00
rl1987
0db96d023b
Adding REASON field to HS_DESC FAILED controller event.
2014-11-16 15:51:23 +02:00
Nick Mathewson
9b11dc3617
Merge remote-tracking branch 'public/bug7484'
...
Conflicts:
src/test/test_addr.c
2014-11-12 13:44:57 -05:00
Nick Mathewson
4ac5175109
Fix wide lines (from 13172)
2014-11-12 13:42:01 -05:00
Nick Mathewson
a3dafd3f58
Replace operators used as macro arguments with OP_XX macros
...
Part of fix for 13172
2014-11-12 13:28:07 -05:00
Nick Mathewson
d85270e13c
Reenhappy make check-spaces
2014-11-12 13:15:10 -05:00
Nick Mathewson
5b1971c7f3
test_checkdir.c: Perhaps this is what will make this test pass on windows?
2014-11-07 09:28:49 -05:00
Nick Mathewson
85a76cd4eb
test_checkdir.c: try to make it pass on windows
...
also fix memory-leak on failing tests.
2014-11-07 08:54:44 -05:00
Nick Mathewson
4ae729683d
Try to fix test_checkdir windows compilation more
2014-11-05 14:51:17 -05:00
Nick Mathewson
bb54d008c2
Try to fix test_checkdir windows compilation
2014-11-05 14:39:09 -05:00
Nick Mathewson
1dcc492295
chgrp the testing tempdir to ourself to clear the sticky bit
...
Closes 13678. Doesn't actually matter for older tors.
2014-11-05 14:28:34 -05:00
Nick Mathewson
8f645befba
11291: Fix warnings, add changes file, rename 'mask'.
2014-11-05 14:12:18 -05:00
Nick Mathewson
4df419a4b1
Merge remote-tracking branch 'meejah/ticket-11291-extra-utests'
...
Conflicts:
src/or/config.c
2014-11-05 14:11:47 -05:00
Nick Mathewson
fc62721b06
Fix version number parsing to allow 2- and 3-part versions.
...
Fixes bug 13661; bugfix on 0.0.8pre1.
2014-11-05 13:29:28 -05:00
Nick Mathewson
07e06b335d
Fix unused-argument warnings
2014-11-04 09:54:51 -05:00
Nick Mathewson
9619c395ac
Merge remote-tracking branch 'andrea/ticket6456'
...
Somewhat tricky conflicts:
src/or/config.c
Also, s/test_assert/tt_assert in test_config.c
2014-11-04 09:52:04 -05:00
Nick Mathewson
60c86a3b79
Merge branch 'bug13315_squashed'
...
Conflicts:
src/or/buffers.c
2014-11-04 00:48:25 -05:00
rl1987
51e2473618
Sending 'Not allowed' error message before closing the connection.
2014-11-04 00:37:24 -05:00
rl1987
0da4ddda4f
Checking if FQDN is actually IPv6 address string and handling that case.
2014-11-04 00:37:24 -05:00
rl1987
2862b769de
Validating SOCKS5 hostname more correctly.
2014-11-04 00:36:42 -05:00
rl1987
e8e45ff13e
Introducing helper function to validate IPv4 address strings.
2014-11-04 00:36:37 -05:00
rl1987
1ea9a6fd72
Introducing helper function to validate DNS name strings.
2014-11-04 00:35:43 -05:00