diff options
author | Justus Winter <justus@sequoia-pgp.org> | 2019-04-02 16:46:21 +0200 |
---|---|---|
committer | Justus Winter <justus@sequoia-pgp.org> | 2019-04-02 17:04:04 +0200 |
commit | 717fbd73b9086beec7c9ed30926c604612f067a3 (patch) | |
tree | 8acebbaef9de25ed4ecfbb7944885657fd5ae7e5 /openpgp-ffi/src/parse/stream.rs | |
parent | 4e6d4a045af89567b8ff84c830775649d09900b0 (diff) |
openpgp: Improve the VerificationHelper protocol.
- Change VerificationResult::GoodChecksum to include references to
the TPK that contained the signing key, the key itself, a binding
signature (if any), and any revocation information.
- Fixes #140.
Diffstat (limited to 'openpgp-ffi/src/parse/stream.rs')
-rw-r--r-- | openpgp-ffi/src/parse/stream.rs | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/openpgp-ffi/src/parse/stream.rs b/openpgp-ffi/src/parse/stream.rs index 63db33a6..baf0ae05 100644 --- a/openpgp-ffi/src/parse/stream.rs +++ b/openpgp-ffi/src/parse/stream.rs @@ -91,7 +91,7 @@ pub extern "system" fn pgp_revocation_status_free( /// /// Within each level, there can be one or more signatures. pub struct VerificationResults<'a> { - results: Vec<Vec<&'a VerificationResult>>, + results: Vec<Vec<&'a VerificationResult<'a>>>, } /// Returns the `VerificationResult`s at level `level. @@ -109,7 +109,7 @@ pub struct VerificationResults<'a> { #[::sequoia_ffi_macros::extern_fn] #[no_mangle] pub extern "system" fn pgp_verification_results_at_level<'a>(results: *const VerificationResults<'a>, level: size_t, - r: *mut *const &'a VerificationResult, + r: *mut *const &'a VerificationResult<'a>, r_count: *mut size_t) { let results = ffi_param_ref!(results); let r = ffi_param_ref_mut!(r); @@ -131,7 +131,7 @@ fn pgp_verification_result_code(result: *const VerificationResult) { let result = ffi_param_ref!(result); match result { - VerificationResult::GoodChecksum(_) => 1, + VerificationResult::GoodChecksum(..) => 1, VerificationResult::MissingKey(_) => 2, VerificationResult::BadChecksum(_) => 3, } @@ -144,7 +144,7 @@ fn pgp_verification_result_signature(result: *const VerificationResult) { let result = ffi_param_ref!(result); let sig = match result { - VerificationResult::GoodChecksum(ref sig) => sig, + VerificationResult::GoodChecksum(ref sig, ..) => sig, VerificationResult::MissingKey(ref sig) => sig, VerificationResult::BadChecksum(ref sig) => sig, }; |