aboutsummaryrefslogtreecommitdiffstats
path: root/src/gpgme.h.in
diff options
context:
space:
mode:
authorJustus Winter <[email protected]>2017-05-30 12:35:57 +0000
committerJustus Winter <[email protected]>2017-06-01 12:16:11 +0000
commit05fa2a9c7764b28fdac35eb72631439df948ca0e (patch)
tree4fac29e23cd01185155e099fa93cbeda7f2bf933 /src/gpgme.h.in
parentcore: Sort the status table. (diff)
downloadgpgme-05fa2a9c7764b28fdac35eb72631439df948ca0e.tar.gz
gpgme-05fa2a9c7764b28fdac35eb72631439df948ca0e.zip
Add flag 'is_de_vs' to decryption results and signatures.
* NEWS: Update. * lang/cpp/src/decryptionresult.cpp (DecryptionResult::isDeVs): New function. * lang/cpp/src/decryptionresult.h (DecryptionResult::isDeVs): New prototype. * lang/cpp/src/verificationresult.cpp (Signature::isDeVs): New function. * lang/cpp/src/verificationresult.h (Signature::isDeVs): New prototype. * lang/python/src/results.py (DecryptResult): Turn field 'is_de_vs' into a boolean. (Signature): Likewise. * src/decrypt.c (_gpgme_decrypt_status_handler): Handle the new compliance status line. * src/verify.c (_gpgme_verify_status_handler): Likewise. * src/gpgme.h.in (gpgme_status_code_t): Add new status codes for the new status lines. * src/keylist.c (parse_pub_field18): Move function to 'util.h'. (keylist_colon_handler): Adapt callsites. * src/status-table.c (status_table): Add new status lines. * src/util.h (PARSE_COMPLIANCE_FLAGS): New macro. This used to be 'parse_pub_field18', but turned into a macro to make it polymorphic. -- When decrypting data and verifying signatures, report whether the operations are in compliance with the criteria for data classified as VS-NfD. This information can the be presented to the user. GnuPG-bug-id: 3059 Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to 'src/gpgme.h.in')
-rw-r--r--src/gpgme.h.in15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/gpgme.h.in b/src/gpgme.h.in
index 24b21e7d..867219a4 100644
--- a/src/gpgme.h.in
+++ b/src/gpgme.h.in
@@ -1312,8 +1312,12 @@ struct _gpgme_op_decrypt_result
/* Key should not have been used for encryption. */
unsigned int wrong_key_usage : 1;
+ /* True if the message was encrypted in compliance to the de-vs
+ * mode. */
+ unsigned int is_de_vs : 1;
+
/* Internal to GPGME, do not use. */
- int _unused : 31;
+ int _unused : 30;
gpgme_recipient_t recipients;
@@ -1490,8 +1494,11 @@ struct _gpgme_signature
/* Validity has been verified using the chain model. */
unsigned int chain_model : 1;
+ /* True if the signature is in compliance to the de-vs mode. */
+ unsigned int is_de_vs : 1;
+
/* Internal to GPGME, do not use. */
- int _unused : 28;
+ int _unused : 27;
gpgme_validity_t validity;
gpgme_error_t validity_reason;
@@ -2468,7 +2475,9 @@ typedef enum
GPGME_STATUS_TOFU_USER = 95,
GPGME_STATUS_TOFU_STATS = 96,
GPGME_STATUS_TOFU_STATS_LONG = 97,
- GPGME_STATUS_NOTATION_FLAGS = 98
+ GPGME_STATUS_NOTATION_FLAGS = 98,
+ GPGME_STATUS_DECRYPTION_COMPLIANCE_MODE = 99,
+ GPGME_STATUS_VERIFICATION_COMPLIANCE_MODE = 100
}
gpgme_status_code_t;