core: move NotaryVerificationPrice to a separate package
It is needed to avoid `native` dependency in RPC client.
This commit is contained in:
parent
681bd89cc7
commit
1e649bc9a0
4 changed files with 10 additions and 7 deletions
|
@ -21,6 +21,7 @@ import (
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/interop/interopnames"
|
"github.com/nspcc-dev/neo-go/pkg/core/interop/interopnames"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/mempool"
|
"github.com/nspcc-dev/neo-go/pkg/core/mempool"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/native"
|
"github.com/nspcc-dev/neo-go/pkg/core/native"
|
||||||
|
"github.com/nspcc-dev/neo-go/pkg/core/native/nativeprices"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/native/noderoles"
|
"github.com/nspcc-dev/neo-go/pkg/core/native/noderoles"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/state"
|
"github.com/nspcc-dev/neo-go/pkg/core/state"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/storage"
|
"github.com/nspcc-dev/neo-go/pkg/core/storage"
|
||||||
|
@ -1031,7 +1032,7 @@ func TestVerifyTx(t *testing.T) {
|
||||||
fee.Opcode(bc.GetBaseExecFee(), // Notary verification script
|
fee.Opcode(bc.GetBaseExecFee(), // Notary verification script
|
||||||
opcode.PUSHDATA1, opcode.RET, // invocation script
|
opcode.PUSHDATA1, opcode.RET, // invocation script
|
||||||
opcode.PUSH0, opcode.SYSCALL, opcode.RET) + // Neo.Native.Call
|
opcode.PUSH0, opcode.SYSCALL, opcode.RET) + // Neo.Native.Call
|
||||||
native.NotaryVerificationPrice*bc.GetBaseExecFee() // Notary witness verification price
|
nativeprices.NotaryVerificationPrice*bc.GetBaseExecFee() // Notary witness verification price
|
||||||
tx.Scripts = []transaction.Witness{
|
tx.Scripts = []transaction.Witness{
|
||||||
{
|
{
|
||||||
InvocationScript: append([]byte{byte(opcode.PUSHDATA1), 64}, make([]byte, 64, 64)...),
|
InvocationScript: append([]byte{byte(opcode.PUSHDATA1), 64}, make([]byte, 64, 64)...),
|
||||||
|
|
4
pkg/core/native/nativeprices/prices.go
Normal file
4
pkg/core/native/nativeprices/prices.go
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
package nativeprices
|
||||||
|
|
||||||
|
// NotaryVerificationPrice is the price of `verify` native Notary method.
|
||||||
|
const NotaryVerificationPrice = 1 << 15
|
|
@ -12,6 +12,7 @@ import (
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/interop/contract"
|
"github.com/nspcc-dev/neo-go/pkg/core/interop/contract"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/interop/runtime"
|
"github.com/nspcc-dev/neo-go/pkg/core/interop/runtime"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/native/nativenames"
|
"github.com/nspcc-dev/neo-go/pkg/core/native/nativenames"
|
||||||
|
"github.com/nspcc-dev/neo-go/pkg/core/native/nativeprices"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/native/noderoles"
|
"github.com/nspcc-dev/neo-go/pkg/core/native/noderoles"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/state"
|
"github.com/nspcc-dev/neo-go/pkg/core/state"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/storage"
|
"github.com/nspcc-dev/neo-go/pkg/core/storage"
|
||||||
|
@ -41,9 +42,6 @@ type Notary struct {
|
||||||
|
|
||||||
const (
|
const (
|
||||||
notaryContractID = reservedContractID - 1
|
notaryContractID = reservedContractID - 1
|
||||||
// NotaryVerificationPrice is the price of `verify` Notary method.
|
|
||||||
NotaryVerificationPrice = 1 << 15
|
|
||||||
|
|
||||||
// prefixDeposit is a prefix for storing Notary deposits.
|
// prefixDeposit is a prefix for storing Notary deposits.
|
||||||
prefixDeposit = 1
|
prefixDeposit = 1
|
||||||
defaultDepositDeltaTill = 5760
|
defaultDepositDeltaTill = 5760
|
||||||
|
@ -88,7 +86,7 @@ func newNotary() *Notary {
|
||||||
|
|
||||||
desc = newDescriptor("verify", smartcontract.BoolType,
|
desc = newDescriptor("verify", smartcontract.BoolType,
|
||||||
manifest.NewParameter("signature", smartcontract.SignatureType))
|
manifest.NewParameter("signature", smartcontract.SignatureType))
|
||||||
md = newMethodAndPrice(n.verify, NotaryVerificationPrice, callflag.ReadStates)
|
md = newMethodAndPrice(n.verify, nativeprices.NotaryVerificationPrice, callflag.ReadStates)
|
||||||
n.AddMethod(md, desc)
|
n.AddMethod(md, desc)
|
||||||
|
|
||||||
desc = newDescriptor("getMaxNotValidBeforeDelta", smartcontract.IntegerType)
|
desc = newDescriptor("getMaxNotValidBeforeDelta", smartcontract.IntegerType)
|
||||||
|
|
|
@ -8,8 +8,8 @@ import (
|
||||||
"github.com/nspcc-dev/neo-go/pkg/config/netmode"
|
"github.com/nspcc-dev/neo-go/pkg/config/netmode"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/block"
|
"github.com/nspcc-dev/neo-go/pkg/core/block"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/fee"
|
"github.com/nspcc-dev/neo-go/pkg/core/fee"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/native"
|
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/native/nativenames"
|
"github.com/nspcc-dev/neo-go/pkg/core/native/nativenames"
|
||||||
|
"github.com/nspcc-dev/neo-go/pkg/core/native/nativeprices"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/state"
|
"github.com/nspcc-dev/neo-go/pkg/core/state"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/core/transaction"
|
"github.com/nspcc-dev/neo-go/pkg/core/transaction"
|
||||||
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
|
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
|
||||||
|
@ -693,7 +693,7 @@ func (c *Client) CalculateNotaryFee(nKeys uint8) (int64, error) {
|
||||||
fee.Opcode(baseExecFee, // Notary node witness
|
fee.Opcode(baseExecFee, // Notary node witness
|
||||||
opcode.PUSHDATA1, opcode.RET, // invocation script
|
opcode.PUSHDATA1, opcode.RET, // invocation script
|
||||||
opcode.PUSH0, opcode.SYSCALL, opcode.RET) + // System.Contract.CallNative
|
opcode.PUSH0, opcode.SYSCALL, opcode.RET) + // System.Contract.CallNative
|
||||||
native.NotaryVerificationPrice*baseExecFee + // Notary witness verification price
|
nativeprices.NotaryVerificationPrice*baseExecFee + // Notary witness verification price
|
||||||
feePerByte*int64(io.GetVarSize(make([]byte, 66))) + // invocation script per-byte fee
|
feePerByte*int64(io.GetVarSize(make([]byte, 66))) + // invocation script per-byte fee
|
||||||
feePerByte*int64(io.GetVarSize([]byte{})), // verification script per-byte fee
|
feePerByte*int64(io.GetVarSize([]byte{})), // verification script per-byte fee
|
||||||
nil
|
nil
|
||||||
|
|
Loading…
Reference in a new issue