From 1ade7c837d4fc357762aaadd3467da1c1a1c2671 Mon Sep 17 00:00:00 2001 From: Malte Bauch <malte.bauch@h-da.de> Date: Thu, 17 Oct 2024 12:23:34 +0200 Subject: [PATCH] Remove receiver channel after a successful key exchange --- 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