solana_tls_utils/
quic_client_certificate.rs

1use {
2    crate::new_dummy_x509_certificate,
3    rustls::pki_types::{CertificateDer, PrivateKeyDer},
4    solana_keypair::Keypair,
5};
6
7pub struct QuicClientCertificate {
8    pub certificate: CertificateDer<'static>,
9    pub key: PrivateKeyDer<'static>,
10}
11
12impl QuicClientCertificate {
13    pub fn new(keypair: Option<&Keypair>) -> Self {
14        let keypair = if let Some(keypair) = keypair {
15            keypair
16        } else {
17            &Keypair::new()
18        };
19        let (certificate, key) = new_dummy_x509_certificate(keypair);
20        Self { certificate, key }
21    }
22}