mirror of
https://github.com/kemko/nomad.git
synced 2026-01-01 16:05:42 +03:00
New wrapped keys were added to the encrypter and tracked using their keyID with the context cancelation function. This tracking was performed primarily so the FSM could load its known key objects and logs with entries for the same ID superseding existing decryption tasks. This is a hard to reason about approach and in theory can cause timing problems in conjunction with the locking. The new approach still tracks decryption tasks but does not store the cancelation context. This context is now controlled within a single function in an attempt to provide a clearer workflow. In the event two calls for the same key are made in close succession meaning there is no entry in the keyring for the key yet, all tasks will be launched. The first-past-the-post will write the cipher to encrypter state, the second task will complete but not write the cipher.
4 lines
136 B
Plaintext
4 lines
136 B
Plaintext
```release-note:bug
|
|
encrypter: Refactor startup decryption task handling to avoid timing problems with task addition on FSM restore
|
|
```
|