Lines Matching refs:object

63     /** The object's key is extractable. */
77 /** Used for object initialization, with all permissions assigned by default. */
82 * @brief Defines information about the object pointed to by the flag of the <b>TEE_ObjectHandle</b>,
83 * for example, whether the object is a persistent object or is initialized.
88 /** The object is a persistent object. */
90 /** The object is initialized. */
141 * @brief Obtains a buffer attribute from the <b>TEE_Attribute</b> struct of the object pointed
145 * the <b>Usage_Constants</b> of the object must include <b>TEE_USAGE_EXTRACTABLE</b>.
147 * @param object Indicates the handle of the object.
154 * @return Returns <b>TEE_ERROR_ITEM_NOT_FOUND</b> if the <b>TEE_Attribute</b> cannot be found in the object
155 * or the object is not initialized.
161 TEE_Result TEE_GetObjectBufferAttribute(TEE_ObjectHandle object, uint32_t attributeID, void *buffer, size_t *size);
164 * @brief Obtains a value attribute from the <b>TEE_Attribute</b> of an object.
167 * the <b>Usage_Constants</b> of the object must include <b>TEE_USAGE_EXTRACTABLE</b>.
169 * @param object Indicates the handle of the object.
176 * @return Returns <b>TEE_ERROR_ITEM_NOT_FOUND</b> if the <b>TEE_Attribute</b> cannot be found in the object
177 * or the object is not initialized.
179 * but the object <b>Usage_Constants</b> does not contain the <b>TEE_USAGE_EXTRACTABLE</b> flag.
184 TEE_Result TEE_GetObjectValueAttribute(TEE_ObjectHandle object, uint32_t attributeID, uint32_t *a, uint32_t *b);
187 * @brief Closes a <b>TEE_ObjectHandle</b> object.
189 * The object can be persistent or transient.
191 * @param object Indicates the <b>TEE_ObjectHandle</b> object to close.
196 void TEE_CloseObject(TEE_ObjectHandle object);
199 * @brief Allocates an uninitialized object to store keys.
203 * @param objectType Indicates the type of the object to create. The value is <b>TEE_ObjectType</b>.
204 * @param maxObjectSize Indicates the maximum number of bytes of the object.
205 * @param object Indicates the pointer to the handle of the newly created object.
209 * @return Returns <b>TEE_ERROR_NOT_SUPPORTED</b> if the object type is not supported.
214 TEE_Result TEE_AllocateTransientObject(uint32_t objectType, uint32_t maxObjectSize, TEE_ObjectHandle *object);
217 * @brief Releases a transient object that is previously allocated with <b>TEE_AllocateTransientObject</b>.
222 * @param object Indicates the <b>TEE_ObjectHandle</b> to release.
227 void TEE_FreeTransientObject(TEE_ObjectHandle object);
230 * @brief Resets a transient object to its initial state after allocation.
232 * You can use an allocated object, which has not been initialized or used to store a key, to store a key.
234 * @param object Indicates the <b>TEE_ObjectHandle</b> to reset.
239 void TEE_ResetTransientObject(TEE_ObjectHandle object);
242 * @brief Populates an uninitialized object with object attributes passed by the TA in the <b>attrs</b> parameter.
244 * The object must be uninitialized. \n
247 * @param object Indicates the handle on a created but uninitialized object.
248 * @param attrs Indicates the pointer to an array of object attributes, which can be one or more <b>TEE_Attribute</b>s.
257 TEE_Result TEE_PopulateTransientObject(TEE_ObjectHandle object, TEE_Attribute *attrs, uint32_t attrCount);
288 * @brief Generates a random key or a key pair and populates a transient key object with the generated key.
290 * @param object Indicates a transient object used to hold the generated key.
297 * the key that can be held in the transient object.
302 TEE_Result TEE_GenerateKey(TEE_ObjectHandle object, uint32_t keySize, TEE_Attribute *params, uint32_t paramCount);
305 * @brief Get the information of the object data part, the total length of the data part and the current
308 * @param object Indicates the handle of the object.
318 TEE_Result TEE_InfoObjectData(TEE_ObjectHandle object, uint32_t *pos, uint32_t *len);
326 * @param object Indicates the handle of the object.
330 * @return Returns <b>TEE_ERROR_CORRUPT_OBJECT</b> if the object is corrupted and the object handle will be closed.
331 * @return Returns <b>TEE_ERROR_STORAGE_NOT_AVAILABLE</b> if the object is stored
337 TEE_Result TEE_GetObjectInfo1(TEE_ObjectHandle object, TEE_ObjectInfo *objectInfo);
340 * @brief Assigns the <b>TEE_Attribute</b> of an initialized object to an uninitialized object.
342 * This function populates an uninitialized object with <b>TEE_Attribute</b>.
346 * @param destObject Indicates the uninitialized object.
347 * @param srcObject Indicates the initialized object.
350 * @return Returns <b>TEE_ERROR_CORRUPT_OBJECT</b> if the object is corrupted and the object handle will be closed.
351 * @return Returns <b>TEE_ERROR_STORAGE_NOT_AVAILABLE</b> if the object is stored
360 * @brief Restricts the <b>objectUse</b> bit of an object.
362 * This bit determines the usage of the key in the object. The value range is <b>Usage_Constant</b>.
364 * If it is set to <b>1</b>, the corresponding usage flag in the object is left unchanged. \n
365 * If it is set to <b>0</b>, the corresponding usage flag in the object is cleared. \n
366 * The newly created object contains all <b>Usage_Constant</b>, and the usage flag can be cleared only.
368 * @param object Indicates the <b>TEE_ObjectHandle</b> of the target object.
369 * @param objectUsage Indicates the new object usage.
372 * @return Returns <b>TEE_ERROR_CORRUPT_OBJECT</b> if the object is corrupted and the object handle will be closed.
373 * @return Returns <b>TEE_ERROR_STORAGE_NOT_AVAILABLE</b> if the object is stored
379 TEE_Result TEE_RestrictObjectUsage1(TEE_ObjectHandle object, uint32_t objectUsage);