@@ -30,7 +30,7 @@ extern "C" {
3030
3131/* returned from encryption_key_get_latest_version() */
3232#define ENCRYPTION_KEY_VERSION_INVALID (~(unsigned int)0)
33- #define ENCRYPTION_KEY_VERSION_NOT_ENCRYPTED (0)
33+ #define ENCRYPTION_KEY_NOT_ENCRYPTED (0)
3434
3535/* returned from encryption_key_get() */
3636#define ENCRYPTION_KEY_BUFFER_TOO_SMALL (100)
@@ -39,12 +39,14 @@ typedef int (*encrypt_decrypt_func)(const unsigned char* src, unsigned int slen,
3939 unsigned char * dst , unsigned int * dlen ,
4040 const unsigned char * key , unsigned int klen ,
4141 const unsigned char * iv , unsigned int ivlen ,
42- int no_padding , unsigned int key_version );
42+ int no_padding , unsigned int key_id ,
43+ unsigned int key_version );
4344
4445struct encryption_service_st {
45- unsigned int (* encryption_key_get_latest_version_func )();
46- unsigned int (* encryption_key_exists_func )(unsigned int );
47- unsigned int (* encryption_key_get_func )(unsigned int , unsigned char * , unsigned int * );
46+ unsigned int (* encryption_key_get_latest_version_func )(unsigned int );
47+ unsigned int (* encryption_key_id_exists_func )(unsigned int );
48+ unsigned int (* encryption_key_version_exists_func )(unsigned int , unsigned int );
49+ unsigned int (* encryption_key_get_func )(unsigned int , unsigned int , unsigned char * , unsigned int * );
4850 encrypt_decrypt_func encryption_encrypt_func ;
4951 encrypt_decrypt_func encryption_decrypt_func ;
5052};
@@ -53,20 +55,22 @@ struct encryption_service_st {
5355
5456extern struct encryption_service_st * encryption_service ;
5557
56- #define encryption_key_get_latest_version () encryption_service->encryption_key_get_latest_version_func()
57- #define encryption_key_exists (V ) encryption_service->encryption_key_exists_func(V)
58- #define encryption_key_get (V ,K ,S ) encryption_service->encryption_key_get_func((V), (K), (S))
59- #define encryption_encrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KV ) encryption_service->encryption_encrypt_func(S,SL,D,DL,K,KL,I,IL,NP,KV)
60- #define encryption_decrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KV ) encryption_service->encryption_decrypt_func(S,SL,D,DL,K,KL,I,IL,NP,KV)
58+ #define encryption_key_get_latest_version (KI ) encryption_service->encryption_key_get_latest_version_func(KI)
59+ #define encryption_key_id_exists (KI ) encryption_service->encryption_key_id_exists_func((KI))
60+ #define encryption_key_version_exists (KI ,KV ) encryption_service->encryption_key_version_exists_func((KI),(KV))
61+ #define encryption_key_get (KI ,KV ,K ,S ) encryption_service->encryption_key_get_func((KI),(KV),(K),(S))
62+ #define encryption_encrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KI ,KV ) encryption_service->encryption_encrypt_func((S),(SL),(D),(DL),(K),(KL),(I),(IL),(NP),(KI),(KV))
63+ #define encryption_decrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KI ,KV ) encryption_service->encryption_decrypt_func((S),(SL),(D),(DL),(K),(KL),(I),(IL),(NP),(KI),(KV))
6164#else
6265
6366extern struct encryption_service_st encryption_handler ;
6467
65- #define encryption_key_get_latest_version () encryption_handler.encryption_key_get_latest_version_func()
66- #define encryption_key_exists (V ) encryption_handler.encryption_key_exists_func(V)
67- #define encryption_key_get (V ,K ,S ) encryption_handler.encryption_key_get_func((V), (K), (S))
68- #define encryption_encrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KV ) encryption_handler.encryption_encrypt_func(S,SL,D,DL,K,KL,I,IL,NP,KV)
69- #define encryption_decrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KV ) encryption_handler.encryption_decrypt_func(S,SL,D,DL,K,KL,I,IL,NP,KV)
68+ #define encryption_key_get_latest_version (KI ) encryption_handler.encryption_key_get_latest_version_func(KI)
69+ #define encryption_key_id_exists (KI ) encryption_handler.encryption_key_id_exists_func((KI))
70+ #define encryption_key_version_exists (KI ,KV ) encryption_handler.encryption_key_version_exists_func((KI),(KV))
71+ #define encryption_key_get (KI ,KV ,K ,S ) encryption_handler.encryption_key_get_func((KI),(KV),(K),(S))
72+ #define encryption_encrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KI ,KV ) encryption_handler.encryption_encrypt_func((S),(SL),(D),(DL),(K),(KL),(I),(IL),(NP),(KI),(KV))
73+ #define encryption_decrypt (S ,SL ,D ,DL ,K ,KL ,I ,IL ,NP ,KI ,KV ) encryption_handler.encryption_decrypt_func((S),(SL),(D),(DL),(K),(KL),(I),(IL),(NP),(KI),(KV))
7074#endif
7175
7276#ifdef __cplusplus
0 commit comments