@@ -40,6 +40,8 @@ pub struct Config {
4040 pub events_batch_size : u8 ,
4141 /// Number of retries for GRPC requests sent to the KMS Core.
4242 pub grpc_request_retries : u8 ,
43+ /// The maximum number of decryption attempts.
44+ pub max_decryption_attempts : u16 ,
4345
4446 /// Number of retries for S3 ciphertext retrieval.
4547 pub s3_ciphertext_retrieval_retries : u8 ,
@@ -121,6 +123,7 @@ impl Config {
121123 service_name : raw_config. service_name ,
122124 events_batch_size : raw_config. events_batch_size ,
123125 grpc_request_retries : raw_config. grpc_request_retries ,
126+ max_decryption_attempts : raw_config. max_decryption_attempts ,
124127 s3_ciphertext_retrieval_retries : raw_config. s3_ciphertext_retrieval_retries ,
125128 s3_connect_timeout : s3_ciphertext_retrieval_timeout,
126129 task_limit : raw_config. task_limit ,
@@ -158,6 +161,7 @@ mod tests {
158161 env:: remove_var ( "KMS_CONNECTOR_SERVICE_NAME" ) ;
159162 env:: remove_var ( "KMS_CONNECTOR_EVENTS_BATCH_SIZE" ) ;
160163 env:: remove_var ( "KMS_CONNECTOR_GRPC_REQUEST_RETRIES" ) ;
164+ env:: remove_var ( "KMS_CONNECTOR_MAX_DECRYPTION_ATTEMPTS" ) ;
161165 env:: remove_var ( "KMS_CONNECTOR_S3_CIPHERTEXT_RETRIEVAL_RETRIES" ) ;
162166 env:: remove_var ( "KMS_CONNECTOR_S3_CONNECT_TIMEOUT" ) ;
163167 }
@@ -237,6 +241,7 @@ mod tests {
237241 env:: set_var ( "KMS_CONNECTOR_SERVICE_NAME" , "kms-connector-test" ) ;
238242 env:: set_var ( "KMS_CONNECTOR_EVENTS_BATCH_SIZE" , "15" ) ;
239243 env:: set_var ( "KMS_CONNECTOR_GRPC_REQUEST_RETRIES" , "5" ) ;
244+ env:: set_var ( "KMS_CONNECTOR_MAX_DECRYPTION_ATTEMPTS" , "300" ) ;
240245 env:: set_var ( "KMS_CONNECTOR_S3_CIPHERTEXT_RETRIEVAL_RETRIES" , "5" ) ;
241246 env:: set_var ( "KMS_CONNECTOR_S3_CONNECT_TIMEOUT" , "4" ) ;
242247 }
@@ -266,6 +271,7 @@ mod tests {
266271 assert_eq ! ( config. service_name, "kms-connector-test" ) ;
267272 assert_eq ! ( config. events_batch_size, 15 ) ;
268273 assert_eq ! ( config. grpc_request_retries, 5 ) ;
274+ assert_eq ! ( config. max_decryption_attempts, 300 ) ;
269275 assert_eq ! ( config. s3_ciphertext_retrieval_retries, 5 ) ;
270276 assert_eq ! ( config. s3_connect_timeout. as_secs( ) , 4 ) ;
271277
0 commit comments