chiark / gitweb /
provide bundles::DigestWrite
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 3 May 2021 18:54:17 +0000 (19:54 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 3 May 2021 18:54:26 +0000 (19:54 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/bin/otter.rs
src/bundles.rs
src/utils.rs

index a90d25f119f8213f5f1f5fb91a19a11b492ffed5..b8553adf2ce174bfd0a7c0f35768bfe4ae0da3e0 100644 (file)
@@ -1342,7 +1342,7 @@ mod upload_bundle {
       .context("open bundle file")?;
     let mut f = BufReader::new(f);
     let hash = {
-      let mut dw = DigestWrite::<bundles::Digester,_>::sink();
+      let mut dw = bundles::DigestWrite::sink();
       io::copy(&mut f, &mut dw).context("read bundle file (for hash)")?;
       dw.finish().0
     };
index 1af062f4b8b8a4969614807662c0f335c8476d16..05a2325665dfa8c358bb3d588c11d03a55ab4a15 100644 (file)
@@ -7,6 +7,7 @@
 use crate::prelude::*;
 
 pub use crate::prelude::Sha512Trunc256 as Digester;
+pub type DigestWrite<W> = crate::utils::DigestWrite<Digester, W>;
 
 #[derive(Debug,Copy,Clone,Hash,Eq,PartialEq,Serialize,Deserialize)]
 pub struct Hash(pub [u8; 32]);
@@ -142,7 +143,7 @@ impl From<&'static str> for IncorporateError {
 pub struct Uploading {
   instance: Arc<InstanceName>,
   id: Id,
-  file: DigestWrite<Digester, BufWriter<fs::File>>,
+  file: DigestWrite<BufWriter<fs::File>>,
 }
 
 #[throws(IE)]
index fd27c32a902bcbc7dc327e42f906ded1a7460849..438984ff856e81a7c22aa100b41799318e637488 100644 (file)
@@ -603,7 +603,7 @@ fn test_digest_write() {
   let exp = Sha512Trunc256::digest(&ibuffer[..]);
   let mut obuffer = [0;4];
   let inner = &mut obuffer[..];
-  let mut dw = DigestWrite::<Sha512Trunc256,_>::new(inner);
+  let mut dw = bundles::DigestWrite::new(inner);
   assert_eq!( dw.write(&ibuffer[..]).unwrap(), 3);
   let (got, recov) = dw.finish();
   assert_eq!( recov, b"\0" );