Change OP_CHECK_MULTISIG -> OP_CHECKMULTISIG.
This change was made to match the reference implementation.
This commit is contained in:
parent
b713590902
commit
2005fae908
7 changed files with 54 additions and 54 deletions
|
@ -128,7 +128,7 @@ func scriptToAddrHashTemplate(script []byte, validformats []pkformat) (ScriptTyp
|
|||
if success == false {
|
||||
if len(script) > 1 {
|
||||
// check for a few special case
|
||||
if script[len(script)-1] == OP_CHECK_MULTISIG {
|
||||
if script[len(script)-1] == OP_CHECKMULTISIG {
|
||||
return ScriptStrange, nil, nil
|
||||
}
|
||||
if script[0] == OP_0 && (len(script) <= 75 && byte(len(script)) == script[1]+2) {
|
||||
|
|
|
@ -146,7 +146,7 @@ var addressTests = []addressTest{
|
|||
0xa7, 0xa8, 0x45, 0xbd, 0x25, 0x68, 0x9e, 0xdb,
|
||||
0x72, 0x3d, 0x5a, 0xd4, 0x06, 0x8d, 0xdd, 0x30,
|
||||
0x36,
|
||||
btcscript.OP_CHECK_MULTISIG, // note this isn't a real tx
|
||||
btcscript.OP_CHECKMULTISIG, // note this isn't a real tx
|
||||
},
|
||||
addrhash: nil,
|
||||
class: btcscript.ScriptStrange,
|
||||
|
@ -305,7 +305,7 @@ var multiSigTests = []multiSigTest{
|
|||
0x0e, 0x4e, 0xf8, 0x55, 0x19, 0x46, 0xd8, 0xa5,
|
||||
0x40, 0x91, 0x1a, 0xbe, 0x3e, 0x78, 0x54, 0xa2,
|
||||
0x6f, 0x39, 0xf5, 0x8b, 0x25, 0xc1, 0x53, 0x42,
|
||||
0xaf, btcscript.OP_2, btcscript.OP_CHECK_MULTISIG},
|
||||
0xaf, btcscript.OP_2, btcscript.OP_CHECKMULTISIG},
|
||||
class: btcscript.ScriptMultiSig,
|
||||
reqSigs: 1,
|
||||
addrhashes: [][]byte{
|
||||
|
@ -342,7 +342,7 @@ var multiSigTests = []multiSigTest{
|
|||
0x0e, 0x4e, 0xf8, 0x55, 0x19, 0x46, 0xd8, 0xa5,
|
||||
0x40, 0x91, 0x1a, 0xbe, 0x3e, 0x78, 0x54, 0xa2,
|
||||
0x6f, 0x39, 0xf5, 0x8b, 0x25, 0xc1, 0x53, 0x42,
|
||||
0xaf, btcscript.OP_2, btcscript.OP_CHECK_MULTISIG},
|
||||
0xaf, btcscript.OP_2, btcscript.OP_CHECKMULTISIG},
|
||||
class: btcscript.ScriptMultiSig,
|
||||
reqSigs: 1,
|
||||
addrhashes: [][]byte{
|
||||
|
@ -388,7 +388,7 @@ var multiSigTests = []multiSigTest{
|
|||
0x20, 0x36, 0x63, 0x35, 0x33, 0x63, 0x64, 0x39,
|
||||
0x38, 0x37, 0x31, 0x31, 0x39, 0x65, 0x66, 0x37,
|
||||
0x39, 0x37, 0x64, 0x35, 0x61, 0x64, 0x63, 0x63,
|
||||
0x64, btcscript.OP_3, btcscript.OP_CHECK_MULTISIG},
|
||||
0x64, btcscript.OP_3, btcscript.OP_CHECKMULTISIG},
|
||||
class: btcscript.ScriptMultiSig,
|
||||
reqSigs: 1,
|
||||
addrhashes: [][]byte{
|
||||
|
@ -435,7 +435,7 @@ var multiSigTests = []multiSigTest{
|
|||
0x32, 0x35, 0x36, 0x33, 0x39, 0x64, 0x33, 0x38,
|
||||
0x61, 0x36, 0x63, 0x66, 0x35, 0x30, 0x61, 0x62,
|
||||
0x34, 0x63, 0x64, 0x34, 0x34, 0x0a, 0x00, 0x00,
|
||||
0x00, btcscript.OP_3, btcscript.OP_CHECK_MULTISIG},
|
||||
0x00, btcscript.OP_3, btcscript.OP_CHECKMULTISIG},
|
||||
class: btcscript.ScriptMultiSig,
|
||||
reqSigs: 1,
|
||||
addrhashes: [][]byte{
|
||||
|
|
|
@ -3544,17 +3544,17 @@ var popTests = []popTest{
|
|||
expectedErr: StackErrInvalidOpcode,
|
||||
},
|
||||
popTest{
|
||||
name: "OP_CHECK_MULTISIG",
|
||||
name: "OP_CHECKMULTISIG",
|
||||
pop: &parsedOpcode{
|
||||
opcode: opcodemapPreinit[OP_CHECK_MULTISIG],
|
||||
opcode: opcodemapPreinit[OP_CHECKMULTISIG],
|
||||
data: nil,
|
||||
},
|
||||
expectedErr: nil,
|
||||
},
|
||||
popTest{
|
||||
name: "OP_CHECK_MULTISIG long",
|
||||
name: "OP_CHECKMULTISIG long",
|
||||
pop: &parsedOpcode{
|
||||
opcode: opcodemapPreinit[OP_CHECK_MULTISIG],
|
||||
opcode: opcodemapPreinit[OP_CHECKMULTISIG],
|
||||
data: make([]byte, 1),
|
||||
},
|
||||
expectedErr: StackErrInvalidOpcode,
|
||||
|
|
|
@ -211,7 +211,7 @@ const (
|
|||
OP_CODESEPARATOR = 171
|
||||
OP_CHECKSIG = 172
|
||||
OP_CHECKSIGVERIFY = 173
|
||||
OP_CHECK_MULTISIG = 174
|
||||
OP_CHECKMULTISIG = 174
|
||||
OP_CHECKMULTISIGVERIFY = 175
|
||||
OP_NOP1 = 176
|
||||
OP_NOP2 = 177
|
||||
|
@ -664,7 +664,7 @@ var opcodemapPreinit = map[byte]*opcode{
|
|||
opfunc: opcodeCheckSig},
|
||||
OP_CHECKSIGVERIFY: {value: OP_CHECKSIGVERIFY, name: "OP_CHECKSIGVERIFY", length: 1,
|
||||
opfunc: opcodeCheckSigVerify},
|
||||
OP_CHECK_MULTISIG: {value: OP_CHECK_MULTISIG, name: "OP_CHECK_MULTISIG", length: 1,
|
||||
OP_CHECKMULTISIG: {value: OP_CHECKMULTISIG, name: "OP_CHECKMULTISIG", length: 1,
|
||||
opfunc: opcodeCheckMultiSig},
|
||||
OP_CHECKMULTISIGVERIFY: {value: OP_CHECKMULTISIGVERIFY, name: "OP_CHECKMULTISIGVERIFY", length: 1,
|
||||
|
||||
|
|
|
@ -381,7 +381,7 @@ var opcodeTests = []opcodeTest{
|
|||
0xa7, 0xdf, 0x5f, 0x14, 0x2c, 0x21, 0xc1, 0xb7, 0x30, 0x3b,
|
||||
0x8a, 0x06, 0x26, 0xf1, 0xba, 0xde, 0xd5, 0xc7, 0x2a, 0x70,
|
||||
0x4f, 0x7e, 0x6c, 0xd8, 0x4c,
|
||||
btcscript.OP_1, btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_1, btcscript.OP_CHECKMULTISIG},
|
||||
canonical: false,
|
||||
shouldPass: false},
|
||||
{script: []byte{btcscript.OP_1, btcscript.OP_1, btcscript.OP_DATA_65,
|
||||
|
@ -392,7 +392,7 @@ var opcodeTests = []opcodeTest{
|
|||
0xa7, 0xdf, 0x5f, 0x14, 0x2c, 0x21, 0xc1, 0xb7, 0x30, 0x3b,
|
||||
0x8a, 0x06, 0x26, 0xf1, 0xba, 0xde, 0xd5, 0xc7, 0x2a, 0x70,
|
||||
0x4f, 0x7e, 0x6c, 0xd8, 0x4c,
|
||||
btcscript.OP_1, btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_1, btcscript.OP_CHECKMULTISIG},
|
||||
canonical: true,
|
||||
shouldPass: false},
|
||||
/* up here because no defined error case. */
|
||||
|
@ -2162,44 +2162,44 @@ var detailedTests = []detailedTest{
|
|||
nPreciseSigOps: 1,
|
||||
},
|
||||
{
|
||||
name: "OP_CHECK_MULTISIG no args",
|
||||
script: []byte{btcscript.OP_CHECK_MULTISIG},
|
||||
name: "OP_CHECKMULTISIG no args",
|
||||
script: []byte{btcscript.OP_CHECKMULTISIG},
|
||||
expectedReturn: btcscript.StackErrUnderflow,
|
||||
disassembly: "OP_CHECK_MULTISIG",
|
||||
disassembly: "OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 20,
|
||||
},
|
||||
{
|
||||
name: "OP_CHECK_MULTISIG huge number",
|
||||
name: "OP_CHECKMULTISIG huge number",
|
||||
script: []byte{btcscript.OP_PUSHDATA1,
|
||||
0x9, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
expectedReturn: btcscript.StackErrNumberTooBig,
|
||||
disassembly: "010203040506070809 OP_CHECK_MULTISIG",
|
||||
disassembly: "010203040506070809 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 20,
|
||||
},
|
||||
{
|
||||
name: "OP_CHECK_MULTISIG too many keys",
|
||||
name: "OP_CHECKMULTISIG too many keys",
|
||||
script: []byte{btcscript.OP_DATA_1, 21,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
expectedReturn: btcscript.StackErrTooManyPubkeys,
|
||||
disassembly: "15 OP_CHECK_MULTISIG",
|
||||
disassembly: "15 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 20,
|
||||
},
|
||||
{
|
||||
name: "OP_CHECK_MULTISIG lying about pubkeys",
|
||||
name: "OP_CHECKMULTISIG lying about pubkeys",
|
||||
script: []byte{btcscript.OP_1,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
expectedReturn: btcscript.StackErrUnderflow,
|
||||
disassembly: "OP_1 OP_CHECK_MULTISIG",
|
||||
disassembly: "OP_1 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 1,
|
||||
},
|
||||
{
|
||||
// pubkey comes from blockchain
|
||||
name: "OP_CHECK_MULTISIG no sigs",
|
||||
name: "OP_CHECKMULTISIG no sigs",
|
||||
script: []byte{
|
||||
btcscript.OP_DATA_65,
|
||||
0x04, 0xae, 0x1a, 0x62, 0xfe, 0x09, 0xc5, 0xf5, 0x1b,
|
||||
|
@ -2211,15 +2211,15 @@ var detailedTests = []detailedTest{
|
|||
0xba, 0xde, 0xd5, 0xc7, 0x2a, 0x70, 0x4f, 0x7e, 0x6c,
|
||||
0xd8, 0x4c,
|
||||
btcscript.OP_1,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
expectedReturn: btcscript.StackErrUnderflow,
|
||||
disassembly: "04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECK_MULTISIG",
|
||||
disassembly: "04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 1,
|
||||
},
|
||||
{
|
||||
// pubkey comes from blockchain
|
||||
name: "OP_CHECK_MULTISIG sigs huge no",
|
||||
name: "OP_CHECKMULTISIG sigs huge no",
|
||||
script: []byte{
|
||||
btcscript.OP_PUSHDATA1,
|
||||
0x9, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9,
|
||||
|
@ -2233,14 +2233,14 @@ var detailedTests = []detailedTest{
|
|||
0xba, 0xde, 0xd5, 0xc7, 0x2a, 0x70, 0x4f, 0x7e, 0x6c,
|
||||
0xd8, 0x4c,
|
||||
btcscript.OP_1,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
expectedReturn: btcscript.StackErrNumberTooBig,
|
||||
disassembly: "010203040506070809 04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECK_MULTISIG",
|
||||
disassembly: "010203040506070809 04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 1,
|
||||
},
|
||||
{
|
||||
name: "OP_CHECK_MULTISIG too few sigs",
|
||||
name: "OP_CHECKMULTISIG too few sigs",
|
||||
script: []byte{btcscript.OP_1,
|
||||
btcscript.OP_DATA_65,
|
||||
0x04, 0xae, 0x1a, 0x62, 0xfe, 0x09, 0xc5, 0xf5, 0x1b,
|
||||
|
@ -2252,15 +2252,15 @@ var detailedTests = []detailedTest{
|
|||
0xba, 0xde, 0xd5, 0xc7, 0x2a, 0x70, 0x4f, 0x7e, 0x6c,
|
||||
0xd8, 0x4c,
|
||||
btcscript.OP_1,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
expectedReturn: btcscript.StackErrUnderflow,
|
||||
disassembly: "OP_1 04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECK_MULTISIG",
|
||||
disassembly: "OP_1 04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 1,
|
||||
},
|
||||
{
|
||||
// pubkey and sig comes from blockchain, are unrelated
|
||||
name: "OP_CHECK_MULTISIG won't verify",
|
||||
name: "OP_CHECKMULTISIG won't verify",
|
||||
script: []byte{btcscript.OP_1,
|
||||
btcscript.OP_DATA_71,
|
||||
0x30, 0x44, 0x02, 0x20, 0x4e, 0x45, 0xe1, 0x69, 0x32,
|
||||
|
@ -2282,9 +2282,9 @@ var detailedTests = []detailedTest{
|
|||
0xba, 0xde, 0xd5, 0xc7, 0x2a, 0x70, 0x4f, 0x7e, 0x6c,
|
||||
0xd8, 0x4c,
|
||||
btcscript.OP_1,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
after: [][]byte{{0}},
|
||||
disassembly: "OP_1 304402204e45e16932b8af514961a1d3a1a25fdf3f4f7732e9d624c6c61548ab5fb8cd410220181522ec8eca07de4860a4acdd12909d831cc56cbbac4622082221a8768d1d0901 OP_1 04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECK_MULTISIG",
|
||||
disassembly: "OP_1 304402204e45e16932b8af514961a1d3a1a25fdf3f4f7732e9d624c6c61548ab5fb8cd410220181522ec8eca07de4860a4acdd12909d831cc56cbbac4622082221a8768d1d0901 OP_1 04ae1a62fe09c5f51b13905f07f06b99a2f7159b2225f374cd378d71302fa28414e7aab37397f554a7df5f142c21c1b7303b8a0626f1baded5c72a704f7e6cd84c OP_1 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 1,
|
||||
},
|
||||
|
@ -2292,7 +2292,7 @@ var detailedTests = []detailedTest{
|
|||
// invalid pubkey means that it fails to validate, not an
|
||||
// error. There are pubkeys in the blockchain that don't
|
||||
// parse with any validity.
|
||||
name: "OP_CHECK_MULTISIG sigs bad pubkey",
|
||||
name: "OP_CHECKMULTISIG sigs bad pubkey",
|
||||
script: []byte{btcscript.OP_1,
|
||||
btcscript.OP_DATA_71,
|
||||
0x30, 0x44, 0x02, 0x20, 0x4e, 0x45, 0xe1, 0x69, 0x32,
|
||||
|
@ -2305,9 +2305,9 @@ var detailedTests = []detailedTest{
|
|||
0x22, 0x21, 0xa8, 0x76, 0x8d, 0x1d, 0x09, 0x01,
|
||||
btcscript.OP_1,
|
||||
btcscript.OP_1, btcscript.OP_1,
|
||||
btcscript.OP_CHECK_MULTISIG},
|
||||
btcscript.OP_CHECKMULTISIG},
|
||||
after: [][]byte{{0}},
|
||||
disassembly: "OP_1 304402204e45e16932b8af514961a1d3a1a25fdf3f4f7732e9d624c6c61548ab5fb8cd410220181522ec8eca07de4860a4acdd12909d831cc56cbbac4622082221a8768d1d0901 OP_1 OP_1 OP_1 OP_CHECK_MULTISIG",
|
||||
disassembly: "OP_1 304402204e45e16932b8af514961a1d3a1a25fdf3f4f7732e9d624c6c61548ab5fb8cd410220181522ec8eca07de4860a4acdd12909d831cc56cbbac4622082221a8768d1d0901 OP_1 OP_1 OP_1 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 1,
|
||||
},
|
||||
|
@ -3090,10 +3090,10 @@ var detailedTests = []detailedTest{
|
|||
btcscript.OP_1,
|
||||
btcscript.OP_1,
|
||||
btcscript.OP_2,
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
expectedReturn: btcscript.StackErrTooManyOperations,
|
||||
disassembly: "OP_1 OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_1 OP_1 OP_1 OP_1 OP_2 OP_CHECK_MULTISIG",
|
||||
disassembly: "OP_1 OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_DUP OP_DROP OP_1 OP_1 OP_1 OP_1 OP_2 OP_CHECKMULTISIG",
|
||||
nSigOps: 20,
|
||||
nPreciseSigOps: 2,
|
||||
},
|
||||
|
|
|
@ -237,7 +237,7 @@ func IsPayToScriptHash(script []byte) bool {
|
|||
func isMultiSig(pops []parsedOpcode) bool {
|
||||
l := len(pops)
|
||||
// absolute minimum is 1 pubkey so
|
||||
// OP_1-16, pubkey, OP_1, OP_CHECK_MULTISIG
|
||||
// OP_1-16, pubkey, OP_1, OP_CHECKMULTISIG
|
||||
if l < 4 {
|
||||
return false
|
||||
}
|
||||
|
@ -249,7 +249,7 @@ func isMultiSig(pops []parsedOpcode) bool {
|
|||
pops[l-2].opcode.value > OP_16 {
|
||||
return false
|
||||
}
|
||||
if pops[l-1].opcode.value != OP_CHECK_MULTISIG {
|
||||
if pops[l-1].opcode.value != OP_CHECKMULTISIG {
|
||||
return false
|
||||
}
|
||||
for _, pop := range pops[1 : l-2] {
|
||||
|
@ -936,7 +936,7 @@ func getSigOpCount(pops []parsedOpcode, precise bool) int {
|
|||
fallthrough
|
||||
case OP_CHECKSIGVERIFY:
|
||||
nSigs++
|
||||
case OP_CHECK_MULTISIG:
|
||||
case OP_CHECKMULTISIG:
|
||||
fallthrough
|
||||
case OP_CHECKMULTISIGVERIFY:
|
||||
// If we are being precise then look for familiar
|
||||
|
|
|
@ -958,7 +958,7 @@ var txTests = []txTest{
|
|||
0x78, 0x86, 0x21, 0x1a, 0xb4,
|
||||
0x14, 0xd5, 0x5a,
|
||||
btcscript.OP_TRUE,
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
Sequence: 4294967295,
|
||||
},
|
||||
|
@ -1081,7 +1081,7 @@ var txTests = []txTest{
|
|||
0x78, 0x86, 0x21, 0x1a, 0xb4,
|
||||
0x14, 0xd5, 0x5a,
|
||||
btcscript.OP_TRUE,
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
Sequence: 4294967295,
|
||||
},
|
||||
|
@ -1711,7 +1711,7 @@ func TestScriptInfo(t *testing.T) {
|
|||
0xa, 0xb, 0xc, 0xd, 0xe, 0xf, 0x10, 0x11, 0x12,
|
||||
0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a,
|
||||
0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21,
|
||||
btcscript.OP_3, btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_3, btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
bip16: true,
|
||||
scriptInfo: btcscript.ScriptInfo{
|
||||
|
@ -1990,7 +1990,7 @@ var scriptTypeTests = []scriptTypeTest{
|
|||
0x45, 0x32, 0x9a, 0x00, 0x35, 0x7b, 0x3a, 0x78, 0x86,
|
||||
0x21, 0x1a, 0xb4, 0x14, 0xd5, 0x5a,
|
||||
btcscript.OP_TRUE,
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
scripttype: btcscript.MultiSigTy,
|
||||
},
|
||||
|
@ -2091,7 +2091,7 @@ var scriptTypeTests = []scriptTypeTest{
|
|||
0x45, 0x32, 0x9a, 0x00, 0x35, 0x7b, 0x3a, 0x78, 0x86,
|
||||
0x21, 0x1a, 0xb4, 0x14, 0xd5, 0x5a,
|
||||
btcscript.OP_TRUE,
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
scripttype: btcscript.NonStandardTy,
|
||||
},
|
||||
|
@ -2102,7 +2102,7 @@ var scriptTypeTests = []scriptTypeTest{
|
|||
btcscript.OP_TRUE,
|
||||
btcscript.OP_TRUE,
|
||||
btcscript.OP_TRUE,
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
scripttype: btcscript.NonStandardTy,
|
||||
},
|
||||
|
@ -2122,7 +2122,7 @@ var scriptTypeTests = []scriptTypeTest{
|
|||
0x45, 0x32, 0x9a, 0x00, 0x35, 0x7b, 0x3a, 0x78, 0x86,
|
||||
0x21, 0x1a, 0xb4, 0x14, 0xd5, 0x5a,
|
||||
// No number.
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
scripttype: btcscript.NonStandardTy,
|
||||
},
|
||||
|
@ -2146,7 +2146,7 @@ var scriptTypeTests = []scriptTypeTest{
|
|||
// multisig but wrong length.
|
||||
script: []byte{
|
||||
btcscript.OP_TRUE,
|
||||
btcscript.OP_CHECK_MULTISIG,
|
||||
btcscript.OP_CHECKMULTISIG,
|
||||
},
|
||||
scripttype: btcscript.NonStandardTy,
|
||||
},
|
||||
|
|
Loading…
Reference in a new issue