diff options
author | Neal H. Walfield <neal@pep.foundation> | 2019-08-12 13:39:14 +0200 |
---|---|---|
committer | Neal H. Walfield <neal@pep.foundation> | 2019-08-23 19:15:13 +0200 |
commit | 05cf492f3417fd61f6b1e7dc4913a16fd5f201ea (patch) | |
tree | eca0c2e0481e10b54884a766e7e864020089fe84 /openpgp-ffi/src/serialize.rs | |
parent | 102dea398e920e91b34e5602033c2e7e53c50bb1 (diff) |
openpgp: Use marker types to denote a Key's type.
- In addition to providing some added protection, this allows us to
implement 'From<Key<_, _>> for Packet'.
Diffstat (limited to 'openpgp-ffi/src/serialize.rs')
-rw-r--r-- | openpgp-ffi/src/serialize.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/openpgp-ffi/src/serialize.rs b/openpgp-ffi/src/serialize.rs index 1f0a7639..33fa9181 100644 --- a/openpgp-ffi/src/serialize.rs +++ b/openpgp-ffi/src/serialize.rs @@ -151,7 +151,8 @@ pub extern "C" fn pgp_arbitrary_writer_new pub extern "C" fn pgp_signer_new (errp: Option<&mut *mut crate::error::Error>, inner: *mut writer::Stack<'static, Cookie>, - signers: *const *mut Box<self::openpgp::crypto::Signer>, + signers: *const *mut Box<self::openpgp::crypto::Signer< + self::openpgp::packet::key::UnspecifiedRole>>, signers_len: size_t, hash_algo: u8) -> *mut writer::Stack<'static, Cookie> @@ -163,7 +164,7 @@ pub extern "C" fn pgp_signer_new slice::from_raw_parts(signers, signers_len) }; let signers = signers.into_iter().map( - |s| -> &mut dyn self::openpgp::crypto::Signer { + |s| -> &mut dyn self::openpgp::crypto::Signer<_> { let signer = *s; ffi_param_ref_mut!(signer).as_mut() } @@ -183,7 +184,8 @@ pub extern "C" fn pgp_signer_new pub extern "C" fn pgp_signer_new_detached (errp: Option<&mut *mut crate::error::Error>, inner: *mut writer::Stack<'static, Cookie>, - signers: *const *mut Box<self::openpgp::crypto::Signer>, + signers: *const *mut Box<self::openpgp::crypto::Signer< + self::openpgp::packet::key::UnspecifiedRole>>, signers_len: size_t, hash_algo: u8) -> *mut writer::Stack<'static, Cookie> @@ -195,7 +197,7 @@ pub extern "C" fn pgp_signer_new_detached slice::from_raw_parts(signers, signers_len) }; let signers = signers.into_iter().map( - |s| -> &mut dyn self::openpgp::crypto::Signer { + |s| -> &mut dyn self::openpgp::crypto::Signer<_> { let signer = *s; ffi_param_ref_mut!(signer).as_mut() } |