Header menu logo B2R2

CallSite Type

Call site information of an abstract vertex in a control flow graph. Typically, there is a single concrete caller vertex that calls an abstract vertex. But in some cases, such as Continuation-Passing Style (CPS) patterns found in EVM binaries, an abstract vertex can have a chain of callers.

Union cases

Union case Description

ChainedCallSite(history, caller)

Full Usage: ChainedCallSite(history, caller)

Parameters:

Chained call history from a callee to its original caller. The history always ends with a LeafCallSite, and the caller address is the address of the caller vertex, not the call site address. This is particularly useful to represent CPS patterns present in EVM binaries.

history : CallSite
caller : Addr

LeafCallSite callsite

Full Usage: LeafCallSite callsite

Parameters:

Call site address of a concrete vertex. This serves as an end point of a call site chain.

callsite : Addr

Instance members

Instance member Description

this.CallSiteAddress

Full Usage: this.CallSiteAddress

Returns: Addr

Returns the address of the leaf call site.

Returns: Addr

this.IsChainedCallSite

Full Usage: this.IsChainedCallSite

Returns: bool
Returns: bool

this.IsLeafCallSite

Full Usage: this.IsLeafCallSite

Returns: bool
Returns: bool

Type something to start searching.