Re: [PATCH 2/4] selftests/sgx: Do not attempt enclave build without valid enclave

Dave Hansen
2022-01-28T19:03:56Z

On 1/28/22 10:23, Reinette Chatre wrote:
> It is not possible to build an enclave if it was not possible to load
> the binary from which it should be constructed. Do not attempt
> to make further progress but instead return with failure.
>
> Fixes: 1b35eb719549 ("selftests/sgx: Encpsulate the test enclave creation")
> Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>

Acked-by: Dave Hansen <dave.hansen@linux.intel.com>

> tools/testing/selftests/sgx/main.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/sgx/main.c b/tools/testing/selftests/sgx/main.c
> index 370c4995f7c4..a7cd2c3e6f7e 100644
> --- a/tools/testing/selftests/sgx/main.c
> +++ b/tools/testing/selftests/sgx/main.c
> @@ -147,6 +147,7 @@ static bool setup_test_encl(unsigned long heap_size, struct encl *encl,
> if (!encl_load("test_encl.elf", encl, heap_size)) {
> encl_delete(encl);
> TH_LOG("Failed to load the test enclave.\n");
> + return false;
> }
>
> if (!encl_measure(encl))

One more sentence to add to the changelog:

A "return false" from setup_test_encl() is expected to trip an
ASSERT_TRUE() and abort the rest of the test.

That at least saves a reviewer from needing to check what the callers see.