summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/hashicorp/memberlist/net_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/hashicorp/memberlist/net_test.go')
-rw-r--r--vendor/github.com/hashicorp/memberlist/net_test.go27
1 files changed, 27 insertions, 0 deletions
diff --git a/vendor/github.com/hashicorp/memberlist/net_test.go b/vendor/github.com/hashicorp/memberlist/net_test.go
index 80d3ebb36..860535855 100644
--- a/vendor/github.com/hashicorp/memberlist/net_test.go
+++ b/vendor/github.com/hashicorp/memberlist/net_test.go
@@ -785,3 +785,30 @@ func TestIngestPacket_CRC(t *testing.T) {
t.Fatalf("bad: %s", logs.String())
}
}
+
+func TestGossip_MismatchedKeys(t *testing.T) {
+ c1 := testConfig()
+ c2 := testConfig()
+
+ // Create two agents with different gossip keys
+ c1.SecretKey = []byte("4W6DGn2VQVqDEceOdmuRTQ==")
+ c2.SecretKey = []byte("XhX/w702/JKKK7/7OtM9Ww==")
+
+ m1, err := Create(c1)
+ if err != nil {
+ t.Fatalf("err: %s", err)
+ }
+ defer m1.Shutdown()
+
+ m2, err := Create(c2)
+ if err != nil {
+ t.Fatalf("err: %s", err)
+ }
+ defer m2.Shutdown()
+
+ // Make sure we get this error on the joining side
+ _, err = m2.Join([]string{c1.BindAddr})
+ if err == nil || !strings.Contains(err.Error(), "No installed keys could decrypt the message") {
+ t.Fatalf("bad: %s", err)
+ }
+}