Struct sequoia_openpgp::parse::stream::DecryptorBuilder
source · pub struct DecryptorBuilder<'a> { /* private fields */ }
Expand description
A builder for Decryptor
.
This allows the customization of Decryptor
, which can
be built using DecryptorBuilder::with_policy
.
Implementations§
source§impl<'a> DecryptorBuilder<'a>
impl<'a> DecryptorBuilder<'a>
sourcepub fn buffer_size(self, size: usize) -> Self
pub fn buffer_size(self, size: usize) -> Self
Changes the amount of buffered data.
By default, we buffer up to 25 megabytes of net message data
(see DEFAULT_BUFFER_SIZE
). This changes the default.
Examples
use sequoia_openpgp as openpgp;
use openpgp::parse::{Parse, stream::*};
use openpgp::policy::StandardPolicy;
let p = &StandardPolicy::new();
struct Helper {};
impl VerificationHelper for Helper {
// ...
}
impl DecryptionHelper for Helper {
// ...
}
let message =
// ...
let h = Helper {};
let mut v = DecryptorBuilder::from_bytes(message)?
.buffer_size(1 << 12)
.with_policy(p, None, h)?;
sourcepub fn mapping(self, enabled: bool) -> Self
pub fn mapping(self, enabled: bool) -> Self
Enables mapping.
If mapping is enabled, the packet parser will create a Map
of the packets that can be inspected in
VerificationHelper::inspect
. Note that this buffers the
packets contents, and is not recommended unless you know that
the packets are small.
Examples
use sequoia_openpgp as openpgp;
use openpgp::parse::{Parse, stream::*};
use openpgp::policy::StandardPolicy;
let p = &StandardPolicy::new();
struct Helper {};
impl VerificationHelper for Helper {
// ...
}
impl DecryptionHelper for Helper {
// ...
}
let message =
// ...
let h = Helper {};
let mut v = DecryptorBuilder::from_bytes(message)?
.mapping(true)
.with_policy(p, None, h)?;
sourcepub fn with_policy<T, H>(
self,
policy: &'a dyn Policy,
time: T,
helper: H
) -> Result<Decryptor<'a, H>>where
H: VerificationHelper + DecryptionHelper,
T: Into<Option<SystemTime>>,
pub fn with_policy<T, H>(
self,
policy: &'a dyn Policy,
time: T,
helper: H
) -> Result<Decryptor<'a, H>>where
H: VerificationHelper + DecryptionHelper,
T: Into<Option<SystemTime>>,
Creates the Decryptor
.
Signature verifications are done under the given policy
and
relative to time time
, or the current time, if time
is
None
. helper
is the VerificationHelper
and
DecryptionHelper
to use.
Examples
use sequoia_openpgp as openpgp;
use openpgp::parse::{Parse, stream::*};
use openpgp::policy::StandardPolicy;
let p = &StandardPolicy::new();
struct Helper {};
impl VerificationHelper for Helper {
// ...
}
impl DecryptionHelper for Helper {
// ...
}
let message =
// ...
let h = Helper {};
let mut v = DecryptorBuilder::from_bytes(message)?
// Customize the `Decryptor` here.
.with_policy(p, None, h)?;
Trait Implementations§
source§impl<'a> Parse<'a, DecryptorBuilder<'a>> for DecryptorBuilder<'a>
impl<'a> Parse<'a, DecryptorBuilder<'a>> for DecryptorBuilder<'a>
source§fn from_reader<R>(reader: R) -> Result<DecryptorBuilder<'a>>where
R: Read + 'a + Send + Sync,
fn from_reader<R>(reader: R) -> Result<DecryptorBuilder<'a>>where
R: Read + 'a + Send + Sync,
Reads from the given reader.
source§fn from_file<P>(path: P) -> Result<DecryptorBuilder<'a>>where
P: AsRef<Path>,
fn from_file<P>(path: P) -> Result<DecryptorBuilder<'a>>where
P: AsRef<Path>,
Reads from the given file. Read more
source§fn from_bytes<D>(data: &'a D) -> Result<DecryptorBuilder<'a>>where
D: AsRef<[u8]> + ?Sized,
fn from_bytes<D>(data: &'a D) -> Result<DecryptorBuilder<'a>>where
D: AsRef<[u8]> + ?Sized,
Reads from the given slice. Read more