From 1823e06216f2e9eee302ae1233d635a4a92c03f6 Mon Sep 17 00:00:00 2001 From: Ingo Klöcker Date: Wed, 14 Jan 2026 13:58:49 +0100 Subject: Allow setting export filters when exporting keys * src/context.h (struct gpgme_context): New field export_filter. * src/engine-backend.h (struct engine_ops): Add arg export_filter to field 'export' and field 'export_ext'. * src/engine-gpg.c (export_common): Add arg export_filter and pass option --export-filter with argument value to gpg. (gpg_export, gpg_export_ext): Add arg export_filter and pass it to export_common. Adjust all callers of the two functions. * src/engine-gpgsm.c (gpgsm_export, gpgsm_export_ext): Add dummy arg export_filter. * src/gpgme.c (gpgme_release): Free 'export_filter'. (gpgme_set_ctx_flag, gpgme_get_ctx_flag): New flag "export-filter". * tests/run-export.c (main): Add option --export-filter. -- This makes the --export-filter option available in the GPGME API for key exports. GnuPG-bug-id: 8033 --- src/engine-backend.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/engine-backend.h') diff --git a/src/engine-backend.h b/src/engine-backend.h index b0533f77..00808bb8 100644 --- a/src/engine-backend.h +++ b/src/engine-backend.h @@ -83,9 +83,11 @@ struct engine_ops int use_armor, gpgme_ctx_t ctx /* FIXME */); gpgme_error_t (*export) (void *engine, const char *pattern, gpgme_export_mode_t mode, gpgme_data_t keydata, + const char *export_filter, int use_armor); gpgme_error_t (*export_ext) (void *engine, const char *pattern[], gpgme_export_mode_t mode, gpgme_data_t keydata, + const char *export_filter, int use_armor); gpgme_error_t (*genkey) (void *engine, const char *userid, const char *algo, -- cgit