perms1.c
up: index
prev: bounds8.c
next: const0.c
#include <inttypes.h>
#include <cheriintrin.h>
#include <stdio.h>
int main()
{
int v = 42;
int *x = &v;
x = cheri_perms_and(x, 0l);
*x = 0;
}
Experimental data (what does this mean?)
cerberus-cheri
cerberus-cheri-no-pnvi
cerberus-cheri-revocation
cerberus-cheri-revocation-no-pnvi
cerberus-cheri-cornucopia
cerberus-cheri-cornucopia-no-pnvi exit codes: compile 0 / execute 1
Undefined {ub: "UB_CHERI_InsufficientPermissions", loc: "<10:5--10:11>"}
clang-riscv-O3-bounds-subobject-safe exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault caused by register ca0.
main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 main () at tests/cheri/perms1.c:10
v = -787013632
x = 0x3fffdfff8c [,0x3fffdfff8c-0x3fffdfff90]
clang-riscv-O0-bounds-subobject-safe
clang-riscv-O0-bounds-aggressive
clang-riscv-O0-bounds-very-aggressive
clang-riscv-O0-bounds-everywhere-unsafe exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault caused by register ca1.
0x0000000000101720 in main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 0x0000000000101720 in main () at tests/cheri/perms1.c:10
v = 42
x = 0x3fffdfff6c [,0x3fffdfff6c-0x3fffdfff70]
clang-riscv-O3-bounds-conservative exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault caused by register ca0.
main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 main () at tests/cheri/perms1.c:10
x = 0x3fffdfff8c [,0x3fffdfff8c-0x3fffdfff90]
v = -787013632
clang-riscv-O0-bounds-conservative
clang-riscv-O0-bounds-references-only exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault caused by register ca1.
0x000000000010171c in main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 0x000000000010171c in main () at tests/cheri/perms1.c:10
v = 42
x = 0x3fffdfff6c [,0x3fffdfff6c-0x3fffdfff70]
clang-morello-O3-bounds-subobject-safe exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault.
main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 main () at tests/cheri/perms1.c:10
v = -1336033280
x = 0xfffffff7ff7c [,0xfffffff7ff7c-0xfffffff7ff80]
clang-morello-O0-bounds-subobject-safe
clang-morello-O0-bounds-aggressive
clang-morello-O0-bounds-very-aggressive
clang-morello-O0-bounds-everywhere-unsafe exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault.
0x00000000001106e4 in main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 0x00000000001106e4 in main () at tests/cheri/perms1.c:10
v = 42
x = 0xfffffff7ff7c [,0xfffffff7ff7c-0xfffffff7ff80]
clang-morello-O3-bounds-conservative exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault.
main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 main () at tests/cheri/perms1.c:10
x = 0xfffffff7ff7c [,0xfffffff7ff7c-0xfffffff7ff80]
v = -1336033280
clang-morello-O0-bounds-conservative
clang-morello-O0-bounds-references-only exit codes: compile 0 / execute 1
Program received signal SIGPROT, CHERI protection violation.
Capability permission fault.
0x00000000001106e0 in main () at tests/cheri/perms1.c:10
10 *x = 0;
#0 0x00000000001106e0 in main () at tests/cheri/perms1.c:10
v = 42
x = 0xfffffff7ff7c [,0xfffffff7ff7c-0xfffffff7ff80]
gcc-morello-O0
gcc-morello-O3 exit codes: compile 0 / execute 137