Skip to content

Commit 363c080

Browse files
authored
fix(wasmer): error logs for signature verification (#2752)
1 parent 48326d6 commit 363c080

File tree

1 file changed

+25
-6
lines changed

1 file changed

+25
-6
lines changed

lib/runtime/wasmer/imports.go

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,10 @@ import (
125125
wasm "github.com/wasmerio/go-ext-wasm/wasmer"
126126
)
127127

128+
const (
129+
validateSignatureFail = "failed to validate signature"
130+
)
131+
128132
//export ext_logging_log_version_1
129133
func ext_logging_log_version_1(context unsafe.Pointer, level C.int32_t, targetData, msgData C.int64_t) {
130134
logger.Trace("executing...")
@@ -487,8 +491,13 @@ func ext_crypto_ecdsa_verify_version_2(context unsafe.Pointer, sig C.int32_t, ms
487491
return C.int32_t(1)
488492
}
489493

490-
if ok, err := pub.Verify(hash[:], signature); err != nil || !ok {
491-
logger.Errorf("failed to validate signature: %s", err)
494+
ok, err := pub.Verify(hash[:], signature)
495+
if err != nil || !ok {
496+
message := validateSignatureFail
497+
if err != nil {
498+
message += ": " + err.Error()
499+
}
500+
logger.Errorf(message)
492501
return C.int32_t(0)
493502
}
494503

@@ -714,8 +723,13 @@ func ext_crypto_sr25519_verify_version_1(context unsafe.Pointer, sig C.int32_t,
714723
return 1
715724
}
716725

717-
if ok, err := pub.VerifyDeprecated(message, signature); err != nil || !ok {
718-
logger.Debugf("failed to validate signature: %s", err)
726+
ok, err := pub.VerifyDeprecated(message, signature)
727+
if err != nil || !ok {
728+
message := validateSignatureFail
729+
if err != nil {
730+
message += ": " + err.Error()
731+
}
732+
logger.Debugf(message)
719733
// this fails at block 3876, which seems to be expected, based on discussions
720734
return 1
721735
}
@@ -757,8 +771,13 @@ func ext_crypto_sr25519_verify_version_2(context unsafe.Pointer, sig C.int32_t,
757771
return 1
758772
}
759773

760-
if ok, err := pub.Verify(message, signature); err != nil || !ok {
761-
logger.Errorf("failed to validate signature: %s", err)
774+
ok, err := pub.Verify(message, signature)
775+
if err != nil || !ok {
776+
message := validateSignatureFail
777+
if err != nil {
778+
message += ": " + err.Error()
779+
}
780+
logger.Errorf(message)
762781
return 0
763782
}
764783

0 commit comments

Comments
 (0)