diff --git a/client/internal/pqkem/message.go b/client/internal/pqkem/message.go index 341f6b5f8..fe4381636 100644 --- a/client/internal/pqkem/message.go +++ b/client/internal/pqkem/message.go @@ -82,9 +82,10 @@ func (m *AnswerMsg) Encode() ([]byte, error) { return frame(MsgAnswer, m.ExchangeID, m.KEMAnswer), nil } -// Encode serialises the confirm with its framed header. -func (m *ConfirmMsg) Encode() []byte { - return frame(MsgConfirm, m.ExchangeID, nil) +// Encode serialises the confirm with its framed header. It returns an error only +// for signature uniformity with the other messages; it never actually fails. +func (m *ConfirmMsg) Encode() ([]byte, error) { + return frame(MsgConfirm, m.ExchangeID, nil), nil } // Decode parses a framed message into one of *OfferMsg / *AnswerMsg / *ConfirmMsg. diff --git a/client/internal/pqkem/message_test.go b/client/internal/pqkem/message_test.go index a51135ea0..1845bc4d9 100644 --- a/client/internal/pqkem/message_test.go +++ b/client/internal/pqkem/message_test.go @@ -29,7 +29,8 @@ func TestMessageRoundTrip(t *testing.T) { require.Equal(t, MsgAnswer, typ) require.Equal(t, answer, decoded.(*AnswerMsg).KEMAnswer) - confBytes := (&ConfirmMsg{ExchangeID: id}).Encode() + confBytes, err := (&ConfirmMsg{ExchangeID: id}).Encode() + require.NoError(t, err) typ, decoded, err = Decode(confBytes) require.NoError(t, err) require.Equal(t, MsgConfirm, typ)