{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":19610475,"defaultBranch":"master","name":"optee_client","ownerLogin":"OP-TEE","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-05-09T12:33:33.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/7488961?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1712915775.0","currentOid":""},"activityList":{"items":[{"before":"7749688eb18d6ff87f94e838ec0cadc7051bc692","after":"3eac340a781c00ccd61b151b0e9c22a8c6e9f9f0","ref":"refs/heads/master","pushedAt":"2024-04-02T08:28:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"libteec: Move OP-TEE defined fields into an imp struct\n\nGlobalPlatform TEE Client API Specification v1.0 specifies that\nthe structs TEEC_Context, TEEC_Session, TEEC_SharedMemory,\nand TEEC_Operation shall have a user defined struct named imp.\nIn OP-TEE the struct is not there and instead the user defined\nfields are declared directly in the top structs.\nThis commit introduces the imp struct to better support using\ndifferent implementations. The imp fields now represent the\nimplementation defined parts of the structs that was\npreviously declared directly in the top struct. All previously\navailable parameters are preserved in the imp struct.\nThe updated version of the imp structure makes it easier to\ncreate a binding for Rust.\nAdding the missing imp struct to the structs in OP-TEE is an\nABI breakage which requires a version major update of libteec.\n\nLink: https://github.com/OP-TEE/optee_client/issues/348\nReported-by: Tom Hebb \nSigned-off-by: Julianus Larson \nAcked-by: Etienne Carriere \nAcked-by: Jerome Forissier ","shortMessageHtmlLink":"libteec: Move OP-TEE defined fields into an imp struct"}},{"before":"cef6c7eca4945e51b1f854af1077b44d13c21c28","after":"7749688eb18d6ff87f94e838ec0cadc7051bc692","ref":"refs/heads/master","pushedAt":"2024-03-13T13:17:45.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"libteeacl: add pkgconfig file: teeacl.pc\n\nAdd a pkgconfig file to libteeacl, so that the library and its headers\ncan be found from wherever they have been installed.\n\nSigned-off-by: Eero Aaltonen \nAcked-by: Jerome Forissier \nAcked-by: Etienne Carriere ","shortMessageHtmlLink":"libteeacl: add pkgconfig file: teeacl.pc"}},{"before":"c5b3920f58080fda3423235d2620106456bd5b50","after":"cef6c7eca4945e51b1f854af1077b44d13c21c28","ref":"refs/heads/master","pushedAt":"2024-02-19T16:17:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"tee-supplicant: fix potential crash when TA isn't found\n\nset_ta_path() doesn't add a NULL pointer to the last element of ta_path,\nwhich can cause a segmentation fault when a TA is not found. Use\ncalloc() instead of malloc() to make sure the ta_path array is always\nNULL-terminated.\n\nLink: https://github.com/OP-TEE/optee_client/issues/374\nSigned-off-by: guan-gm.lin \nReviewed-by: Jerome Forissier \nReviewed-by: Etienne Carriere ","shortMessageHtmlLink":"tee-supplicant: fix potential crash when TA isn't found"}},{"before":"afbd31d9592e8919cf2b6883e33d80fcc32ccdc2","after":"c5b3920f58080fda3423235d2620106456bd5b50","ref":"refs/heads/master","pushedAt":"2024-02-14T08:57:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"libckteec: one shot encryption/decryption may have no input data\n\nChange the one shot encryption and decryption handler function to\nallow input buffer reference to be NULL. This may happen for example\nwith AES GCM operation where encryption of a NULL buffer is expected to\nproduce an AES GCM authentication tag. Before this change, providing a\nNULL buffer to C_Encrypt() made ckteec_register_shm() to fail and\nckteec_register_shm() to return CKR_HOST_MEMORY error code.\n\nFixes: aa3dd58d605e (\"libckteec: Allow 0 length input buffer for update operations.\")\nAcked-by: Jerome Forissier \nSigned-off-by: Etienne Carriere ","shortMessageHtmlLink":"libckteec: one shot encryption/decryption may have no input data"}},{"before":"bfe37714c20c46512e70fad961f1a81a7ab05a8b","after":"afbd31d9592e8919cf2b6883e33d80fcc32ccdc2","ref":"refs/heads/master","pushedAt":"2024-01-29T09:20:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"android: convert .mk files to .bp\n\nAndroid use by default Soong Build System, *.mk files are deprecated\nin favor of Android.bp [1].\n\nAll the logics present in android mk files have been ported to a\nsingle Android.bp\n\noptee_client.device.mk set the same default flags as we did in the\nold Android *.mk files.\n\nExample of configs in device/VENDOR/BOARD/device.mk:\nBefore:\n\nCFG_TEE_FS_PARENT_PATH := /mnt/vendor/persist/tee\n\nPRODUCT_PACKAGES += \\\n libteec \\\n tee-supplicant\n\nAfter:\n\ninclude $(PATH_OPTEE_CLIENT)/optee_client.device.mk\n$(call soong_config_set,optee_client,cfg_tee_fs_parent_path,/mnt/vendor/persist/tee)\n\nPRODUCT_PACKAGES += \\\n libteec \\\n tee-supplicant\n\n[1] https://source.android.com/docs/setup/build\n\nAcked-by: Jerome Forissier \nSigned-off-by: Julien Masson ","shortMessageHtmlLink":"android: convert .mk files to .bp"}},{"before":"f7e4ced15d1fefd073bbfc484fe0e1f74afe96c2","after":"bfe37714c20c46512e70fad961f1a81a7ab05a8b","ref":"refs/heads/master","pushedAt":"2024-01-23T14:38:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"libteec: drop benchmark framework support\n\nDrop Benchmark Framework as current implementation is non-function\nand obsolete, and it's not supported anymore.\n\nAcked-by: Jens Wiklander \nAcked-by: Etienne Carriere \nSigned-off-by: Igor Opaniuk ","shortMessageHtmlLink":"libteec: drop benchmark framework support"}},{"before":"333e51280497722c7f466b1c7905a3fd76290d6a","after":"f7e4ced15d1fefd073bbfc484fe0e1f74afe96c2","ref":"refs/heads/master","pushedAt":"2024-01-16T13:16:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"teec: do fail on MAX_SIZE allocation requests\n\nThe variable aligned_sz will be 0 when the requested sz is MAX_SIZE.\nSince posix_memalign can return a valid pointer for zero size\nallocations, share memory registration requests for MAX_SIZE might make\nit to the kernel.\n\nThis PR stops it early - just as it was before \"teec: use multiple of\npage size for page aligned buffers\" was merged.\n\nFixes: acb0885c117e (\"teec: use multiple of page size for page aligned buffers\")\nSigned-off-by: Jorge Ramirez-Ortiz \nReviewed-by: Jens Wiklander ","shortMessageHtmlLink":"teec: do fail on MAX_SIZE allocation requests"}},{"before":"f467ad36bec5b06b38f936b020a59543cbc632a7","after":"333e51280497722c7f466b1c7905a3fd76290d6a","ref":"refs/heads/master","pushedAt":"2024-01-12T13:38:33.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"libckteec: Fix CK_ULONG conversions in C_GetTokenInfo()\n\nWhen running in 64 bit CPU things like ulMaxSessionCount would get value\nof 4294967295 instead of ~0.\n\nAdjust all other CK_ULONG fields supporting CK_UNAVAILABLE_INFORMATION.\n\nSigned-off-by: Vesa Jääskeläinen \nReviewed-by: Etienne Carriere ","shortMessageHtmlLink":"libckteec: Fix CK_ULONG conversions in C_GetTokenInfo()"}},{"before":"5448e224fb594edda13985f47bd22b746eee0711","after":"f467ad36bec5b06b38f936b020a59543cbc632a7","ref":"refs/heads/master","pushedAt":"2024-01-08T13:43:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"tee-supplicant: fix build with kernel < 4.16\n\nCommit 3ac968ee7c927271e83ea3a4247839649202ab5e moved linux/tee.h from\nlibteec/include to libteec/src resulting in the following build failure\nwith any kernel < 4.16 (i.e before\nhttps://github.com/torvalds/linux/commit/033ddf12bcf5326b93bd604f50a7474a434a35f9):\n\n/home/buildroot/autobuild/instance-3/output-1/build/optee-client-4.0.0/tee-supplicant/src/tee_supplicant.c: In function 'register_local_shm':\n/home/buildroot/autobuild/instance-3/output-1/build/optee-client-4.0.0/tee-supplicant/src/tee_supplicant.c:356:44: error: storage size of 'data' isn't known\n 356 | struct tee_ioctl_shm_register_data data;\n | ^~~~\n\nTo fix this build failure, update CMakeLists.txt and Makefile of\ntee-supplicant to add libteec/src to the include directories.\n\nFixes: 3ac968ee7c92 (\"Makefile, cmake: move teec related headers\")\n\nAcked-by: Jerome Forissier \nAcked-by: Jens Wiklander \nSigned-off-by: Fabrice Fontaine ","shortMessageHtmlLink":"tee-supplicant: fix build with kernel < 4.16"}},{"before":"98dc4f488c2f9e433e3e6574ddbdafd116f523db","after":"5448e224fb594edda13985f47bd22b746eee0711","ref":"refs/heads/master","pushedAt":"2024-01-08T08:34:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"tee-supplicant: Enforce paths bound limits\n\nVerify \"ta-path\" command line argument length and if snprintf()\nconcated path is too long, then print an error message and\nterminate startup.\n\nSigned-off-by: Tanel Dettenborn \nReviewed-by: Jens Wiklander \nAcked-by: Etienne Carriere ","shortMessageHtmlLink":"tee-supplicant: Enforce paths bound limits"}},{"before":"a8381cf4a5ec81d3fbe1c810d9546bd73a45bb96","after":"98dc4f488c2f9e433e3e6574ddbdafd116f523db","ref":"refs/heads/master","pushedAt":"2023-12-07T11:13:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"libckteec: serialize_ck.c: serialize AES-GCM mechanism parameters\n\nThis commits adds serialize_mecha_aes_gcm() function to serialize_ck.c\nto support AES-GCM mechanism (CKM_AES_GCM) in libckteec.\n\nCo-developed-by: Etienne Carriere \nSigned-off-by: Etienne Carriere \nSigned-off-by: Marouene Boubakri \nReviewed-by: Etienne Carriere ","shortMessageHtmlLink":"libckteec: serialize_ck.c: serialize AES-GCM mechanism parameters"}},{"before":"f3845d8bee3645eedfcc494be4db034c3c69e9ab","after":"a8381cf4a5ec81d3fbe1c810d9546bd73a45bb96","ref":"refs/heads/master","pushedAt":"2023-12-04T08:39:17.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"tee_client_api: deprecate two TEE_ERROR_* macros not in the specification\n\nTEE_ERROR_EXTERNAL_CANCEL and TEE_ERROR_STORAGE_NO_SPACE are not part\nof the specification [1]. TEEC_ERROR_EXTERNAL_CANCEL and\nTEEC_ERROR_STORAGE_NO_SPACE should be preferred instead.\n\nAdd a message in the description to deprecate these two macros, but\nkeep them for backward compatibility.\n\n[1] TEE Client API Specification v1.0 Errata and Precisions\n Version 2.0, §P.4 Define Additional Return Codes\n\nSigned-off-by: Vincent Mailhol \nAcked-by: Etienne Carriere ","shortMessageHtmlLink":"tee_client_api: deprecate two TEE_ERROR_* macros not in the specifica…"}},{"before":"c84206b27d44f8dbe5271d700b952ae10f19ee73","after":"f3845d8bee3645eedfcc494be4db034c3c69e9ab","ref":"refs/heads/master","pushedAt":"2023-11-27T15:22:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"tee-supplicant: Allow for TA load path to be specified at runtime\n\nAdd a new `--ta-path` CLI flag for overriding the default load path used\nby tee-supplicant. The given path string can be a set of colon (':')\nseparated paths, each being a full path used when searching for TAs.\nWhen this option is not used, the existing behavior of loading TAs from\na subdirectory \"ta-dir\" under TEEC_LOAD_PATH is retained.\n\nSigned-off-by: Jared Baur \nReviewed-by: Etienne Carriere \nReviewed-by: Jerome Forissier ","shortMessageHtmlLink":"tee-supplicant: Allow for TA load path to be specified at runtime"}},{"before":"acb0885c117e73cb6c5c9b1dd9054cb3f93507ee","after":"c84206b27d44f8dbe5271d700b952ae10f19ee73","ref":"refs/heads/master","pushedAt":"2023-10-30T17:29:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"tee-supplicant: Cleanup TEEC_TEST_LOAD_PATH\n\nCleanup TEEC_TEST_LOAD_PATH and CFG_TA_TEST_PATH, as the\nTEEC_TEST_LOAD_PATH was not working properly anyway.\n\nTEEC_TEST_LOAD_PATH and CFG_TA_TEST_PATH are removed, and the\nTEEC_LOAD_PATH is supposed to hold all paths where to search for TAs.\n\nSigned-off-by: Mika Tammi \nReviewed-by: Etienne Carriere \nReviewed-by: Jens Wiklander ","shortMessageHtmlLink":"tee-supplicant: Cleanup TEEC_TEST_LOAD_PATH"}},{"before":"6178477728ebea18f1ef37f3534d06a34840fd3b","after":"acb0885c117e73cb6c5c9b1dd9054cb3f93507ee","ref":"refs/heads/master","pushedAt":"2023-10-19T14:26:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"teec: use multiple of page size for page aligned buffers\n\nWhen allocating a page aligned buffer, round the size up the next\nmultiple of page size. With this we can guarantee that a part of that\npage isn't registered already.\n\nSigned-off-by: Jens Wiklander \nReviewed-by: Joakim Bech ","shortMessageHtmlLink":"teec: use multiple of page size for page aligned buffers"}},{"before":"8533e0e6329840ee96cf81b6453f257204227e6c","after":"6178477728ebea18f1ef37f3534d06a34840fd3b","ref":"refs/heads/master","pushedAt":"2023-10-13T20:27:08.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"cmake: pkgconfig file: install the file\n\nMake it so that pkgconfig file is actually installed to INSTALL_LIBDIR.\n\nSigned-off-by: Eero Aaltonen \nAcked-by: Jerome Forissier \nAcked-by: Etienne Carriere ","shortMessageHtmlLink":"cmake: pkgconfig file: install the file"}},{"before":"0fc6ef70a70d38628ded06590aefb7bc23364d99","after":"8533e0e6329840ee96cf81b6453f257204227e6c","ref":"refs/heads/master","pushedAt":"2023-03-20T09:52:16.733Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jforissier","name":"Jérôme Forissier","path":"/jforissier","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8288195?s=80&v=4"},"commit":{"message":"travis: remove the .travis.yml file\n\nWe're no longer using Travis CI and have no plans of adding it again.\nHence let's remove the .travis.yml file.\n\nSigned-off-by: Joakim Bech \nReviewed-by: Jerome Forissier \nAcked-by: Jens Wiklander ","shortMessageHtmlLink":"travis: remove the .travis.yml file"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEJUYssQA","startCursor":null,"endCursor":null}},"title":"Activity · OP-TEE/optee_client"}