-
Notifications
You must be signed in to change notification settings - Fork 478
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
State Introspection API #1775
State Introspection API #1775
Conversation
Should make it possible to track movements between state lists
This will break the state merging plugin (but I'll fix it eventually)
Make warning messages better Debug GH actions Revert "Debug GH actions" This reverts commit f575eea. Fix some pycharm-detected problems Make symbolic function error message more verbose Add solve to published events Loud errors in callbacks by default Trying to find out what's killing truffle Revert "Trying to find out what's killing truffle" This reverts commit 8bd0224. Revert "Make symbolic function error message more verbose" This reverts commit bd3e90c. Debugging Truffle Restore introspector Add try_except on every callback Unconditionally print error message Add traceback Update event.py Debug subscriptions Debug arguments to callbacks Different debug msg 1ast arg Print statement debugging... Pass in `None` as state Revert "Add try_except on every callback" This reverts commit 1c689dd.
Forgot did_solve Remove traceback
58593c3
to
228b1f8
Compare
The problem with usign tee is that only the first callback to use the iterator can write to it. In `ready_states`, the `save_state` after the `yield` statement is ignored for all others.
Now Manticore will give up and return the original argument instead of blowing up if it can't clone the generator
We now fire `introspect` for the first time before we have any states
I think this is ready to go. I updated from |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
* master: Change types.FunctionType=<class 'function'> (#1803) Fix test regressions (#1804) State Introspection API (#1775) Fix EVM account existence checks for selfdestruct and call (#1801) Add partial implementation of sendto syscall (#1791) crytic-compile: use latest release (#1795) Update gas metering for calls to empty accounts (#1774) Fix BitVec with symbolic offset and fix TranslatorSmtlib.unique thread safety (#1792) Fix Coveralls for external PRs (#1794) Convert plugin list to dict (#1781) Symbolic-length reads from symbolic sockets (#1786) Removing Thread unsafe global caching (#1788) Add Manticore native State-specific hooks (#1777)
* master: (43 commits) Syscall specific hooks (#2389) TUI Support Infrastructure (#1620) Fix coveralls upload (#2387) docs: fix simple typo, straigth -> straight (#2381) Attempt to allow symbolic balances from the start (#1818) Fix state.cpu.PC member (#1825) Bump black and mypy (#1824) Manticore 0.3.5 (#1808) Fix yices timeout argument (#1817) Detect default solver (#1820) Ignore Gas Calculations by Default (#1816) native/cpu/x86: Add support for CPUID EAX=80000000h (#1811) Change types.FunctionType=<class 'function'> (#1803) Fix test regressions (#1804) State Introspection API (#1775) Fix EVM account existence checks for selfdestruct and call (#1801) Add partial implementation of sendto syscall (#1791) crytic-compile: use latest release (#1795) Update gas metering for calls to empty accounts (#1774) Fix BitVec with symbolic offset and fix TranslatorSmtlib.unique thread safety (#1792) ...
Adds an API to query Manticore's state lists. Closes #1736
TODO: