fn try_decrypt<D>(
        &self,
        pkesk: &PKESK,
        sym_algo: Option<SymmetricAlgorithm>,
        keypair: &mut dyn crypto::Decryptor,
        decrypt: &mut D,
    ) -> Option<Fingerprint>
    where
        D: FnMut(SymmetricAlgorithm, &SessionKey) -> bool,
    {
        match pkesk
            .decrypt(keypair, sym_algo)
            .and_then(|(algo, session_key)| {
                if decrypt(algo, &session_key) {
                    Some(session_key)
                } else {
                    None
                }
            }) {
            Some(_session_key) => Some(self.cert.fingerprint()),
            None => None,
        }
    }
/// Try to decrypt PKESK packet with `keypair`
/// And try to decrypt packet parser with `decrypt`
Try to decrypt PKESK packet with `keypair`
And try to decrypt packet parser with `decrypt`
Try to decrypt PKESK packet with ` keypair ` And try to decrypt packet parser with ` decrypt `
fn try_decrypt<D>(
        &self,
        pkesk: &PKESK,
        sym_algo: Option<SymmetricAlgorithm>,
        keypair: &mut dyn crypto::Decryptor,
        decrypt: &mut D,
    ) -> Option<Fingerprint>
    where
        D: FnMut(SymmetricAlgorithm, &SessionKey) -> bool,
    {
        match pkesk
            .decrypt(keypair, sym_algo)
            .and_then(|(algo, session_key)| {
                if decrypt(algo, &session_key) {
                    Some(session_key)
                } else {
                    None
                }
            }) {
            Some(_session_key) => Some(self.cert.fingerprint()),
            None => None,
        }
    }
fn try_decrypt < D > ( & self , pkesk : & PKESK , sym_algo : Option < SymmetricAlgorithm > , keypair : & mut dyn crypto :: Decryptor , decrypt : & mut D , ) -> Option < Fingerprint > where D : FnMut ( SymmetricAlgorithm , & SessionKey ) -> bool , { match pkesk . decrypt ( keypair , sym_algo ) . and_then ( | ( algo , session_key ) | { if decrypt ( algo , & session_key ) { Some ( session_key ) } else { None } } ) { Some ( _session_key ) => Some ( self . cert . fingerprint ( ) ) , None => None , } }
Try to decrypt PKESK packet with `keypair`
And try to decrypt packet parser with `decrypt`
Try to decrypt PKESK packet with ` keypair ` And try to decrypt packet parser with ` decrypt `
&self
pkesk
&PKESK
sym_algo
Option<SymmetricAlgorithm>
keypair
&mut dyn crypto::Decryptor
decrypt
&mut D
&self
pkesk
&PKESK
sym_algo
Option<SymmetricAlgorithm>
keypair
&mut dyn crypto::Decryptor
decrypt
&mut D