Skip to content

Tracking updates to shared data in context-sensitive analyses #20

@khilangudka

Description

@khilangudka

SOAAP currently understands when modifications occur to shared data, such as global variables, but does not track these modifications. Up until now this has been sufficient, but with the new context-sensitive function-pointer inference analysis, we will need to keep track of assignments to shared function-pointer variables that occur in different contexts. For example, we currently cannot infer that fp points to bar in the sandbox:

void (*fp)(void);

__soaap_sandbox_persistent("box")
void foo() {
fp(); // we can't currently infer that fp points to bar()
}

void bar() { ../ }

int main(int argc, char** argv) {
fp = bar;
__soaap_create_persistent_sandbox("box");
foo();
}

In general we will want to be able to model different sharing semantics for different sandboxing models (e.g. copy-on-write vs no sharing).

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