gpgme/src/gpgme.def
Ingo Klöcker 3c2cff74b5 core: New function gpgme_op_receive_keys
* src/gpgme.h.in (gpgme_op_receive_keys_start, gpgme_op_receive_keys):
New.
* src/gpgme.def, src/libgpgme.vers: Add them.
* src/engine-backend.h (struct engine_ops): Add arg keyids to field
'import'.
* src/engine.h, src/engine.c (_gpgme_engine_op_import): Add arg keyids.
* src/engine.c (_gpgme_engine_op_import): Forward new arg keyids.
* src/import.c: (_gpgme_op_import_start, _gpgme_op_import_keys_start):
Pass NULL to new arg of _gpgme_op_import_start.
(_gpgme_op_receive_keys_start, gpgme_op_receive_keys_start,
gpgme_op_receive_keys): New.
* src/engine-gpg.c (gpg_import): Add arg keyids. Extend check for
valid arguments. Build command line if keyids are given.
* src/engine-gpgsm.c (gpgsm_import): Add arg keyids. Return error if
keyids is not NULL.

tests/run-receive-keys.c: New.
tests/Makefile.am (noinst_PROGRAMS): Add new test runner.
--

The new function allows importing keys given by their key ids or
fingerprints from a keyserver (like gpg's --recv-keys command).

GnuPG-bug-id: 5808
2022-02-03 15:56:30 +01:00

288 lines
10 KiB
Modula-2

; gpgme.def - List of symbols to export.
; Copyright (C) 2005 g10 Code GmbH
;
; This file is part of GPGME.
;
; GPGME is free software; you can redistribute it and/or modify
; it under the terms of the GNU Lesser general Public License as
; published by the Free Software Foundation; either version 2.1 of
; the License, or (at your option) any later version.
;
; GPGME is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
; GNU Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this program; if not, write to the Free Software
; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
EXPORTS
gpgme_check_version @1
gpgme_get_engine_info @2
gpgme_engine_check_version @3
gpgme_err_code_from_errno @4
gpgme_err_code_to_errno @5
gpgme_err_make_from_errno @6
gpgme_error_from_errno @7
gpgme_strerror @8
gpgme_strerror_r @9
gpgme_strsource @10
gpgme_data_get_encoding @11
gpgme_data_new @12
gpgme_data_new_from_cbs @13
gpgme_data_new_from_fd @14
gpgme_data_new_from_file @15
gpgme_data_new_from_filepart @16
gpgme_data_new_from_mem @17
gpgme_data_new_from_stream @18
gpgme_data_read @19
gpgme_data_release @20
gpgme_data_release_and_get_mem @21
gpgme_data_seek @22
gpgme_data_set_encoding @23
gpgme_data_write @24
gpgme_get_protocol_name @25
gpgme_hash_algo_name @26
gpgme_pubkey_algo_name @27
gpgme_new @28
gpgme_get_armor @29
gpgme_get_include_certs @30
gpgme_get_io_cbs @31
gpgme_get_keylist_mode @32
gpgme_get_passphrase_cb @33
gpgme_get_progress_cb @34
gpgme_get_protocol @35
gpgme_get_textmode @36
gpgme_release @37
gpgme_set_armor @38
gpgme_set_include_certs @39
gpgme_set_io_cbs @40
gpgme_set_keylist_mode @41
gpgme_set_locale @42
gpgme_set_passphrase_cb @43
gpgme_set_progress_cb @44
gpgme_set_protocol @45
gpgme_set_textmode @46
gpgme_signers_add @47
gpgme_signers_clear @48
gpgme_signers_enum @49
gpgme_key_ref @50
gpgme_key_unref @51
gpgme_key_release @52
gpgme_trust_item_ref @53
gpgme_trust_item_unref @54
gpgme_cancel @55
gpgme_op_card_edit @56
gpgme_op_card_edit_start @57
gpgme_op_decrypt @58
gpgme_op_decrypt_result @59
gpgme_op_decrypt_start @60
gpgme_op_decrypt_verify @61
gpgme_op_decrypt_verify_start @62
gpgme_op_delete @63
gpgme_op_delete_start @64
gpgme_op_edit @65
gpgme_op_edit_start @66
gpgme_op_encrypt @67
gpgme_op_encrypt_result @68
gpgme_op_encrypt_sign @69
gpgme_op_encrypt_sign_start @70
gpgme_op_encrypt_start @71
gpgme_op_export @72
gpgme_op_export_ext @73
gpgme_op_export_ext_start @74
gpgme_op_export_start @75
gpgme_op_genkey @76
gpgme_op_genkey_result @77
gpgme_op_genkey_start @78
gpgme_get_key @79
gpgme_op_import @80
gpgme_op_import_result @81
gpgme_op_import_start @82
gpgme_op_keylist_end @83
gpgme_op_keylist_ext_start @84
gpgme_op_keylist_next @85
gpgme_op_keylist_result @86
gpgme_op_keylist_start @87
gpgme_op_sign @88
gpgme_op_sign_result @89
gpgme_op_sign_start @90
gpgme_op_trustlist_end @91
gpgme_op_trustlist_next @92
gpgme_op_trustlist_start @93
gpgme_op_verify @94
gpgme_op_verify_result @95
gpgme_op_verify_start @96
gpgme_wait @97
gpgme_data_new_with_read_cb @98
gpgme_data_rewind @99
gpgme_get_sig_status @100
gpgme_get_sig_string_attr @101
gpgme_get_sig_ulong_attr @102
gpgme_get_sig_key @103
gpgme_key_get_string_attr @104
gpgme_key_get_ulong_attr @105
gpgme_key_sig_get_string_attr @106
gpgme_key_sig_get_ulong_attr @107
gpgme_op_import_ext @108
gpgme_trust_item_get_int_attr @109
gpgme_trust_item_get_string_attr @110
gpgme_trust_item_release @111
gpgme_set_engine_info @112
gpgme_ctx_get_engine_info @113
gpgme_ctx_set_engine_info @114
gpgme_data_set_file_name @115
gpgme_data_get_file_name @116
gpgme_sig_notation_clear @117
gpgme_sig_notation_add @118
gpgme_sig_notation_get @119
gpgme_free @120
gpgme_get_giochannel @121
gpgme_get_fdptr @122
gpgme_op_getauditlog_start @123
gpgme_op_getauditlog @124
gpgme_conf_release @125
gpgme_conf_arg_new @126
gpgme_conf_arg_release @127
gpgme_conf_opt_change @128
gpgme_op_conf_load @129
gpgme_op_conf_save @130
gpgme_cancel_async @131
gpgme_op_assuan_result @132
gpgme_op_assuan_transact_start @133
gpgme_op_assuan_transact @134
gpgme_check_version_internal @135
gpgme_io_read @136
gpgme_io_write @137
gpgme_result_ref @138
gpgme_result_unref @139
gpgme_op_import_keys @140
gpgme_op_import_keys_start @141
gpgme_op_export_keys @142
gpgme_op_export_keys_start @143
gpgme_op_assuan_transact_ext @144
gpgme_wait_ext @145
gpgme_op_vfs_mount_result @146
gpgme_op_vfs_mount @147
gpgme_op_vfs_create @148
gpgme_key_from_uid @149
gpgme_set_sub_protocol @150
gpgme_get_sub_protocol @151
gpgme_op_passwd_start @152
gpgme_op_passwd @153
gpgme_err_code_from_syserror @154
gpgme_err_set_errno @155
gpgme_set_global_flag @156
gpgme_io_writen @157
gpgme_set_pinentry_mode @158
gpgme_get_pinentry_mode @159
gpgme_signers_count @160
gpgme_data_identify @161
gpgme_get_dirinfo @162
gpgme_op_spawn_start @163
gpgme_op_spawn @164
gpgme_set_offline @165
gpgme_get_offline @166
gpgme_set_status_cb @167
gpgme_get_status_cb @168
gpgme_pubkey_algo_string @169
gpgme_set_ctx_flag @170
gpgme_data_set_flag @171
gpgme_op_createkey_start @172
gpgme_op_createkey @173
gpgme_op_createsubkey_start @174
gpgme_op_createsubkey @175
gpgme_op_adduid_start @176
gpgme_op_adduid @177
gpgme_op_revuid_start @178
gpgme_op_revuid @179
gpgme_op_keysign_start @180
gpgme_op_keysign @181
gpgme_op_tofu_policy_start @182
gpgme_op_tofu_policy @183
gpgme_op_interact_start @184
gpgme_op_interact @185
gpgme_addrspec_from_uid @186
gpgme_set_sender @187
gpgme_get_sender @188
gpgme_op_query_swdb @189
gpgme_op_query_swdb_result @190
gpgme_get_ctx_flag @191
gpgme_op_keylist_from_data_start @192
gpgme_op_set_uid_flag_start @193
gpgme_op_set_uid_flag @194
gpgme_op_decrypt_ext @195
gpgme_op_decrypt_ext_start @196
gpgme_op_delete_ext @197
gpgme_op_delete_ext_start @198
gpgme_op_conf_dir @199
gpgme_op_encrypt_ext @200
gpgme_op_encrypt_ext_start @201
gpgme_op_encrypt_sign_ext @202
gpgme_op_encrypt_sign_ext_start @203
gpgme_data_new_from_estream @204
gpgme_op_setexpire @205
gpgme_op_setexpire_start @206
gpgme_op_revsig @207
gpgme_op_revsig_start @208
gpgme_op_receive_keys @209
gpgme_op_receive_keys_start @210
; END