Skip to content
Snippets Groups Projects
Commit 72915999 authored by Jonah Husson's avatar Jonah Husson
Browse files

Merge branch 'hotfix/bindings-timeout' into 'release'

Increase bindings timeout in cmix params to 45 seconds

See merge request !249
parents 27ba72de bd228e88
Branches
Tags
2 merge requests!510Release,!249Increase bindings timeout in cmix params to 45 seconds
......@@ -38,5 +38,8 @@ func (p *partnerCallbacks) DeletePartnerCallback(partnerId *id.ID) {
// getPartnerCallback returns the Callbacks for the given partnerId
func (p *partnerCallbacks) getPartnerCallback(partnerId *id.ID) Callbacks {
p.RLock()
defer p.RUnlock()
return p.callbacks[*partnerId]
}
......@@ -113,13 +113,11 @@ func (rcs *receivedConfirmService) Process(msg format.Message,
Facts: make([]fact.Fact, 0),
}
authState.partnerCallbacks.RLock()
if cb := authState.partnerCallbacks.getPartnerCallback(c.ID); cb != nil {
cb.Confirm(c, receptionID, round)
} else {
authState.callbacks.Confirm(c, receptionID, round)
}
authState.partnerCallbacks.RUnlock()
}
func (rcs *receivedConfirmService) String() string {
......
......@@ -130,21 +130,17 @@ func (rrs *receivedRequestService) Process(message format.Message,
} else if authState.params.ReplayRequests {
//if we did not already accept, auto replay the request
if rrs.reset {
authState.partnerCallbacks.RLock()
if cb := authState.partnerCallbacks.getPartnerCallback(c.ID); cb != nil {
cb.Reset(c, receptionID, round)
} else {
authState.callbacks.Reset(c, receptionID, round)
}
authState.partnerCallbacks.RUnlock()
} else {
authState.partnerCallbacks.RLock()
if cb := authState.partnerCallbacks.getPartnerCallback(c.ID); cb != nil {
cb.Request(c, receptionID, round)
} else {
authState.callbacks.Request(c, receptionID, round)
}
authState.partnerCallbacks.RUnlock()
}
}
//if not confirm, and params.replay requests is true, we need to replay
......@@ -254,8 +250,6 @@ func (rrs *receivedRequestService) Process(message format.Message,
}
// auto-confirm if we should
authState.partnerCallbacks.RLock()
defer authState.partnerCallbacks.RUnlock()
if autoConfirm || reset {
_, _ = authState.confirm(c, authState.params.getConfirmTag(reset))
//handle callbacks
......
......@@ -115,13 +115,11 @@ func (s *state) CallAllReceivedRequests() {
rr := rrList[i]
eph := receptionID.BuildIdentityFromRound(rr.GetContact().ID,
rr.GetRound())
s.partnerCallbacks.RLock()
if cb := s.partnerCallbacks.getPartnerCallback(rr.GetContact().ID); cb != nil {
cb.Request(rr.GetContact(), eph, rr.GetRound())
} else {
s.callbacks.Request(rr.GetContact(), eph, rr.GetRound())
}
s.partnerCallbacks.RUnlock()
}
}
......
......@@ -6,6 +6,7 @@ import (
"gitlab.com/elixxir/client/connect"
e2e2 "gitlab.com/elixxir/client/e2e"
"gitlab.com/elixxir/crypto/contact"
"time"
)
// connectionTrackerSingleton is used to track connections so they can be
......@@ -44,7 +45,9 @@ func (c *Cmix) Connect(e2eId int, recipientContact []byte) (
return nil, err
}
connection, err := connect.Connect(cont, e2eClient.api, connect.GetDefaultParams())
p := connect.GetDefaultParams()
p.Timeout = 45 * time.Second
connection, err := connect.Connect(cont, e2eClient.api, p)
if err != nil {
return nil, err
}
......
......@@ -62,6 +62,7 @@ func LoginE2e(cmixId int, callbacks AuthCallbacks, identity []byte) (*E2e, error
if err != nil {
return nil, err
}
return e2eTrackerSingleton.make(newE2e), nil
}
......
......@@ -114,7 +114,6 @@ func GetParameters(params string) (Params, error) {
// partner.Manager is confirmed.
func Connect(recipient contact.Contact, e2eClient *xxdk.E2e,
p Params) (Connection, error) {
// Build callback for E2E negotiation
signalChannel := make(chan Connection, 1)
cb := func(connection Connection) {
......
......@@ -178,8 +178,6 @@ func LoginWithProtoClient(storageDir string, password []byte,
return nil, err
}
c.network.AddIdentity(c.GetUser().ReceptionID, time.Time{}, true)
err = c.registerFollower()
if err != nil {
return nil, err
......@@ -214,6 +212,8 @@ func login(client *Cmix, callbacks AuthCallbacks,
e2eIdentity: identity,
}
client.network.AddIdentity(identity.ID, time.Time{}, true)
//initialize the e2e storage
err = e2e.Init(kv, identity.ID, identity.DHKeyPrivate, e2eGrp,
rekey.GetDefaultEphemeralParams())
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment