From 3888d20e26daf57978066ca520ef76b510a0c21d Mon Sep 17 00:00:00 2001 From: Malte Bauch <malte.bauch@h-da.de> Date: Wed, 23 Oct 2024 10:49:40 +0000 Subject: [PATCH] Resolve "Receiver map is not updated correctly for key exchange" See merge request danet/quant!227 --- goKMS/kms/akmsInterface/server/server.go | 3 +++ goKMS/kms/kms.go | 3 +++ 2 files changed, 6 insertions(+) diff --git a/goKMS/kms/akmsInterface/server/server.go b/goKMS/kms/akmsInterface/server/server.go index c80409af..3ba4452c 100644 --- a/goKMS/kms/akmsInterface/server/server.go +++ b/goKMS/kms/akmsInterface/server/server.go @@ -97,6 +97,9 @@ func ksaReqHandler(eventBus *event.EventBus, receiver *receiver.Receiver, genera select { case <-receiverChan: + if err := receiver.RemoveReceiver(pathId); err != nil { + logrus.Errorf("Failed removing receiver for pathId: %s ; err: %v", pathId, err) + } case <-time.After(20 * time.Second): if err := receiver.RemoveReceiver(pathId); err != nil { logrus.Errorf("Failed removing receiver for pathId: %s ; err: %v", pathId, err) diff --git a/goKMS/kms/kms.go b/goKMS/kms/kms.go index 702573c8..6f80d75e 100644 --- a/goKMS/kms/kms.go +++ b/goKMS/kms/kms.go @@ -712,6 +712,9 @@ func (kms *KMS) exchangeKeyAfterETSI14GetKeyRequest(receivingCKMSID uuid.UUID, n select { case <-receiverChan: + if err := kms.receiver.RemoveReceiver(pathID); err != nil { + log.Errorf("Failed removing receiver for pathId: %s ; err: %v", pathID, err) + } case <-time.After(20 * time.Second): if err := kms.receiver.RemoveReceiver(pathID); err != nil { log.Errorf("Failed removing receiver for pathId: %s ; err: %v", pathID, err) -- GitLab