Ian Jackson
8d4552de8b
hsdir: Remove a done TODO - this *is* now a TiSlice
2023-02-09 12:56:18 +00:00
Ian Jackson
cd0c38ae6c
tor-netdir: Provide Netdir::md_by_idx
...
We'll need this shortly.
2023-02-09 12:56:18 +00:00
Ian Jackson
6acf9cf5e8
tor-netdir: Store previous netdir (if required by features)
2023-02-09 12:56:18 +00:00
Ian Jackson
f69d7f96ac
tor-netdoc: Change fill_from_previous_netdir
...
* Remove the return value, which was not used anywhere.
Also remove the code to calculate the return value.
* Take an Arc<NetDir> rather than a reference. We are going to want
this for HS support. This has no overall effect on the lifetime of
the4 Arc, which was owned at the one call site and then imediately
dropped.
* Change the documentation to explain what the function's role is in
the netdir API, rather than the fiddly details of what it actually
does internally. Relegate the latter to a code comment.
(When we have HS, this will do more, or, at least, make further
arrangements.)
2023-02-09 12:56:18 +00:00
Ian Jackson
81d4e6971b
tor-netdoc: Discuss that relays are ordered by rsa id in Consensus
2023-02-09 12:56:18 +00:00
Ian Jackson
1e3d20bdba
tor-netdir: Use typed-index-collections for router index (fix hsdir)
...
This was omitted in !1004 . (Because this code isn't actually wired up
yet, it typechecked anyway. But we need to fix it.)
2023-02-09 12:56:18 +00:00
Ian Jackson
4626ccfcaa
hs time handling: Make TimePeriod contain length as IntegerMinutes
...
Locally, the only functional effect is that now we refuse to handle
non-whole-number-of-minutes lengths - but since the consensus
parameter can't represent those, there's no overall functional change.
2023-02-09 12:56:18 +00:00
Ian Jackson
bb2ab7c2a3
tor-units: Fix IntegerMinutes accessor (omg)
2023-02-09 12:56:18 +00:00
Nick Mathewson
5851ccb566
Merge branch 'key_renaming' into 'main'
...
Rename hs-related identifiers to mirror those in the spec
Closes #746
See merge request tpo/core/arti!1011
2023-02-09 12:54:32 +00:00
Nick Mathewson
0a80c468df
hsdesc: Use an IntegerMinutes<u16> to hold lifetime.
2023-02-08 13:33:07 -05:00
Nick Mathewson
39f5f90f3f
netdoc: Fix most "TODO HS rename" comments
2023-02-08 13:23:21 -05:00
Nick Mathewson
8c3bd3626b
netdoc::hsdesc: Distinguish layer from document.
2023-02-08 13:16:44 -05:00
Nick Mathewson
966ddeb092
netdoc::hsdesc: Rename "layer" modules.
2023-02-08 13:08:57 -05:00
Nick Mathewson
964ca511c4
netdoc::hsdesc: Excise reference to "password" authentication
...
As far as we can tell, this never existed.
2023-02-08 12:57:52 -05:00
Nick Mathewson
cce56c793b
hscrypto,netdoc: Add and use a type for KP_hss_desc_enc.
2023-02-08 12:50:34 -05:00
Nick Mathewson
99ec1c9818
tor-hscrypto: Rename key types to correspond to new spec names.
2023-02-08 12:27:36 -05:00
Nick Mathewson
d1ee5807ed
Rename DescriptorCookie to DescEncNonce
...
(I think it's okay to omit the Hs here, since this type is not
visible outside the hsdesc parsing code. I'll rename if others
disagree.)
2023-02-08 12:10:24 -05:00
Nick Mathewson
39e1116ece
Renaming cleanup for and around now-renamed "KP_hs_desc_ephem".
2023-02-08 12:06:42 -05:00
Nick Mathewson
18e8ac7cb6
Rename key identifiers that have changed in the spec
...
Generated with perl:
s/K([PS])_hs_intro_tid/K$1_hs_ipt_sid/g;
s/K([PS])_onion_ntor/K$1_ntor/g;
s/K([PS])_hs_intro_ntor/K$1_hss_ntor/g;
s/K([PS])_hs_desc_ephem/K$1_hss_desc_enc/g;
2023-02-08 11:57:51 -05:00
Nick Mathewson
9046ef90d0
Merge branch 'typos' into 'main'
...
Fix typo
See merge request tpo/core/arti!1010
2023-02-07 22:36:49 +00:00
Dimitris Apostolou
d1eeffbf42
Fix typo
2023-02-08 00:04:25 +02:00
Nick Mathewson
447312e2fe
Merge branch 'ticket_525' into 'main'
...
Create a macro to generate restricted variations on RelayMsg, ChanMsg.
Closes #525
See merge request tpo/core/arti!1008
2023-02-07 21:37:59 +00:00
Nick Mathewson
7feda22444
tor-cell: documentation cleanups related to restricted_msg
2023-02-07 16:03:14 -05:00
Nick Mathewson
77cccdfd6e
tor-cell: correct handling of optional msg types.
...
We need to make sure any `#[cfg(feature=...)]` attributes are
applied not only to our variant declarations, but also to the
branches in the match statements that deal with them.
2023-02-07 16:03:14 -05:00
Nick Mathewson
d63d7926bd
tor-cell: Rename RelayMsg and RelayCell-related types.
...
Thanks to rust-analyzer for making this simple.
2023-02-07 16:03:14 -05:00
Nick Mathewson
d99c130679
tor-cell: Rename ChanMsg and ChanCell-related types.
2023-02-07 16:03:14 -05:00
Nick Mathewson
c529bb9c30
tor-cell: Remove RelayMsg methods that are duplicated in RelayMsgClass.
2023-02-07 16:03:14 -05:00
Nick Mathewson
3c7aea723b
tor-cell: Remove ChanMsg methods that are duplicated in ChanMsgClass.
2023-02-07 16:03:14 -05:00
Nick Mathewson
71445f7ace
tor-cell: Use macro to generate ChanMsg too.
2023-02-07 16:03:14 -05:00
Nick Mathewson
706a39a870
tor-cell: Use macro to define RelayMsg type too.
2023-02-07 16:03:14 -05:00
Nick Mathewson
f5f8402d50
tor-cell: Macro to generate restricted RelayMsg and ChanMsg.
...
This is the main implementation part of #525 .
2023-02-07 16:03:14 -05:00
Nick Mathewson
ffb443709b
tor-cell: Change all variants of RelayMsg to have a body.
...
Previously, there were some unit variants, but that makes things
quite awkward for #525 .
2023-02-07 16:03:14 -05:00
Nick Mathewson
afd5232430
tor-cell: Make Body and MsgClass traits more uniform.
...
Doing this will make it much easier to implement a macro that
generates restricted instances of the Msg types (for #525 ).
The Body change is a breaking change. I don't think anybody else
implements Body, but in theory they could.
2023-02-07 16:03:14 -05:00
Nick Mathewson
e099cc7ef8
tor-cell: Generic "Restricted{Relay,Chan}Cell" types.
...
These are generalizations of RelayCell and ChanCell respectively,
that allow using an arbitrary message type in place of the fully
general RelayMsg and ChanMsg types. Doing this is a prerequisite
for usefully implementing arti#525.
2023-02-07 16:03:14 -05:00
Nick Mathewson
3cc7ac45e3
Merge branch 'update_20220207' into 'main'
...
Bump openssl-src to 1.1.1t, and make main CI pass.
See merge request tpo/core/arti!1009
2023-02-07 20:59:19 +00:00
Nick Mathewson
f537a7ad48
Update hsdesc parser code to new sectionrules::builder code.
2023-02-07 15:28:10 -05:00
Nick Mathewson
698b997228
Bump openssl-src to 1.1.1t.
2023-02-07 15:16:44 -05:00
eta
85ca3e41b9
Merge branch 'shadykaty-error-hint-v2' into 'main'
...
Create and use an ErrorHint type to report how to fix a problem.
Closes #579 and #578
See merge request tpo/core/arti!994
2023-02-07 16:32:10 +00:00
eta
87d3deb3d3
Merge branch 'env-check' into 'main'
...
maint: add shebang
See merge request tpo/core/arti!990
2023-02-07 16:19:34 +00:00
eta
c7c4fff66e
Merge branch 'authcert_bug' into 'main'
...
Fix AuthCert behavior on unrecognized tokens, and prevent bug from recurring elsewhere.
Closes #752
See merge request tpo/core/arti!1006
2023-02-07 16:06:20 +00:00
Nick Mathewson
ba85d99766
Merge branch 'parse_hsdesc' into 'main'
...
Onion service descriptor parsing and decoding, first cut.
See merge request tpo/core/arti!999
2023-02-07 14:30:50 +00:00
Nick Mathewson
a1c36b2087
netdoc: Add a comment about renaming layer to document.
2023-02-07 09:02:15 -05:00
Nick Mathewson
257aaf9e5b
netdoc::hsdesc: rename Passwd to Password.
2023-02-07 09:02:15 -05:00
Nick Mathewson
2ba28aa289
netdoc: Rename/comment objects from hsdesc.
2023-02-07 09:02:15 -05:00
Nick Mathewson
d10ccf0dc5
netdoc: Rename/comment objects from inner_layer.
2023-02-07 09:02:15 -05:00
Nick Mathewson
1cdd36f511
netdoc: Rename/comment objects from middle_layer.
2023-02-07 09:02:15 -05:00
Nick Mathewson
1a59005ae0
netdoc: Rename/comment objects from desc_enc
2023-02-07 09:02:15 -05:00
Nick Mathewson
7701e02aad
netdoc: Renaming and comments in outer_layer.
2023-02-07 09:02:15 -05:00
Nick Mathewson
68d2ccf5fe
netdoc: Use Itertools::exactly_once in hsdesc parsing
2023-02-07 09:02:15 -05:00
Nick Mathewson
3d53a30c94
netdoc: Remove useless should_be_exhausted calls.
2023-02-07 09:02:15 -05:00