/*
 * Versioning Method
 * A.B.C
 * - A : Major number, version up when S/W architecture is updated
 * - B : Minor number, version up when new feature is added
 * - C : Bug fix count, version up when any bug is fixed for legacy feature
 * * B & C are accumulated. Reset only when version up of A
 *
 * =====================================================================================
 * Version history.
  * x.x.x  - Description 
  * 3.0.0  - Bring up VK 3.0
  * 3.0.1  - Add cmd_worker file for everyman
  * 3.0.2  - Add an OTP meta condition to allow one-time writable
  * 3.0.3  - Add Clients (AID, DRK)
             Add a SensitiveBox Command : Read Activated ID
             Add code to allow CASS process to access AID to read AID
  * 3.0.4  - Fixed a bug : when 'getVaultMeta' is called, NOT_PROV_RPMB_KEY is not error.
  * 3.0.5  - Fixed a bug : If the Vault level is 2 under, unsheltered data also have to
             write into steady partition.
  * 3.0.6  - Vault level 3 changed : Adding Random IV (16bytes), increasing unsheltered size (16bytes -> 32bytes)
             Add bootloader read RPMB API
  * 3.0.7  - Add a API that can read AP OTP fuse value (Remove codes related ICCC)
  * 3.0.8  - Update client table (PROP) & Add the API to store System property by CASS
  * 3.0.9  - Update API / Return constants
  * 3.0.10 - Add Clients (SPU)
  * 3.0.11 - Add Clients (SCS)
  * 3.1.0  - Copy WSM buffer to TA heap, TBASE API 8, SSP enable, bug fix
  * 3.1.1  - Update VK_TABLE - SPU/DRK
  * 3.2.0  - VK Refectoring : Vault Structure, Write protection, migration_01, etc.
  * 3.2.1  - KG/RMM security weakness / verify_signature
           - Add secure driver to read OTP fuse vaule
  * 3.3.0  - Add new RPMB partition, Improve 'Migration_01'
  * 3.3.1  - KG/RMM security leack - HMAC with passcode, CASS Vault migration patch : stored data synchronization.
  * 3.3.2  - Released scrypto 2.4.3 for MTK6762
  * 3.3.3  - Preparing SMR to vault migration
             Add a property item for 'PROP'
             KG/RMM server signature referencing method change
  * 3.3.4  - Wrong source address when writing backup vault fixed (write_cass_vault_legacy function)
  * 3.3.5  - Fixed migration logic, write recovery v3.1 vault in old steady partition (SEQ 1-7-8)
  * 3.3.6  - SI-14679 (Input Validation Vulnerability)
  * 3.3.7  - JDM S1(MTK6762) start to use RPMB storage (VAULT_LEVEL1 -> VAULT_LEVEL2)
  * 3.3.8  - Edit check write protection logic
  * 3.3.9  - Add new native API : checkDataWritable()
  * 3.3.10 - Add clients (WIFI, Secure WIFI, Bluetooth)
  * 3.3.11 - Enable AID Reset for DEV device
  * 3.3.12 - Fix errors for data validation
  * 3.3.13 - Add Client (OQC APP)
  * 3.3.14 - Increase RPMB read block transfer size to 8 blocks
  * 3.4.0  - Add initialize for VK service preparation
  * 3.4.2  - Add /vendor/bin/vaultkeeperd client for vaultkeeperd moving to vendor partition
  * 3.4.3  - KnoxGuard Security Improvment for Q OS
  * 3.4.4  - Add enxtended sensitiveBox with new sbox type
  * 3.4.5  - Maintain meta data when initializing cass vault
  * 3.4.6  - VK doesn't delete EMT vault from Q OS or higher
  * 4.0.0  - Change writing sequence : (mirror -> original)
  * 4.0.1  - Bug fixed (error handling)
             Increase client name size (64bytes -> 128bytes)
  * 4.0.2  - PROCA enable : Exynos 9830, 9630 / SM8250
             Change returning type of error when gcm tag verification fail
  * 4.0.3  - Add logging data for DSMS : first error message
             Add Vaultkeeper ID
             Apply OEM Flag API for A31, A41
  * 4.0.4  - Minimize checking of RPMB key provisioning during the session cycle
             Add read_multi_blk_rpmb
             Add a rule for PROCA in teegris TA
             Add device info table to minimize cost of checking property
             Size of data to check (256bytes -> 32bytes)  is changed in Qseecom EFI
  * 4.0.5  - Fix sensitive box wrong type number
             Apply KDF context per vault
             MTK6768 Proca enabled
             MTK6765 / MTK6762 use GNU toolchain
  * 4.0.6  - Fix issues of svace static analysis report 
             Change global variable of device info to static array 
  * 4.0.7  - Changing the payload structure of CASS to use random IV
             Bug fixed (using full path of rild in check_data_writable)
  * 4.0.8  - RPMB Multiblock access enabled : Exynos7885
  * 4.0.9  - Bug fixed (Write dummy privated when kg locking/blinking)
  * 4.1.0  - Write-protection feature refactoring
             Add destroy API for common
             Don't skip Preparing API for steady only chipset to get system property
  * 4.1.2  - Add 'com.samsung.android.cidmanager' for AID Write
  * 4.1.3  - Get EM Token through engmode binder service
  * 4.1.4  - Handling client access on SWd
  * 4.1.5  - Don't check EM token
  * 4.1.6  - Set-up platform properties at build time
  * 4.1.7  - [QSEE, TEEGRIS] Use PROCA API for checking custom kernel
  * 4.1.8  - [COMMON] Allow scenario test clients
             Add API for scenario test
  * 4.1.9  - [COMMON] Add debugging log
  * 4.2.0  - [COMMON] Add new sensitive box type
             1. New SENSITIVE_TYPE_WRAPPED_AID
             2. New encrypt/decrypt API for each platform
  * 4.2.1  - [COMMON] Check RPMB key provisioned in check_data_writable
  * 4.2.2  - [QSEE] Add retry logic when shutdown qsee TA
  * 4.2.3  - [COMMON] Fix kg test app for being able to test P OS first launched models.
           - Delete VAULT_NAME_TEST_KG2 in vk_table of P OS first launched
           - Delete all kg test app clients in vk_table of R OS first launched
           - Fix bug: Fixed for normal kg client to work in PBS(TEST)
  * 4.2.4  - [QSEE] Disable kernel logs in case of user binary
  * 4.2.5  - [COMMON] Add workaround while preparing service
           - (Workaround) N10/N10+ add "VK_AID_FORCE_RESET" to reset AID in case of AID non-exist but write-protection is enabled.
 * =====================================================================================
 */

#ifndef __VK_VERSION_H__
#define __VK_VERSION_H__

#define VERSION "4.2.5"

#endif // __VK_VERSION_H__
