New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
exchange signed routing records in identify #747
Merged
Merged
Changes from 43 commits
Commits
Show all changes
46 commits
Select commit
Hold shift + click to select a range
94439e6
wip - exchange signed routing records in identify
yusefnapora cfd7149
point -peerstore dep at PR branch
yusefnapora daaef63
fix error handling
yusefnapora 2db11a5
test certified addr exchange during identify
yusefnapora c999bd0
intellij was supposed to run go fmt for me. i feel betrayed
yusefnapora b632eba
add option to disable signed addrs for testing
yusefnapora 8948610
more explicit name for option to disable signed addrs
yusefnapora c97dd74
add routingStateManager
yusefnapora de97dd1
use event bus to trigger identify/push
yusefnapora 2b0a74e
update to reflect name changes in -core
yusefnapora c2309af
update to track changes from -core PR
yusefnapora 3f7951d
only generate initial peer record if we have addrs
yusefnapora 71187c5
update PR branch dependencies
yusefnapora baf71df
add test for addr change event production
yusefnapora f86b996
rename option (RoutingState -> PeerRecord)
yusefnapora 5fc5ead
change NewPeerRecordManager to not accept Host
yusefnapora c86f6e3
tests for peerRecordManager behavior
yusefnapora ad52da5
fix racy test
yusefnapora 63c99a2
include local addrs in peer records by defaul
yusefnapora ea966e2
track peer record API changes, update PR deps
yusefnapora 64f1353
name changes + mutex around latest peer record
yusefnapora 6ecbfea
doc comments
yusefnapora 1f922f0
remove option to filter local addrs from peer rec
yusefnapora 58fe062
naming
yusefnapora c019ac1
define new protocol versions for id & id/push
yusefnapora 1da3bd5
update -core dependency
yusefnapora 8d316c3
use struct as map key instead of stringifying
yusefnapora ba8f960
simplify protoSupportsPeerRecords
yusefnapora db2625b
add nil check before emitting peer record event
yusefnapora 839c8d2
regen with correct gogoproto package
yusefnapora aff832d
import grouping
yusefnapora 140feb8
make peerRecordManager stateless
yusefnapora c775624
Merge origin/master into feat/identify-signed-addrs
yusefnapora 0808676
certified addrs don't replace existing anymore
yusefnapora 65c2cf1
move peerRecordManager from IDService to BasicHost
yusefnapora 4bfae9d
order imports
aarshkshah1992 a45bb3f
signal addr changes
aarshkshah1992 6fa7285
Merge branch 'master' into feat/identify-signed-addrs
aarshkshah1992 4269886
get it working
aarshkshah1992 ffef2df
skip test local addr filtering
aarshkshah1992 c351c42
take signed records to completion
aarshkshah1992 d740574
change ticker time
aarshkshah1992 4474645
changes as per first round of review
aarshkshah1992 15310dc
changes as per review
aarshkshah1992 3b2ae0a
merged master changes
aarshkshah1992 8c60995
changes as per review
aarshkshah1992 File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure if this should be stateful. Are we doing this to get around the fact that we don't have some form of
GetPeerRecord()
method as described in #747 (comment)? If so, we should just add that method.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Stebalien We have a
GetPeerRecord(p peer.ID)
on the peerstore now.However, calling that when you get a
EvtLocalAddressChanged
event could be racy as the address you see on the event could be different fro the signed record you get from the peerstore.This avoids that race.