teor
2663bca392
Merge branch 'bug30958_041' into bug30958_master
2019-06-25 12:29:28 +10:00
teor
d9f49e9bc1
Merge branch 'bug30958_040' into bug30958_041
2019-06-24 21:31:27 +10:00
teor
e350dfc085
Merge branch 'bug30958_035' into bug30958_040
2019-06-24 21:31:10 +10:00
teor
b7dda83cfa
Merge branch 'bug30958_029' into bug30958_035
2019-06-24 21:30:47 +10:00
teor
45be44ed9c
stats: Split extrainfo_dump_to_string() into smaller functions.
...
Closes ticket 30956.
2019-06-24 20:47:44 +10:00
teor
8356cc5b51
stats: Always publish pluggable transports in extra info documents
...
Always publish bridge pluggable transport information in the extra info
descriptor, even if ExtraInfoStatistics is 0. This information is
needed by BridgeDB.
Fixes bug 30956; bugfix on 0.4.1.1-alpha.
2019-06-24 19:44:24 +10:00
Nick Mathewson
60213a3621
Run "make autostyle."
2019-06-05 09:33:35 -04:00
Nick Mathewson
295feeb093
Replace all remaining tor_mem_is_zero() with fast_mem_is_zero()
2019-04-30 14:49:05 -04:00
teor
231036a110
Merge branch 'maint-0.3.4' into maint-0.3.5
2019-04-19 12:00:41 +10:00
teor
ce5e38642d
crypto_format: Remove the return value from ed25519_signature_to_base64()
...
Also remove all checks for the return value, which were redundant anyway,
because the function never failed.
Part of 29660.
2019-04-05 15:17:19 +10:00
teor
7d513a5d55
crypto_format: Remove the return values from digest256_to_base64()
...
... and ed25519_public_to_base64(). Also remove all checks for the return
values, which were redundant anyway, because the functions never failed.
Part of 29960.
2019-04-05 15:17:19 +10:00
George Kadianakis
989b6325d6
Merge branch 'tor-github/pr/842'
2019-03-26 16:41:07 +02:00
Nick Mathewson
a49f506e05
Split all controller events code into a new control_events.c
...
Also, split the formatting code shared by control.c and
control_events.c into controller_fmt.c.
2019-03-25 12:11:59 -04:00
David Goulet
a5dd41b9af
Merge branch 'tor-github/pr/638' into maint-0.4.0
2019-02-26 11:24:43 -05:00
teor
8e5df40018
test_dir: Test rsa + ed25519 extrainfo creation and parsing
...
Also fix a missing mock in rsa-only parsing.
2019-02-19 21:44:41 +10:00
teor
53b49d1a35
test_dir: Unit tests for RSA-only router and extrainfo descriptor creation
...
Tests 29017 and 29018.
2019-02-19 21:44:40 +10:00
teor
a9f852a0f6
router: Document the additional config and state used to dump descriptors
...
Also, explicitly state when routerinfos and extra-infos are signed.
And tidy up some other comments.
Preparation for testing 29017 and 20918.
2019-02-19 21:43:07 +10:00
teor
a1f8558628
router: Move extrainfo signing into its own function
...
This refactoring improves the structure of router_build_fresh_descriptor().
Preparation for testing 29017 and 20918.
2019-02-19 21:41:43 +10:00
teor
9cab988696
router: eliminate router_update_info_send_unencrypted()
...
Remove router_update_info_send_unencrypted(), and move its code into the
relevant functions.
Then, re-use an options pointer.
Preparation for testing 29017 and 20918.
2019-02-19 21:41:43 +10:00
teor
af0a43be2c
router: eliminate tiny router_build_fresh_descriptor() static functions
...
Remove some tiny static functions called by router_build_fresh_descriptor(),
and move their code into more relevant functions.
Then, give router_update_{router,extra}info_descriptor_body identical layouts.
Preparation for testing 29017 and 20918.
2019-02-19 21:41:43 +10:00
teor
a65c101973
router: check for NULL in router_build_fresh_descriptor() static functions
...
Make sure that these static functions aren't passed NULL.
If they are, log a BUG() warning, and return an error.
Preparation for testing 29017 and 20918.
2019-02-19 21:41:43 +10:00
teor
f19b64dce9
router: refactor router_build_fresh_descriptor() static function interfaces
...
Tidy the arguments and return values of these functions, and clean up their
memory management.
Preparation for testing 29017 and 20918.
2019-02-19 21:41:36 +10:00
teor
6c5a506cdb
router: split router_build_fresh_descriptor() into static functions
...
Split the body of router_build_fresh_descriptor() into static functions,
by inserting function prologues and epilogues between existing sections.
Write a new body for router_build_fresh_descriptor() that calls the new
static functions.
Initial refactor with no changes to the body of the old
router_build_fresh_descriptor(), except for the split.
Preparation for testing 29017 and 20918.
2019-02-19 19:05:43 +10:00
teor
a798bd40fb
stats: Stop reporting statistics when ExtraInfoStatistics is 0
...
When ExtraInfoStatistics is 0, stop including bandwidth usage statistics,
GeoIPFile hashes, ServerTransportPlugin lines, and bridge statistics
by country in extra-info documents.
Fixes bug 29018; bugfix on 0.2.4.1-alpha (and earlier versions).
2019-02-19 19:01:44 +10:00
teor
361738c964
Merge branch 'bug29017-033' into bug29017-master-merge
2019-02-19 18:59:16 +10:00
Nick Mathewson
2f683465d4
Bump copyright date to 2019
2019-01-16 12:33:22 -05:00
Nick Mathewson
efe55b8898
Bump copyright date to 2019.
2019-01-16 12:32:32 -05:00
Nick Mathewson
1eb3719a62
Merge remote-tracking branch 'public/prop298'
2018-12-05 09:43:03 -05:00
Nick Mathewson
a2f81b644b
Write tests for mark_my_descriptor_dirty_if_too_old()
2018-12-05 09:24:45 -05:00
Nick Mathewson
881b85cf32
Treat the StaleDesc flag as making our descriptor dirty.
...
Relay side of prop293.
2018-11-25 10:12:20 -05:00
Nick Mathewson
05dee063c8
Emit router families in canonical form
...
This patch has routers use the same canonicalization logic as
authorities when encoding their family lists. Additionally, they
now warn if any router in their list is given by nickname, since
that's error-prone.
This patch also adds some long-overdue tests for family formatting.
2018-11-24 16:35:58 -05:00
Nick Mathewson
f82eb6269f
Extract get_declared_family() into its own function.
...
This will help as we refactor it.
2018-11-24 12:11:40 -05:00
Nick Mathewson
6e7ff8cba0
Move the code that knows our tor version into a lowest-level lib
2018-11-05 09:22:02 -05:00
Nick Mathewson
988d4903a3
Merge branch 'networkstatus_mmap' into networkstatus_mmap_merge
2018-10-31 09:04:12 -04:00
Nick Mathewson
430ca38f70
Split the authority-cert and signature/hash code from routerparse
2018-10-01 00:09:00 -05:00
Nick Mathewson
6785aa4010
Move routerparse and parsecommon to their own module.
2018-10-01 00:04:06 -05:00
Nick Mathewson
c8f2a6d2fe
Extract the non-stats part of geoip into a new src/lib/geoip.
2018-09-27 10:26:01 -04:00
Nick Mathewson
f403af2207
Split geoip from geoip-related stats.
...
This commit just moves the code to two separate files. The geoip
code still has a few needless dependencies on core/* and features/*.
2018-09-27 09:36:52 -04:00
Nick Mathewson
5fe05de4fe
Remove extra includes from router.c
2018-09-25 18:33:13 -04:00
Nick Mathewson
4f0bc0c8f5
Revise things that had included router.h before
...
Make them only include the headers that they needed, and sort their
headers while we're at it.
2018-09-25 17:57:58 -04:00
Nick Mathewson
3ff58e47d2
Move the "is the network disabled?" functions out of router.c
...
Since this is completely core functionality, I'm putting it in
core/mainloop, even though it depends on feature/hibernate. We'll
have to sort that out in the future.
2018-09-25 17:22:14 -04:00
Nick Mathewson
b8df2318e9
Move routerinfo_t functions out of router.c
...
(It turns out that some of the functions in router.h didn't even
exist any more, so I just got to delete their declarations completely.)
2018-09-25 16:48:00 -04:00
Nick Mathewson
efa978124f
Extract nickname-checking functions from router.c
2018-09-25 16:22:11 -04:00
Nick Mathewson
5c86f3c297
Move the various _describe() functions out of router.c
...
Note that I haven't separated the headers yet (there's still an
2018-09-25 16:13:47 -04:00
Nick Mathewson
fcd0f76134
Extract all the "am I a server" functions from router.c
2018-09-25 16:00:50 -04:00
Nick Mathewson
70539e3d5e
Move all authdir_mode_*() functions into authmode.h
2018-09-25 15:39:24 -04:00
Nick Mathewson
9385b7ec5f
Rename dirauth/mode.h to dirauth/authmode.h
...
This is preparation for having a routermode.h as well
2018-09-25 15:18:21 -04:00
Nick Mathewson
8a350e088b
Move self-test functionality into its own file.
2018-09-25 15:14:57 -04:00
Nick Mathewson
934859cf80
Move key-loading and crosscert-checking out of feature/relay
...
This is also used by onion services, so it needs to go in another
module.
2018-09-25 15:14:57 -04:00
Nick Mathewson
194acfb51d
Split directory.c code into several modules
...
Parts of this C file naturally belong in dircache, dirclient, and
dircommon: so, move them there.
2018-09-21 12:57:22 -04:00