Fix RPC requests with unknown payloads crashing kaspad (#1203)

* [NOD-1596] Return an error on an unknown field.

* [NOD-1596] Don't use unknownFields to check whether a message is invalid.
This commit is contained in:
stasatdaglabs 2020-12-24 15:17:34 +02:00 committed by GitHub
parent a0b93e1230
commit 7cbda3b018
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -11,7 +11,11 @@ type converter interface {
// ToAppMessage converts a KaspadMessage to its appmessage.Message representation
func (x *KaspadMessage) ToAppMessage() (appmessage.Message, error) {
appMessage, err := x.Payload.(converter).toAppMessage()
converter, ok := x.Payload.(converter)
if !ok {
return nil, errors.Errorf("received invalid message")
}
appMessage, err := converter.toAppMessage()
if err != nil {
return nil, err
}