Trait PemObject

trait PemObject: Sized

Items that can be decoded from PEM data.

Required Methods

fn from_pem(kind: SectionKind, der: Vec<u8>) -> Option<Self>

Conversion from a PEM SectionKind and body data.

This inspects kind, and if it matches this type's PEM section kind, converts der into this type.

Provided Methods

fn from_pem_slice(pem: &[u8]) -> Result<Self, Error>

Decode the first section of this type from PEM contained in a byte slice.

Error::NoItemsFound is returned if no such items are found.

fn pem_slice_iter(pem: &[u8]) -> SliceIter<'_, Self>

Iterate over all sections of this type from PEM contained in a byte slice.

fn from_pem_file<impl AsRef<std::path::Path>: AsRef<std::path::Path>>(file_name: impl AsRef<Path>) -> Result<Self, Error>

Decode the first section of this type from the PEM contents of the named file.

Error::NoItemsFound is returned if no such items are found.

fn pem_file_iter<impl AsRef<std::path::Path>: AsRef<std::path::Path>>(file_name: impl AsRef<Path>) -> Result<ReadIter<BufReader<File>, Self>, Error>

Iterate over all sections of this type from the PEM contents of the named file.

This reports errors in two phases:

  • errors opening the file are reported from this function directly,
  • errors reading from the file are reported from the returned iterator,
fn from_pem_reader<impl std::io::Read: std::io::Read>(rd: impl Read) -> Result<Self, Error>

Decode the first section of this type from PEM read from an io::Read.

fn pem_reader_iter<R: std::io::Read>(rd: R) -> ReadIter<BufReader<R>, Self>

Iterate over all sections of this type from PEM present in an io::Read.

Implementors