| b1d7375c | 15-Dec-2017 |
Jerome Forissier <jerome.forissier@linaro.org> |
Remove 'All rights reserved' from Linaro files
The text 'All rights reserved' is useless [1]. The Free Software Foundation's REUSE Initiative best practices document [2] does not contain these words
Remove 'All rights reserved' from Linaro files
The text 'All rights reserved' is useless [1]. The Free Software Foundation's REUSE Initiative best practices document [2] does not contain these words. Therefore, we can safely remove the text from the files that are owned by Linaro.
Generated by: spdxify.py --linaro-only --strip-arr optee_os/
Link: [1] https://en.wikipedia.org/wiki/All_rights_reserved Link: [2] https://reuse.software/practices/ Link: [3] https://github.com/jforissier/misc/blob/f7b56c8/spdxify.py Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| 78b7c7c7 | 15-Dec-2017 |
Jerome Forissier <jerome.forissier@linaro.org> |
Remove license notice from Linaro files
Now that we have added SPDX identifiers, we can safely remove the verbose license text from the files that are owned by Linaro.
Generated by [1]: spdxify.p
Remove license notice from Linaro files
Now that we have added SPDX identifiers, we can safely remove the verbose license text from the files that are owned by Linaro.
Generated by [1]: spdxify.py --linaro-only --strip-license-text optee_os/
Link: [1] https://github.com/jforissier/misc/blob/f7b56c8/spdxify.py Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| 1bb92983 | 15-Dec-2017 |
Jerome Forissier <jerome.forissier@linaro.org> |
Add SPDX license identifiers
Adds one SPDX-License-Identifier line [1] to each source files that contains license text.
Generated by [2]: spdxify.py --add-spdx optee_os/
The scancode tool [3] wa
Add SPDX license identifiers
Adds one SPDX-License-Identifier line [1] to each source files that contains license text.
Generated by [2]: spdxify.py --add-spdx optee_os/
The scancode tool [3] was used to double check the license matching code in the Python script. All the licenses detected by scancode are either detected by spdxify.py, or have no SPDX identifier, or are false matches.
Link: [1] https://spdx.org/licenses/ Link: [2] https://github.com/jforissier/misc/blob/f7b56c8/spdxify.py Link: [3] https://github.com/nexB/scancode-toolkit Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| fb7ef469 | 15-Dec-2017 |
Jerome Forissier <jerome.forissier@linaro.org> |
Reformat copyright/license header in files with an SPDX ID
Some files were committed with an SPDX license identifier before the rules were defined [1]. Reformat them accordingly.
[1] documentation/
Reformat copyright/license header in files with an SPDX ID
Some files were committed with an SPDX license identifier before the rules were defined [1]. Reformat them accordingly.
[1] documentation/copyright_and_license_headers.rst
Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org> Acked-by: Joakim Bech <joakim.bech@linaro.org>
show more ...
|
| d5d50c3c | 27-Dec-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Fix USER_TA_PROP_TYPE_BOOL handling
In 'ta_props' in ta/arch/arm/user_ta_header.c properties tagged as USER_TA_PROP_TYPE_BOOL are assigned a pointer to a bool, but is in the rest of the code handled
Fix USER_TA_PROP_TYPE_BOOL handling
In 'ta_props' in ta/arch/arm/user_ta_header.c properties tagged as USER_TA_PROP_TYPE_BOOL are assigned a pointer to a bool, but is in the rest of the code handled as if it was a pointer to a uint32_t. This works as long as a bool is four bytes, with certain compilers the size of a `bool` is 1 instead leading to errors.
TA properties can be supplied via the define TA_CURRENT_TA_EXT_PROPERTIES. The pattern used in ta/arch/arm/user_ta_header.c is likely copied when assigning properties via TA_CURRENT_TA_EXT_PROPERTIES.
This patch is fixing the assumption that the size of a `bool` is the same as the size of a `uint32_t` by changing all handling of USER_TA_PROP_TYPE_BOOL to base it on the type `bool` instead of `uint32_t`.
Reviewed-by: Jianhui Li <airbak.li@hisilicon.com> Tested by: Jianhui Li <airbak.li@hisilicon.com> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 380507dd | 10-Dec-2017 |
Victor Chong <victor.chong@linaro.org> |
core/tee/tadb.c: Workaround error: missing braces around initializer
GCC 4.9 generates below false positive:
core/tee/tadb.c:593:15: error: missing braces around initializer [-Werror=missing-braces
core/tee/tadb.c: Workaround error: missing braces around initializer
GCC 4.9 generates below false positive:
core/tee/tadb.c:593:15: error: missing braces around initializer [-Werror=missing-braces] const struct tadb_entry null_entry = { 0 }; ^ core/tee/tadb.c:593:15: error: (near initialization for ‘null_entry.prop’) [-Werror=missing-braces]
Work around it by adding extra braces.
Signed-off-by: Victor Chong <victor.chong@linaro.org> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 5baee69a | 28-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: add tadb
Adds tadb which is a database in which TAs can be stored leveraging secure storage for anti-rollback, key storage and list of TAs.
Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.
core: add tadb
Adds tadb which is a database in which TAs can be stored leveraging secure storage for anti-rollback, key storage and list of TAs.
Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| e98e3c87 | 28-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: provide tee_svc_storage_file_ops()
Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wikla
core: provide tee_svc_storage_file_ops()
Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 09eedd2d | 28-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: fs_htree: bugfix creating empty file
Fixes problem with creating an empty htree file.
Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> Acked-by: Jerome Forissier <jerome.forissier@lina
core: fs_htree: bugfix creating empty file
Fixes problem with creating an empty htree file.
Reviewed-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| de656760 | 23-Nov-2017 |
Alex CHEN <viennadd@gmail.com> |
core: se: fix potential use after free
The freed `proxy` will be used again on the incremental part of the for loop, it leaves potential risk of UAF crashing, replace `TAILQ_FOREACH()` with `TAILQ_F
core: se: fix potential use after free
The freed `proxy` will be used again on the incremental part of the for loop, it leaves potential risk of UAF crashing, replace `TAILQ_FOREACH()` with `TAILQ_FOREACH_SAFE()` to avoid second use of freed memory.
Fixes: https://github.com/OP-TEE/optee_os/issues/1965 Signed-off-by: Alex CHEN <viennadd@gmail.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> [jf: add 'se:' to subject, don't capitalize "use", capitalize 'Fixes:'] Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| fe45728c | 22-Nov-2017 |
viennadd <viennadd@gmail.com> |
tee_fs_rpc_opendir(): avoid potential memory leak after early return
Fixes: https://github.com/OP-TEE/optee_os/issues/1960 Signed-off-by: Alex CHEN <viennadd@gmail.com> Reviewed-by: Jerome Forissier
tee_fs_rpc_opendir(): avoid potential memory leak after early return
Fixes: https://github.com/OP-TEE/optee_os/issues/1960 Signed-off-by: Alex CHEN <viennadd@gmail.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| e1770e71 | 13-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: rename to <crypto/crypto.h>
Renames core/include/tee/tee_cryp_provider.h to core/include/crypto/crypto.h
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere
core: rename to <crypto/crypto.h>
Renames core/include/tee/tee_cryp_provider.h to core/include/crypto/crypto.h
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 3bbd3ce9 | 10-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: remove struct crypto_ops
Removes struct crypto_ops and adds crypto_init()
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org>
core: remove struct crypto_ops
Removes struct crypto_ops and adds crypto_init()
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 291e5450 | 10-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Replace struct acipher_ops with function interface
Adds crypto_acipher_*() replacing struct acipher_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne
Replace struct acipher_ops with function interface
Adds crypto_acipher_*() replacing struct acipher_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 33790cc1 | 10-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Replace struct bignum_ops with function interface
Adds crypto_bignum_*() replacing struct bignum_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Car
Replace struct bignum_ops with function interface
Adds crypto_bignum_*() replacing struct bignum_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 8875ce46 | 10-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Replace struct authenc_ops with function interface
Adds crypto_authenc_*() replacing struct authenc_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne
Replace struct authenc_ops with function interface
Adds crypto_authenc_*() replacing struct authenc_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| e9eaba5c | 09-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Replace struct mac_ops with function interface
Adds mac_cipher_get_ctx_size(), mac_cipher_init(), mac_cipher_update() and mac_cipher_final() replacing struct mac_ops in crypto_ops.
Acked-by: Jerom
Replace struct mac_ops with function interface
Adds mac_cipher_get_ctx_size(), mac_cipher_init(), mac_cipher_update() and mac_cipher_final() replacing struct mac_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| 82d91db1 | 09-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Replace struct cipher_ops with function interface
Adds crypto_cipher_get_ctx_size(), crypto_cipher_init(), crypto_cipher_update(), crypto_cipher_final() and crypto_cipher_get_block_size() replacing
Replace struct cipher_ops with function interface
Adds crypto_cipher_get_ctx_size(), crypto_cipher_init(), crypto_cipher_update(), crypto_cipher_final() and crypto_cipher_get_block_size() replacing struct cipher_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| b887bd8f | 09-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Replace struct hash_ops with function interface
Adds crypto_hash_get_ctx_size(), crypto_hash_init(), crypto_hash_update() and crypto_hash_final() replacing struct hash_ops in crypto_ops.
Acked-by:
Replace struct hash_ops with function interface
Adds crypto_hash_get_ctx_size(), crypto_hash_init(), crypto_hash_update() and crypto_hash_final() replacing struct hash_ops in crypto_ops.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| bd3efa26 | 31-Oct-2017 |
Zeng Tao <prime.zeng@hisilicon.com> |
core: crypto: add overflow check
In some use cases, the input value may cause add_overflow, this patch make the xxx_to_binary functions reporting the overflow errors instead of just let it to be voi
core: crypto: add overflow check
In some use cases, the input value may cause add_overflow, this patch make the xxx_to_binary functions reporting the overflow errors instead of just let it to be void, allowing the upper layer to deal with it.
Reviewed-by: Jens Wiklander <jens.wiklander@linaro.org> Signed-off-by: Zeng Tao <prime.zeng@hisilicon.com> [jf: fix typo in commit subject] Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 05c5cd2e | 08-Nov-2017 |
Volodymyr Babchuk <vlad.babchuk@gmail.com> |
tee: fix improper calloc usage
calloc() takes number of entries as first argument, and size of entry as a second. There was several places, where argument order was reversed.
Signed-off-by: Volodym
tee: fix improper calloc usage
calloc() takes number of entries as first argument, and size of entry as a second. There was several places, where argument order was reversed.
Signed-off-by: Volodymyr Babchuk <vlad.babchuk@gmail.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
show more ...
|
| 36a063ef | 03-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
Replace struct prng_ops with function interface
Adds crypto_rng_add_entropy() and crypto_rng_read() replacing struct prng_ops in crypto_ops.
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.o
Replace struct prng_ops with function interface
Adds crypto_rng_add_entropy() and crypto_rng_read() replacing struct prng_ops in crypto_ops.
Reviewed-by: Etienne Carriere <etienne.carriere@linaro.org> Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU) Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| b399f70b | 07-Nov-2017 |
Jens Wiklander <jens.wiklander@linaro.org> |
core: RPMB_FS: remember owner uuid
Prior to this patch was the owning uuid looked up via the current session. The assumption that the uuid of the context of the current session is the same as the o
core: RPMB_FS: remember owner uuid
Prior to this patch was the owning uuid looked up via the current session. The assumption that the uuid of the context of the current session is the same as the owner of a RPMB file doesn't hold any longer after: commit 078f18f82eeb ("core: RPMB FS: provide tee_rpmb_fs_raw_open()") was introduced.
Instead the pointer to the uuid passed as the owner is stored in the file handle and used as needed when encrypting/decrypting the file.
Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Fixes: https://github.com/OP-TEE/optee_os/issues/1780 Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU) Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|
| ae54853c | 07-Nov-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: fix access conflict status in rpmb fs that panics TA
According to the GPD TEE Internal Core API specs, when creating an existing persistent object without the overwrite flag, the OS should ret
core: fix access conflict status in rpmb fs that panics TA
According to the GPD TEE Internal Core API specs, when creating an existing persistent object without the overwrite flag, the OS should return a TEE_ERROR_ACCESS_CONFLICT status.
This change fixes the RPMB FS layer. An effect of this correction is that before this change, OS panicked TAs that requested such forbidden object creation, as a TEE_ERROR_BAD_PARAMETERS return value is considered by the API as an unexpected status.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org> Tested-by: Jens Wiklander <jens.wiklander@linaro.org> (QEMU)
show more ...
|
| a7337d86 | 27-Oct-2017 |
Etienne Carriere <etienne.carriere@linaro.org> |
core: fix allocated object on object creation failure in svc storage
Changes syscall_storage_obj_create to give physical object ownership to the tee object layer only once storage is successfully in
core: fix allocated object on object creation failure in svc storage
Changes syscall_storage_obj_create to give physical object ownership to the tee object layer only once storage is successfully inited for that object. Otherwise, if tee_svc_storage_init_file fails, the storage does not own the physical object and close method will not release the object.
This change fixes https://github.com/OP-TEE/optee_test/issues/232.
Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Acked-by: Jens Wiklander <jens.wiklander@linaro.org>
show more ...
|