Skip to content

Commit 4956c7e

Browse files
author
Hernan Gatta
committed
xtest: regression 1100: add OCALL tests
Add 10 tests that check the behaviour of the OCALL functionality. The tests in question are detailed below: OCALL without parameters: ------------------------- Performs an OCALL without any parameters. OCALL with value parameters (in/inout/out/in): ---------------------------------------------- Performs an OCALL with value parameters and in parameter directions, verifying that the values are transferred correctly between normal world and secure world. OCALL with memref parameters (in/inout/out/in): ----------------------------------------------- Performs an OCALL with memref parameters and in parameter directions, verifying that the bufers are transferred correctly between normal world and secure world. Close session during OCALL: --------------------------- Performs an OCALL that closes the session through which the original function invocation was performed. Ascertains that the OCALL is cancelled and that the session is closed. Finalize context during OCALL: ------------------------------ Performs an OCALL that finalizes the context through which the original function invocation was performed. Ascertains that the OCALL is cancelled and that the session that was originally used to perform the function invocation is closed as a result of the context being finalized. NULL memref param: ------------------ Verifies that OCALLs can carry memref parameters with NULL buffers in all directions. NULL memref param (mixed params): --------------------------------- Verifies that OCALLs can carry memref parameters with NULL buffers alongside value and non-NULL memref parameters in various directions. NULL memref param (invalid params): ----------------------------------- Verifies that attempting to perform an OCALL with memref parameters with a NULL buffer and a non-zero size and with a non-NULL buffer and a zero size fails at the Internal Core API layer. OCALL during session open: -------------------------- Ascertains that the CA can receive an OCALL during session open. Finalize context during session open OCALL: ------------------------------------------- Performs an OCALL during session open that finalizes the context via which the session was being opened, verifies that the OCALL is cancelled, and that the session fails to open. Signed-off-by: Hernan Gatta <hegatta@microsoft.com> Acked-by: Jerome Forissier <jerome@forissier.org>
1 parent 159e295 commit 4956c7e

File tree

17 files changed

+1206
-1
lines changed

17 files changed

+1206
-1
lines changed

Android.mk

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,8 @@ LOCAL_C_INCLUDES += $(LOCAL_PATH)/host/xtest \
103103
$(LOCAL_PATH)/ta/aes_perf/include \
104104
$(LOCAL_PATH)/ta/socket/include \
105105
$(LOCAL_PATH)/ta/sdp_basic/include \
106-
$(LOCAL_PATH)/ta/tpm_log_test/include
106+
$(LOCAL_PATH)/ta/tpm_log_test/include \
107+
$(LOCAL_PATH)/ta/ocall/include
107108

108109
# Include configuration file generated by OP-TEE OS (CFG_* macros)
109110
LOCAL_CFLAGS += -I $(TA_DEV_KIT_DIR)/host_include -include conf.h

host/xtest/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,10 @@ if (CFG_PKCS11_TA)
110110
list (APPEND SRC pkcs11_1000.c)
111111
endif()
112112

113+
if (CFG_OCALL)
114+
list (APPEND SRC regression_1100.c)
115+
endif()
116+
113117
################################################################################
114118
# Built binary
115119
################################################################################

host/xtest/Makefile

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,10 @@ srcs += gp_7000.c \
110110
gp_9000.c
111111
endif
112112

113+
ifeq ($(CFG_OCALL),y)
114+
srcs += regression_1100.c
115+
endif
116+
113117
objs := $(patsubst %.c,$(out-dir)/xtest/%.o, $(srcs))
114118

115119
CFLAGS += -I./
@@ -136,6 +140,7 @@ CFLAGS += -I../../ta/aes_perf/include
136140
CFLAGS += -I../../ta/socket/include
137141
CFLAGS += -I../../ta/sdp_basic/include
138142
CFLAGS += -I../../ta/tpm_log_test/include
143+
CFLAGS += -I../../ta/ocall/include
139144

140145
ifdef CFG_GP_PACKAGE_PATH
141146
CFLAGS += -I../../ta/GP_TTA_Arithmetical

0 commit comments

Comments
 (0)