History log of /optee_os/core/tee/ (Results 26 – 50 of 592)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
7ae1573618-Jun-2024 Jens Wiklander <jens.wiklander@linaro.org>

core: ree_fs: fix dirfile handle refcount

The counter ree_fs_dirh_refcount is used to determine when ree_fs_dirh
should be free, not as a guarantee that ree_fs_dirh is still valid. This
wasn't the a

core: ree_fs: fix dirfile handle refcount

The counter ree_fs_dirh_refcount is used to determine when ree_fs_dirh
should be free, not as a guarantee that ree_fs_dirh is still valid. This
wasn't the assumption in ree_fs_readdir_rpc(), ree_fs_closedir_rpc(),
and ree_fs_opendir_rpc(). So fix that by using get_dirh() in
ree_fs_readdir_rpc as needed.

Reported-by: Gavin Liu <gavin.liu@mediatek.com>
Closes: https://github.com/OP-TEE/optee_os/issues/6895
Fixes: ace6039fd434 ("core: REE_FS: refcount dirfile handle")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/core/arch/arm/crypto/aes_modes_armv8a_ce_a64.S
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/stmm_sp.h
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/stmm_sp.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/mm/sub.mk
/optee_os/core/arch/arm/mm/tee_pager.c
/optee_os/core/arch/arm/plat-corstone1000/main.c
/optee_os/core/arch/arm/plat-corstone1000/platform_config.h
/optee_os/core/arch/arm/plat-hikey/platform_config.h
/optee_os/core/arch/arm/plat-mediatek/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/riscv/include/kernel/stmm_sp.h
/optee_os/core/arch/riscv/kernel/boot.c
/optee_os/core/arch/riscv/kernel/entry.S
/optee_os/core/arch/riscv/plat-virt/conf.mk
/optee_os/core/crypto.mk
/optee_os/core/crypto/signed_hdr.c
/optee_os/core/drivers/atmel_shdwc.c
/optee_os/core/drivers/clk/sam/at91_pmc.h
/optee_os/core/drivers/crypto/hisilicon/crypto.mk
/optee_os/core/drivers/crypto/hisilicon/hisi_qm.h
/optee_os/core/drivers/crypto/hisilicon/hpre_dh.c
/optee_os/core/drivers/crypto/hisilicon/hpre_dh.h
/optee_os/core/drivers/crypto/hisilicon/hpre_main.c
/optee_os/core/drivers/crypto/hisilicon/hpre_main.h
/optee_os/core/drivers/crypto/hisilicon/sec_hash.c
/optee_os/core/drivers/crypto/hisilicon/sec_hash.h
/optee_os/core/drivers/crypto/hisilicon/sec_hmac.c
/optee_os/core/drivers/crypto/hisilicon/sec_main.c
/optee_os/core/drivers/crypto/hisilicon/sec_main.h
/optee_os/core/drivers/crypto/hisilicon/sub.mk
/optee_os/core/drivers/crypto/se050/adaptors/include/se050.h
/optee_os/core/drivers/crypto/se050/adaptors/utils/scp_config.c
/optee_os/core/drivers/crypto/stm32/cipher.c
/optee_os/core/drivers/ffa_console.c
/optee_os/core/drivers/firewall/firewall.c
/optee_os/core/drivers/firewall/sub.mk
/optee_os/core/drivers/pm/sam/at91_pm.c
/optee_os/core/drivers/pm/sam/at91_pm.h
/optee_os/core/drivers/pm/sam/pm-defines.c
/optee_os/core/drivers/pm/sam/pm_suspend.S
/optee_os/core/drivers/regulator/regulator.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/drivers/atmel_shdwc.h
/optee_os/core/include/drivers/ffa_console.h
/optee_os/core/include/drivers/firewall.h
/optee_os/core/include/drivers/firewall_device.h
/optee_os/core/include/drivers/pm/sam/atmel_pm.h
/optee_os/core/include/drivers/sam/sama7-ddr.h
/optee_os/core/include/kernel/boot.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/dt_driver.h
/optee_os/core/include/kernel/interrupt.h
/optee_os/core/include/kernel/mutex.h
/optee_os/core/include/kernel/pseudo_ta.h
/optee_os/core/include/kernel/spinlock.h
/optee_os/core/include/kernel/tee_ta_manager.h
/optee_os/core/include/kernel/user_mode_ctx_struct.h
/optee_os/core/include/kernel/user_ta.h
/optee_os/core/include/mm/core_mmu.h
/optee_os/core/include/mm/tee_mm.h
/optee_os/core/kernel/boot.c
/optee_os/core/kernel/callout.c
/optee_os/core/kernel/console.c
/optee_os/core/kernel/dt.c
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/pseudo_ta.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/kernel/thread.c
/optee_os/core/kernel/ubsan.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/lib/libtomcrypt/aes.c
/optee_os/core/lib/libtomcrypt/aes_accel.c
/optee_os/core/lib/libtomcrypt/rsa.c
/optee_os/core/lib/libtomcrypt/src/ciphers/aes/aes.c
/optee_os/core/lib/libtomcrypt/src/ciphers/aes/aes_desc.c
/optee_os/core/lib/libtomcrypt/src/ciphers/aes/aesni.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_memory.c
/optee_os/core/lib/libtomcrypt/src/encauth/ccm/ccm_test.c
/optee_os/core/lib/libtomcrypt/src/encauth/gcm/gcm_memory.c
/optee_os/core/lib/libtomcrypt/src/hashes/tiger.c
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_cfg.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_cipher.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_custom.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_hash.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_mac.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_macros.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_pk.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_pkcs.h
/optee_os/core/lib/libtomcrypt/src/headers/tomcrypt_private.h
/optee_os/core/lib/libtomcrypt/src/math/fp/ltc_ecc_fp_mulmod.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_all_ciphers.c
/optee_os/core/lib/libtomcrypt/src/misc/crypt/crypt_register_all_hashes.c
/optee_os/core/lib/libtomcrypt/src/misc/pkcs5/pkcs_5_test.c
/optee_os/core/lib/libtomcrypt/src/misc/ssh/ssh_encode_sequence_multi.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/choice/der_decode_choice.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/custom_type/der_encode_custom_type.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/sequence/der_encode_sequence_ex.c
/optee_os/core/lib/libtomcrypt/src/pk/asn1/der/utf8/der_decode_utf8_string.c
/optee_os/core/lib/libtomcrypt/src/pk/dsa/dsa_import.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_get_key.c
/optee_os/core/lib/libtomcrypt/src/pk/ecc/ecc_import_pkcs8.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_decode.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_oaep_encode.c
/optee_os/core/lib/libtomcrypt/src/pk/pkcs1/pkcs_1_v1_5_encode.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_decrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_encrypt_key.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_verify_hash.c
/optee_os/core/lib/libtomcrypt/src/prngs/fortuna.c
/optee_os/core/lib/libtomcrypt/src/prngs/rng_get_bytes.c
/optee_os/core/lib/libtomcrypt/sub.mk
/optee_os/core/lib/scmi-server/sub.mk
/optee_os/core/lib/zlib/sub.mk
/optee_os/core/mm/core_mmu.c
/optee_os/core/mm/mobj_dyn_shm.c
/optee_os/core/mm/sub.mk
/optee_os/core/mm/tee_mm.c
tee_ree_fs.c
/optee_os/lib/libutee/tee_api_operations.c
/optee_os/lib/libutils/ext/include/fault_mitigation.h
/optee_os/lib/libutils/ext/include/util.h
/optee_os/lib/libutils/isoc/sub.mk
/optee_os/mk/checkconf.mk
/optee_os/mk/config.mk
/optee_os/scripts/ftrace_format.py
68ac62ef03-Apr-2024 Sami Tolvanen <samitolvanen@google.com>

core: add CFG_RSA_PUB_EXPONENT_3

