Struct rustls::Certificate
source · pub struct Certificate(pub Vec<u8>);
Expand description
This type contains a single certificate by value.
The certificate must be in DER-encoded X.509 format.
A common format for storing certificates is
PEM.
PEM certificates are commonly stored in files with a .pem
, .cer
or .crt
suffix, and look
like this:
-----BEGIN CERTIFICATE-----
<base64-encoded certificate content>
-----END CERTIFICATE-----
The rustls-pemfile
crate can be used
to parse PEM files. The rcgen
crate can be used to
generate certificates and private keys.
§Examples
Parsing a PEM file to extract DER-encoded certificates:
use std::fs::File;
use std::io::BufReader;
use rustls::Certificate;
fn load_certificates_from_pem(path: &str) -> std::io::Result<Vec<Certificate>> {
let file = File::open(path)?;
let mut reader = BufReader::new(file);
let certs = rustls_pemfile::certs(&mut reader)?;
Ok(certs.into_iter().map(Certificate).collect())
}
Tuple Fields§
§0: Vec<u8>
Trait Implementations§
source§impl AsRef<[u8]> for Certificate
impl AsRef<[u8]> for Certificate
source§impl Clone for Certificate
impl Clone for Certificate
source§fn clone(&self) -> Certificate
fn clone(&self) -> Certificate
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Codec for Certificate
impl Codec for Certificate
source§fn encode(&self, bytes: &mut Vec<u8>)
fn encode(&self, bytes: &mut Vec<u8>)
Function for encoding itself by appending itself to
the provided vec of bytes.
source§fn read(r: &mut Reader<'_>) -> Result<Self, InvalidMessage>
fn read(r: &mut Reader<'_>) -> Result<Self, InvalidMessage>
Function for decoding itself from the provided reader
will return Some if the decoding was successful or
None if it was not.
source§fn get_encoding(&self) -> Vec<u8> ⓘ
fn get_encoding(&self) -> Vec<u8> ⓘ
Convenience function for encoding the implementation
into a vec and returning it
source§fn read_bytes(bytes: &[u8]) -> Result<Self, InvalidMessage>
fn read_bytes(bytes: &[u8]) -> Result<Self, InvalidMessage>
Function for wrapping a call to the read function in
a Reader for the slice of bytes provided
source§impl Debug for Certificate
impl Debug for Certificate
source§impl Hash for Certificate
impl Hash for Certificate
source§impl Ord for Certificate
impl Ord for Certificate
source§fn cmp(&self, other: &Certificate) -> Ordering
fn cmp(&self, other: &Certificate) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq for Certificate
impl PartialEq for Certificate
source§impl PartialOrd for Certificate
impl PartialOrd for Certificate
source§impl TlsListElement for Certificate
impl TlsListElement for Certificate
const SIZE_LEN: ListLength = _
source§impl<'a> TryFrom<&'a Certificate> for ParsedCertificate<'a>
impl<'a> TryFrom<&'a Certificate> for ParsedCertificate<'a>
impl Eq for Certificate
impl StructuralPartialEq for Certificate
Auto Trait Implementations§
impl Freeze for Certificate
impl RefUnwindSafe for Certificate
impl Send for Certificate
impl Sync for Certificate
impl Unpin for Certificate
impl UnwindSafe for Certificate
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)