//! `PublishStatus` variant (currently, the publisher only has 3 states, `Idle`, `UploadScheduled`,
//! For the time being, the publisher never sets the status to `Recovering`, and uses the `Broken`
/// need it. If not, it schedules the upload to happen `UPLOAD_RATE_LIM_THRESHOLD` seconds from the
// number of concurrent upload tasks is multiplied by a number which depends on the TP parameters
.ok_or_else(|| internal!("identity keys are offline, but descriptor signing key is unavailable?!"))?
/// [encrypted time in period]: https://spec.torproject.org/rend-spec/revision-counter-mgt.html#encrypted-time
/// An error that has occurred after we have contacted a directory cache and made a circuit to it.
fn replace_config_if_changed(&self, new_config: Arc<OnionServiceConfigPublisherView>) -> bool {
async fn update_publish_status(&mut self, new_state: PublishStatus) -> Result<(), FatalError> {
"Running in restricted discovery mode, but we have no authorized clients. Service will be unreachable"
trace!(time_period=?time_period, "uploading descriptor to all HSDirs for this time period");
// This fails to compile unless the stream is boxed. See https://github.com/rust-lang/rust/issues/104382