From dc28c3d354e09f8611f23bd2211e647b304d42f4 Mon Sep 17 00:00:00 2001 From: harshabose Date: Thu, 1 May 2025 01:48:39 +0530 Subject: [PATCH] added NewBaseMessage function in message.go --- pkg/interceptor/message.go | 14 +++++++------- .../encrypt/keyexchange/curve25519messages.go | 14 ++++++++++++++ 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/pkg/interceptor/message.go b/pkg/interceptor/message.go index eabe1c7..b0af086 100644 --- a/pkg/interceptor/message.go +++ b/pkg/interceptor/message.go @@ -56,14 +56,14 @@ type BaseMessage struct { } // NewBaseMessage creates a properly initialized interceptor BaseMessage for the key exchange module -func NewBaseMessage(protocol message.Protocol, sender message.Sender, receiver message.Receiver) BaseMessage { - return BaseMessage{ - BaseMessage: message.BaseMessage{ - CurrentProtocol: protocol, - CurrentHeader: message.NewV1Header(sender, receiver), - NextProtocol: message.NoneProtocol, - }, +func NewBaseMessage(nextProtocol message.Protocol, nextPayload message.Message, msg Message) (BaseMessage, error) { + bmsg, err := message.NewBaseMessage(nextProtocol, nextPayload, msg) + if err != nil { + return BaseMessage{}, nil } + return BaseMessage{ + BaseMessage: bmsg, + }, nil } // WriteProcess handles interceptor processing for outgoing messages. diff --git a/pkg/middleware/encrypt/keyexchange/curve25519messages.go b/pkg/middleware/encrypt/keyexchange/curve25519messages.go index 9f89af5..ade186a 100644 --- a/pkg/middleware/encrypt/keyexchange/curve25519messages.go +++ b/pkg/middleware/encrypt/keyexchange/curve25519messages.go @@ -8,6 +8,7 @@ import ( "golang.org/x/crypto/ed25519" "github.com/harshabose/socket-comm/pkg/interceptor" + "github.com/harshabose/socket-comm/pkg/message" "github.com/harshabose/socket-comm/pkg/middleware/encrypt/encryptionerr" "github.com/harshabose/socket-comm/pkg/middleware/encrypt/interfaces" "github.com/harshabose/socket-comm/pkg/middleware/encrypt/types" @@ -147,6 +148,19 @@ type Done struct { Timestamp time.Time `json:"timestamp"` } +func NewDone() (*Done, error) { + msg := &Done{ + Timestamp: time.Now(), + } + bmsg, err := interceptor.NewBaseMessage(message.NoneProtocol, nil, msg) + if err != nil { + return nil, err + } + msg.BaseMessage = bmsg + + return msg, nil +} + func (m *Done) WriteProcess(_ interceptor.Interceptor, _ interceptor.Connection) error { return nil }