aboutsummaryrefslogtreecommitdiffstats
path: root/doc/gpgme.texi (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-07-17Add per-ctx custom engine options.bjk/custom-engine-optionsBen Kibbey1-0/+25
* src/gpgme.h.in (gpgme_ctx_set_engine_options): New prototype. (gpgme_ctx_get_engine_options): Ditto. * src/engine-backend.h (engine_ops): Add set_options and get_options. * src/engine.c (gpgme_ctx_set_engine_options): New. (gpgme_ctx_get_engine_options): Ditto. * src/engine-gpg.c (gpg_set_options): New. (gpg_get_options): Ditto. * src/op-support.c (_gpgme_op_reset): Keep custom options. * src/engine-gpg.c (_gpgme_engine_ops_gpg): Adjust for new members. * src/engine-assuan.c (_gpgme_engine_ops_assuan): Ditto. * src/engine-g13.c (_gpgme_engine_ops_g13): Ditto. * src/engine-gpgconf.c (_gpgme_engine_ops_gpgconf): Ditto. * src/engine-gpgsm.c (_gpgme_engine_ops_gpgsm): Ditto. * src/engine-spawn.c (_gpgme_engine_ops_spawn): Ditto. * src/engine-uiserver.c (_gpgme_engine_ops_uiserver): Ditto. * src/gpgme.def: Export new symbols. * src/libgpgme.vers: Ditto. * doc/gpgme.texi: Document these new functions. -- Not all of gpg2's features are exposed to libgpgme and adding these functions makes it possible to do things like specify an --s2k-count, etc.
2014-11-06Improve the debug output a bit.Werner Koch1-1/+2
* src/debug.h (TRACE_ERR): Include the line number in the output.
2014-10-02build: Implement SYSROOT feature.origin/bjk/masterWerner Koch1-3/+16
* configure.ac: Document SYSROOT. * m4/gpg-error.m4: Update from libgpg-error master. * src/gpgme.m4: Implement SYSROOT stuff.
2014-06-04Add new keylist mode GPGME_KEYLIST_MODE_WITH_SECRET.Werner Koch1-6/+16
* src/gpgme.h.in (GPGME_KEYLIST_MODE_WITH_SECRET): New. * src/engine-gpg.c (gpg_keylist_build_options): Handle new mode. * src/engine-gpgsm.c (gpgsm_keylist, gpgsm_keylist_ext): Ditto. * src/keylist.c (parse_sec_field15): Add arg key and take care of --with-secret output. * src/gpgme-tool.c (gt_get_keylist_mode, cmd_keylist_mode): Add "with_secret". Print card info and and secret flag for subkeys. -- Note: This mode may only be used with GnuPG >= 2.1.
2014-05-08Add field CURVE to the key info.Werner Koch1-0/+4
* src/gpgme.h.in (struct _gpgme_subkey): Add field CURVE. * src/key.c (gpgme_key_unref): Free CURVE. * src/keylist.c (keylist_colon_handler): Set CURVE. * src/gpgme.c (gpgme_release): For failsafe reasons reset engine and engine info after freeing. -- The engine hack is useful in case the other release functions accidently call engine release.
2014-05-08Map public key algos returned by gpg to gpgme values.Werner Koch1-5/+6
* src/conversion.c (_gpgme_map_pk_algo): New. * src/decrypt.c (parse_enc_to): Add arg PROTOCOL and map pubkey algo. (_gpgme_decrypt_status_handler): Map pubkey algo. * src/keylist.c (keylist_colon_handler): Map pubkey algo. * src/sign.c (parse_sig_created): Add arg PROTOCOL and map pubkey algo. * src/verify.c (parse_new_sig): Ditto. (parse_valid_sig): Ditto. * src/gpgme.h.in (GPGME_PK_ECC): New. (GPGME_MD_SHA224): New. * src/gpgme.c (gpgme_pubkey_algo_name): Add GPGME_PK_ECC case. (gpgme_hash_algo_name): Add GPGME_MD_SHA224. -- This affects only the not yet released ECC code of GnuPG 2.1.
2014-05-08Add GPGME_ENCRYPT_NO_COMPRESS flag.Werner Koch1-0/+15
* src/gpgme.h.in (GPGME_ENCRYPT_NO_COMPRESS): New. * src/engine-gpg.c (gpg_encrypt, gpg_encrypt_sign): Implement it. * src/gpgme-tool.c (_cmd_sign_encrypt): Add option --no-compress.
2014-04-10Actually implement flags for gpgme_op_spawn.Werner Koch1-6/+7
* src/spawn.c (gpgme_op_spawn_start, gpgme_op_spawn): Pass FLAGS dow to spawn_start and add FLAGS args along the call path. * src/engine-spawn.c (engspawn_start): Hack to automagically provide argv[0].
2014-04-10Add GPGME_PROTOCOL_SPAWN and gpgme_op_spawn.Werner Koch1-3/+73
* src/gpgme.h.in (GPGME_PROTOCOL_SPAWN): New. (GPGME_SPAWN_DETACHED, GPGME_SPAWN_ALLOW_SET_FG): New. * src/gpgme.c (gpgme_set_protocol): Add new protocol. (gpgme_get_protocol_name): Ditto. * src/spawn.c: New. * src/libgpgme.vers, src/gpgme.def: Add new public functions. * src/engine-spawn.c: New. * src/Makefile.am: Add new files. * src/engine-backend.h (struct engine_ops): Add OPSPAWN. * src/engine.c (engine_ops): Add _gpgme_engine_ops_spawn. (gpgme_get_engine_info): Add Spawn to the list of protocols. (_gpgme_engine_op_spawn): New. * src/gpgme-tool.c (gt_protocol_from_name): Add new protocol. (gt_spawn, cmd_spawn): New.
2014-04-10Add gpgme_get_dirinfo.Werner Koch1-1/+37
* src/dirinfo.c (gpgme_get_dirinfo): New. * tests/t-engine-info.c (main): Print results from that function.
2014-03-05doc: Fix documentation of struct data typesDaiki Ueno1-11/+17
* gpgme.texi (Key Management): Document is_cardkey and card_number members of gpgme_subkey_t. (Decrypt): Remove description of the non-existent wrong_key_usage member of gpgme_recipient_t. (Verify): Document pka_address member of gpgme_signature_t. (Creating a Signature): Add missing member names in gpgme_new_signature_t. (Registering I/O Callbacks): Fix reference of gpgme_io_cbs struct.
2014-01-06Add global flags disable-gpgconf, gpgconf-name, and gpg-name.Werner Koch1-12/+37
* src/gpgme.c (gpgme_set_global_flag): Add names "disable-gpgconf", "gpgconf-name", and "gpg-name". * src/dirinfo.c (_gpgme_dirinfo_disable_gpgconf): New. (get_gpgconf_item): Minor debug info change. * src/posix-util.c (default_gpg_name, default_gpgconf_name): Add vars. (_gpgme_set_default_gpg_name): New. (_gpgme_set_default_gpgconf_name): New. (_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Use new vars. (walk_path): Add debug output on failure. * src/w32-util.c (default_gpg_name, default_gpgconf_name): Add vars. (replace_slashes): New. (get_basename): New. (_gpgme_set_default_gpg_name): New. (_gpgme_set_default_gpgconf_name): New. (_gpgme_get_gpg_path, _gpgme_get_gpgconf_path): Use new vars. * tests/t-engine-info.c (main): Add --verbose and --set-global-flag options. -- Note that the Windows part has not been tested.
2013-08-19Document API change for GPGME_EVENT_DONE from 2009.Werner Koch1-3/+3
* doc/gpgme.texi (I/O Callback Interface): Fix description for the event arg. -- With commit c8e934b2 (2009-10-26) gpgme_io_event_done_data_t was introduced to replace the use of gpg_error_t with GPGME_EVENT_DONE. Unfortunately this was not documented. Maybe at that time the event code was considered internal and its use in GPA was not known. Too bad.
2013-08-09Add function gpgme_data_identify.Werner Koch1-0/+51
* src/gpgme.h.in (gpgme_data_type_t): New. (gpgme_data_identify): New prototype. * src/data-identify.c: New. * src/parsetlv.c, src/parsetlv.h: New. Take from gpa. * src/libgpgme.vers, src/gpgme.def: Add gpgme_data_identify. * src/gpgme-tool.c (status): Add STATUS_IDENTIFY_RESULT. (gt_identify): New. (cmd_identify): New. (hlp_passwd): Move close to cmd_passwd. -- It is often useful to have a way to identify the data which needs processing. This is such a common task that it makes sense to implement this in gpgme to avoid diverging implementations.
2013-06-18doc: Fix variable name.Werner Koch1-1/+1
-- GnuPG-bug-id: 1507
2013-06-18Add function gpgme_signers_count.Werner Koch1-0/+5
* src/signers.c (gpgme_signers_count): New. * src/libgpgme.vers, src/gpgme.def: Add as external symbol. * src/gpgme.h.in: Add prototype.
2013-05-28doc: rename gpgme_sub_key_t to gpgme_subkey_t to match gpgme.hHans-Christoph Steiner1-4/+4
--
2013-05-16Make definition of off_t robust against misbehaving w32 toolchains.Werner Koch1-12/+50
* configure.ac (NEED__FILE_OFFSET_BITS): Change to define gpgme_off_t and gpgme_ssize_t. (API__OFF_T, API__SSIZE_T): New ac_subst. * src/gpgme.h.in: Replace all ssize_t and off_t by ac_subst macros. * src/assuan-support.c, src/ath-pthread.c, src/ath.c, src/ath.h * src/data-compat.c, src/data-fd.c, src/data-mem.c, src/data-stream.c * src/data-user.c, src/data.c, src/data.h, src/engine-gpgsm.c * src/engine-uiserver.c, src/gpgme-tool.c, src/gpgme.c: Replace off_t by gpgme_off_t and sszie_t by gpgme_ssize_t. * src/ath-pthread.c, src/ath.h: Include gpgme.h. -- For a detailed description, see the gpgme.texi diff.
2013-04-30Syntax fix for gpgme.texi.Werner Koch1-1/+1
-- This fixes commit 12374cbecede047accd2d2267bba5927037ed16c.
2013-04-16Explain the GPGME_DEBUG variable.Werner Koch1-0/+42
--
2013-02-26Release 1.4.0.gpgme-1.4.0Werner Koch1-1/+1
* configure.ac: Bump LT version to C20/A9/R0.
2013-02-07Add public function gpgme_io_writen.Werner Koch1-3/+4
* src/gpgme.c (gpgme_io_read): New. -- This is a writen style variant for gpgme_io_write. It is often easier to use this one in passphrase and edit callbacks.
2012-09-25Add gpgme_set_global_flag to help debuggingWerner Koch1-1/+25
* src/gpgme.c (gpgme_set_global_flag): New. * src/gpgme.h.in (gpgme_set_global_flag): New. * src/gpgme.def, src/libgpgme.vers: Add new public function. * src/debug.c (envvar_override): New.: (_gpgme_debug_set_debug_envvar): New. (debug_init): Take ENVVAR_OVERRIDE in account. -- On Android envvars can't be used, thus we need another way to enable GPGME debugging. The new function allows this and may be used in the future to implement similar things.
2012-05-02Fix minor documentation problem.Werner Koch1-27/+27
-- Fixes bug#1404. (There is mentioned data field “recipient”, but actual data field name is “recipients”.)
2011-05-12Fix I/O callback example.Marcus Brinkmann1-7/+12
2011-05-12Correct key-gen example.Marcus Brinkmann1-6/+6
2011-01-07Typo fixes spotted by Daiki Ueno.Werner Koch1-2/+2
2010-02-16Add option GPGME_EXPORT_MODE_MINIMALWerner Koch1-0/+6
2010-01-25Allow the native W32 version to properly work with sockets.Werner Koch1-1/+1
2010-01-08Support gpgme_op_apsswd for GPG.Werner Koch1-0/+3
2010-01-05Add an API to change passphrases. Currently only implemented forWerner Koch1-1/+47
GPGSM. Requires GnuPG 2.1
2009-11-03Prepare for a new protocol.Werner Koch1-0/+9
Comment clarification.
2009-08-06Fix detection of invalid signer keys.Werner Koch1-1/+1
Support the new INV_SGNR status code.
2009-06-16Add support for gpg --fetch-keys.Werner Koch1-0/+13
2009-06-16doc/Marcus Brinkmann1-0/+34
2009-06-16 Marcus Brinkmann <[email protected]> * gpgme.texi (Result Management): New section. src/ 2009-06-16 Marcus Brinkmann <[email protected]> * gpgme.c (result_ref_lock): New global variable. (gpgme_result_ref, gpgme_result_unref): use it.
2009-06-16Add new functions to import and export keys specified by gpgme_key_t.Werner Koch1-6/+101
Allow exporting keys to a keyserver.
2009-05-28doc/Marcus Brinkmann1-3/+12
2009-05-28 Marcus Brinkmann <[email protected]> * gpgme.texi (Library Version Check): Document selftest error. (Creating Contexts): Likewise. src/ 2009-05-28 Marcus Brinkmann <[email protected]> * gpgme.h.in (gpgme_check_version_internal): New prototype. (gpgme_check_version): New macro, overriding function of the same name. * libgpgme.vers, gpgme.def: Add gpgme_check_version_internal.o * context.h (_gpgme_selftest): New variable declaration. * version.c: Include "context.h". (gpgme_check_version): Set _gpgme_selftest on success. (gpgme_check_version_internal): New function. * gpgme.c (_gpgme_selftest): Define it. (gpgme_new): Check the selftest result.
2009-05-18doc/Marcus Brinkmann1-0/+6
2009-05-18 Marcus Brinkmann <[email protected]> * gpgme.texi (Encrypting a Plaintext): Document GPGME_ENCRYPT_NO_ENCRYPT_TO. src/ 2009-05-18 Marcus Brinkmann <[email protected]> * gpgme.h.in (gpgme_encrypt_flags_t): Add GPGME_ENCRYPT_NO_ENCRYPT_TO. * engine-gpg.c (gpg_encrypt): Pass --no-encrypt-to to gpg if GPGME_ENCRYPT_NO_ENCRYPT_TO flag is set.
2009-05-052009-05-05 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-4/+4
* gpgme.texi (Engine Information): Replace path by file_name.
2009-03-18Add GPGME_KEYLIST_MODE_EPHEMERAL.Werner Koch1-0/+4
2008-11-28Fix doc bug.Werner Koch1-1/+1
2008-07-04Update automake scripts.Werner Koch1-2/+4
Minor doc changes.
2008-06-272008-06-27 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-7/+21
* gpgme.texi (Cancellation): Document gpgme_cancel_async. gpgme/ 2008-06-27 Marcus Brinkmann <[email protected]> * context.h: Include "sema.h". (struct gpgme_context): New members lock and canceled. * gpgme.c (gpgme_new): Initialize lock. (gpgme_release): Destroy lock. (gpgme_cancel_async): New function. * op-support.c (_gpgme_op_reset): Reset the canceled flag. * wait-global.c (gpgme_wait): Check cancel flag before processing any I/O callbacks. * wait-private.c (_gpgme_wait_on_condition): Likewise. * wait-user.c (_gpgme_user_io_cb_handler): Likewise.
2008-06-25Updated example.Werner Koch1-3/+8
2008-06-04Include the GnuPG UI Server specification.Werner Koch1-44/+58
Change the license of the manual to GPLv3+.
2008-05-07Support --locate-keys feature of gpg.Werner Koch1-5/+5
2008-03-11doc/Marcus Brinkmann1-0/+24
2008-03-11 Marcus Brinkmann <[email protected]> * gpgme.texi (File Based Data Buffers): Document the need for blocking operations. (Callback Based Data Buffers): Likewise. gpgme/ 2008-03-11 Marcus Brinkmann <[email protected]> * data.c (gpgme_data_read, gpgme_data_write): Retry on EINTR.
2008-03-052008-03-05 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-1/+3
* gpgme.texi (Library Version Check): Rename snippet function to init_gpgme. (I/O Callback Example): Call it here.
2008-01-282008-01-28 Marcus Brinkmann <[email protected]>Marcus Brinkmann1-9/+16
* gpgme.texi: Document that data encoding affects some output data objects now.
2007-09-27doc/Marcus Brinkmann1-0/+6
2007-09-27 Marcus Brinkmann <[email protected]> * gpgme.texi (Protocols and Engines): Document GPGME_PROTOCOL_UNKNOWN. gpgme/ 2007-09-27 Marcus Brinkmann <[email protected]> * gpgme.h (gpgme_protocol_t): Add GPGME_PROTOCOL_UNKNOWN. * gpgme.c (gpgme_get_protocol_name): Implement support for GPGME_PROTOCOL_UNKNOWN.