diff --git a/src/digest_engine.rs b/src/digest_engine.rs index d7d3695..0644b41 100644 --- a/src/digest_engine.rs +++ b/src/digest_engine.rs @@ -1,6 +1,5 @@ -use anyhow::{anyhow, Context, Result}; +use anyhow::{anyhow, Result}; use std::io; -use std::io::{Read, Write}; use log::*; @@ -37,23 +36,9 @@ pub trait DigestEngine { fn update(&mut self, data: &[u8]); } -// Dummy writer that implements Write for the none digest engine -struct DummyWriter; - -impl DummyWriter { - fn new() -> Self { - DummyWriter - } -} - -impl Write for DummyWriter { - fn write(&mut self, _buf: &[u8]) -> io::Result { - Ok(0) - } - - fn flush(&mut self) -> io::Result<()> { - Ok(()) - } +// Writer that implements Write for the program digest engine +struct ProgramWriter { + stdin: std::process::ChildStdin, } lazy_static! { diff --git a/src/digest_engine/none.rs b/src/digest_engine/none.rs index ba9599a..a454954 100644 --- a/src/digest_engine/none.rs +++ b/src/digest_engine/none.rs @@ -1,6 +1,6 @@ use anyhow::Result; use crate::digest_engine::DigestEngine; -use std::io::{Read, Write}; +use std::io::Write; use std::io; #[derive(Debug, Eq, PartialEq, Clone, Default)] diff --git a/src/digest_engine/program.rs b/src/digest_engine/program.rs index d6b3b2f..53530b2 100644 --- a/src/digest_engine/program.rs +++ b/src/digest_engine/program.rs @@ -1,10 +1,10 @@ -use anyhow::{anyhow, Context, Result}; +use anyhow::{anyhow, Result}; use log::*; use std::env; use std::fs; use std::fs::File; use std::io; -use std::io::{Read, Write}; +use std::io::Write; use std::os::unix::fs::PermissionsExt; use std::path::PathBuf; use std::process::{Command, Stdio}; @@ -70,7 +70,7 @@ impl DigestEngine for DigestEngineProgram { Ok("program".to_string()) } - fn update(&mut self, data: &[u8]) { + fn update(&mut self, _data: &[u8]) { // This is handled by the ProgramWriter implementation } } diff --git a/src/digest_engine/sha2.rs b/src/digest_engine/sha2.rs index a70b1ad..fe78754 100644 --- a/src/digest_engine/sha2.rs +++ b/src/digest_engine/sha2.rs @@ -1,8 +1,6 @@ use anyhow::Result; use log::*; -use std::fs::File; -use std::io::{Read, Write}; -use std::path::PathBuf; +use std::io::Write; use sha2::{Digest, Sha256}; use std::io;