From 3da06d1096ee29d70656f07edcabc3bc4351104e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ingo=20Kl=C3=B6cker?= Date: Tue, 4 Jan 2022 15:23:40 +0100 Subject: cpp: Allow export of secret keys * lang/cpp/src/context.h (class Context): New member functions exportSecretKeys, startSecretKeyExport, exportKeys, startKeyExport. (Context::exportPublicKeys, Context::startPublicKeyExport): Rename argument flags/export_mode to mode. * lang/cpp/src/context.cpp (Context::exportPublicKeys): Return error if ExportSecret mode flag is set. Call exportKeys(). (Context::startPublicKeyExport): Return error if ExportSecret mode flag is set. Call startKeyExport(). (Context::exportSecretKeys, Context::startSecretKeyExport, Context::exportKeys, Context::startKeyExport): Implement. -- This adds export functions for secret key exports and generic export functions that can be used for any key export supported by gpgme_op_export[_ext][_start]. GnuPG-bug-id: 5757 --- lang/cpp/src/context.h | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'lang/cpp/src/context.h') diff --git a/lang/cpp/src/context.h b/lang/cpp/src/context.h index 430c16e9..2631678a 100644 --- a/lang/cpp/src/context.h +++ b/lang/cpp/src/context.h @@ -194,13 +194,24 @@ public: }; GpgME::Error exportPublicKeys(const char *pattern, Data &keyData); - GpgME::Error exportPublicKeys(const char *pattern, Data &keyData, unsigned int flags); + GpgME::Error exportPublicKeys(const char *pattern, Data &keyData, unsigned int mode); GpgME::Error exportPublicKeys(const char *pattern[], Data &keyData); - GpgME::Error exportPublicKeys(const char *pattern[], Data &keyData, unsigned int export_mode); + GpgME::Error exportPublicKeys(const char *pattern[], Data &keyData, unsigned int mode); GpgME::Error startPublicKeyExport(const char *pattern, Data &keyData); - GpgME::Error startPublicKeyExport(const char *pattern, Data &keyData, unsigned int flags); + GpgME::Error startPublicKeyExport(const char *pattern, Data &keyData, unsigned int mode); GpgME::Error startPublicKeyExport(const char *pattern[], Data &keyData); - GpgME::Error startPublicKeyExport(const char *pattern[], Data &keyData, unsigned int export_mode); + GpgME::Error startPublicKeyExport(const char *pattern[], Data &keyData, unsigned int mode); + + GpgME::Error exportSecretKeys(const char *pattern, Data &keyData, unsigned int mode = ExportSecret); + GpgME::Error exportSecretKeys(const char *pattern[], Data &keyData, unsigned int mode = ExportSecret); + GpgME::Error startSecretKeyExport(const char *pattern, Data &keyData, unsigned int mode = ExportSecret); + GpgME::Error startSecretKeyExport(const char *pattern[], Data &keyData, unsigned int mode = ExportSecret); + + // generic export functions; prefer using the specific public/secret key export functions + GpgME::Error exportKeys(const char *pattern, Data &keyData, unsigned int mode = ExportDefault); + GpgME::Error exportKeys(const char *pattern[], Data &keyData, unsigned int mode = ExportDefault); + GpgME::Error startKeyExport(const char *pattern, Data &keyData, unsigned int mode = ExportDefault); + GpgME::Error startKeyExport(const char *pattern[], Data &keyData, unsigned int mode = ExportDefault); // // Key Import -- cgit v1.2.3