SST: Add asset authentication token in the APIs
This patch adds asset authentication token in the APIs to be used in
the future for asset key derivation. It also updates all files which
depend on these APIs and their documentation
Change-Id: I53e193b3dd3151798588c5515cd5198270836acf
Signed-off-by: Marc Moreno <marc.morenoberengue@arm.com>
diff --git a/interface/include/tfm_sst_api.h b/interface/include/tfm_sst_api.h
index 8447bd4..58d9333 100644
--- a/interface/include/tfm_sst_api.h
+++ b/interface/include/tfm_sst_api.h
@@ -19,40 +19,78 @@
* without setting any data in the asset.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] token Must be set to NULL, reserved for future use.
+ * Pointer to the asset token to be used to generate
+ * the asset key to encrypt and decrypt the asset
+ * data. This is an optional parameter that has to
+ * be NULL in case the token is not provied.
+ * \param[in] token_size Must be set to 0, reserved for future use.
+ * Token size. In case the token is not provided
+ * the token size has to be 0.
*
* \return Returns an TFM_SST_ERR_SUCCESS if asset is created correctly.
* Otherwise, error code as specified in \ref tfm_sst_err_t
*/
-enum tfm_sst_err_t tfm_sst_create(uint32_t asset_uuid);
+enum tfm_sst_err_t tfm_sst_create(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size);
/**
* \brief Gets asset's information referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] token Must be set to NULL, reserved for future use.
+ * Pointer to the asset token to be used to generate
+ * the asset key to encrypt and decrypt the asset
+ * data. This is an optional parameter that has to
+ * be NULL in case the token is not provied.
+ * \param[in] token_size Must be set to 0, reserved for future use.
+ * Token size. In case the token is not provided
+ * the token size has to be 0.
* \param[out] info Pointer to store the asset's information
* \ref tfm_sst_asset_info_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_get_info(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_asset_info_t *info);
/**
* \brief Gets asset's attributes referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] token Must be set to NULL, reserved for future use.
+ * Pointer to the asset token to be used to generate
+ * the asset key to encrypt and decrypt the asset
+ * data. This is an optional parameter that has to
+ * be NULL in case the token is not provied.
+ * \param[in] token_size Must be set to 0, reserved for future use.
+ * Token size. In case the token is not provided
+ * the token size has to be 0.
* \param[out] attrs Pointer to store the asset's attributes
* \ref tfm_sst_asset_attrs_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_get_attributes(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_asset_attrs_t *attrs);
/**
* \brief Sets asset's attributes referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] token Must be set to NULL, reserved for future use.
+ * Pointer to the asset token to be used to generate
+ * the asset key to encrypt and decrypt the asset
+ * data. This is an optional parameter that has to
+ * be NULL in case the token is not provied.
+ * \param[in] token_size Must be set to 0, reserved for future use.
+ * Token size. In case the token is not provided
+ * the token size has to be 0.
* \param[in] attrs Pointer to new the asset's attributes
* \ref tfm_sst_asset_attrs_t
*
@@ -60,40 +98,72 @@
*/
enum tfm_sst_err_t tfm_sst_set_attributes(
uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
const struct tfm_sst_asset_attrs_t *attrs);
/**
* \brief Reads asset's data from asset referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] token Must be set to NULL, reserved for future use.
+ * Pointer to the asset token to be used to generate
+ * the asset key to encrypt and decrypt the asset
+ * data. This is an optional parameter that has to
+ * be NULL in case the token is not provied.
+ * \param[in] token_size Must be set to 0, reserved for future use.
+ * Token size. In case the token is not provided
+ * the token size has to be 0.
* \param[out] data Pointer to data vector \ref tfm_sst_buf_t to store
* data, size and offset
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_read(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_buf_t* data);
/**
* \brief Writes data into an asset referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] token Must be set to NULL, reserved for future use.
+ * Pointer to the asset token to be used to generate
+ * the asset key to encrypt and decrypt the asset
+ * data. This is an optional parameter that has to
+ * be NULL in case the token is not provied.
+ * \param[in] token_size Must be set to 0, reserved for future use.
+ * Token size. In case the token is not provided
+ * the token size has to be 0.
* \param[in] data Pointer to data vector \ref tfm_sst_buf_t which
* contains the data to write
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_write(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_buf_t* data);
/**
* \brief Deletes the asset referenced by the asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] token Must be set to NULL, reserved for future use.
+ * Pointer to the asset token to be used to generate
+ * the asset key to encrypt and decrypt the asset
+ * data. This is an optional parameter that has to
+ * be NULL in case the token is not provied.
+ * \param[in] token_size Must be set to 0, reserved for future use.
+ * Token size. In case the token is not provided
+ * the token size has to be 0.
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
-enum tfm_sst_err_t tfm_sst_delete(uint32_t asset_uuid);
+enum tfm_sst_err_t tfm_sst_delete(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size);
#ifdef __cplusplus
}
diff --git a/interface/include/tfm_sst_defs.h b/interface/include/tfm_sst_defs.h
index 52e41b3..5e1f869 100644
--- a/interface/include/tfm_sst_defs.h
+++ b/interface/include/tfm_sst_defs.h
@@ -54,6 +54,24 @@
};
/*!
+ * \struct tfm_sst_token_t
+ *
+ * \brief Structure to store the asset's token.
+ *
+ */
+struct tfm_sst_token_t {
+ const uint8_t *token; /*!< Pointer to the asset's token to be used to
+ * generate the asset key to encrypt and decrypt
+ * the asset data. This is an optional parameter
+ * that has to be NULL in case the token is not
+ * provied.
+ */
+ uint32_t token_size; /*!< Token size. In case the token is not provided
+ * the token size has to be 0.
+ */
+};
+
+/*!
* \struct tfm_sst_buf_t
*
* \brief Structure to store data information to read/write from/to asset.
diff --git a/interface/include/tfm_sst_svc_handler.h b/interface/include/tfm_sst_svc_handler.h
index a43e545..0cfb4ed 100644
--- a/interface/include/tfm_sst_svc_handler.h
+++ b/interface/include/tfm_sst_svc_handler.h
@@ -18,80 +18,94 @@
* \brief SVC funtion to allocate space for the asset, referenced by asset
* UUID, without setting any data in the asset.
*
- * \param[in] asset_uuid Asset UUID
+ * \param[in] asset_uuid Asset UUID \ref tfm_sst_asset_id_t
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
*
* \return Returns an TFM_SST_ERR_SUCCESS if asset is created correctly.
* Otherwise, error code as specified in \ref tfm_sst_err_t
*/
-enum tfm_sst_err_t tfm_sst_svc_create(uint32_t asset_uuid);
+enum tfm_sst_err_t tfm_sst_svc_create(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token);
/**
* \brief SVC funtion to get asset's information referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[out] info Pointer to store the asset's information
* \ref tfm_sst_asset_info_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_svc_get_info(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_asset_info_t *info);
/**
* \brief SVC funtion to get asset's attributes referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[out] attrs Pointer to store the asset's attributes
* \ref tfm_sst_asset_attrs_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_svc_get_attributes(uint32_t asset_uuid,
- struct tfm_sst_asset_attrs_t *attrs);
+ const struct tfm_sst_token_t *s_token,
+ struct tfm_sst_asset_attrs_t *attrs);
/**
* \brief SVC funtion to set asset's attributes referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[in] attrs Pointer to new the asset's attributes
* \ref tfm_sst_asset_attrs_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_svc_set_attributes(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
const struct tfm_sst_asset_attrs_t *attrs);
/**
* \brief SVC funtion to read asset's data from asset referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[out] data Pointer to data vector \ref tfm_sst_buf_t to store
* data, size and offset
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_svc_read(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_buf_t* data);
/**
* \brief SVC funtion to write data into an asset referenced by asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[in] data Pointer to data vector \ref tfm_sst_buf_t which
* contains the data to write
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_svc_write(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_buf_t* data);
/**
* \brief SVC funtion to delete the asset referenced by the asset UUID.
*
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
-enum tfm_sst_err_t tfm_sst_svc_delete(uint32_t asset_uuid);
+enum tfm_sst_err_t tfm_sst_svc_delete(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token);
#ifdef __cplusplus
}
diff --git a/interface/include/tfm_sst_veneers.h b/interface/include/tfm_sst_veneers.h
index 033f1cb..95a6b17 100644
--- a/interface/include/tfm_sst_veneers.h
+++ b/interface/include/tfm_sst_veneers.h
@@ -19,7 +19,8 @@
* without setting any data in the asset.
*
* \param[in] app_id Application ID
- * \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
+ * \param[in] asset_uuid Asset UUID \ref tfm_sst_asset_id_t
*
* \return Returns TFM_SST_ERR_SUCCESS if the asset has been created correctly.
* If SST area is not prepared, it returns
@@ -27,47 +28,55 @@
* TFM_SST_ERR_STORAGE_SYSTEM_FULL. If application id doesn't have the
* write rights, it returns TFM_SST_ERR_PERMS_NOT_ALLOWED.
*/
-enum tfm_sst_err_t tfm_sst_veneer_create(uint32_t app_id, uint32_t asset_uuid);
+enum tfm_sst_err_t tfm_sst_veneer_create(uint32_t app_id, uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token);
+
/**
* \brief Gets asset's information referenced by asset UUID.
*
* \param[in] app_id Application ID
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[out] info Pointer to store the asset's information
* \ref tfm_sst_asset_info_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_veneer_get_info(uint32_t app_id, uint32_t asset_uuid,
- struct tfm_sst_asset_info_t *info);
+ const struct tfm_sst_token_t *s_token,
+ struct tfm_sst_asset_info_t *info);
/**
* \brief Gets asset's attributes referenced by asset UUID.
*
* \param[in] app_id Application ID
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[out] attrs Pointer to store the asset's attributes
* \ref tfm_sst_asset_attrs_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_veneer_get_attributes(uint32_t app_id,
- uint32_t asset_uuid,
- struct tfm_sst_asset_attrs_t *attrs);
+ uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
+ struct tfm_sst_asset_attrs_t *attrs);
/**
* \brief Sets asset's attributes referenced by asset UUID.
*
* \param[in] app_id Application ID
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[in] attrs Pointer to new the asset's attributes
* \ref tfm_sst_asset_attrs_t
*
* \return Returns error code as specified in \ref tfm_sst_err_t
*/
enum tfm_sst_err_t tfm_sst_veneer_set_attributes(uint32_t app_id,
- uint32_t asset_uuid,
+ uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
const struct tfm_sst_asset_attrs_t *attrs);
/**
@@ -75,40 +84,46 @@
*
* \param[in] app_id Application ID
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[in/out] data Pointer to data vector \ref tfm_sst_buf_t to
* store data, size and offset
*
* \return Returns the number of bytes written or a castable \ref tfm_sst_err_t
* value
*/
-enum tfm_sst_err_t tfm_sst_veneer_read(uint32_t app_id,
- uint32_t asset_uuid,
+enum tfm_sst_err_t tfm_sst_veneer_read(uint32_t app_id, uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_buf_t *data);
+
/**
* \brief Writes data into an asset referenced by asset UUID.
*
* \param[in] app_id Application ID
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
* \param[in] data Pointer to data vector \ref tfm_sst_buf_t which
* contains the data to write
*
* \return Returns the number of bytes written or a castable \ref tfm_sst_err_t
* value
*/
-enum tfm_sst_err_t tfm_sst_veneer_write(uint32_t app_id,
- uint32_t asset_uuid,
+enum tfm_sst_err_t tfm_sst_veneer_write(uint32_t app_id, uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_buf_t *data);
+
/**
* \brief Deletes the asset referenced by the asset UUID.
*
* \param[in] app_id Application ID
* \param[in] asset_uuid Asset UUID
+ * \param[in] s_token Pointer to the asset's token \ref tfm_sst_token_t
*
* \return Returns TFM_SST_ERR_PERMS_NOT_ALLOWED if the asset can't be deleted
* to by this app ID. Returns TFM_SST_ERR_ASSET_REF_INVALID, if asset
* no longer exists. Otherwise, TFM_SST_ERR_SUCCESS.
*/
-enum tfm_sst_err_t tfm_sst_veneer_delete(uint32_t app_id, uint32_t asset_uuid);
+enum tfm_sst_err_t tfm_sst_veneer_delete(uint32_t app_id, uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token);
#ifdef __cplusplus
}
diff --git a/interface/src/tfm_sst_api.c b/interface/src/tfm_sst_api.c
index d363c0a..ab47fd8 100644
--- a/interface/src/tfm_sst_api.c
+++ b/interface/src/tfm_sst_api.c
@@ -8,70 +8,125 @@
#include "tfm_sst_defs.h"
#include "tfm_ns_lock.h"
-enum tfm_sst_err_t tfm_sst_create(uint32_t asset_uuid)
+enum tfm_sst_err_t tfm_sst_create(uint32_t asset_uuid, const uint8_t* token,
+ uint32_t token_size)
{
+ struct tfm_sst_token_t s_token;
+
+ /* Pack the token information in the token structure */
+ s_token.token = token;
+ s_token.token_size = token_size;
+
return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_CREATE,
asset_uuid,
- 0,
+ (uint32_t)&s_token,
0,
0);
}
enum tfm_sst_err_t tfm_sst_get_info(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_asset_info_t *info)
{
+ struct tfm_sst_token_t s_token;
+
+ /* Pack the token information in the token structure */
+ s_token.token = token;
+ s_token.token_size = token_size;
+
return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_GET_INFO,
asset_uuid,
+ (uint32_t)&s_token,
(uint32_t)info,
- 0,
0);
}
enum tfm_sst_err_t tfm_sst_get_attributes(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_asset_attrs_t *attrs)
{
+ struct tfm_sst_token_t s_token;
+
+ /* Pack the token information in the token structure */
+ s_token.token = token;
+ s_token.token_size = token_size;
+
return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_GET_ATTRIBUTES,
asset_uuid,
+ (uint32_t)&s_token,
(uint32_t)attrs,
- 0,
0);
}
enum tfm_sst_err_t tfm_sst_set_attributes(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
const struct tfm_sst_asset_attrs_t *attrs)
{
+ struct tfm_sst_token_t s_token;
+
+ /* Pack the token information in the token structure */
+ s_token.token = token;
+ s_token.token_size = token_size;
+
return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_SET_ATTRIBUTES,
asset_uuid,
+ (uint32_t)&s_token,
(uint32_t)attrs,
- 0,
0);
}
enum tfm_sst_err_t tfm_sst_read(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_buf_t* data)
{
+ struct tfm_sst_token_t s_token;
+
+ /* Pack the token information in the token structure */
+ s_token.token = token;
+ s_token.token_size = token_size;
+
return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_READ,
asset_uuid,
+ (uint32_t)&s_token,
(uint32_t)data,
- 0,
0);
}
enum tfm_sst_err_t tfm_sst_write(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size,
struct tfm_sst_buf_t* data)
{
+ struct tfm_sst_token_t s_token;
+
+ /* Pack the token information in the token structure */
+ s_token.token = token;
+ s_token.token_size = token_size;
+
return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_WRITE,
asset_uuid,
+ (uint32_t)&s_token,
(uint32_t)data,
- 0,
0);
}
-enum tfm_sst_err_t tfm_sst_delete(uint32_t asset_uuid)
+enum tfm_sst_err_t tfm_sst_delete(uint32_t asset_uuid,
+ const uint8_t* token,
+ uint32_t token_size)
{
+ struct tfm_sst_token_t s_token;
+
+ /* Pack the token information in the token structure */
+ s_token.token = token;
+ s_token.token_size = token_size;
+
return tfm_ns_lock_svc_dispatch(SVC_TFM_SST_DELETE,
asset_uuid,
- 0,
+ (uint32_t)&s_token,
0,
0);
}
diff --git a/interface/src/tfm_sst_svc_handler.c b/interface/src/tfm_sst_svc_handler.c
index beab20d..8277169c 100644
--- a/interface/src/tfm_sst_svc_handler.c
+++ b/interface/src/tfm_sst_svc_handler.c
@@ -11,70 +11,77 @@
#include "tfm_id_mngr.h"
/* SVC function implementations */
-enum tfm_sst_err_t tfm_sst_svc_create(uint32_t asset_uuid)
+enum tfm_sst_err_t tfm_sst_svc_create(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token)
{
uint32_t app_id;
app_id = tfm_sst_get_cur_id();
- return tfm_sst_veneer_create(app_id, asset_uuid);
+ return tfm_sst_veneer_create(app_id, asset_uuid, s_token);
}
enum tfm_sst_err_t tfm_sst_svc_get_info(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_asset_info_t *info)
{
uint32_t app_id;
app_id = tfm_sst_get_cur_id();
- return tfm_sst_veneer_get_info(app_id, asset_uuid, info);
+ return tfm_sst_veneer_get_info(app_id, asset_uuid, s_token, info);
}
enum tfm_sst_err_t tfm_sst_svc_get_attributes(uint32_t asset_uuid,
- struct tfm_sst_asset_attrs_t *attrs)
+ const struct tfm_sst_token_t *s_token,
+ struct tfm_sst_asset_attrs_t *attrs)
{
uint32_t app_id;
app_id = tfm_sst_get_cur_id();
- return tfm_sst_veneer_get_attributes(app_id, asset_uuid, attrs);
+ return tfm_sst_veneer_get_attributes(app_id, asset_uuid, s_token, attrs);
}
enum tfm_sst_err_t tfm_sst_svc_set_attributes(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
const struct tfm_sst_asset_attrs_t *attrs)
{
uint32_t app_id;
app_id = tfm_sst_get_cur_id();
- return tfm_sst_veneer_set_attributes(app_id, asset_uuid, attrs);
+ return tfm_sst_veneer_set_attributes(app_id, asset_uuid, s_token, attrs);
}
enum tfm_sst_err_t tfm_sst_svc_read(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_buf_t* data)
{
uint32_t app_id;
app_id = tfm_sst_get_cur_id();
- return tfm_sst_veneer_read(app_id, asset_uuid, data);
+ return tfm_sst_veneer_read(app_id, asset_uuid, s_token, data);
}
enum tfm_sst_err_t tfm_sst_svc_write(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token,
struct tfm_sst_buf_t* data)
{
uint32_t app_id;
app_id = tfm_sst_get_cur_id();
- return tfm_sst_veneer_write(app_id, asset_uuid, data);
+ return tfm_sst_veneer_write(app_id, asset_uuid, s_token, data);
}
-enum tfm_sst_err_t tfm_sst_svc_delete(uint32_t asset_uuid)
+enum tfm_sst_err_t tfm_sst_svc_delete(uint32_t asset_uuid,
+ const struct tfm_sst_token_t *s_token)
{
uint32_t app_id;
app_id = tfm_sst_get_cur_id();
- return tfm_sst_veneer_delete(app_id, asset_uuid);
+ return tfm_sst_veneer_delete(app_id, asset_uuid, s_token);
}