When generating RSA key pairs, OP-TEE currently enforces a minimum public
exponent size of 65537 per NIST SP800-56B recommendations. However, AOSP
KeyMint VTS (Encry

core: add CFG_RSA_PUB_EXPONENT_3

When generating RSA key pairs, OP-TEE currently enforces a minimum public
exponent size of 65537 per NIST SP800-56B recommendations. However, AOSP
KeyMint VTS (EncryptionOperationsTest.RsaNoPaddingSuccess [1]) requires
implementations to support public exponent 3 for backwards compatibility.
Add CFG_RSA_PUB_EXPONENT_3 to allow public exponents >= 3.

Link: https://android.googlesource.com/platform/hardware/interfaces/+/refs/heads/main/security/keymint/aidl/vts/functional/KeyMintTest.cpp#5258 [1]
Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/.gitignore
/optee_os/CHANGELOG.md
/optee_os/MAINTAINERS
/optee_os/core/arch/arm/crypto/ghash-ce-core_a64.S
/optee_os/core/arch/arm/dts/at91-sama7g54_ek.dts
/optee_os/core/arch/arm/dts/fsl-lx2160a.dtsi
/optee_os/core/arch/arm/dts/sama5d2.dtsi
/optee_os/core/arch/arm/dts/sama7g5-pinfunc.h
/optee_os/core/arch/arm/dts/sama7g5.dtsi
/optee_os/core/arch/arm/dts/stm32mp251.dtsi
/optee_os/core/arch/arm/dts/stm32mp257f-ev1-ca35tdcid-rif.dtsi
/optee_os/core/arch/arm/dts/stm32mp257f-ev1.dts
/optee_os/core/arch/arm/include/arm.h
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/delay_arch.h
/optee_os/core/arch/arm/include/kernel/thread_private_arch.h
/optee_os/core/arch/arm/include/kernel/thread_spmc.h
/optee_os/core/arch/arm/include/optee_ffa.h
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/entry_a64.S
/optee_os/core/arch/arm/kernel/generic_timer.c
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/semihosting_a64.S
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/kernel/tee_time_arm_cntpct.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/kernel/timer_a64.c
/optee_os/core/arch/arm/kernel/virtualization.c
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/plat-amlogic/main.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2600.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2700.c
/optee_os/core/arch/arm/plat-bcm/main.c
/optee_os/core/arch/arm/plat-corstone1000/main.c
/optee_os/core/arch/arm/plat-d02/main.c
/optee_os/core/arch/arm/plat-d06/main.c
/optee_os/core/arch/arm/plat-hikey/conf.mk
/optee_os/core/arch/arm/plat-hikey/main.c
/optee_os/core/arch/arm/plat-hikey/platform_config.h
/optee_os/core/arch/arm/plat-hisilicon/main.c
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-k3/drivers/sec_proxy.c
/optee_os/core/arch/arm/plat-k3/main.c
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-marvell/main.c
/optee_os/core/arch/arm/plat-mediatek/conf.mk
/optee_os/core/arch/arm/plat-mediatek/main.c
/optee_os/core/arch/arm/plat-mediatek/platform_config.h
/optee_os/core/arch/arm/plat-nuvoton/main.c
/optee_os/core/arch/arm/plat-poplar/main.c
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-rockchip/main.c
/optee_os/core/arch/arm/plat-rpi3/main.c
/optee_os/core/arch/arm/plat-rzg/main.c
/optee_os/core/arch/arm/plat-rzn1/main.c
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-sam/freq.c
/optee_os/core/arch/arm/plat-sam/platform_sama5d2.c
/optee_os/core/arch/arm/plat-sam/platform_sama7g5.c
/optee_os/core/arch/arm/plat-sam/scmi_server.c
/optee_os/core/arch/arm/plat-sam/sub.mk
/optee_os/core/arch/arm/plat-sprd/console.c
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/shared_resources.c
/optee_os/core/arch/arm/plat-stm32mp2/conf.mk
/optee_os/core/arch/arm/plat-stm32mp2/main.c
/optee_os/core/arch/arm/plat-stm32mp2/stm32mp_pm.c
/optee_os/core/arch/arm/plat-stm32mp2/stm32mp_pm.h
/optee_os/core/arch/arm/plat-stm32mp2/sub.mk
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-synquacer/main.c
/optee_os/core/arch/arm/plat-synquacer/rng_pta.c
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-totalcompute/main.c
/optee_os/core/arch/arm/plat-uniphier/main.c
/optee_os/core/arch/arm/plat-versal/main.c
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/platform_config.h
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/arm/plat-zynqmp/main.c
/optee_os/core/arch/riscv/include/kernel/delay_arch.h
/optee_os/core/arch/riscv/include/kernel/thread_arch.h
/optee_os/core/arch/riscv/include/kernel/thread_private_arch.h
/optee_os/core/arch/riscv/include/mm/core_mmu_arch.h
/optee_os/core/arch/riscv/include/riscv.h
/optee_os/core/arch/riscv/include/sbi.h
/optee_os/core/arch/riscv/kernel/abort.c
/optee_os/core/arch/riscv/kernel/asm-defines.c
/optee_os/core/arch/riscv/kernel/boot.c
/optee_os/core/arch/riscv/kernel/csr_detect.S
/optee_os/core/arch/riscv/kernel/entry.S
/optee_os/core/arch/riscv/kernel/kern.ld.S
/optee_os/core/arch/riscv/kernel/sbi.c
/optee_os/core/arch/riscv/kernel/sbi_console.c
/optee_os/core/arch/riscv/kernel/semihosting_rv.S
/optee_os/core/arch/riscv/kernel/sub.mk
/optee_os/core/arch/riscv/kernel/tee_time_rdtime.c
/optee_os/core/arch/riscv/kernel/thread_arch.c
/optee_os/core/arch/riscv/kernel/thread_optee_abi_rv.S
/optee_os/core/arch/riscv/kernel/thread_rv.S
/optee_os/core/arch/riscv/mm/core_mmu_arch.c
/optee_os/core/arch/riscv/plat-spike/main.c
/optee_os/core/arch/riscv/plat-virt/conf.mk
/optee_os/core/arch/riscv/plat-virt/main.c
/optee_os/core/arch/riscv/riscv.mk
/optee_os/core/core.mk
/optee_os/core/crypto.mk
/optee_os/core/crypto/aes-gcm.c
/optee_os/core/drivers/atmel_rstc.c
/optee_os/core/drivers/atmel_shdwc.c
/optee_os/core/drivers/atmel_tcb.c
/optee_os/core/drivers/atmel_wdt.c
/optee_os/core/drivers/clk/clk-stm32mp13.c
/optee_os/core/drivers/clk/clk.c
/optee_os/core/drivers/clk/sam/at91_clk.h
/optee_os/core/drivers/clk/sam/at91_generated.c
/optee_os/core/drivers/clk/sam/at91_master.c
/optee_os/core/drivers/clk/sam/at91_pmc.c
/optee_os/core/drivers/clk/sam/at91_pmc.h
/optee_os/core/drivers/clk/sam/at91_sckc.c
/optee_os/core/drivers/clk/sam/at91_utmi.c
/optee_os/core/drivers/clk/sam/clk-sam9x60-pll.c
/optee_os/core/drivers/clk/sam/phy-sama7-utmi-clk.c
/optee_os/core/drivers/clk/sam/sama5d2_clk.c
/optee_os/core/drivers/clk/sam/sama7g5_clk.c
/optee_os/core/drivers/clk/sam/sub.mk
/optee_os/core/drivers/crypto/caam/acipher/caam_dh.c
/optee_os/core/drivers/crypto/caam/acipher/caam_dsa.c
/optee_os/core/drivers/crypto/caam/acipher/caam_ecc.c
/optee_os/core/drivers/crypto/caam/acipher/caam_prime_dsa.c
/optee_os/core/drivers/crypto/caam/acipher/caam_prime_rsa.c
/optee_os/core/drivers/crypto/caam/acipher/caam_rsa.c
/optee_os/core/drivers/crypto/caam/caam_ctrl.c
/optee_os/core/drivers/crypto/caam/caam_key.c
/optee_os/core/drivers/crypto/caam/caam_rng.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/crypto/caam/hal/common/hal_rng.c
/optee_os/core/drivers/crypto/caam/hal/imx_8q/hal_rng.c
/optee_os/core/drivers/crypto/caam/hash/caam_hash_mac.c
/optee_os/core/drivers/crypto/caam/include/caam_desc_defines.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_helper.h
/optee_os/core/drivers/crypto/caam/include/caam_key.h
/optee_os/core/drivers/crypto/caam/include/caam_trace.h
/optee_os/core/drivers/crypto/caam/include/caam_utils_status.h
/optee_os/core/drivers/crypto/caam/sub.mk
/optee_os/core/drivers/crypto/hisilicon/hisi_qm.c
/optee_os/core/drivers/crypto/hisilicon/hpre_main.c
/optee_os/core/drivers/crypto/hisilicon/include/hpre_main.h
/optee_os/core/drivers/crypto/hisilicon/sub.mk
/optee_os/core/drivers/crypto/se050/crypto.mk
/optee_os/core/drivers/crypto/stm32/authenc.c
/optee_os/core/drivers/crypto/stm32/cipher.c
/optee_os/core/drivers/crypto/stm32/stm32_cryp.c
/optee_os/core/drivers/crypto/stm32/stm32_saes.c
/optee_os/core/drivers/firewall/stm32_rif.c
/optee_os/core/drivers/firewall/stm32_rifsc.c
/optee_os/core/drivers/firewall/sub.mk
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/hfic.c
/optee_os/core/drivers/nvmem/nvmem_die_id.c
/optee_os/core/drivers/nvmem/nvmem_huk.c
/optee_os/core/drivers/nvmem/sub.mk
/optee_os/core/drivers/pinctrl/atmel_pio.c
/optee_os/core/drivers/pl011.c
/optee_os/core/drivers/regulator/regulator.c
/optee_os/core/drivers/regulator/regulator_gpio.c
/optee_os/core/drivers/riscv_zkr_rng.c
/optee_os/core/drivers/semihosting_console.c
/optee_os/core/drivers/stm32_fmc.c
/optee_os/core/drivers/stm32_hpdma.c
/optee_os/core/drivers/stm32_hsem.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/stm32_ipcc.c
/optee_os/core/drivers/stm32_rng.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/widevine_huk.c
/optee_os/core/include/console.h
/optee_os/core/include/crypto/crypto_impl.h
/optee_os/core/include/drivers/atmel_rstc.h
/optee_os/core/include/drivers/clk.h
/optee_os/core/include/drivers/clk_dt.h
/optee_os/core/include/drivers/regulator.h
/optee_os/core/include/drivers/semihosting_console.h
/optee_os/core/include/drivers/serial.h
/optee_os/core/include/drivers/stm32_i2c.h
/optee_os/core/include/drivers/stm32_rif.h
/optee_os/core/include/drivers/stm32mp1_rcc.h
/optee_os/core/include/drivers/stm32mp_dt_bindings.h
/optee_os/core/include/drivers/stpmic1_regulator.h
/optee_os/core/include/dt-bindings/clock/at91.h
/optee_os/core/include/dt-bindings/firewall/stm32mp25-rif.h
/optee_os/core/include/dt-bindings/firewall/stm32mp25-rifsc.h
/optee_os/core/include/initcall.h
/optee_os/core/include/io.h
/optee_os/core/include/kernel/boot.h
/optee_os/core/include/kernel/callout.h
/optee_os/core/include/kernel/delay.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/huk_subkey.h
/optee_os/core/include/kernel/mutex.h
/optee_os/core/include/kernel/mutex_pm_aware.h
/optee_os/core/include/kernel/notif.h
/optee_os/core/include/kernel/pm.h
/optee_os/core/include/kernel/semihosting.h
/optee_os/core/include/kernel/spinlock.h
/optee_os/core/include/kernel/timer.h
/optee_os/core/include/kernel/virtualization.h
/optee_os/core/include/kernel/wait_queue.h
/optee_os/core/include/mm/core_memprot.h
/optee_os/core/include/optee_rpc_cmd.h
/optee_os/core/kernel/callout.c
/optee_os/core/kernel/console.c
/optee_os/core/kernel/delay.c
/optee_os/core/kernel/mutex.c
/optee_os/core/kernel/notif.c
/optee_os/core/kernel/notif_default.c
/optee_os/core/kernel/panic.c
/optee_os/core/kernel/semihosting.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/tee_time.c
/optee_os/core/kernel/tee_time_ree.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/kernel/wait_queue.c
/optee_os/core/lib/libtomcrypt/gcm.c
/optee_os/core/lib/scmi-server/sub.mk
/optee_os/core/mm/core_mmu.c
/optee_os/core/pta/sub.mk
/optee_os/core/pta/widevine.c
tee_svc_cryp.c
/optee_os/core/tests/notif_test_wd.c
/optee_os/core/tests/sub.mk
/optee_os/ldelf/ta_elf.c
/optee_os/ldelf/ta_elf_rel.c
/optee_os/lib/libunw/sub.mk
/optee_os/lib/libutee/include/pta_widevine.h
/optee_os/lib/libutils/ext/include/speculation_barrier.h
/optee_os/lib/libutils/isoc/include/sys/fcntl.h
/optee_os/mk/config.mk
/optee_os/mk/lib.mk
/optee_os/ta/pkcs11/include/pkcs11_ta.h
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/pkcs11/src/pkcs11_token.c
/optee_os/ta/pkcs11/src/pkcs11_token.h
/optee_os/ta/pkcs11/src/processing.c
/optee_os/ta/pkcs11/src/processing.h
/optee_os/ta/pkcs11/src/processing_aes.c
/optee_os/ta/pkcs11/src/processing_asymm.c
/optee_os/ta/pkcs11/src/processing_symm.c
/optee_os/ta/pkcs11/src/token_capabilities.c
/optee_os/ta/remoteproc/src/remoteproc_core.c
59fea68316-Jan-2024 Igor Opaniuk <igor.opaniuk@foundries.io>

core: pta: drop benchmark

Drop Benchmark PTA as current implementation is non-function
and obsolete, and it's not supported anymore.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: E

core: pta: drop benchmark

Drop Benchmark PTA as current implementation is non-function
and obsolete, and it's not supported anymore.

Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>

show more ...

239fae3508-Jan-2024 Clement Faure <clement.faure@nxp.com>

core: tee: initialize dirfile|tadb_entry objects

Coverity reports many errors where dirfile_entry{} and tadb_entry{}
objects are used un-initialized.
Resolve these errors by setting these objects to

core: tee: initialize dirfile|tadb_entry objects

Coverity reports many errors where dirfile_entry{} and tadb_entry{}
objects are used un-initialized.
Resolve these errors by setting these objects to zero on declaration.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

2cc2a44c05-Jan-2024 Clement Faure <clement.faure@nxp.com>

core: check if binary to bignum conversion succeed

Check return value of crypto_bignum_bin2bn().

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jerome Forissier <jerome.forissier

core: check if binary to bignum conversion succeed

Check return value of crypto_bignum_bin2bn().

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

5ca2c36510-Jan-2024 Clement Faure <clement.faure@nxp.com>

core: remove unnecessary includes

Remove unnecessary includes.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander

core: remove unnecessary includes

Remove unnecessary includes.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/CHANGELOG.md
/optee_os/core/arch/arm/dts/sama5d2.dtsi
/optee_os/core/arch/arm/dts/stm32mp135f-dk.dts
/optee_os/core/arch/arm/dts/stm32mp151.dtsi
/optee_os/core/arch/arm/dts/stm32mp157a-dk1-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp157c-dk2-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ev1-scmi.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/tz_ssvce_pl310.h
/optee_os/core/arch/arm/include/mm/core_mmu_arch.h
/optee_os/core/arch/arm/kernel/abort.c
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/link_dummies_paged.c
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/kernel/tz_ssvce_pl310_a32.S
/optee_os/core/arch/arm/mm/core_mmu.c
/optee_os/core/arch/arm/mm/core_mmu_lpae.c
/optee_os/core/arch/arm/mm/mobj_dyn_shm.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2600.c
/optee_os/core/arch/arm/plat-aspeed/platform_ast2700.c
/optee_os/core/arch/arm/plat-corstone1000/main.c
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/imx_pl310.c
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul_rng.c
/optee_os/core/arch/arm/plat-k3/main.c
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-rcar/conf.mk
/optee_os/core/arch/arm/plat-rcar/main.c
/optee_os/core/arch/arm/plat-rcar/romapi.c
/optee_os/core/arch/arm/plat-rockchip/main.c
/optee_os/core/arch/arm/plat-rzn1/main.c
/optee_os/core/arch/arm/plat-sam/conf.mk
/optee_os/core/arch/arm/plat-sam/main.c
/optee_os/core/arch/arm/plat-sam/matrix.c
/optee_os/core/arch/arm/plat-sam/matrix.h
/optee_os/core/arch/arm/plat-sam/platform_config.h
/optee_os/core/arch/arm/plat-sam/sama7g5.h
/optee_os/core/arch/arm/plat-stm/main.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp2/main.c
/optee_os/core/arch/arm/plat-sunxi/main.c
/optee_os/core/arch/arm/plat-ti/main.c
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/platform_config.h
/optee_os/core/arch/arm/plat-zynq7k/main.c
/optee_os/core/arch/arm/tee/entry_fast.c
/optee_os/core/arch/riscv/include/kernel/thread_private_arch.h
/optee_os/core/arch/riscv/include/riscv.h
/optee_os/core/arch/riscv/kernel/entry.S
/optee_os/core/arch/riscv/kernel/thread_arch.c
/optee_os/core/arch/riscv/kernel/thread_optee_abi_rv.S
/optee_os/core/arch/riscv/mm/core_mmu_arch.c
/optee_os/core/crypto/aes-gcm-ghash-tbl.c
/optee_os/core/crypto/cbc-mac.c
/optee_os/core/crypto/crypto.c
/optee_os/core/crypto/sm3-hmac.c
/optee_os/core/crypto/sm3.c
/optee_os/core/drivers/clk/clk.c
/optee_os/core/drivers/clk/clk_dt.c
/optee_os/core/drivers/crypto/caam/acipher/caam_dsa.c
/optee_os/core/drivers/crypto/caam/acipher/caam_ecc.c
/optee_os/core/drivers/crypto/caam/caam_rng.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/crypto/caam/hal/common/hal_rng.c
/optee_os/core/drivers/crypto/caam/hal/common/registers/rng_regs.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_defines.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_helper.h
/optee_os/core/drivers/crypto/caam/include/caam_hal_rng.h
/optee_os/core/drivers/crypto/hisilicon/hisi_qm.c
/optee_os/core/drivers/crypto/hisilicon/include/hisi_qm.h
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/gpio/gpio.c
/optee_os/core/drivers/nvmem/atmel_sfc.c
/optee_os/core/drivers/nvmem/nvmem.c
/optee_os/core/drivers/nvmem/sub.mk
/optee_os/core/drivers/plic.c
/optee_os/core/drivers/remoteproc/stm32_remoteproc.c
/optee_os/core/drivers/remoteproc/sub.mk
/optee_os/core/drivers/scmi-msg/smt.c
/optee_os/core/drivers/stm32_gpio.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/stm32_iwdg.c
/optee_os/core/drivers/stm32_rng.c
/optee_os/core/drivers/stm32_uart.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/drivers/clk_dt.h
/optee_os/core/include/drivers/gic.h
/optee_os/core/include/drivers/i2c.h
/optee_os/core/include/drivers/nvmem.h
/optee_os/core/include/drivers/stm32_iwdg.h
/optee_os/core/include/drivers/stm32_remoteproc.h
/optee_os/core/include/dt-bindings/gpio/stm32mp_gpio.h
/optee_os/core/include/kernel/dt_driver.h
/optee_os/core/include/kernel/transfer_list.h
/optee_os/core/kernel/console.c
/optee_os/core/kernel/dt.c
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/ree_fs_ta.c
/optee_os/core/kernel/scall.c
/optee_os/core/kernel/tee_misc.c
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/kernel/tee_time.c
/optee_os/core/kernel/user_access.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/kernel/wait_queue.c
/optee_os/core/mm/mobj.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/device.c
/optee_os/core/pta/scmi.c
/optee_os/core/pta/stats.c
/optee_os/core/pta/stm32mp/remoteproc_pta.c
/optee_os/core/pta/stm32mp/rproc_pub_key.h
/optee_os/core/pta/stm32mp/sub.mk
/optee_os/core/pta/sub.mk
/optee_os/core/pta/system.c
/optee_os/core/pta/tests/aes_perf.c
/optee_os/core/pta/tests/dt_driver_test.c
tadb.c
tee_cryp_utl.c
tee_fs_key_manager.c
tee_fs_rpc.c
tee_obj.c
tee_pobj.c
tee_ree_fs.c
tee_svc_storage.c
tee_time_generic.c
/optee_os/ldelf/ta_elf.c
/optee_os/lib/libutee/include/elf_common.h
/optee_os/lib/libutee/include/remoteproc_pta.h
/optee_os/lib/libutee/include/utee_defines.h
/optee_os/mk/config.mk
/optee_os/scripts/checkpatch_inc.sh
/optee_os/ta/pkcs11/src/object.c
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/pkcs11/src/pkcs11_attributes.h
/optee_os/ta/pkcs11/src/processing.c
/optee_os/ta/pkcs11/sub.mk
/optee_os/ta/remoteproc/Makefile
/optee_os/ta/remoteproc/include/ta_remoteproc.h
/optee_os/ta/remoteproc/src/elf_parser.c
/optee_os/ta/remoteproc/src/elf_parser.h
/optee_os/ta/remoteproc/src/remoteproc_core.c
/optee_os/ta/remoteproc/src/sub.mk
/optee_os/ta/remoteproc/src/user_ta_header_defines.h
/optee_os/ta/remoteproc/sub.mk
/optee_os/ta/remoteproc/user_ta.mk
e92de4ca06-Dec-2023 Jerome Forissier <jerome.forissier@linaro.org>

core: rpmb: cleanup useless write_counter in struct rpmb_fat_entry

The write_counter field of the rpmb_fat_entry struct is set from the
RPMB device but never used. Rename it to 'unused' and cleanup

core: rpmb: cleanup useless write_counter in struct rpmb_fat_entry

The write_counter field of the rpmb_fat_entry struct is set from the
RPMB device but never used. Rename it to 'unused' and cleanup the
associated code.

Tested on QEMUv8 with:

$ make CFG_RPMB_FS=y CFG_RPMB_WRITE_KEY=y CFG_RPMB_TESKEY=y check

Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
Tested-by: Etienne Carriere <etienne.carriere@foss.st.com> (stm32mp157c-ev1 w/ RPMB)

show more ...

0f50ba5a28-Nov-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: fix objectUsage handling for persistent objects

Before this patch was the object usage field stored in the
non-persistent part of an object handle, regardless of whether the
storage object was

core: fix objectUsage handling for persistent objects

Before this patch was the object usage field stored in the
non-persistent part of an object handle, regardless of whether the
storage object was persistent. This prevents updates to this field from
being restored the next time the persistent object is opened. Updates to
the field are also not replicated to eventual other open handles for the
object. Fix this by storing the "usage" bits in a new obj_info_usage
field in struct tee_pobj for persistent objects. Updates to the field
are also written into secure storage to preserve the content the next
time the object is opened.

Fixes: b01047730e77 ("Open-source the TEE Core")
Closes: https://github.com/OP-TEE/optee_os/issues/6495
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/core/arch/arm/dts/stm32mp131.dtsi
/optee_os/core/arch/arm/dts/stm32mp135f-dk.dts
/optee_os/core/arch/arm/dts/stm32mp157a-dk1.dts
/optee_os/core/arch/arm/dts/stm32mp157c-dk2.dts
/optee_os/core/arch/arm/dts/stm32mp157c-ed1.dts
/optee_os/core/arch/arm/dts/stm32mp15xx-dkx.dtsi
/optee_os/core/arch/arm/include/ffa.h
/optee_os/core/arch/arm/include/kernel/thread_spmc.h
/optee_os/core/arch/arm/include/optee_ffa.h
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/plat-aspeed/conf.mk
/optee_os/core/arch/arm/plat-d06/conf.mk
/optee_os/core/arch/arm/plat-hikey/main.c
/optee_os/core/arch/arm/plat-hikey/spi_test.c
/optee_os/core/arch/arm/plat-rockchip/platform.c
/optee_os/core/arch/arm/plat-rockchip/platform_px30.c
/optee_os/core/arch/arm/plat-rockchip/platform_rk3399.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pwr.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pwr.h
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_syscfg.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_syscfg.h
/optee_os/core/arch/arm/plat-stm32mp1/plat_tzc400.c
/optee_os/core/arch/arm/plat-stm32mp1/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/arm/plat-vexpress/platform_config.h
/optee_os/core/core.mk
/optee_os/core/drivers/atmel_piobu.c
/optee_os/core/drivers/atmel_saic.c
/optee_os/core/drivers/atmel_wdt.c
/optee_os/core/drivers/bcm_hwrng.c
/optee_os/core/drivers/clk/clk.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_jr.c
/optee_os/core/drivers/crypto/hisilicon/hisi_qm.c
/optee_os/core/drivers/crypto/hisilicon/include/hisi_qm.h
/optee_os/core/drivers/crypto/hisilicon/sub.mk
/optee_os/core/drivers/crypto/sub.mk
/optee_os/core/drivers/dra7_rng.c
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/hisi_trng.c
/optee_os/core/drivers/imx_wdog.c
/optee_os/core/drivers/ls_dspi.c
/optee_os/core/drivers/ls_gpio.c
/optee_os/core/drivers/ls_i2c.c
/optee_os/core/drivers/regulator/regulator.c
/optee_os/core/drivers/regulator/regulator_gpio.c
/optee_os/core/drivers/regulator/stm32mp13_regulator_iod.c
/optee_os/core/drivers/regulator/sub.mk
/optee_os/core/drivers/smccc_trng.c
/optee_os/core/drivers/xiphera_trng.c
/optee_os/core/include/drivers/clk.h
/optee_os/core/include/drivers/gic.h
/optee_os/core/include/drivers/regulator.h
/optee_os/core/include/drivers/scmi-msg.h
/optee_os/core/include/drivers/stm32mp13_regulator_iod.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/dt_driver.h
/optee_os/core/include/kernel/interrupt.h
/optee_os/core/include/mm/core_mmu.h
/optee_os/core/include/tee/tee_pobj.h
/optee_os/core/include/tee/tee_svc_storage.h
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/interrupt.c
/optee_os/core/kernel/notif.c
/optee_os/core/kernel/notif_default.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/tpm.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/pta/bcm/gpio.c
tee_pobj.c
tee_svc_cryp.c
tee_svc_storage.c
/optee_os/lib/libmbedtls/core/ecc.c
/optee_os/lib/libutils/isoc/bget_malloc.c
/optee_os/mk/config.mk
/optee_os/ta/pkcs11/src/pkcs11_token.c
4527964219-Oct-2023 Vincent Mailhol <mailhol.vincent@wanadoo.fr>

core: tee_svc.c: allow to pass non-NULL memref of size 0

Allow TAs to pass non-NULL memref of size zero to other TAs by
changing the non-NULL pointer into a NULL one in such a case. GP TEE
Internal

core: tee_svc.c: allow to pass non-NULL memref of size 0

Allow TAs to pass non-NULL memref of size zero to other TAs by
changing the non-NULL pointer into a NULL one in such a case. GP TEE
Internal Core API does not forbid such memref parameter [1] whereas
the previous implementation generated a TEE_ERROR_BAD_PARAMETERS error
code when converting such memref buffer pointer into a physical memory
address.

This change is specifically needed to allow a TA to forward a REE
client memref for which GP TEE Client API explicitly allows such
non-NULL address zero sized memref [2]. It also makes the TA
implementation more flexible when dealing with its own memref.

[1] TEE Internal Core API Specification – Public Release v1.3.1,
§4.9.4 "Operation Parameters in the Internal Client API"
Table 4-15: "Interpretation of params[i] on Entry to Internal Client
API"

[2] TEE Client API Specification v1.0, §4.5.4 TEEC_RegisterSharedMemory,
paragraph "Implementers' Notes"

Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

9ea709a714-Nov-2023 Etienne Carriere <etienne.carriere@foss.st.com>

tree wide: CFG_INSECURE deprecates CFG_WARN_INSECURE

Replaces configuration switch CFG_WARN_INSECURE with CFG_INSECURE
The new name is better because the switch not only warns but also
change the OP

tree wide: CFG_INSECURE deprecates CFG_WARN_INSECURE

Replaces configuration switch CFG_WARN_INSECURE with CFG_INSECURE
The new name is better because the switch not only warns but also
change the OP-TEE core behavior as, for example, allowing absence
of secure storage rollback protection.

Suggested-by: Jérôme Forissier <jerome@forissier.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/.gitignore
/optee_os/CHANGELOG.md
/optee_os/MAINTAINERS
/optee_os/Makefile
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/dts/stm32mp25-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp251.dtsi
/optee_os/core/arch/arm/dts/stm32mp253.dtsi
/optee_os/core/arch/arm/dts/stm32mp255.dtsi
/optee_os/core/arch/arm/dts/stm32mp257.dtsi
/optee_os/core/arch/arm/dts/stm32mp257f-ev1.dts
/optee_os/core/arch/arm/dts/stm32mp25xc.dtsi
/optee_os/core/arch/arm/dts/stm32mp25xf.dtsi
/optee_os/core/arch/arm/dts/stm32mp25xxai-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp25xxak-pinctrl.dtsi
/optee_os/core/arch/arm/dts/stm32mp25xxal-pinctrl.dtsi
/optee_os/core/arch/arm/include/arm.h
/optee_os/core/arch/arm/include/arm32.h
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/crypto/ghash-ce-core.h
/optee_os/core/arch/arm/include/kernel/misc_arch.h
/optee_os/core/arch/arm/include/kernel/tee_l2cc_mutex.h
/optee_os/core/arch/arm/include/kernel/tlb_helpers.h
/optee_os/core/arch/arm/include/kernel/tz_proc_def.h
/optee_os/core/arch/arm/include/kernel/tz_ssvce_def.h
/optee_os/core/arch/arm/include/kernel/tz_ssvce_pl310.h
/optee_os/core/arch/arm/include/kernel/vfp.h
/optee_os/core/arch/arm/include/mm/core_mmu_arch.h
/optee_os/core/arch/arm/include/scmi/scmi_server.h
/optee_os/core/arch/arm/include/sm/optee_smc.h
/optee_os/core/arch/arm/include/sm/pm.h
/optee_os/core/arch/arm/include/sm/psci.h
/optee_os/core/arch/arm/include/sm/sm.h
/optee_os/core/arch/arm/include/sm/std_smc.h
/optee_os/core/arch/arm/include/sm/teesmc_opteed.h
/optee_os/core/arch/arm/include/sm/teesmc_opteed_macros.h
/optee_os/core/arch/arm/include/sm/watchdog_smc.h
/optee_os/core/arch/arm/include/tee/entry_fast.h
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/entry_a32.S
/optee_os/core/arch/arm/kernel/entry_a64.S
/optee_os/core/arch/arm/kernel/link_dummies_init.c
/optee_os/core/arch/arm/kernel/link_dummies_paged.c
/optee_os/core/arch/arm/kernel/stmm_sp.c
/optee_os/core/arch/arm/kernel/sub.mk
/optee_os/core/arch/arm/kernel/thread_optee_smc.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/plat-d06/conf.mk
/optee_os/core/arch/arm/plat-d06/platform_config.h
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/main.c
/optee_os/core/arch/arm/plat-nuvoton/main.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.h
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pwr.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pwr.h
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-stm32mp1/plat_tzc400.c
/optee_os/core/arch/arm/plat-stm32mp1/pm/psci.c
/optee_os/core/arch/arm/plat-stm32mp1/scmi_server.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/plat-stm32mp2/conf.mk
/optee_os/core/arch/arm/plat-stm32mp2/main.c
/optee_os/core/arch/arm/plat-stm32mp2/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp2/stm32_util.h
/optee_os/core/arch/arm/plat-stm32mp2/sub.mk
/optee_os/core/arch/arm/plat-synquacer/main.c
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/arm/plat-vexpress/main.c
/optee_os/core/arch/riscv/include/kernel/misc_arch.h
/optee_os/core/arch/riscv/include/kernel/tee_l2cc_mutex.h
/optee_os/core/arch/riscv/include/kernel/thread_arch.h
/optee_os/core/arch/riscv/include/kernel/tlb_helpers.h
/optee_os/core/arch/riscv/include/mm/core_mmu_arch.h
/optee_os/core/arch/riscv/include/riscv.h
/optee_os/core/arch/riscv/include/sbi.h
/optee_os/core/arch/riscv/include/tee/entry_fast.h
/optee_os/core/arch/riscv/include/tee/optee_abi.h
/optee_os/core/arch/riscv/include/tee/teeabi_opteed.h
/optee_os/core/arch/riscv/include/tee/teeabi_opteed_macros.h
/optee_os/core/arch/riscv/kernel/boot.c
/optee_os/core/arch/riscv/plat-spike/conf.mk
/optee_os/core/drivers/atmel_piobu.c
/optee_os/core/drivers/atmel_wdt.c
/optee_os/core/drivers/crypto/caam/caam_jr.c
/optee_os/core/drivers/crypto/caam/caam_sm.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/hisi_trng.c
/optee_os/core/drivers/plic.c
/optee_os/core/drivers/regulator/stm32_vrefbuf.c
/optee_os/core/drivers/regulator/sub.mk
/optee_os/core/drivers/sp805_wdt.c
/optee_os/core/drivers/stm32_gpio.c
/optee_os/core/drivers/stm32_uart.c
/optee_os/core/drivers/stpmic1.c
/optee_os/core/drivers/sub.mk
/optee_os/core/include/bench.h
/optee_os/core/include/console.h
/optee_os/core/include/crypto/crypto_se.h
/optee_os/core/include/crypto/sm2-kdf.h
/optee_os/core/include/drivers/amlogic_uart.h
/optee_os/core/include/drivers/atmel_uart.h
/optee_os/core/include/drivers/bcm/bnxt.h
/optee_os/core/include/drivers/bcm_gpio.h
/optee_os/core/include/drivers/bcm_hwrng.h
/optee_os/core/include/drivers/bcm_sotp.h
/optee_os/core/include/drivers/caam_extension.h
/optee_os/core/include/drivers/cbmem_console.h
/optee_os/core/include/drivers/cdns_uart.h
/optee_os/core/include/drivers/gpio.h
/optee_os/core/include/drivers/hi16xx_uart.h
/optee_os/core/include/drivers/imx/dcp.h
/optee_os/core/include/drivers/imx_ocotp.h
/optee_os/core/include/drivers/imx_uart.h
/optee_os/core/include/drivers/imx_wdog.h
/optee_os/core/include/drivers/lpc_uart.h
/optee_os/core/include/drivers/mvebu_uart.h
/optee_os/core/include/drivers/ns16550.h
/optee_os/core/include/drivers/pl011.h
/optee_os/core/include/drivers/pl022_spi.h
/optee_os/core/include/drivers/pl061_gpio.h
/optee_os/core/include/drivers/plic.h
/optee_os/core/include/drivers/regulator.h
/optee_os/core/include/drivers/rtc.h
/optee_os/core/include/drivers/sam/at91_ddr.h
/optee_os/core/include/drivers/scif.h
/optee_os/core/include/drivers/scmi-msg.h
/optee_os/core/include/drivers/scmi.h
/optee_os/core/include/drivers/serial8250_uart.h
/optee_os/core/include/drivers/sp805_wdt.h
/optee_os/core/include/drivers/sprd_uart.h
/optee_os/core/include/drivers/stih_asc.h
/optee_os/core/include/drivers/stm32_bsec.h
/optee_os/core/include/drivers/stm32_etzpc.h
/optee_os/core/include/drivers/stm32_gpio.h
/optee_os/core/include/drivers/stm32_i2c.h
/optee_os/core/include/drivers/stm32_iwdg.h
/optee_os/core/include/drivers/stm32_uart.h
/optee_os/core/include/drivers/stm32_vrefbuf.h
/optee_os/core/include/drivers/stm32mp_dt_bindings.h
/optee_os/core/include/drivers/stpmic1.h
/optee_os/core/include/drivers/wdt.h
/optee_os/core/include/gen-asm-defines.h
/optee_os/core/include/initcall.h
/optee_os/core/include/io.h
/optee_os/core/include/keep.h
/optee_os/core/include/kernel/abort.h
/optee_os/core/include/kernel/boot.h
/optee_os/core/include/kernel/chip_services.h
/optee_os/core/include/kernel/dt.h
/optee_os/core/include/kernel/dt_driver.h
/optee_os/core/include/kernel/early_ta.h
/optee_os/core/include/kernel/embedded_ts.h
/optee_os/core/include/kernel/handle.h
/optee_os/core/include/kernel/interrupt.h
/optee_os/core/include/kernel/ldelf_loader.h
/optee_os/core/include/kernel/ldelf_syscalls.h
/optee_os/core/include/kernel/misc.h
/optee_os/core/include/kernel/msg_param.h
/optee_os/core/include/kernel/mutex.h
/optee_os/core/include/kernel/panic.h
/optee_os/core/include/kernel/pseudo_ta.h
/optee_os/core/include/kernel/rpc_io_i2c.h
/optee_os/core/include/kernel/spinlock.h
/optee_os/core/include/kernel/tee_common.h
/optee_os/core/include/kernel/tee_common_otp.h
/optee_os/core/include/kernel/tee_misc.h
/optee_os/core/include/kernel/tee_ta_manager.h
/optee_os/core/include/kernel/tee_time.h
/optee_os/core/include/kernel/thread.h
/optee_os/core/include/kernel/time_source.h
/optee_os/core/include/kernel/timer.h
/optee_os/core/include/kernel/trace_ta.h
/optee_os/core/include/kernel/transfer_list.h
/optee_os/core/include/kernel/unwind.h
/optee_os/core/include/kernel/user_ta.h
/optee_os/core/include/kernel/virtualization.h
/optee_os/core/include/kernel/wait_queue.h
/optee_os/core/include/mm/core_memprot.h
/optee_os/core/include/mm/core_mmu.h
/optee_os/core/include/mm/mobj.h
/optee_os/core/include/mm/pgt_cache.h
/optee_os/core/include/mm/tee_mm.h
/optee_os/core/include/mm/tee_mmu_types.h
/optee_os/core/include/mm/tee_pager.h
/optee_os/core/include/mm/vm.h
/optee_os/core/include/optee_msg.h
/optee_os/core/include/signed_hdr.h
/optee_os/core/include/ta_pub_key.h
/optee_os/core/include/tee/cache.h
/optee_os/core/include/tee/entry_std.h
/optee_os/core/include/tee/svc_cache.h
/optee_os/core/include/tee/tee_cryp_concat_kdf.h
/optee_os/core/include/tee/tee_cryp_hkdf.h
/optee_os/core/include/tee/tee_cryp_pbkdf2.h
/optee_os/core/include/tee/tee_cryp_utl.h
/optee_os/core/include/tee/tee_fs.h
/optee_os/core/include/tee/tee_fs_key_manager.h
/optee_os/core/include/tee/tee_fs_rpc.h
/optee_os/core/include/tee/tee_obj.h
/optee_os/core/include/tee/tee_pobj.h
/optee_os/core/include/tee/tee_supp_plugin_rpc.h
/optee_os/core/include/tee/tee_svc.h
/optee_os/core/include/tee/tee_svc_cryp.h
/optee_os/core/include/tee/tee_svc_storage.h
/optee_os/core/include/tee/tee_ta_enc_manager.h
/optee_os/core/kernel/dt.c
/optee_os/core/kernel/interrupt.c
/optee_os/core/kernel/notif.c
/optee_os/core/kernel/panic.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/trace_ext.c
/optee_os/core/kernel/transfer_list.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/mm/mobj.c
/optee_os/core/mm/vm.c
/optee_os/core/pta/attestation.c
tee_ree_fs.c
/optee_os/lib/libutee/include/tee_arith_internal.h
/optee_os/lib/libutee/tee_api_arith_mpi.c
/optee_os/lib/libutee/tee_api_operations.c
/optee_os/lib/libutils/ext/include/trace.h
/optee_os/lib/libutils/ext/trace.c
/optee_os/mk/aosp_optee.mk
/optee_os/mk/config.mk
/optee_os/scripts/gen_compile_commands.py
/optee_os/scripts/symbolize.py
/optee_os/ta/pkcs11/src/pkcs11_token.c
/optee_os/ta/ta.mk
1e9c1b8005-May-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: remove temp memory allocation for TA invoke

Remove the temporary memory allocation used if a TA invokes another TA
with a private memory buffer. This has not been in used with TAs
compiled sin

core: remove temp memory allocation for TA invoke

Remove the temporary memory allocation used if a TA invokes another TA
with a private memory buffer. This has not been in used with TAs
compiled since commit ef305e54eac8 ("libutee: allocate temp secmem for
invoke") or OP-TEE version 3.6.0.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/MAINTAINERS
/optee_os/Makefile
/optee_os/core/arch/arm/include/ffa.h
/optee_os/core/arch/arm/include/kernel/secure_partition.h
/optee_os/core/arch/arm/include/kernel/thread_arch.h
/optee_os/core/arch/arm/include/optee_ffa.h
/optee_os/core/arch/arm/include/sm/watchdog_smc.h
/optee_os/core/arch/arm/kernel/asm-defines.c
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/spmc_sp_handler.c
/optee_os/core/arch/arm/kernel/thread_spmc.c
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/mm/mobj_ffa.c
/optee_os/core/arch/arm/plat-imx/conf.mk
/optee_os/core/arch/arm/plat-imx/imx-regs.h
/optee_os/core/arch/arm/plat-imx/imx.h
/optee_os/core/arch/arm/plat-imx/registers/imx6.h
/optee_os/core/arch/arm/plat-imx/registers/imx7.h
/optee_os/core/arch/arm/plat-imx/sub.mk
/optee_os/core/arch/arm/plat-k3/drivers/sa2ul.c
/optee_os/core/arch/arm/plat-ls/conf.mk
/optee_os/core/arch/arm/plat-mediatek/conf.mk
/optee_os/core/arch/arm/plat-mediatek/platform_config.h
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.c
/optee_os/core/arch/arm/plat-stm32mp1/drivers/stm32mp1_pmic.h
/optee_os/core/arch/arm/plat-stm32mp1/shared_resources.c
/optee_os/core/arch/arm/plat-stm32mp1/stm32_util.h
/optee_os/core/arch/arm/tee/entry_fast.c
/optee_os/core/arch/riscv/include/kernel/thread_private_arch.h
/optee_os/core/arch/riscv/include/riscv_macros.S
/optee_os/core/arch/riscv/include/sbi.h
/optee_os/core/arch/riscv/kernel/asm-defines.c
/optee_os/core/arch/riscv/kernel/entry.S
/optee_os/core/arch/riscv/kernel/thread_arch.c
/optee_os/core/arch/riscv/kernel/thread_optee_abi_rv.S
/optee_os/core/arch/riscv/plat-virt/main.c
/optee_os/core/arch/riscv/plat-virt/platform_config.h
/optee_os/core/crypto.mk
/optee_os/core/drivers/atmel_saic.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/crypto/caam/hal/sub.mk
/optee_os/core/drivers/crypto/stm32/cipher.c
/optee_os/core/drivers/gic.c
/optee_os/core/drivers/hfic.c
/optee_os/core/drivers/imx/mu/sub.mk
/optee_os/core/drivers/imx_csu.c
/optee_os/core/drivers/imx_snvs.c
/optee_os/core/drivers/ns16550.c
/optee_os/core/drivers/plic.c
/optee_os/core/drivers/pm/imx/gpcv2.c
/optee_os/core/drivers/pm/imx/local.h
/optee_os/core/drivers/pm/imx/psci.c
/optee_os/core/drivers/pm/imx/src.c
/optee_os/core/drivers/pm/imx/sub.mk
/optee_os/core/drivers/pm/sub.mk
/optee_os/core/drivers/regulator/regulator.c
/optee_os/core/drivers/regulator/regulator_dt.c
/optee_os/core/drivers/regulator/regulator_fixed.c
/optee_os/core/drivers/regulator/sub.mk
/optee_os/core/drivers/stm32_gpio.c
/optee_os/core/drivers/stm32_i2c.c
/optee_os/core/drivers/sub.mk
/optee_os/core/drivers/wdt/watchdog_sm.c
/optee_os/core/include/drivers/imx_snvs.h
/optee_os/core/include/drivers/ns16550.h
/optee_os/core/include/drivers/plic.h
/optee_os/core/include/drivers/regulator.h
/optee_os/core/include/drivers/stm32_i2c.h
/optee_os/core/include/io.h
/optee_os/core/include/kernel/dt_driver.h
/optee_os/core/include/kernel/interrupt.h
/optee_os/core/include/kernel/tee_ta_manager.h
/optee_os/core/include/kernel/user_ta.h
/optee_os/core/kernel/dt_driver.c
/optee_os/core/kernel/interrupt.c
/optee_os/core/kernel/pseudo_ta.c
/optee_os/core/kernel/tee_ta_manager.c
/optee_os/core/kernel/user_ta.c
/optee_os/core/lib/libtomcrypt/mpi_desc.c
/optee_os/core/lib/libtomcrypt/rsa.c
/optee_os/core/lib/libtomcrypt/src/hashes/sha2/sub.mk
/optee_os/core/lib/libtomcrypt/src/hashes/sub.mk
/optee_os/core/lib/libtomcrypt/sub.mk
/optee_os/core/lib/libtomcrypt/tomcrypt.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/pta/imx/dek_blob.c
/optee_os/core/pta/stats.c
tee_svc.c
/optee_os/ldelf/ta_elf.c
/optee_os/lib/libmbedtls/core/aes.c
/optee_os/lib/libmbedtls/core/dh.c
/optee_os/lib/libmbedtls/core/ecc.c
/optee_os/lib/libmbedtls/core/hash.c
/optee_os/lib/libmbedtls/core/hmac.c
/optee_os/lib/libmbedtls/core/mbed_helpers.h
/optee_os/lib/libmbedtls/core/rsa.c
/optee_os/lib/libmbedtls/core/sub.mk
/optee_os/lib/libmbedtls/include/mbedtls_config_kernel.h
/optee_os/lib/libmbedtls/mbedtls/.gitattributes
/optee_os/lib/libmbedtls/mbedtls/.uncrustify.cfg
/optee_os/lib/libmbedtls/mbedtls/CONTRIBUTING.md
/optee_os/lib/libmbedtls/mbedtls/ChangeLog
/optee_os/lib/libmbedtls/mbedtls/README.md
/optee_os/lib/libmbedtls/mbedtls/SECURITY.md
/optee_os/lib/libmbedtls/mbedtls/SUPPORT.md
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/aes.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/aria.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/asn1.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/asn1write.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/base64.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/bignum.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/build_info.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/camellia.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ccm.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/chacha20.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/chachapoly.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/check_config.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/cipher.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/cmac.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/compat-2.x.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/config_psa.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/constant_time.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ctr_drbg.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/debug.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/des.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/dhm.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ecdh.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ecdsa.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ecjpake.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ecp.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/entropy.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/error.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/gcm.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/hkdf.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/hmac_drbg.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/legacy_or_psa.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/lms.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/mbedtls_config.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/md.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/md5.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/memory_buffer_alloc.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/net_sockets.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/nist_kw.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/oid.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pem.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pk.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pkcs12.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pkcs5.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/pkcs7.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/platform.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/platform_time.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/platform_util.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/poly1305.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/private_access.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/psa_util.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ripemd160.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/rsa.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/sha1.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/sha256.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/sha512.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_cache.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_ciphersuites.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_cookie.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/ssl_ticket.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/threading.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/timing.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/version.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509_crl.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509_crt.h
/optee_os/lib/libmbedtls/mbedtls/include/mbedtls/x509_csr.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_builtin_composites.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_builtin_primitives.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_compat.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_config.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_driver_common.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_driver_contexts_composites.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_driver_contexts_primitives.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_extra.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_platform.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_se_driver.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_sizes.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_struct.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_types.h
/optee_os/lib/libmbedtls/mbedtls/include/psa/crypto_values.h
/optee_os/lib/libmbedtls/mbedtls/library/aes.c
/optee_os/lib/libmbedtls/mbedtls/library/aesce.c
/optee_os/lib/libmbedtls/mbedtls/library/aesce.h
/optee_os/lib/libmbedtls/mbedtls/library/aesni.c
/optee_os/lib/libmbedtls/mbedtls/library/aesni.h
/optee_os/lib/libmbedtls/mbedtls/library/alignment.h
/optee_os/lib/libmbedtls/mbedtls/library/aria.c
/optee_os/lib/libmbedtls/mbedtls/library/asn1parse.c
/optee_os/lib/libmbedtls/mbedtls/library/asn1write.c
/optee_os/lib/libmbedtls/mbedtls/library/base64.c
/optee_os/lib/libmbedtls/mbedtls/library/bignum.c
/optee_os/lib/libmbedtls/mbedtls/library/bignum_core.c
/optee_os/lib/libmbedtls/mbedtls/library/bignum_core.h
/optee_os/lib/libmbedtls/mbedtls/library/bignum_mod.c
/optee_os/lib/libmbedtls/mbedtls/library/bignum_mod.h
/optee_os/lib/libmbedtls/mbedtls/library/bignum_mod_raw.c
/optee_os/lib/libmbedtls/mbedtls/library/bignum_mod_raw.h
/optee_os/lib/libmbedtls/mbedtls/library/bignum_mod_raw_invasive.h
/optee_os/lib/libmbedtls/mbedtls/library/bn_mul.h
/optee_os/lib/libmbedtls/mbedtls/library/camellia.c
/optee_os/lib/libmbedtls/mbedtls/library/ccm.c
/optee_os/lib/libmbedtls/mbedtls/library/chacha20.c
/optee_os/lib/libmbedtls/mbedtls/library/chachapoly.c
/optee_os/lib/libmbedtls/mbedtls/library/check_crypto_config.h
/optee_os/lib/libmbedtls/mbedtls/library/cipher.c
/optee_os/lib/libmbedtls/mbedtls/library/cipher_wrap.c
/optee_os/lib/libmbedtls/mbedtls/library/cipher_wrap.h
/optee_os/lib/libmbedtls/mbedtls/library/cmac.c
/optee_os/lib/libmbedtls/mbedtls/library/common.h
/optee_os/lib/libmbedtls/mbedtls/library/constant_time.c
/optee_os/lib/libmbedtls/mbedtls/library/constant_time_internal.h
/optee_os/lib/libmbedtls/mbedtls/library/constant_time_invasive.h
/optee_os/lib/libmbedtls/mbedtls/library/ctr_drbg.c
/optee_os/lib/libmbedtls/mbedtls/library/debug.c
/optee_os/lib/libmbedtls/mbedtls/library/des.c
/optee_os/lib/libmbedtls/mbedtls/library/dhm.c
/optee_os/lib/libmbedtls/mbedtls/library/ecdh.c
/optee_os/lib/libmbedtls/mbedtls/library/ecdsa.c
/optee_os/lib/libmbedtls/mbedtls/library/ecjpake.c
/optee_os/lib/libmbedtls/mbedtls/library/ecp.c
/optee_os/lib/libmbedtls/mbedtls/library/ecp_curves.c
/optee_os/lib/libmbedtls/mbedtls/library/ecp_internal_alt.h
/optee_os/lib/libmbedtls/mbedtls/library/ecp_invasive.h
/optee_os/lib/libmbedtls/mbedtls/library/entropy.c
/optee_os/lib/libmbedtls/mbedtls/library/entropy_poll.c
/optee_os/lib/libmbedtls/mbedtls/library/entropy_poll.h
/optee_os/lib/libmbedtls/mbedtls/library/error.c
/optee_os/lib/libmbedtls/mbedtls/library/gcm.c
/optee_os/lib/libmbedtls/mbedtls/library/hash_info.c
/optee_os/lib/libmbedtls/mbedtls/library/hash_info.h
/optee_os/lib/libmbedtls/mbedtls/library/hkdf.c
/optee_os/lib/libmbedtls/mbedtls/library/hmac_drbg.c
/optee_os/lib/libmbedtls/mbedtls/library/lmots.c
/optee_os/lib/libmbedtls/mbedtls/library/lmots.h
/optee_os/lib/libmbedtls/mbedtls/library/lms.c
/optee_os/lib/libmbedtls/mbedtls/library/md.c
/optee_os/lib/libmbedtls/mbedtls/library/md5.c
/optee_os/lib/libmbedtls/mbedtls/library/md_wrap.h
/optee_os/lib/libmbedtls/mbedtls/library/memory_buffer_alloc.c
/optee_os/lib/libmbedtls/mbedtls/library/net_sockets.c
/optee_os/lib/libmbedtls/mbedtls/library/nist_kw.c
/optee_os/lib/libmbedtls/mbedtls/library/oid.c
/optee_os/lib/libmbedtls/mbedtls/library/padlock.c
/optee_os/lib/libmbedtls/mbedtls/library/padlock.h
/optee_os/lib/libmbedtls/mbedtls/library/pem.c
/optee_os/lib/libmbedtls/mbedtls/library/pk.c
/optee_os/lib/libmbedtls/mbedtls/library/pk_wrap.c
/optee_os/lib/libmbedtls/mbedtls/library/pk_wrap.h
/optee_os/lib/libmbedtls/mbedtls/library/pkcs12.c
/optee_os/lib/libmbedtls/mbedtls/library/pkcs5.c
/optee_os/lib/libmbedtls/mbedtls/library/pkcs7.c
/optee_os/lib/libmbedtls/mbedtls/library/pkparse.c
/optee_os/lib/libmbedtls/mbedtls/library/pkwrite.c
/optee_os/lib/libmbedtls/mbedtls/library/pkwrite.h
/optee_os/lib/libmbedtls/mbedtls/library/platform.c
/optee_os/lib/libmbedtls/mbedtls/library/platform_util.c
/optee_os/lib/libmbedtls/mbedtls/library/poly1305.c
/optee_os/lib/libmbedtls/mbedtls/library/ripemd160.c
/optee_os/lib/libmbedtls/mbedtls/library/rsa.c
/optee_os/lib/libmbedtls/mbedtls/library/rsa_alt_helpers.c
/optee_os/lib/libmbedtls/mbedtls/library/rsa_alt_helpers.h
/optee_os/lib/libmbedtls/mbedtls/library/sha1.c
/optee_os/lib/libmbedtls/mbedtls/library/sha256.c
/optee_os/lib/libmbedtls/mbedtls/library/sha512.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_cache.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_ciphersuites.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_client.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_client.h
/optee_os/lib/libmbedtls/mbedtls/library/ssl_cookie.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_debug_helpers.h
/optee_os/lib/libmbedtls/mbedtls/library/ssl_debug_helpers_generated.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_misc.h
/optee_os/lib/libmbedtls/mbedtls/library/ssl_msg.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_ticket.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls12_client.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls12_server.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls13_client.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls13_generic.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls13_invasive.h
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls13_keys.c
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls13_keys.h
/optee_os/lib/libmbedtls/mbedtls/library/ssl_tls13_server.c
/optee_os/lib/libmbedtls/mbedtls/library/threading.c
/optee_os/lib/libmbedtls/mbedtls/library/timing.c
/optee_os/lib/libmbedtls/mbedtls/library/version.c
/optee_os/lib/libmbedtls/mbedtls/library/version_features.c
/optee_os/lib/libmbedtls/mbedtls/library/x509.c
/optee_os/lib/libmbedtls/mbedtls/library/x509_create.c
/optee_os/lib/libmbedtls/mbedtls/library/x509_crl.c
/optee_os/lib/libmbedtls/mbedtls/library/x509_crt.c
/optee_os/lib/libmbedtls/mbedtls/library/x509_csr.c
/optee_os/lib/libmbedtls/mbedtls/library/x509write_crt.c
/optee_os/lib/libmbedtls/mbedtls/library/x509write_csr.c
/optee_os/lib/libmbedtls/sub.mk
/optee_os/lib/libutee/include/pta_imx_dek_blob.h
/optee_os/lib/libutee/sub.mk
/optee_os/lib/libutee/tee_api_arith_mpi.c
/optee_os/lib/libutils/ext/ftrace/ftrace.c
/optee_os/lib/libutils/ext/include/fault_mitigation.h
/optee_os/mk/checkconf.mk
/optee_os/mk/config.mk
/optee_os/mk/macros.mk
/optee_os/scripts/sign_rproc_fw.py
/optee_os/scripts/ts_bin_to_c.py
/optee_os/ta/arch/arm/ta.ld.S
/optee_os/ta/link.mk
/optee_os/ta/mk/ta_dev_kit.mk
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/ta.mk
623b9bd423-Aug-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: use monotonic counter for secure storage without RPMB

If OP-TEE is configured without RPMB (CFG_REE_FS_INTEGRITY_RPMB=n), use
the non-volatile monotonic counter interface instead to protect ag

core: use monotonic counter for secure storage without RPMB

If OP-TEE is configured without RPMB (CFG_REE_FS_INTEGRITY_RPMB=n), use
the non-volatile monotonic counter interface instead to protect against
rollback of the REE FS base secure storage.

If configured without CFG_WARN_INSECURE=y, accept
TEE_ERROR_NOT_IMPLEMENTED error from nv_counter_get_ree_fs() and
nv_counter_incr_ree_fs_to() and warn once to make clear that the
configuration isn't secure.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>
Tested-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...


/optee_os/MAINTAINERS
/optee_os/core/arch/arm/arm.mk
/optee_os/core/arch/arm/include/arm.h
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/entry_a64.S
/optee_os/core/arch/arm/kernel/link_dummies_paged.c
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/plat-imx/registers/imx8m.h
/optee_os/core/arch/arm/plat-k3/conf.mk
/optee_os/core/arch/arm/plat-zynqmp/platform_config.h
/optee_os/core/arch/riscv/include/kernel/thread_arch.h
/optee_os/core/arch/riscv/include/kernel/thread_private_arch.h
/optee_os/core/arch/riscv/include/tee/entry_fast.h
/optee_os/core/arch/riscv/include/tee/optee_abi.h
/optee_os/core/arch/riscv/include/tee/teeabi_opteed.h
/optee_os/core/arch/riscv/include/tee/teeabi_opteed_macros.h
/optee_os/core/arch/riscv/kernel/sub.mk
/optee_os/core/arch/riscv/kernel/thread_arch.c
/optee_os/core/arch/riscv/kernel/thread_optee_abi.c
/optee_os/core/arch/riscv/kernel/thread_optee_abi_rv.S
/optee_os/core/arch/riscv/kernel/thread_rv.S
/optee_os/core/arch/riscv/tee/entry_fast.c
/optee_os/core/arch/riscv/tee/sub.mk
/optee_os/core/drivers/crypto/caam/blob/caam_dek.c
/optee_os/core/drivers/crypto/caam/blob/sub.mk
/optee_os/core/drivers/crypto/caam/caam_ctrl.c
/optee_os/core/drivers/crypto/caam/caam_sm.c
/optee_os/core/drivers/crypto/caam/crypto.mk
/optee_os/core/drivers/crypto/caam/hal/common/hal_ctrl.c
/optee_os/core/drivers/crypto/caam/hal/common/hal_sm.c
/optee_os/core/drivers/crypto/caam/hal/common/registers/sm_regs.h
/optee_os/core/drivers/crypto/caam/hal/common/sub.mk
/optee_os/core/drivers/crypto/caam/hal/imx_8m/registers/ctrl_regs.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_defines.h
/optee_os/core/drivers/crypto/caam/include/caam_desc_helper.h
/optee_os/core/drivers/crypto/caam/include/caam_hal_ctrl.h
/optee_os/core/drivers/crypto/caam/include/caam_hal_sm.h
/optee_os/core/drivers/crypto/caam/include/caam_sm.h
/optee_os/core/drivers/crypto/caam/include/caam_trace.h
/optee_os/core/drivers/crypto/caam/sub.mk
/optee_os/core/drivers/crypto/stm32/stm32_saes.c
/optee_os/core/drivers/gic.c
/optee_os/core/include/drivers/caam_extension.h
/optee_os/core/include/kernel/boot.h
/optee_os/core/include/kernel/nv_counter.h
/optee_os/core/include/mm/core_mmu.h
/optee_os/core/include/tee/fs_dirfile.h
/optee_os/core/include/tee/fs_htree.h
/optee_os/core/kernel/nv_counter.c
/optee_os/core/kernel/sub.mk
/optee_os/core/kernel/tpm.c
/optee_os/core/mm/core_mmu.c
/optee_os/core/pta/imx/dek_blob.c
/optee_os/core/pta/imx/sub.mk
/optee_os/core/pta/tests/fs_htree.c
fs_dirfile.c
fs_htree.c
tee_ree_fs.c
/optee_os/lib/libutee/include/pta_imx_dek_blob.h
/optee_os/lib/libutils/isoc/include/assert.h
/optee_os/mk/config.mk
/optee_os/ta/pkcs11/include/pkcs11_ta.h
/optee_os/ta/pkcs11/src/attributes.c
/optee_os/ta/pkcs11/src/object.c
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
/optee_os/ta/pkcs11/src/pkcs11_attributes.h
/optee_os/ta/pkcs11/src/pkcs11_helpers.c
/optee_os/ta/pkcs11/src/processing_ec.c
aae9733302-Aug-2023 loubaihui <loubaihui1@huawei.com>

crypto: introduce CFG_CRYPTO_HW_PBKDF2

Add a new configuration flag to support hardware implementation of
PBKDF2.

Signed-off-by: loubaihui <loubaihui1@huawei.com>
Acked-by: Jens Wiklander <jens.wik

crypto: introduce CFG_CRYPTO_HW_PBKDF2

Add a new configuration flag to support hardware implementation of
PBKDF2.

Signed-off-by: loubaihui <loubaihui1@huawei.com>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

7be18e1b06-Sep-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: simplify calls to bb_memdup_user_private()

Now that bb_memdup_user_private() supports supplying zero-lenth buffers
remove checks for zero-length buffer before calling
bb_memdup_user_private().

core: simplify calls to bb_memdup_user_private()

Now that bb_memdup_user_private() supports supplying zero-lenth buffers
remove checks for zero-length buffer before calling
bb_memdup_user_private().

Removes calls to memtag_strip_tag() for input buffer to
bb_memdup_user_private() since that's also dealt with internally by that
function.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

c6a1b33b06-Sep-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: simplify utee_param_to_param() with BB_MEMDUP_USER()

Simplifies utee_param_to_param() by using BB_MEMDUP_USER() instead of
bb_alloc() followed by copy_from_user().

Signed-off-by: Jens Wikland

core: simplify utee_param_to_param() with BB_MEMDUP_USER()

Simplifies utee_param_to_param() by using BB_MEMDUP_USER() instead of
bb_alloc() followed by copy_from_user().

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

f5348ecb25-Aug-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: tee_svc_cryp.c: replace get_used_bits()

Prior to this patch was get_used_bits() called in
tee_svc_cryp_obj_populate_type() to check that a bignum isn't too large.
While the code works it's mor

core: tee_svc_cryp.c: replace get_used_bits()

Prior to this patch was get_used_bits() called in
tee_svc_cryp_obj_populate_type() to check that a bignum isn't too large.
While the code works it's more complicated than necessary. The bignum
has just been imported so the normal bignum functions can be used
directly instead of copying the user space buffer again and feed it to
bit_ffs(). So replace the call to get_used_bits() with a call to
crypto_bignum_num_bits() on the newly imported bignum.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com>

show more ...

ef44161f25-Aug-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: update ts_store API with user space buffer

Updates the read() function pointer in struct ts_store_ops to take an
user space buffer in addition to the previous core buffer. Core buffers
are nor

core: update ts_store API with user space buffer

Updates the read() function pointer in struct ts_store_ops to take an
user space buffer in addition to the previous core buffer. Core buffers
are normal secure memory while user space buffers should only be accessed
using the user_access.h functions.

The different TA storage implementations are updated accordingly.

Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/MAINTAINERS
/optee_os/core/arch/arm/include/arm64_macros.S
/optee_os/core/arch/arm/include/kernel/thread_private_arch.h
/optee_os/core/arch/arm/kernel/asm-defines.c
/optee_os/core/arch/arm/kernel/boot.c
/optee_os/core/arch/arm/kernel/secure_partition.c
/optee_os/core/arch/arm/kernel/thread_a64.S
/optee_os/core/arch/arm/mm/sub.mk
/optee_os/core/arch/arm/plat-aspeed/conf.mk
/optee_os/core/arch/arm/plat-marvell/cn10k/core_pos.S
/optee_os/core/arch/arm/plat-marvell/conf.mk
/optee_os/core/arch/arm/plat-marvell/platform_config.h
/optee_os/core/arch/arm/plat-marvell/sub.mk
/optee_os/core/arch/arm/plat-vexpress/conf.mk
/optee_os/core/arch/riscv/include/kernel/thread_private_arch.h
/optee_os/core/arch/riscv/include/kernel/user_access_arch.h
/optee_os/core/arch/riscv/kernel/arch_scall.c
/optee_os/core/arch/riscv/kernel/asm-defines.c
/optee_os/core/arch/riscv/kernel/thread_arch.c
/optee_os/core/arch/riscv/kernel/thread_rv.S
/optee_os/core/arch/riscv/plat-spike/platform_config.h
/optee_os/core/arch/riscv/plat-virt/main.c
/optee_os/core/arch/riscv/riscv.mk
/optee_os/core/drivers/crypto/caam/utils/utils_dmaobj.c
/optee_os/core/drivers/plic.c
/optee_os/core/include/kernel/embedded_ts.h
/optee_os/core/include/kernel/linker.h
/optee_os/core/include/kernel/ts_store.h
/optee_os/core/include/kernel/user_access.h
/optee_os/core/include/tee/tadb.h
/optee_os/core/kernel/asan.c
/optee_os/core/kernel/embedded_ts.c
/optee_os/core/kernel/ldelf_syscalls.c
/optee_os/core/kernel/ree_fs_ta.c
/optee_os/core/kernel/secstor_ta.c
/optee_os/core/kernel/user_access.c
/optee_os/core/lib/libtomcrypt/src/pk/rsa/rsa_verify_hash.c
/optee_os/core/mm/pgt_cache.c
/optee_os/core/mm/sub.mk
/optee_os/core/pta/imx/manufacturing_protection.c
tadb.c
/optee_os/lib/libutee/include/utee_defines.h
/optee_os/lib/libutils/ext/include/compiler.h
/optee_os/lib/libutils/ext/mempool.c
/optee_os/lib/libutils/isoc/bget_malloc.c
/optee_os/mk/config.mk
/optee_os/scripts/derive_rpmb_key.py
/optee_os/ta/pkcs11/src/pkcs11_attributes.c
d24c41ef22-Aug-2023 Clement Faure <clement.faure@nxp.com>

core: tee: initialize variables in entry_open_session()

Initialize local variables at declaration as specified by the coding
guidelines.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewe

core: tee: initialize variables in entry_open_session()

Initialize local variables at declaration as specified by the coding
guidelines.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

a4ba53eb24-Jul-2023 Clement Faure <clement.faure@nxp.com>

core: tee: initialize dirfile_entry objects

Coverity reports many errors where dirfile_entry{} is used
un-initialized.
Resolve these errors by setting these objects to zero on declaration.

Signed-o

core: tee: initialize dirfile_entry objects

Coverity reports many errors where dirfile_entry{} is used
un-initialized.
Resolve these errors by setting these objects to zero on declaration.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

85a3e2d524-Jul-2023 Clement Faure <clement.faure@nxp.com>

core: tee: entry_open_session(): initialize tee_ta_param object

Initialize tee_ta_param{} to zero in entry_open_session() so it can be used
initialized in cleanup_shm_refs() without Coverity error.

core: tee: entry_open_session(): initialize tee_ta_param object

Initialize tee_ta_param{} to zero in entry_open_session() so it can be used
initialized in cleanup_shm_refs() without Coverity error.

Signed-off-by: Clement Faure <clement.faure@nxp.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...


/optee_os/.github/workflows/ci.yml
/optee_os/CHANGELOG.md
/optee_os/core/arch/arm/include/arm.h
/optee_os/core/arch/arm/include/arm64.h
/optee_os/core/arch/arm/include/kernel/thread_private_arch.h
/optee_os/core/arch/arm/kernel/abort.c
/optee_os/core/arch/arm/kernel/thread.c
/optee_os/core/arch/arm/kernel/thread_optee_smc_a64.S
/optee_os/core/arch/arm/kernel/thread_spmc_a64.S
/optee_os/core/arch/arm/plat-bcm/conf.mk
/optee_os/core/arch/arm/plat-ls/main.c
/optee_os/core/arch/arm/plat-nuvoton/conf.mk
/optee_os/core/arch/arm/plat-nuvoton/main.c
/optee_os/core/arch/arm/plat-stm32mp1/conf.mk
/optee_os/core/arch/arm/plat-stm32mp1/main.c
/optee_os/core/arch/arm/plat-versal/main.c
/optee_os/core/drivers/crypto/caam/mp/caam_mp.c
/optee_os/core/drivers/crypto/caam/utils/utils_dmaobj.c
/optee_os/core/drivers/crypto/crypto_api/acipher/dh.c
/optee_os/core/drivers/crypto/crypto_api/acipher/rsamgf.c
/optee_os/core/drivers/crypto/crypto_api/include/drvcrypt_acipher.h
/optee_os/core/drivers/crypto/stm32/authenc.c
/optee_os/core/drivers/crypto/stm32/cipher.c
/optee_os/core/drivers/crypto/stm32/common.h
/optee_os/core/drivers/crypto/stm32/crypto.mk
/optee_os/core/drivers/crypto/stm32/stm32_cryp.c
/optee_os/core/drivers/crypto/stm32/stm32_saes.c
/optee_os/core/drivers/crypto/stm32/stm32_saes.h
/optee_os/core/drivers/crypto/stm32/sub.mk
/optee_os/core/drivers/imx/mu/imx_mu.c
/optee_os/core/drivers/imx/mu/imx_mu_8q.c
/optee_os/core/drivers/imx/mu/imx_mu_8ulp.c
/optee_os/core/drivers/imx/mu/imx_mu_platform.h
/optee_os/core/drivers/ls_dspi.c
/optee_os/core/drivers/ls_sfp.c
/optee_os/core/include/drivers/ls_dspi.h
/optee_os/core/include/kernel/huk_subkey.h
/optee_os/core/include/kernel/pseudo_ta.h
/optee_os/core/kernel/huk_subkey.c
/optee_os/core/kernel/pseudo_ta.c
/optee_os/core/lib/scmi-server/conf-optee-fvp.mk
/optee_os/core/lib/scmi-server/sub.mk
/optee_os/core/pta/attestation.c
entry_std.c
/optee_os/lib/libutee/include/user_ta_header.h
/optee_os/lib/libutee/tee_api.c
/optee_os/lib/libutee/tee_api_property.c
b2284b1117-Jul-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: update FS storage API with user space buffer

Updates the create(), read(), and write() function pointers in struct
ts_store_ops to take a user space buffer in addition to the previous
core buf

core: update FS storage API with user space buffer

Updates the create(), read(), and write() function pointers in struct
ts_store_ops to take a user space buffer in addition to the previous
core buffer. Core buffers are normal secure memory while user space
buffers should only be accessed using the user_access.h functions.

The different FS storage implementations are updated accordingly.

Note that the RPMB FS storage implementation resorts to using
enter_user_access() and exit_user_access() due to internal complexities.

Fixes: 4e154320e47c ("core: Apply finer-grained PAN")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

6d628a8117-Jul-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: syscall_storage_obj_rename(): fix direct user memory access

Fixes a direct user memory access in syscall_storage_obj_rename() which
can lead to a data abort if PAN is enabled.

Fixes: 84f78978

core: syscall_storage_obj_rename(): fix direct user memory access

Fixes a direct user memory access in syscall_storage_obj_rename() which
can lead to a data abort if PAN is enabled.

Fixes: 84f78978974b ("core: use user-access functions for storage svc")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

090e946317-Jul-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: pta: socket: fix direct user memory access

Replaces direct user memory accesses in the socket PTA with
copy_to_user() and copy_from_user(). This avoids PAN errors when PAN is
active.

Fixes: 4

core: pta: socket: fix direct user memory access

Replaces direct user memory accesses in the socket PTA with
copy_to_user() and copy_from_user(). This avoids PAN errors when PAN is
active.

Fixes: 4e154320e47c ("core: Apply finer-grained PAN")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

eb4a988a14-Jul-2023 Jens Wiklander <jens.wiklander@linaro.org>

core: add user buffer to tee_invoke_supp_plugin_rpc()

Adds a user buffer to tee_invoke_supp_plugin_rpc() so direct user memory
access can be used when called with a buffer in user memory instead of

core: add user buffer to tee_invoke_supp_plugin_rpc()

Adds a user buffer to tee_invoke_supp_plugin_rpc() so direct user memory
access can be used when called with a buffer in user memory instead of
core memory. tee_invoke_supp_plugin_rpc() can still take a core memory
buffer as an argument if needed.

PTA_SYSTEM_SUPP_PLUGIN_INVOKE in the system PTA is updated to pass the
memref as a user memory buffer instead of a core memory buffer.

This fixes a direct privileged memory access to user space memory.

Fixes: 4e154320e47c ("core: Apply finer-grained PAN")
Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>

show more ...

34ce35b114-Jul-2023 loubaihui <loubaihui1@huawei.com>

crypto: add X448 support

Refer to the X25519 algorithm, add the X448 algorithm framework code.

Signed-off-by: loubaihui <loubaihui1@huawei.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.o

crypto: add X448 support

Refer to the X25519 algorithm, add the X448 algorithm framework code.

Signed-off-by: loubaihui <loubaihui1@huawei.com>
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
Acked-by: Jens Wiklander <jens.wiklander@linaro.org>

show more ...

12345678910>>...24