Skip to content

Handling Multiple Paths in a Function #17

@NicolaasWeideman

Description

@NicolaasWeideman

A function with multiple paths will result in multiple dead ended states after symbolic execution.
Each of these will have its own return value.
At the moment, we combine these into a claripy.Or operation (here) and take this as the symbolic return expression of the function.

In retrospect, I don't think this makes sense.
One possible alternative approach is that we create multiple ExtractedSymExpr objects (one per return state) and return all of these for SymbolicExpressionExtractor.extract.

However, since SymbolicExpressionExtractor.extract is a pretty central part to the project, we may want to think what the best way forward is.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions