sol-dbg 0.4.0 → 0.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/debug/abi.d.ts.map +1 -1
- package/dist/debug/abi.js +11 -2
- package/dist/debug/abi.js.map +1 -1
- package/dist/debug/foundry_cheatcodes.d.ts +10 -10
- package/dist/debug/foundry_cheatcodes.d.ts.map +1 -1
- package/dist/debug/foundry_cheatcodes.js +32 -49
- package/dist/debug/foundry_cheatcodes.js.map +1 -1
- package/dist/debug/opcode_interposing.d.ts.map +1 -1
- package/dist/debug/opcode_interposing.js +11 -15
- package/dist/debug/opcode_interposing.js.map +1 -1
- package/dist/debug/sol_debugger.d.ts +9 -15
- package/dist/debug/sol_debugger.d.ts.map +1 -1
- package/dist/debug/sol_debugger.js +45 -77
- package/dist/debug/sol_debugger.js.map +1 -1
- package/dist/debug/types.d.ts +6 -8
- package/dist/debug/types.d.ts.map +1 -1
- package/dist/debug/types.js.map +1 -1
- package/dist/utils/ethereumjs_internal/exceptions.d.ts +44 -0
- package/dist/utils/ethereumjs_internal/exceptions.d.ts.map +1 -0
- package/dist/utils/ethereumjs_internal/exceptions.js +59 -0
- package/dist/utils/ethereumjs_internal/exceptions.js.map +1 -0
- package/dist/utils/ethereumjs_internal/index.d.ts +3 -0
- package/dist/utils/ethereumjs_internal/index.d.ts.map +1 -0
- package/dist/utils/ethereumjs_internal/index.js +19 -0
- package/dist/utils/ethereumjs_internal/index.js.map +1 -0
- package/dist/utils/ethereumjs_internal/opcodes.d.ts +33 -0
- package/dist/utils/ethereumjs_internal/opcodes.d.ts.map +1 -0
- package/dist/utils/ethereumjs_internal/opcodes.js +79 -0
- package/dist/utils/ethereumjs_internal/opcodes.js.map +1 -0
- package/dist/utils/pp.d.ts.map +1 -1
- package/dist/utils/pp.js +6 -3
- package/dist/utils/pp.js.map +1 -1
- package/dist/utils/test_runner.d.ts.map +1 -1
- package/dist/utils/test_runner.js +1 -2
- package/dist/utils/test_runner.js.map +1 -1
- package/package.json +1 -1
|
@@ -12,7 +12,6 @@ const util_1 = require("@ethereumjs/util");
|
|
|
12
12
|
const vm_1 = require("@ethereumjs/vm");
|
|
13
13
|
const utils_1 = require("ethereum-cryptography/utils");
|
|
14
14
|
const solc_typed_ast_1 = require("solc-typed-ast");
|
|
15
|
-
const stream_1 = require("stream");
|
|
16
15
|
const __1 = require("..");
|
|
17
16
|
const artifacts_1 = require("../artifacts");
|
|
18
17
|
const utils_2 = require("../utils");
|
|
@@ -84,6 +83,30 @@ class SolTxDebugger {
|
|
|
84
83
|
: this.foundryCheatcodes;
|
|
85
84
|
}
|
|
86
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Decode a *CALL* instruction. Computes:
|
|
88
|
+
* 1. The receiver address
|
|
89
|
+
* 2. The code address
|
|
90
|
+
* 3. The msg.data
|
|
91
|
+
* @param step
|
|
92
|
+
*/
|
|
93
|
+
decodeCall(step) {
|
|
94
|
+
const op = step.op;
|
|
95
|
+
(0, solc_typed_ast_1.assert)(op.opcode === opcodes_1.OPCODES.CALL ||
|
|
96
|
+
op.opcode === opcodes_1.OPCODES.CALLCODE ||
|
|
97
|
+
op.opcode === opcodes_1.OPCODES.DELEGATECALL ||
|
|
98
|
+
op.opcode === opcodes_1.OPCODES.STATICCALL, `Unexpected call instruction {0}`, op.mnemonic);
|
|
99
|
+
const stackTop = step.evmStack.length - 1;
|
|
100
|
+
const argStackOff = op.opcode === opcodes_1.OPCODES.CALL || op.opcode === opcodes_1.OPCODES.CALLCODE ? 3 : 2;
|
|
101
|
+
const argSizeStackOff = argStackOff + 1;
|
|
102
|
+
const receiverArg = (0, __1.wordToAddress)(step.evmStack[stackTop - 1]);
|
|
103
|
+
const argOff = (0, utils_2.bigEndianBufToNumber)(step.evmStack[stackTop - argStackOff]);
|
|
104
|
+
const argSize = (0, utils_2.bigEndianBufToNumber)(step.evmStack[stackTop - argSizeStackOff]);
|
|
105
|
+
const receiver = op.opcode === opcodes_1.OPCODES.DELEGATECALL ? step.address : receiverArg;
|
|
106
|
+
const codeAddr = receiverArg;
|
|
107
|
+
const msgData = step.memory.slice(argOff, argOff + argSize);
|
|
108
|
+
return [receiver, codeAddr, msgData];
|
|
109
|
+
}
|
|
87
110
|
/**
|
|
88
111
|
* Given the VM state of a trace step adjust the stack trace accordingly. This handles the following cases:
|
|
89
112
|
*
|
|
@@ -91,9 +114,9 @@ class SolTxDebugger {
|
|
|
91
114
|
* - op is CALL/CALLCODE/DELEGATECALL/STATICCALL - push a new external frame for the callee context
|
|
92
115
|
* - stack depth decreased and previous instruction was RETURN, REVERT or was in an error state - pop external frames from the stack
|
|
93
116
|
* - internal call - previous op is JUMPDEST and the source map of the current op is the begining of a new function - push a new internal call frame
|
|
94
|
-
* - return from internal call -
|
|
117
|
+
* - return from internal call - pop the last frame
|
|
95
118
|
*/
|
|
96
|
-
async adjustStackFrame(stack, state, trace
|
|
119
|
+
async adjustStackFrame(vm, stack, state, trace) {
|
|
97
120
|
const lastExtFrame = lastExternalFrame(stack);
|
|
98
121
|
// First instruction - nothing to do
|
|
99
122
|
if (trace.length === 0) {
|
|
@@ -111,20 +134,14 @@ class SolTxDebugger {
|
|
|
111
134
|
const off = (0, utils_2.bigEndianBufToNumber)(lastStep.evmStack[lastStackTop - 1]);
|
|
112
135
|
const size = (0, utils_2.bigEndianBufToNumber)(lastStep.evmStack[lastStackTop - 2]);
|
|
113
136
|
const creationBytecode = lastStep.memory.slice(off, off + size);
|
|
114
|
-
const curFrame = await this.makeCreationFrame(lastExtFrame.address
|
|
137
|
+
const curFrame = await this.makeCreationFrame(lastExtFrame.address, creationBytecode, trace.length);
|
|
115
138
|
stack.push(curFrame);
|
|
116
139
|
}
|
|
117
140
|
else {
|
|
118
|
-
|
|
119
|
-
const
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
const argSizeStackOff = argStackOff + 1;
|
|
123
|
-
const argOff = (0, utils_2.bigEndianBufToNumber)(lastStep.evmStack[lastStackTop - argStackOff]);
|
|
124
|
-
const argSize = (0, utils_2.bigEndianBufToNumber)(lastStep.evmStack[lastStackTop - argSizeStackOff]);
|
|
125
|
-
const receiver = (0, __1.wordToAddress)(lastStep.evmStack[lastStackTop - 1]);
|
|
126
|
-
const msgData = lastStep.memory.slice(argOff, argOff + argSize);
|
|
127
|
-
const newFrame = await this.makeCallFrame(lastExtFrame.address.toString(), receiver, msgData, code, codeHash, trace.length);
|
|
141
|
+
const [receiver, codeAddr, msgData] = this.decodeCall(lastStep);
|
|
142
|
+
const code = await vm.stateManager.getContractCode(codeAddr);
|
|
143
|
+
const codeHash = (0, artifacts_1.getCodeHash)(code);
|
|
144
|
+
const newFrame = await this.makeCallFrame(lastExtFrame.address, receiver, codeAddr, msgData, code, codeHash, trace.length);
|
|
128
145
|
stack.push(newFrame);
|
|
129
146
|
}
|
|
130
147
|
}
|
|
@@ -202,51 +219,6 @@ class SolTxDebugger {
|
|
|
202
219
|
}
|
|
203
220
|
}
|
|
204
221
|
}
|
|
205
|
-
/**
|
|
206
|
-
* Get the executing code for the current step. There are 3 cases:
|
|
207
|
-
*
|
|
208
|
-
* 1. We just entered the creation of a new code (last step was
|
|
209
|
-
* CREATE/CREATE2 and depth changed). The code is whatever the memory blob
|
|
210
|
-
* passed to the last op was
|
|
211
|
-
* 2. This is the first step or the `codeAddress` changed between this and the last
|
|
212
|
-
* steps - obtain the code from the `vm.stateManager` using `codeAddress`.
|
|
213
|
-
* 3. Otherwise code is the same in the last step
|
|
214
|
-
* @param vm - current VM
|
|
215
|
-
* @param vmState - current (partial) state in the trace (for which we are computing code)
|
|
216
|
-
* @param trace - trace up to the current state
|
|
217
|
-
*/
|
|
218
|
-
async getCodeAndMdHash(vm, step, trace) {
|
|
219
|
-
const lastStep = trace.length > 0 ? trace[trace.length - 1] : undefined;
|
|
220
|
-
let code;
|
|
221
|
-
let codeMdHash;
|
|
222
|
-
const getCodeAddress = (s) => s.codeAddress !== undefined ? s.codeAddress : s.address;
|
|
223
|
-
// Case 1: First step in the trace
|
|
224
|
-
if (lastStep === undefined) {
|
|
225
|
-
const code = await vm.stateManager.getContractCode(getCodeAddress(step));
|
|
226
|
-
const codeMdHash = (0, artifacts_1.getCodeHash)(code);
|
|
227
|
-
return [code, codeMdHash];
|
|
228
|
-
}
|
|
229
|
-
// Case 2: Just entering a constructor from another contract
|
|
230
|
-
if ((0, opcodes_1.createsContract)(lastStep.op)) {
|
|
231
|
-
const lastStackTop = lastStep.evmStack.length - 1;
|
|
232
|
-
const off = (0, utils_2.bigEndianBufToNumber)(lastStep.evmStack[lastStackTop - 1]);
|
|
233
|
-
const size = (0, utils_2.bigEndianBufToNumber)(lastStep.evmStack[lastStackTop - 2]);
|
|
234
|
-
const code = lastStep.memory.slice(off, off + size);
|
|
235
|
-
const codeMdHash = (0, artifacts_1.getCreationCodeHash)(code);
|
|
236
|
-
return [code, codeMdHash];
|
|
237
|
-
}
|
|
238
|
-
// Case 3: The code changed - either we are in a different contract or a delegate call context
|
|
239
|
-
if (!getCodeAddress(lastStep).equals(getCodeAddress(step))) {
|
|
240
|
-
// Case 3: We are changing the code address
|
|
241
|
-
code = await vm.stateManager.getContractCode(getCodeAddress(step));
|
|
242
|
-
codeMdHash = (0, artifacts_1.getCodeHash)(code);
|
|
243
|
-
return [code, codeMdHash];
|
|
244
|
-
}
|
|
245
|
-
// Case 4: We are still in the same contract
|
|
246
|
-
code = lastStep.code;
|
|
247
|
-
codeMdHash = lastStep.codeMdHash;
|
|
248
|
-
return [code, codeMdHash];
|
|
249
|
-
}
|
|
250
222
|
async processRawTraceStep(vm, stateManager, step, trace, stack) {
|
|
251
223
|
const evmStack = step.stack.map((word) => (0, utils_2.bigIntToBuf)(word, 32, "big"));
|
|
252
224
|
const lastStep = trace.length > 0 ? trace[trace.length - 1] : undefined;
|
|
@@ -277,8 +249,7 @@ class SolTxDebugger {
|
|
|
277
249
|
address: step.address,
|
|
278
250
|
codeAddress: step.codeAddress
|
|
279
251
|
};
|
|
280
|
-
|
|
281
|
-
await this.adjustStackFrame(stack, vmState, trace, code, codeMdHash);
|
|
252
|
+
await this.adjustStackFrame(vm, stack, vmState, trace);
|
|
282
253
|
const curExtFrame = lastExternalFrame(stack);
|
|
283
254
|
let src;
|
|
284
255
|
let astNode;
|
|
@@ -305,8 +276,6 @@ class SolTxDebugger {
|
|
|
305
276
|
}
|
|
306
277
|
return {
|
|
307
278
|
...vmState,
|
|
308
|
-
code,
|
|
309
|
-
codeMdHash,
|
|
310
279
|
stack: [...stack],
|
|
311
280
|
src,
|
|
312
281
|
astNode,
|
|
@@ -336,11 +305,7 @@ class SolTxDebugger {
|
|
|
336
305
|
]
|
|
337
306
|
};
|
|
338
307
|
const res = await evm_1.EVM.create(optsCopy);
|
|
339
|
-
|
|
340
|
-
emitter.on("beforeInterpRun", foundryCtx.beforeInterpRunCB.bind(foundryCtx));
|
|
341
|
-
emitter.on("afterInterpRun", foundryCtx.afterInterpRunCB.bind(foundryCtx));
|
|
342
|
-
foundry_cheatcodes_1.interpRunListeners.set(res, emitter);
|
|
343
|
-
(0, foundry_cheatcodes_1.setFoundryCtx)(res, foundryCtx);
|
|
308
|
+
foundry_cheatcodes_1.foundryCtxMap.set(res, foundryCtx);
|
|
344
309
|
return res;
|
|
345
310
|
}
|
|
346
311
|
/**
|
|
@@ -353,7 +318,7 @@ class SolTxDebugger {
|
|
|
353
318
|
static releaseVM(vm) {
|
|
354
319
|
const evm = vmToEVMMap.get(vm);
|
|
355
320
|
if (evm) {
|
|
356
|
-
foundry_cheatcodes_1.
|
|
321
|
+
foundry_cheatcodes_1.foundryCtxMap.delete(evm);
|
|
357
322
|
}
|
|
358
323
|
vmToEVMMap.delete(vm);
|
|
359
324
|
}
|
|
@@ -376,7 +341,7 @@ class SolTxDebugger {
|
|
|
376
341
|
}
|
|
377
342
|
async debugTx(tx, block, stateManager) {
|
|
378
343
|
const vm = await SolTxDebugger.createVm(stateManager.shallowCopy(true), this.foundryCheatcodes);
|
|
379
|
-
const sender = tx.getSenderAddress()
|
|
344
|
+
const sender = tx.getSenderAddress();
|
|
380
345
|
const receiver = tx.to === undefined ? __1.ZERO_ADDRESS_STRING : tx.to.toString();
|
|
381
346
|
const isCreation = receiver === __1.ZERO_ADDRESS_STRING;
|
|
382
347
|
const stack = [];
|
|
@@ -390,7 +355,7 @@ class SolTxDebugger {
|
|
|
390
355
|
/// @todo remove - arbitrary restriction, only good for debugging
|
|
391
356
|
(0, solc_typed_ast_1.assert)(code.length > 0, "Missing code for address {0}", tx.to.toString());
|
|
392
357
|
const codeHash = (0, artifacts_1.getCodeHash)(code);
|
|
393
|
-
curFrame = await this.makeCallFrame(sender, tx.to, tx.data, code, codeHash, 0);
|
|
358
|
+
curFrame = await this.makeCallFrame(sender, tx.to, tx.to, tx.data, code, codeHash, 0);
|
|
394
359
|
}
|
|
395
360
|
stack.push(curFrame);
|
|
396
361
|
const trace = [];
|
|
@@ -424,12 +389,13 @@ class SolTxDebugger {
|
|
|
424
389
|
kind: types_1.FrameKind.Creation,
|
|
425
390
|
sender,
|
|
426
391
|
msgData: data,
|
|
427
|
-
|
|
392
|
+
code: data,
|
|
428
393
|
info: contractInfo,
|
|
429
394
|
callee,
|
|
430
395
|
address: __1.ZERO_ADDRESS,
|
|
431
396
|
startStep: step,
|
|
432
|
-
arguments: args
|
|
397
|
+
arguments: args,
|
|
398
|
+
codeMdHash: (0, artifacts_1.getCreationCodeHash)(data)
|
|
433
399
|
};
|
|
434
400
|
}
|
|
435
401
|
/**
|
|
@@ -449,7 +415,7 @@ class SolTxDebugger {
|
|
|
449
415
|
/**
|
|
450
416
|
* Build a `CallFrame` from the given `sender` address, `receiver` address, `data` `Uint8Array`, (msg.data) and the current trace step number.
|
|
451
417
|
*/
|
|
452
|
-
async makeCallFrame(sender, receiver, data, receiverCode, codeHash, step) {
|
|
418
|
+
async makeCallFrame(sender, receiver, codeAddress, data, receiverCode, codeHash, step) {
|
|
453
419
|
const contractInfo = codeHash === undefined
|
|
454
420
|
? codeHash
|
|
455
421
|
: this.artifactManager.getContractFromMDHash(codeHash);
|
|
@@ -471,15 +437,17 @@ class SolTxDebugger {
|
|
|
471
437
|
}
|
|
472
438
|
return {
|
|
473
439
|
kind: types_1.FrameKind.Call,
|
|
474
|
-
sender,
|
|
440
|
+
sender, // TODO: This should be Address
|
|
475
441
|
msgData: data,
|
|
476
|
-
receiver: receiver
|
|
442
|
+
receiver: receiver, // TODO: This should be Address
|
|
477
443
|
code: receiverCode,
|
|
478
444
|
info: contractInfo,
|
|
479
445
|
callee,
|
|
480
446
|
address: receiver,
|
|
481
447
|
startStep: step,
|
|
482
|
-
arguments: args
|
|
448
|
+
arguments: args,
|
|
449
|
+
codeMdHash: codeHash,
|
|
450
|
+
codeAddress
|
|
483
451
|
};
|
|
484
452
|
}
|
|
485
453
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sol_debugger.js","sourceRoot":"","sources":["../../src/debug/sol_debugger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sol_debugger.js","sourceRoot":"","sources":["../../src/debug/sol_debugger.ts"],"names":[],"mappings":"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"}
|
package/dist/debug/types.d.ts
CHANGED
|
@@ -63,26 +63,26 @@ export interface BaseFrame {
|
|
|
63
63
|
* Base class for a stack frame corresponding to an external call.
|
|
64
64
|
*/
|
|
65
65
|
export interface BaseExternalFrame extends BaseFrame {
|
|
66
|
-
readonly sender:
|
|
66
|
+
readonly sender: Address;
|
|
67
67
|
readonly msgData: Uint8Array;
|
|
68
68
|
readonly address: Address;
|
|
69
|
+
readonly info?: ContractInfo;
|
|
70
|
+
readonly code: Uint8Array;
|
|
71
|
+
readonly codeMdHash: HexString | undefined;
|
|
69
72
|
}
|
|
70
73
|
/**
|
|
71
74
|
* Stack frame corresponding to an external call
|
|
72
75
|
*/
|
|
73
76
|
export interface CallFrame extends BaseExternalFrame {
|
|
74
77
|
readonly kind: FrameKind.Call;
|
|
75
|
-
readonly receiver:
|
|
76
|
-
readonly
|
|
77
|
-
readonly info?: ContractInfo;
|
|
78
|
+
readonly receiver: Address;
|
|
79
|
+
readonly codeAddress: Address;
|
|
78
80
|
}
|
|
79
81
|
/**
|
|
80
82
|
* Stack frame corresponding to a contract creation call
|
|
81
83
|
*/
|
|
82
84
|
export interface CreationFrame extends BaseExternalFrame {
|
|
83
85
|
readonly kind: FrameKind.Creation;
|
|
84
|
-
readonly creationCode: Uint8Array;
|
|
85
|
-
readonly info?: ContractInfo;
|
|
86
86
|
}
|
|
87
87
|
/**
|
|
88
88
|
* Stack frame corresponding to an internal function call
|
|
@@ -164,8 +164,6 @@ export interface StepVMState {
|
|
|
164
164
|
* that may be emitted on this step.
|
|
165
165
|
*/
|
|
166
166
|
export interface StepState extends StepVMState {
|
|
167
|
-
code: Uint8Array;
|
|
168
|
-
codeMdHash: HexString | undefined;
|
|
169
167
|
stack: DbgStack;
|
|
170
168
|
src: sol.DecodedBytecodeSourceMapEntry | undefined;
|
|
171
169
|
astNode: sol.ASTNode | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/debug/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,SAAS,CAAC;IACnB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC5B,QAAQ,EAAE,oBAAoB,GAAG,SAAS,CAAC;CAC9C;AAED,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,oBAAoB,GAAG,SAAS,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GAAG;IAAE,KAAK,EAAE,GAAG,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3D,MAAM,WAAW,UAAU;IACvB,GAAG,EAAE,kBAAkB,CAAC;IACxB,gBAAgB,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,CAAC;IACzD,aAAa,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,CAAC;CACzD;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;AAEtC,oBAAY,SAAS;IACjB,IAAI,SAAS;IACb,QAAQ,aAAa;IACrB,YAAY,kBAAkB;CACjC;AAGD,MAAM,MAAM,OAAO,GAAG,GAAG,CAAC;AAE1B;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC;IACtE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC9B;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/debug/types.ts"],"names":[],"mappings":"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"}
|
package/dist/debug/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/debug/types.ts"],"names":[],"mappings":";;;AAoCA,IAAY,SAIX;AAJD,WAAY,SAAS;IACjB,0BAAa,CAAA;IACb,kCAAqB,CAAA;IACrB,2CAA8B,CAAA;AAClC,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/debug/types.ts"],"names":[],"mappings":";;;AAoCA,IAAY,SAIX;AAJD,WAAY,SAAS;IACjB,0BAAa,CAAA;IACb,kCAAqB,CAAA;IACrB,2CAA8B,CAAA;AAClC,CAAC,EAJW,SAAS,yBAAT,SAAS,QAIpB;AAiED,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,mCAAe,CAAA;IACf,qCAAiB,CAAA;IACjB,uCAAmB,CAAA;IACnB,yCAAqB,CAAA;AACzB,CAAC,EALW,gBAAgB,gCAAhB,gBAAgB,QAK3B"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { EvmError, ExecResult } from "@ethereumjs/evm";
|
|
2
|
+
/**
|
|
3
|
+
* The following code has been copied from
|
|
4
|
+
*
|
|
5
|
+
* https://github.com/ethereumjs/ethereumjs-monorepo/blob/master/packages/evm/src/exceptions.ts
|
|
6
|
+
*
|
|
7
|
+
* Since its not exported by the underyling package, but we need it to hack on the VM to add foundry cheatcodes.
|
|
8
|
+
*/
|
|
9
|
+
export declare function EvmErrorResult(error: EvmError, gasUsed: bigint): ExecResult;
|
|
10
|
+
export declare enum ERROR {
|
|
11
|
+
OUT_OF_GAS = "out of gas",
|
|
12
|
+
CODESTORE_OUT_OF_GAS = "code store out of gas",
|
|
13
|
+
CODESIZE_EXCEEDS_MAXIMUM = "code size to deposit exceeds maximum code size",
|
|
14
|
+
STACK_UNDERFLOW = "stack underflow",
|
|
15
|
+
STACK_OVERFLOW = "stack overflow",
|
|
16
|
+
INVALID_JUMP = "invalid JUMP",
|
|
17
|
+
INVALID_OPCODE = "invalid opcode",
|
|
18
|
+
OUT_OF_RANGE = "value out of range",
|
|
19
|
+
REVERT = "revert",
|
|
20
|
+
STATIC_STATE_CHANGE = "static state change",
|
|
21
|
+
INTERNAL_ERROR = "internal error",
|
|
22
|
+
CREATE_COLLISION = "create collision",
|
|
23
|
+
STOP = "stop",
|
|
24
|
+
REFUND_EXHAUSTED = "refund exhausted",
|
|
25
|
+
VALUE_OVERFLOW = "value overflow",
|
|
26
|
+
INSUFFICIENT_BALANCE = "insufficient balance",
|
|
27
|
+
INVALID_BEGINSUB = "invalid BEGINSUB",
|
|
28
|
+
INVALID_RETURNSUB = "invalid RETURNSUB",
|
|
29
|
+
INVALID_JUMPSUB = "invalid JUMPSUB",
|
|
30
|
+
INVALID_BYTECODE_RESULT = "invalid bytecode deployed",
|
|
31
|
+
INITCODE_SIZE_VIOLATION = "initcode exceeds max initcode size",
|
|
32
|
+
INVALID_INPUT_LENGTH = "invalid input length",
|
|
33
|
+
INVALID_EOF_FORMAT = "invalid EOF format",
|
|
34
|
+
AUTHCALL_UNSET = "attempting to AUTHCALL without AUTH set",
|
|
35
|
+
BLS_12_381_INVALID_INPUT_LENGTH = "invalid input length",
|
|
36
|
+
BLS_12_381_POINT_NOT_ON_CURVE = "point not on curve",
|
|
37
|
+
BLS_12_381_INPUT_EMPTY = "input is empty",
|
|
38
|
+
BLS_12_381_FP_NOT_IN_FIELD = "fp point not in field",
|
|
39
|
+
BN254_FP_NOT_IN_FIELD = "fp point not in field",
|
|
40
|
+
INVALID_COMMITMENT = "kzg commitment does not match versioned hash",
|
|
41
|
+
INVALID_INPUTS = "kzg inputs invalid",
|
|
42
|
+
INVALID_PROOF = "kzg proof invalid"
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=exceptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exceptions.d.ts","sourceRoot":"","sources":["../../../src/utils/ethereumjs_internal/exceptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;;;GAMG;AAEH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAM3E;AAED,oBAAY,KAAK;IACb,UAAU,eAAe;IACzB,oBAAoB,0BAA0B;IAC9C,wBAAwB,mDAAmD;IAC3E,eAAe,oBAAoB;IACnC,cAAc,mBAAmB;IACjC,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;IACjC,YAAY,uBAAuB;IACnC,MAAM,WAAW;IACjB,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,gBAAgB,qBAAqB;IACrC,IAAI,SAAS;IACb,gBAAgB,qBAAqB;IACrC,cAAc,mBAAmB;IACjC,oBAAoB,yBAAyB;IAC7C,gBAAgB,qBAAqB;IACrC,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,uBAAuB,8BAA8B;IACrD,uBAAuB,uCAAuC;IAC9D,oBAAoB,yBAAyB;IAC7C,kBAAkB,uBAAuB;IAEzC,cAAc,4CAA4C;IAI1D,+BAA+B,yBAAyB;IACxD,6BAA6B,uBAAuB;IACpD,sBAAsB,mBAAmB;IACzC,0BAA0B,0BAA0B;IAIpD,qBAAqB,0BAA0B;IAG/C,kBAAkB,iDAAiD;IACnE,cAAc,uBAAuB;IACrC,aAAa,sBAAsB;CACtC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ERROR = void 0;
|
|
4
|
+
exports.EvmErrorResult = EvmErrorResult;
|
|
5
|
+
/**
|
|
6
|
+
* The following code has been copied from
|
|
7
|
+
*
|
|
8
|
+
* https://github.com/ethereumjs/ethereumjs-monorepo/blob/master/packages/evm/src/exceptions.ts
|
|
9
|
+
*
|
|
10
|
+
* Since its not exported by the underyling package, but we need it to hack on the VM to add foundry cheatcodes.
|
|
11
|
+
*/
|
|
12
|
+
function EvmErrorResult(error, gasUsed) {
|
|
13
|
+
return {
|
|
14
|
+
returnValue: new Uint8Array(0),
|
|
15
|
+
executionGasUsed: gasUsed,
|
|
16
|
+
exceptionError: error
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
var ERROR;
|
|
20
|
+
(function (ERROR) {
|
|
21
|
+
ERROR["OUT_OF_GAS"] = "out of gas";
|
|
22
|
+
ERROR["CODESTORE_OUT_OF_GAS"] = "code store out of gas";
|
|
23
|
+
ERROR["CODESIZE_EXCEEDS_MAXIMUM"] = "code size to deposit exceeds maximum code size";
|
|
24
|
+
ERROR["STACK_UNDERFLOW"] = "stack underflow";
|
|
25
|
+
ERROR["STACK_OVERFLOW"] = "stack overflow";
|
|
26
|
+
ERROR["INVALID_JUMP"] = "invalid JUMP";
|
|
27
|
+
ERROR["INVALID_OPCODE"] = "invalid opcode";
|
|
28
|
+
ERROR["OUT_OF_RANGE"] = "value out of range";
|
|
29
|
+
ERROR["REVERT"] = "revert";
|
|
30
|
+
ERROR["STATIC_STATE_CHANGE"] = "static state change";
|
|
31
|
+
ERROR["INTERNAL_ERROR"] = "internal error";
|
|
32
|
+
ERROR["CREATE_COLLISION"] = "create collision";
|
|
33
|
+
ERROR["STOP"] = "stop";
|
|
34
|
+
ERROR["REFUND_EXHAUSTED"] = "refund exhausted";
|
|
35
|
+
ERROR["VALUE_OVERFLOW"] = "value overflow";
|
|
36
|
+
ERROR["INSUFFICIENT_BALANCE"] = "insufficient balance";
|
|
37
|
+
ERROR["INVALID_BEGINSUB"] = "invalid BEGINSUB";
|
|
38
|
+
ERROR["INVALID_RETURNSUB"] = "invalid RETURNSUB";
|
|
39
|
+
ERROR["INVALID_JUMPSUB"] = "invalid JUMPSUB";
|
|
40
|
+
ERROR["INVALID_BYTECODE_RESULT"] = "invalid bytecode deployed";
|
|
41
|
+
ERROR["INITCODE_SIZE_VIOLATION"] = "initcode exceeds max initcode size";
|
|
42
|
+
ERROR["INVALID_INPUT_LENGTH"] = "invalid input length";
|
|
43
|
+
ERROR["INVALID_EOF_FORMAT"] = "invalid EOF format";
|
|
44
|
+
ERROR["AUTHCALL_UNSET"] = "attempting to AUTHCALL without AUTH set";
|
|
45
|
+
// BLS errors
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
47
|
+
ERROR["BLS_12_381_INVALID_INPUT_LENGTH"] = "invalid input length";
|
|
48
|
+
ERROR["BLS_12_381_POINT_NOT_ON_CURVE"] = "point not on curve";
|
|
49
|
+
ERROR["BLS_12_381_INPUT_EMPTY"] = "input is empty";
|
|
50
|
+
ERROR["BLS_12_381_FP_NOT_IN_FIELD"] = "fp point not in field";
|
|
51
|
+
// BN254 errors
|
|
52
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
53
|
+
ERROR["BN254_FP_NOT_IN_FIELD"] = "fp point not in field";
|
|
54
|
+
// Point Evaluation Errors
|
|
55
|
+
ERROR["INVALID_COMMITMENT"] = "kzg commitment does not match versioned hash";
|
|
56
|
+
ERROR["INVALID_INPUTS"] = "kzg inputs invalid";
|
|
57
|
+
ERROR["INVALID_PROOF"] = "kzg proof invalid";
|
|
58
|
+
})(ERROR || (exports.ERROR = ERROR = {}));
|
|
59
|
+
//# sourceMappingURL=exceptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exceptions.js","sourceRoot":"","sources":["../../../src/utils/ethereumjs_internal/exceptions.ts"],"names":[],"mappings":";;;AAUA,wCAMC;AAdD;;;;;;GAMG;AAEH,SAAgB,cAAc,CAAC,KAAe,EAAE,OAAe;IAC3D,OAAO;QACH,WAAW,EAAE,IAAI,UAAU,CAAC,CAAC,CAAC;QAC9B,gBAAgB,EAAE,OAAO;QACzB,cAAc,EAAE,KAAK;KACxB,CAAC;AACN,CAAC;AAED,IAAY,KA0CX;AA1CD,WAAY,KAAK;IACb,kCAAyB,CAAA;IACzB,uDAA8C,CAAA;IAC9C,oFAA2E,CAAA;IAC3E,4CAAmC,CAAA;IACnC,0CAAiC,CAAA;IACjC,sCAA6B,CAAA;IAC7B,0CAAiC,CAAA;IACjC,4CAAmC,CAAA;IACnC,0BAAiB,CAAA;IACjB,oDAA2C,CAAA;IAC3C,0CAAiC,CAAA;IACjC,8CAAqC,CAAA;IACrC,sBAAa,CAAA;IACb,8CAAqC,CAAA;IACrC,0CAAiC,CAAA;IACjC,sDAA6C,CAAA;IAC7C,8CAAqC,CAAA;IACrC,gDAAuC,CAAA;IACvC,4CAAmC,CAAA;IACnC,8DAAqD,CAAA;IACrD,uEAA8D,CAAA;IAC9D,sDAA6C,CAAA;IAC7C,kDAAyC,CAAA;IAEzC,mEAA0D,CAAA;IAE1D,aAAa;IACb,uEAAuE;IACvE,iEAAwD,CAAA;IACxD,6DAAoD,CAAA;IACpD,kDAAyC,CAAA;IACzC,6DAAoD,CAAA;IAEpD,eAAe;IACf,uEAAuE;IACvE,wDAA+C,CAAA;IAE/C,0BAA0B;IAC1B,4EAAmE,CAAA;IACnE,8CAAqC,CAAA;IACrC,4CAAmC,CAAA;AACvC,CAAC,EA1CW,KAAK,qBAAL,KAAK,QA0ChB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/ethereumjs_internal/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./exceptions"), exports);
|
|
18
|
+
__exportStar(require("./opcodes"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/ethereumjs_internal/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,4CAA0B"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Address } from "@ethereumjs/util";
|
|
2
|
+
/**
|
|
3
|
+
* The following code has been copied from
|
|
4
|
+
*
|
|
5
|
+
* https://github.com/ethereumjs/ethereumjs-monorepo/blob/master/packages/evm/src/opcodes/util.ts
|
|
6
|
+
*
|
|
7
|
+
* Since its not exported by the underyling package, but we need it to hack on the VM to add foundry cheatcodes.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Wraps error message as EvmError
|
|
11
|
+
*/
|
|
12
|
+
export declare function trap(err: string): never;
|
|
13
|
+
/**
|
|
14
|
+
* Returns an overflow-safe slice of an array. It right-pads
|
|
15
|
+
* the data with zeros to `length`.
|
|
16
|
+
*/
|
|
17
|
+
export declare function getDataSlice(data: Uint8Array, offset: bigint, length: bigint): Uint8Array;
|
|
18
|
+
/**
|
|
19
|
+
* Writes data returned by evm.call* methods to memory
|
|
20
|
+
*/
|
|
21
|
+
export declare function writeCallOutput(runState: any, outOffset: bigint, outLength: bigint): void;
|
|
22
|
+
/**
|
|
23
|
+
* Returns an Address object from a bigint address (they are stored as bigints on the stack)
|
|
24
|
+
* @param value The bigint address
|
|
25
|
+
*/
|
|
26
|
+
export declare function createAddressFromBigInt(value: bigint): Address;
|
|
27
|
+
/**
|
|
28
|
+
* Create an address from a stack item (256 bit integer).
|
|
29
|
+
* This wrapper ensures that the value is masked to 160 bits.
|
|
30
|
+
* @param value 160-bit integer
|
|
31
|
+
*/
|
|
32
|
+
export declare function createAddressFromStackBigInt(value: bigint): Address;
|
|
33
|
+
//# sourceMappingURL=opcodes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opcodes.d.ts","sourceRoot":"","sources":["../../../src/utils/ethereumjs_internal/opcodes.ts"],"names":[],"mappings":"AACA,OAAO,EACH,OAAO,EAOV,MAAM,kBAAkB,CAAC;AAE1B;;;;;;GAMG;AAEH;;GAEG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAGvC;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,CAgBzF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAYzF;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAM9D;AAID;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGnE"}
|