/*!
 * Compute symmetric decryption
 *
 *
 * @param    user_ctx
 * @param    key_info
 * @param    sym_ctx
 * @param    length
 * @param    pt
 * @param    ct
 *
 * @return    A return code of type #fsl_shw_return_t.
 */
fsl_shw_return_t fsl_shw_symmetric_decrypt(fsl_shw_uco_t * user_ctx,
        fsl_shw_sko_t * key_info,
        fsl_shw_scco_t * sym_ctx,
        uint32_t length,
        const uint8_t * ct, uint8_t * pt)
{
    fsl_shw_return_t ret;

    ret = do_symmetric(user_ctx, key_info, sym_ctx, SYM_DECRYPT,
                       length, ct, pt);

    return ret;
}
示例#2
0
/*!
 * Compute symmetric decryption
 *
 *
 * @param    user_ctx
 * @param    key_info
 * @param    sym_ctx
 * @param    length
 * @param    pt
 * @param    ct
 *
 * @return    A return code of type #fsl_shw_return_t.
 */
fsl_shw_return_t fsl_shw_symmetric_decrypt(fsl_shw_uco_t * user_ctx,
					   fsl_shw_sko_t * key_info,
					   fsl_shw_scco_t * sym_ctx,
					   uint32_t length,
					   const uint8_t * ct, uint8_t * pt)
{
	fsl_shw_return_t ret;

	/* perform sanity check on uco */
	ret = sah_validate_uco(user_ctx);

	if (ret == FSL_RETURN_OK_S) {
		ret = do_symmetric(user_ctx, key_info, sym_ctx, SYM_DECRYPT,
				   length, ct, pt);
	}

	return ret;
}