FISCO BCOS 2.1.0 中文文档CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); 总结 EVM是一个状态执行的机器,输入是solidity编译后的二进制指令和节点的状 态数据,输出是 not-enough gas exception 9(0x9) BlockGasLimitReached GasLimit exception 10(0xa) BadInstruction wrong instruction exception status (decimal/hexadecimal) message definition 11(0xb) BadJumpDestination wrong jump0 码力 | 1058 页 | 740.85 KB | 1 年前3
FISCO BCOS 2.3.0 中文文档CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall() long (RC version) 9(0x9) BlockGasLimitReached GasLimit exception 10(0xa) BadInstruction wrong instruction exception 11(0xb) BadJumpDestination wrong jump destination exception 12(0xc) OutOfGas out-of-gas0 码力 | 1227 页 | 10.79 MB | 1 年前3
FISCO BCOS 2.2.0 中文文档CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall() long (RC version) 9(0x9) BlockGasLimitReached GasLimit exception 10(0xa) BadInstruction wrong instruction exception 11(0xb) BadJumpDestination wrong jump destination exception 12(0xc) OutOfGas out-of-gas0 码力 | 1156 页 | 10.03 MB | 1 年前3
FISCO BCOS 2.4.0 中文文档CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall() long (RC version) 9(0x9) BlockGasLimitReached GasLimit exception 10(0xa) BadInstruction wrong instruction exception 11(0xb) BadJumpDestination wrong jump destination exception 12(0xc) OutOfGas out-of-gas0 码力 | 1314 页 | 11.21 MB | 1 年前3
FISCO BCOS 2.5.0 中文文档CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall() long (RC version) 9(0x9) BlockGasLimitReached GasLimit exception 10(0xa) BadInstruction wrong instruction exception 11(0xb) BadJumpDestination wrong jump destination exception 12(0xc) OutOfGas out-of-gas0 码力 | 1456 页 | 13.35 MB | 1 年前3
FISCO BCOS 2.9.0 中文文档e/console.html#setsystemconfigbykey] 2. 检查合约的逻辑,修复合约逻辑的漏洞 2. revert instruction 问题描述: 交易回滚,交易回执状态值为0x16,错误描述revert instruction,这个错 误是因为合约的逻辑问题,包括: 访问调用未初始化的合约 访问初始化为0x0的合约 数组越界访问 除零错误 调用assert、revert CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall()0 码力 | 2649 页 | 201.08 MB | 1 年前3
FISCO BCOS 2.7.2 中文文档e/console.html#setsystemconfigbykey] 2. 检查合约的逻辑,修复合约逻辑的漏洞 2. revert instruction 问题描述: 交易回滚,交易回执状态值为0x16,错误描述revert instruction,这个错 误是因为合约的逻辑问题,包括: 访问调用未初始化的合约 访问初始化为0x0的合约 数组越界访问 除零错误 调用assert、revert CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall()0 码力 | 2520 页 | 211.87 MB | 1 年前3
FISCO BCOS 2.8.0 中文文档e/console.html#setsystemconfigbykey] 2. 检查合约的逻辑,修复合约逻辑的漏洞 2. revert instruction 问题描述: 交易回滚,交易回执状态值为0x16,错误描述revert instruction,这个错 误是因为合约的逻辑问题,包括: 访问调用未初始化的合约 访问初始化为0x0的合约 数组越界访问 除零错误 调用assert、revert CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall()0 码力 | 2534 页 | 212.43 MB | 1 年前3
FISCO BCOS 2.9.0 中文文档e/console.html#setsystemconfigbykey] 2. 检查合约的逻辑,修复合约逻辑的漏洞 2. revert instruction 问题描述: 交易回滚,交易回执状态值为0x16,错误描述revert instruction,这个错 误是因为合约的逻辑问题,包括: 访问调用未初始化的合约 访问初始化为0x0的合约 数组越界访问 除零错误 调用assert、revert CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall()0 码力 | 2649 页 | 201.08 MB | 1 年前3
FISCO BCOS 2.8.0 中文文档e/console.html#setsystemconfigbykey] 2. 检查合约的逻辑,修复合约逻辑的漏洞 2. revert instruction 问题描述: 交易回滚,交易回执状态值为0x16,错误描述revert instruction,这个错 误是因为合约的逻辑问题,包括: 访问调用未初始化的合约 访问初始化为0x0的合约 数组越界访问 除零错误 调用assert、revert CASE(CALLCODE) { ON_OP(); if (m_OP == Instruction::DELEGATECALL && m_rev < EVMC_HOMESTEAD) throwBadInstruction(); if (m_OP == Instruction::STATICCALL && m_rev < EVMC_BYZANTIUM) throwBadInstruction(); if (m_OP == Instruction::CALL && m_message->flags & EVMC_STATIC && m_SP[2] != 0) throwDisallowedStateChange(); m_bounce = &VM::caseCall; } BREAK void VM::caseCall()0 码力 | 2534 页 | 212.43 MB | 1 年前3
共 57 条
- 1
- 2
- 3
- 4
- 5
- 6













