implement to_tls_certificate method

This commit is contained in:
yggverse 2024-11-29 16:08:18 +02:00
parent ba9a679303
commit 9f23e9e51d
3 changed files with 31 additions and 2 deletions

View file

@ -1,4 +1,18 @@
mod error;
use error::Error;
use gtk::gio::TlsCertificate;
pub struct Identity {
pub pem: String,
// pub scope: String,
}
impl Identity {
pub fn to_tls_certificate(&self) -> Result<TlsCertificate, Error> {
match TlsCertificate::from_pem(&self.pem) {
Ok(certificate) => Ok(certificate),
Err(reason) => Err(Error::TlsCertificate(reason)),
}
}
}

View file

@ -0,0 +1,15 @@
use gtk::glib;
use std::fmt::{Display, Formatter, Result};
#[derive(Debug)]
pub enum Error {
TlsCertificate(glib::Error),
}
impl Display for Error {
fn fmt(&self, f: &mut Formatter) -> Result {
match self {
Self::TlsCertificate(e) => write!(f, "TLS certificate error: {e}"),
}
}
}