diff --git a/server/.golangci.yml b/server/.golangci.yml index f4ef50f35f..04e01aac88 100644 --- a/server/.golangci.yml +++ b/server/.golangci.yml @@ -118,7 +118,6 @@ issues: channels/app/platform/web_hub.go|\ channels/app/platform/web_hub_test.go|\ channels/app/plugin_install.go|\ - channels/app/plugin_signature.go|\ channels/app/plugin_signature_test.go|\ channels/app/plugin_test.go|\ channels/app/post.go|\ diff --git a/server/channels/app/plugin_signature.go b/server/channels/app/plugin_signature.go index 9c1549fca6..bb69d52b5b 100644 --- a/server/channels/app/plugin_signature.go +++ b/server/channels/app/plugin_signature.go @@ -90,8 +90,14 @@ func (ch *Channels) verifyPlugin(plugin, signature io.ReadSeeker) *model.AppErro continue } publicKey := bytes.NewReader(pkBytes) - plugin.Seek(0, 0) - signature.Seek(0, 0) + if _, err := plugin.Seek(0, io.SeekStart); err != nil { + mlog.Warn("Unable to seek in public key reader for ", mlog.String("filename", pk)) + continue + } + if _, err := signature.Seek(0, io.SeekStart); err != nil { + mlog.Warn("Unable to seek in signature for public key ", mlog.String("filename", pk)) + continue + } if err := verifySignature(publicKey, plugin, signature); err == nil { return nil }