use std::env;
use std::io;
use anyhow::Context;
use sequoia_openpgp as openpgp;
use crate::openpgp::serialize::stream::{Armorer, Message, LiteralWriter};
fn main() -> openpgp::Result<()> {
let args: Vec<String> = env::args().collect();
if args.len() != 1 {
return Err(anyhow::anyhow!("A simple filter wrapping data into a literal data packet.\n\n\
Usage: {} <input >output\n", args[0]));
}
let mut sink = io::stdout();
let message = Message::new(&mut sink);
let message = Armorer::new(message).build()?;
let mut message = LiteralWriter::new(message).build()
.context("Failed to create literal writer")?;
io::copy(&mut io::stdin(), &mut message)
.context("Failed to sign data")?;
message.finalize()
.context("Failed to write data")?;
Ok(())
}