summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorJustus Winter <justus@sequoia-pgp.org>2018-01-11 17:07:50 +0100
committerJustus Winter <justus@sequoia-pgp.org>2018-01-17 11:50:30 +0100
commit6b3408662c9d3a4c27c6883f7bd1f88e60981094 (patch)
treed6d2f13742f935fe8ddf433f404d76a5d1353194 /net
parentdbf75dedefc7c14705538d63257d8f8cf4a594ff (diff)
store: Periodically update keys from the network.
- Update all keys stored in a store with network policy 'encrypted' and 'insecure' periodically using the SKS keyserver pool. - Slightly amend the net::ipc interface so that servers can spawn futures on the reactor. - As a background service cannot directly communicate failures, this patch adds a logging mechanism. - In sq, display the key update timestamp, and the status of the last update.
Diffstat (limited to 'net')
-rw-r--r--net/src/ipc.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/src/ipc.rs b/net/src/ipc.rs
index fef222ad..7bbb529e 100644
--- a/net/src/ipc.rs
+++ b/net/src/ipc.rs
@@ -65,7 +65,8 @@ pub trait Handler {
}
/// A factory for handlers.
-pub type HandlerFactory = fn(descriptor: Descriptor) -> Option<Box<Handler>>;
+pub type HandlerFactory = fn(descriptor: Descriptor,
+ handle: tokio_core::reactor::Handle) -> Option<Box<Handler>>;
/// A descriptor is used to connect to a service.
#[derive(Clone)]
@@ -231,7 +232,7 @@ impl Server {
/* XXX: It'd be nice to recycle this connection. */
drop(i);
- let handler = (self.descriptor.factory)(self.descriptor.clone())
+ let handler = (self.descriptor.factory)(self.descriptor.clone(), self.core.handle())
.ok_or(
io::Error::new(io::ErrorKind::BrokenPipe, "Failed to start server"))?;