blob: 9d3513dc3f73962d7d37cdc6a5ba3af440448365 [file] [log] [blame]
// Copyright Microsoft and CHERIoT Contributors.
// SPDX-License-Identifier: MIT
#define TEST_NAME "Crash recovery (outer compartment)"
#include "crash_recovery.h"
#include <cheri.hh>
#include <errno.h>
void test_crash_recovery_outer(int)
{
debug_log(
"Calling crashy compartment from compartment with no error handler");
CHERI::Capability<void> ret = test_crash_recovery_inner(0);
check_stack();
TEST(ret.is_valid() == false, "Error returned a tagged capability {}", ret);
TEST(ret.address() == -1,
"Error return path returned number that is not -1: {}",
ret.address());
debug_log("Calling crashy compartment returned to compartment with no "
"error handler. Return value: {}",
ret);
}