-
Notifications
You must be signed in to change notification settings - Fork 178
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Close TLS and Quic links on certificate expiration (#1564)
* Add boilerplate for spawning expiration task * Add initial implementation of expiration_task * Rework logic to avoid unsoundness of sleep_until with long durations * Fix instant resolve of mpsc channel recv after closing it * Integrate expiration task in listen/connect logic * Clarify error message * Move cert expiration logic to zenoh-link-commons crate, replace mpsc with flume * Add cert expiration to quic link * Fix formatting * Switch design to one expiration task per link instance * Fix constant name in comment * Add trace log for expiration task * Use tokio::sync::OnceCell instead of std::sync::OnceLock * Make close link on certificate expiration configurable from json file * Fix computation of sleep duration from expiration time * Use Arc::new_cyclic instead of OnceCell, Remove LinkCertExpirationInfo struct * Refactor sleep logic out of expiration task * Move start log from links to expiration task * chore: Rename variable * Replace String with &'static str * Avoid calling get_cert_chain_expiration_time when expiration is not monitored * Rework to grant exclusive access to close operation and properly handle termination of expiration_task * Optimize concurrency of closing link and cancelation of expiration_task
- Loading branch information
Showing
14 changed files
with
450 additions
and
49 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.