Skip to content

Avoid usage of __CPROVER_havoc_object #653

Open
@adpaco-aws

Description

@adpaco-aws

A call to __CPROVER_havoc_object will overwrite an entire CBMC object. If the pointer being passed to write_unconstrained_data is part of a larger struct, CBMC will overwrite the larger struct:

void write_unconstrained_data(unsigned char *out, size_t len) {
assert(AWS_MEM_IS_WRITABLE(out, len));
// Currently we ignore the len parameter and just fill the entire buffer with unconstrained data.
// This is fine because it is strictly more general behavior than writing only len bytes.
__CPROVER_havoc_object(out);
}

Issues related: #652

Metadata

Metadata

Assignees

No one assigned

    Labels

    cbmcCBMC proof related work

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions