Commit Graph

3291 Commits

Author SHA1 Message Date
Marcus Brinkmann
7aaa379c44 2003-02-05 Marcus Brinkmann <marcus@g10code.de>
* wait-user.c (_gpgme_wait_user_remove_io_cb): Move check for no
	I/O handlers left to ...
	(_gpgme_user_io_cb_handler): ... here.
2003-02-05 10:40:05 +00:00
Marcus Brinkmann
d2992c518c 2003-02-04 Marcus Brinkmann <marcus@g10code.de>
* trustlist.c (trustlist_colon_handler): Release ITEM if name
	could not be allocated.
	(gpgme_trust_item_release): Only release name if it is allocated.
	Reported by Marc Mutz <Marc.Mutz@uni-bielefeld.de>.
2003-02-04 20:56:50 +00:00
Marcus Brinkmann
7f0efb1923 2003-02-04 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (read_status): If he status handler returns an error,
	return it.
	(status_handler): If read_status fails, just return the error.
2003-02-04 16:08:50 +00:00
Marcus Brinkmann
350ef9afef 2003-02-01 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (start): Handle all errors, not only most of
	them.
	(xtoi_1, xtoi_2): Remove macro.
	(status_handler): Replace use of xtoi_2 with _gpgme_hextobyte.
2003-02-04 14:57:41 +00:00
Marcus Brinkmann
90beb50551 2003-02-01 Marcus Brinkmann <marcus@g10code.de>
* assuan/: Update files to 2002-11-10 version of assuan.

gpgme/
2003-02-01  Marcus Brinkmann  <marcus@g10code.de>

	* engine-gpgsm.c (map_assuan_error): Replace
	ASSUAN_Bad_Certificate_Path with ASSUAN_Bad_Certificate_Chain.
	(gpgsm_new): Use assuan_pipe_connect instead assuan_pipe_connect2.

	* util.h (DIMof): Remove macro.

	* ops.h (_gpgme_op_event_cb, _gpgme_op_event_cb_user,
	_gpgme_data_unread): Prototypes removed.
2003-02-01 18:53:06 +00:00
Marcus Brinkmann
83d3b3f449 2003-01-30 Marcus Brinkmann <marcus@g10code.de>
* types.h: File removed.
	* Makefile.am (libgpgme_la_SOURCES): Remove types.h.
	* io.h (struct spawn_fd_item_s): Do not include "types.h".
	* key.h: Likewise.
	* context.h: Likewise.
	* cengine-gpgsm.h: Likewise.
	* engine.h: Include "gpgme.h" instead "types.h".  Add prototypes
	for EngineStatusHandler, EngineColonLineHandler and
	EngineCommandHandler.
	(_gpgme_engine_set_status_handler): Change parameter type from
	GpgmeStatusHandler to EngineStatusHandler.
	(_gpgme_engine_set_command_handler): Change parameter type from
	GpgmeCommandHandler to EngineCommandHandler.
	(_gpgme_engine_set_colon_line_handler): Change parameter type from
	GpgmeColonLineHandler to EngineColonLineHandler.
	* engine-backend.h: Include "engine.h" instead "types.h".
	(struct engine_ops): Change Gpgme*Handler parameters in members
	set_command_handler, set_colon_line_handler and set_status_handler
	to Engine*Handler.
	* engine.c (_gpgme_engine_set_status_handler): Change parameter
	type from GpgmeStatusHandler to EngineStatusHandler.
	(_gpgme_engine_set_command_handler): Change parameter type from
	GpgmeCommandHandler to EngineCommandHandler.
	(_gpgme_engine_set_colon_line_handler): Change parameter type from
	GpgmeColonLineHandler to EngineColonLineHandler.
	* rungpg.c (struct gpg_object_s): Change type of member status.fnc
	from GpgmeStatusHandler to EngineStatusHandler.  Change type of
	member colon.fnc from GpgmeColonLineHandler to
	EngineColonLineHandler.  Change type of member cmd.fnc from
	GpgmeCommandHandler to EngineCommandHandler.
	* engine-gpgsm.c (struct gpgsm_object_s): Likewise.
	* rungpg.c (gpg_set_status_handler): Change parameter type from
	GpgmeStatusHandler to EngineStatusHandler.
	* engine-gpgsm.c (gpgsm_set_status_handler): Likewise.
	(assuan_simple_command): Likewise.
	* rungpg.c (gpg_set_colon_line_handler): Change parameter type
	from GpgmeColonLineHandler to EngineColonLineHandler.
	* engine-gpgsm.c (gpgsm_set_colon_line_handler): Likewise.
	* rungpg.c (gpg_set_command_handler): Change parameter type from
	GpgmeCommandHandler to EngineCommandHandler.
2003-01-30 23:02:14 +00:00
Marcus Brinkmann
7618b28f1d 2003-01-30 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (status_handler): Do not close status fd at end
	of function.

	* ops.h (_gpgme_op_data_lookup): Add prototype.
	* op-support.c: Include <stdlib.h>.
	(_gpgme_op_data_lookup): New function.
	* decrypt.c (_gpgme_release_decrypt_result): Function removed.
	(struct decrypt_result_s): Rename to ...
	(struct decrypt_resul): ... this.
	(DecryptResult): New type.
	(_gpgme_decrypt_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* sign.c (_gpgme_release_sign_result): Function removed.
	(release_sign_result): New function.
	(struct sign_result_s): Rename to ...
	(struct sign_result): ... this.
	(SignResult): New type.
	(_gpgme_sign_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* encrypt.c (struct encrypt_result_s): Rename to ...
	(struct encrypt_result): ... this.
	(_gpgme_release_encrypt_result): Function removed.
	(release_encrypt_result): New function.
	(_gpgme_encrypt_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* verify.c (struct verify_result_s): Rename to ...
	(struct verify_result): ... this.  Remove member next.
	(VerifyResult): New type.
	(_gpgme_release_verify_result): Function removed.
	(release_verify_result): New function.
	(finish_sig): Change first argument to type VerifyResult.  Diddle
	the type of the op_data structure.
	(add_notation): Change first argument to type VerifyResult.
	(_gpgme_verify_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* passphrase.c (struct passphrase_result_s): Rename to ...
	(struct passphrase_result): ... this.  Remove member next.
	(PassphraseResult): New type.
	(_gpgme_release_passphrase_result): Function removed.
	(release_passphrase_result): New function.
	(_gpgme_passphrase_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	(_gpgme_passphrase_command_handler): Likewise.
	* keylist.c (struct keylist_result_s): Rename to ...
	(struct keylist_result): ... this.  Remove member next.
	(KeylistResult): New type.
	(_gpgme_release_keylist_result): Function removed.
	(release_keylist_result): New function.
	(keylist_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	* edit.c (struct edit_result_s): Rename to ...
	(struct edit_result): ... this.  Remove member next.
	(EditResult): New type.
	(_gpgme_release_edit_result): Function removed.
	(release_edit_result): New function.
	(edit_status_handler): Don't use
	test_and_allocate_result, but use _gpgme_op_data_lookup to
	retrieve result data object.
	(command_handler): Likewise.
	* types.h (DecryptResult, SignResult, EncryptResult,
	PassphraseResult, ImportResult, DeleteResult, GenKeyResult,
	KeylistResult, EditResult): Types removed.
	* ops.h: Don't include "types.h", but "gpgme.h" and "context.h".
	(test_and_allocate_result): Remove macro.
	(_gpgme_release_decrypt_result): Remove prototype.
	(_gpgme_decrypt_result): Remove prototype.
	(_gpgme_release_sign_result): Remove prototype.
	(_gpgme_release_encrypt_result): Remove prototype.
	(_gpgme_release_passphrase_result): Remove prototype.
	(_gpgme_release_import_result): Remove prototype.
	(_gpgme_release_delete_result): Remove prototype.
	(_gpgme_release_genkey_result): Remove prototype.
	(_gpgme_release_keylist_result): Remove prototype.
	(_gpgme_release_edit_result): Remove prototype.
	(_gpgme_release_verify_result): Remove prototype.
	* gpgme.c (_gpgme_release_result): Rewritten.
	* context.h (enum ctx_op_data_type): New enum.
	(struct ctx_op_data): New structure.
	(struct gpgme_context_s): Replace the member result with a member
	op_data.
	(fail_on_pending_request): Remove macro.
	* op-support.c (_gpgme_op_reset): Expand macro
	fail_on_pending_request.
	* util.h: Don't include "types.h" or "debug.h", but include "gpgme.h".
2003-01-30 22:40:05 +00:00
Marcus Brinkmann
e0229fe1d6 Fix comment indentation. 2003-01-30 22:01:01 +00:00
Marcus Brinkmann
7a149cc32f 2003-01-30 Marcus Brinkmann <marcus@g10code.de>
* types.h (EngineObject): Move typedef to ...
	* engine.h: ... here.
	* types.h (GpgObject): Move typedef to ...
	* rungpg.c: ... here.
	* types.h (GpgsmObject): Move typedef to ...
	* engine-gpgsm.c: ... here.
2003-01-30 17:28:10 +00:00
Marcus Brinkmann
fb0b0b7eef 2003-01-30 Marcus Brinkmann <marcus@g10code.de>
* util.h (return_if_fail, return_null_if_fail,
	return_val_if_fail): Remove macro.
	* gpgme.c (gpgme_cancel): Don't use return_if_fail.
	* key.c (gpgme_key_ref): Likewise.
	* signers.c (gpgme_signers_enum): Likewise.
	(gpgme_signers_clear): Likewise.
2003-01-30 17:12:07 +00:00
Marcus Brinkmann
420de0b990 Small beautification. 2003-01-30 13:12:43 +00:00
Marcus Brinkmann
d102681aef doc/
2003-01-30  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Engine Information): Rename member part to
	file_name.

gpgme/
2003-01-30  Marcus Brinkmann  <marcus@g10code.de>

	* engine-backend.h (struct engine_ops): Rename get_path to
	get_file_name.
	* gpgme.h (struct _gpgme_engine_info): Rename member path to
	file_name.
	* version.c: Do not include <stdio.h>, <stdlib.h>, context.h and
	util.h.  Other clean ups.
	(parse_version_number): Protect more seriously against
	overflow.
	(gpgme_get_engine_info): Move to ...
	* engine.c (gpgme_get_engine_info): ... here.
	(_gpgme_engine_get_info): Function removed.
	(_gpgme_engine_get_path): Make static and rename to ...
	(engine_get_file_name): .. this.
	(_gpgme_engine_get_version): Make static and rename to ...
	(engine_get_version): ... this.
	(_gpgme_engine_get_req_version): Make static and rename to ...
	(engine_get_req_version): ... this.
	* engine.h (_gpgme_engine_get_path, _gpgme_engine_get_version,
	_gpgme_engine_req_version, _gpgme_engine_get_info.): Remove
	prototypes.

tests/
2003-01-30  Marcus Brinkmann  <marcus@g10code.de>

	* t-engine-info.c: Use file_name instead path throughout.
2003-01-30 13:11:25 +00:00
Marcus Brinkmann
feb78b25ec 2003-01-30 Marcus Brinkmann <marcus@g10code.de>
* gpgme.texi (Protocols and Engines): Document
	gpgme_get_protocol_name.
2003-01-30 12:01:21 +00:00
Marcus Brinkmann
b7779c802c Add new interfaces. 2003-01-30 11:58:42 +00:00
Marcus Brinkmann
fdbee6b211 doc/
2003-01-30  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Engine Information): Rewritten.

gpgme/
2003-01-30  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h (enum GpgmeProtocol): Remove GPGME_PROTOCOL_AUTO.
	* gpgme.c (gpgme_set_protocol): Don't handle GPGME_PROTOCOL_AUTO.
	(gpgme_get_protocol_name): New function.

	* engine-backend.h (struct engine_ops): New member
	get_req_version, remove member check_version.
	* engine.h (_gpgme_Engine_get_version): New prototype.
	* rungpg.c (gpg_get_req_version): New function.
	(gpg_check_version): Function removed.
	(_gpgme_engine_ops_gpg): Add gpg_get_req_version, remove
	gpg_check_version.
	* engine-gpgsm.c (gpgsm_get_req_version): New function.
	(gpgsm_check_version): Function removed.
	(_gpgme_engine_ops_gpgsm): Add gpgsm_get_req_version, remove
	gpgsm_check_version.
	* engine.c: Include ops.h.
	 (_gpgme_engine_get_req_version): New function.
	(gpgme_engine_check_version): Rewritten.
	* version.c (gpgme_get_engine_info): Rewritten.
	* gpgme.h (gpgme_engine_info): New structure.
	(GpgmeEngineInfo): New type.

tests/
2003-01-30  Marcus Brinkmann  <marcus@g10code.de>

	* Makefile.am (TESTS): Add t-engine-info.
	* t-engine-info.c: New file.
	* gpg/t-encrypt.c (main): Don't print engine info.
	* gpg/t-eventloop.c (main): Likewise.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpgsm/t-encrypt.c (main): Likewise.
2003-01-30 11:54:23 +00:00
Marcus Brinkmann
693b8a2ac6 2003-01-29 Marcus Brinkmann <marcus@g10code.de>
* bonobo/gpgme.c, bonobo/main.c, bonobo/main.h, bonobo/Makefile,
	bonobo/Makefile.am, bonobo/Makefile.in: Dead files removed.
	* configure.ac: Remove automake conditional BUILD_BONOBO
	(AC_CONFIG_FILES): Remove bonobo/Makefile.
	* Makefile.am (bonobo): Remove variable.
	(SUBDIRS): Remove ${bonobo}.
2003-01-29 20:18:52 +00:00
Marcus Brinkmann
d9ecfaa9c1 Fix copyright year. 2003-01-29 20:03:24 +00:00
Marcus Brinkmann
13e4d78a82 2003-01-29 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Remove all uses of GNUPG_CHECK_TYPEDEF, for byte,
	ushort, ulong, u16 and u32.
	* acinclude.m4 (GNUPG_CHECK_TYPEDEF): Remove macro.

gpgme/
2003-01-29  Marcus Brinkmann  <marcus@g10code.de>

	* types.h: Remove byte and ulong types.
	* util.h (_gpgme_hextobyte): Change prototype to unsigned char
	instead byte.
	* conversion.c (_gpgme_hextobyte): Change argument to unsigned
	char instead byte.
	(_gpgme_decode_c_string): Likewise, and beautify.  Also support a
	few more escaped characters.  Be more strict about buffer size.
	(_gpgme_data_append_percentstring_for_xml): Change type of SRC,
	BUF and DST to unsigned char instead byte.
	* progress.c (_gpgme_progress_status_handler): Use unsigned char
	instead byte.
	* debug.c (trim_spaces): Likewise.
2003-01-29 19:50:43 +00:00
Marcus Brinkmann
6912c46a77 2003-01-29 Marcus Brinkmann <marcus@g10code.de>
* util.h (mk_error): Remove macro.
	* conversion.c, data.c, data-compat.c, decrypt.c, delete.c,
	edit.c, encrypt.c, encrypt-sign.c, engine.c, engine-gpgsm.c,
	export.c, genkey.c, gpgme.c, import.c, key.c, keylist.c,
	passphrase.c, progress.c, recipient.c, rungpg.c, sign.c,
	signers.c, trustlist.c, verify.c, wait.c, wait-global.c,
	wait-private (literally everywhere): Expand the mk_error macro.
2003-01-29 16:10:35 +00:00
Marcus Brinkmann
ff5dfd9c9c Add some items, remove obsolete item about pipemode. 2003-01-29 15:41:25 +00:00
Marcus Brinkmann
f6604334b6 2003-01-29 Marcus Brinkmann <marcus@g10code.de>
* context.h (wait_on_request_or_fail): Remove macro.
2003-01-29 15:32:15 +00:00
Marcus Brinkmann
2c543f6a86 doc/
2003-01-29  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (I/O Callback Interface): Document new even
	GPGME_EVENT_START.
	(Waiting For Completion): Document new possible return values.
	(I/O Callback Interface): Document return type of GpgmeIOCb.

gpgme/
2003-01-29  Marcus Brinkmann  <marcus@g10code.de>

	* context.h (gpgme_context_s): Remove member ERROR.
	* types.h (GpgmeStatusHandler): Change return type to GpgmeError.
	(GpgmeCommandHandler): Change return type to GpgmeError and add
	new argument RESULT.
	* gpgme.h (GpgmeIOCb): Change return type to GpgmeError.
	(GpgmeEventIO): New event GPGME_EVENT_START.
	(GpgmeIdleFunc): Remove type.
	(gpgme_register_idle): Remove prototype.
	* data.c: Include <assert.h>.
	(_gpgme_data_inbound_handler): Change return type to GpgmeError.
	Return any error instead ignoring it, don't close file descriptor
	on error.
	(_gpgme_data_outbound_handler): Likewise.
	* decrypt.c: Do not include <stdio.h>, <string.h> and <assert.h>.
	(_gpgme_decrypt_status_handler): Change return type to GpgmeError.
	Return error instead setting ctx->error.  Return success at end of
	function.
	(gpgme_op_decrypt): Don't work around the old kludge anymore.
	* decrypt-verify.c (decrypt_verify_status_handler): Change return
	type to GpgmeError.  Return possible errors.
	* delete.c: Do not include <stdio.h>, <string.h>, <time.h> and
	<assert.h>.
	(delete_status_handler): Change return type to GpgmeError.  Return
	error instead setting ctx->error.  Return success at end of
	function.
	* edit.c: Do not include <stdio.h> and <string.h>.
	(_gpgme_edit_status_handler): Change type to GpgmeError,
	make static and rename to ...
	(edit_status_handler): ... this.  Return error directly.
	(command_handler): Change return type to GpgmeError, add result
	argument.  Return error directly.
	* encrypt.c (status_handler_finish): Remove function.
	(_gpgme_encrypt_status_handler): Change return type to GpgmeError.
	Return error directly.
	(_gpgme_encrypt_sym_status_handler): Likewise.
	* encrypt-sign.c (encrypt_sign_status_handler): Likewise.
	* engine-gpgsm.c (close_notify_handler): Do not signal done event
	anymore.
	(status_handler): Change return type to GpgmeError.  Diddle things
	around a bit to return errors directly.
	(start): Send start event.
	* export.c: Do not include <stdio.h>, <string.h> and <assert.h>.
	(export_status_handler): Change return type to GpgmeError.  Don't
	check ctx->error.
	* genkey.c: Do not include <stdio.h> and <assert.h>.
	(genkey_status_handler): Change return type to GpgmeError.  Don't
	check ctx->error.  Return errors directly.
	* gpgme.c (_gpgme_release_result): Do not initialize ctx->error.
	(_gpgme_op_event_cb): Function removed.
	(_gpgme_op_event_cb_user): Likewise.
	* import.c: Do not include <stdio.h>, <string.h> and <assert.h>.
	(import_status_handler): Change return type to GpgmeError.  Don't
	check ctx->error.
	* keylist.c (keylist_colon_handler, keylist_status_handler, finish_key):
	Change return type to GpgmeError, return error directly.
	* Makefile (libgpgme_la_SOURCES): Add wait-global.c,
	wait-private.c and wait-user.c
	* ops.h (test_and_allocate_result): Return error instead setting
	ctx->error.
	(_gpgme_data_inbound_handler, _gpgme_data_outbound_handler,
	_gpgme_verify_status_handler, _gpgme_decrypt_status_handler,
	_gpgme_sign_status_handler, _gpgme_encrypt_staus_handler,
	_gpgme_passphrase_status_handler, _gpgme_progress_status_handler):
	Change return type to GpgmeError.
	(_gpgme_passphease_command_handler): Change return type to
	GpgmeError and add new argument RESULT.
	* op-support.c: Use new callback functions, and change private
	data to ctx everywhere.
	* passphrase.c (_gpgme_passphrase_status_handler): Change return
	type to GpgmeError, return error directly.
	(_gpgme_passphrase_command_handler): Change return type to
	GpgmeError, add result argument.  Return results accordingly.
	* progress.c (_gpgme_progress_status_handler): Change return type
	to GpgmeError, return errors directly.
	* rungpg.c (status_handler): Change return type to GpgmeError.
	Return error directly.
	(close_notify_handler): Don't send done event.
	(colon_line_handler): Change return type to GpgmeError, return
	errors directly.
	* rungpg.c (start): Send start event.
	* sign.c (_gpgme_sign_status_handler): Change return type to
	GpgmeError, return errors directly.
	* trustlist.c (trustlist_status_handler): Change return type to
	GpgmeError.  Return 0.
	(trustlist_colon_handler): Change return type GpgmeError.  Return
	errors directly.
	* verify.c (add_notation): Change return type to GpgmeError,
	return errors directly.
	(_gpgme_verify_status_handler): Likewise.
	* wait.h (struct fd_table): Remove lock member.
	(struct wait_item_s): Moved here from wait.c.
	(struct tag): New structure.
	(_gpgme_wait_event_cb): Remove prototype.
	(_gpgme_wait_private_event_cb, _gpgme_wait_global_event_cb,
	_gpgme_wait_user_add_io_cb, _gpgme_wait_user_remove_io_cb,
	_gpgme_wait_user_event_io_cb): New prototypes.
	* wait.c: Don't include <stdio.h>.
	(ftd_global, ctx_done_list, ctx_done_list_size,
	ctx_done_list_length, ctx_done_list_lock, idle_function): Remove
	global variable.
	(gpgme_register_idle, do_select, _gpgme_wait_event_cb): Remove
	function.
	(gpgme_wait): Move to file wait-global.c.
	(_gpgme_add_io_cb): Take ctx as private argument, initialize ctx
	member in wait item and tag.
	(_gpgme_remove_io_cb): Take ctx from tag.  Don't use FDT lock.
	(_gpgme_wait_one, _gpgme_wait_on_condition): Move to
	wait-private.c.
	(gpgme_fd_table_init): Don't initialize FDT->lock.
	(gpgme_fd_table_deinit): Don't destroy FDT->lock.
	(_gpgme_fd_table_put): Make static and rename to ...
	(fd_table_put): ... this function.  Don't use FDT->lock.
	(struct wait_item_s): Move to wait.h.
	* wait-global.c: New file.
	* wait-private.c: New file.
	* wait-user.c: New file.
2003-01-29 15:20:58 +00:00
Marcus Brinkmann
8a5c6d0de2 2003-01-29 Marcus Brinkmann <marcus@g10code.de>
* key.c (gpgme_key_sig_get_string_attr): Use validity_to_string
	instead otrust_to_string to calculate validity.
2003-01-29 13:52:08 +00:00
Marcus Brinkmann
c44f5e0a3c 2003-01-19 Miguel Coca <mcoca@gnu.org>
* w32-io.c (_gpgme_io_select): Add missing argument in calls to
	DEBUG_BEGIN.
	* w32-util.c: Include "sema.h".
	(find_program_in_registry): Change DEBUG1 to DEBUG2, fixes compilation
	error.
2003-01-19 22:05:40 +00:00
Marcus Brinkmann
b083ea8da3 2003-01-19 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (_gpgme_engine_ops_gpg): Remove gpg_start.
	(gpg_start): Rename to ...
	(start): ... this function.  Change arguments to GpgObject.
	(gpg_decrypt): Call start.
	(gpg_edit): Likewise.
	(gpg_encrypt): Likewise.
	(gpg_encrypt_sign): Likewise.
	(gpg_export): Likewise.
	(gpg_import): Likewise.
	(gpg_keylist): Likewise.
	(gpg_keylist_ext): Likewise.
	(gpg_trustlist): Likewise.
	(gpg_verify): Likewise.

	* engine-gpgsm.c (_gpgme_engine_ops_encrypt): Remove gpgsm_start.
	(gpgsm_start): Rename to ...
	(struct gpgsm_object_s): Remove member command.
	(gpgsm_release): Don't free command.
	(start): ... this function.  Change arguments to GpgsmObject and
	const char *.
	(gpgsm_decrypt): Call start.
	(gpgsm_delete): Likewise.
	(gpgsm_encrypt): Likewise.
	(gpgsm_export): Likewise.
	(gpgsm_genkey): Likewise.
	(gpgsm_import): Likewise.
	(gpgsm_keylist): Likewise.
	(gpgsm_keylist_ext): Likewise.
	(gpgsm_verify): Likewise.

	* decrypt.c (_gpgme_decrypt_start): Don't call
	_gpgme_engine_start.
	* delete.c (_gpgme_op_delete_start): Likewise.
	* edit.c (_gpgme_op_edit_start): Likewise.
	* encrypt.c (_gpgme_op_encrypt_start):
	* encrypt-sign.c (_gpgme_op_encrypt_sign_start):
	* export.c (_gpgme_op_export_start): Likewise.
	* genkey.c (_gpgme_op_genkey_start): Likewise.
	* import.c (_gpgme_op_import_start): Likewise.
	* keylist.c (gpgme_op_keylist_ext_start): Likewise.
	(gpgme_op_keylist_start): Likewise.
	* sign.c (_gpgme_op_sign_start): Likewise.
	* trustlist.c (gpgme_op_trustlist_start): Likewise.
	* verify.c (_gpgme_op_verify_start): Likewise.

	* engine-backend.h (struct engine_ops): Remove member start.

	* engine.h (_gpgme_engine_start): Remove prototype.
	* engine.c (_gpgme_engine_start): Remove function.
2003-01-19 21:51:07 +00:00
Werner Koch
3552416199 * keylist.c (set_mainkey_capability): Handle 'd' and 'D' used
since gpg 1.3 to denote disabled keys.
2003-01-06 21:06:23 +00:00
Marcus Brinkmann
8e65687b46 2003-01-06 Marcus Brinkmann <marcus@g10code.de>
* data-mem.c: Include <string.h>.
	* engine.c: Likewise.
2003-01-06 14:07:56 +00:00
Marcus Brinkmann
617ca7e7b8 2003-01-06 Marcus Brinkmann <marcus@g10code.de>
* Makefile.am (libgpgme_la_DEPENDENCIES): Correct bug in last change.
2003-01-05 23:37:14 +00:00
Marcus Brinkmann
b6e5bb310e doc/
2002-12-24  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Verify): Drop R_STAT argument in gpgme_op_verify.
	* gpgme.texi (Decrypt and Verify): Likewise for
	gpgme_op_decrypt_verify.

gpgme/
2002-12-24  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h (gpgme_op_verify, gpgme_op_decrypt_verify): Drop R_STAT
	argument.
	* decrypt-verify.c (gpgme_op_decrypt_verify): Drop R_STAT
	argument.
	* verify.c (gpgme_op_verify): Drop R_STAT argument.
	(_gpgme_intersect_stati): Function removed.
	* ops.h (_gpgme_intersect_stati): Remove prototype.

tests/
2002-12-24  Marcus Brinkmann  <marcus@g10code.de>

	* gpgsm/t-verify.c (main): Adjust caller of gpgme_op_verify.
	* gpg/t-verify.c (main): Likewise.
	* gpg/t-decrypt-verify.c (main): Likewise for
	gpgme_op_decrypt_verify.
2002-12-24 13:08:56 +00:00
Marcus Brinkmann
1491938785 2002-12-24 Marcus Brinkmann <marcus@g10code.de>
* libgpgme.vers: New file.
	* Makefile.am (EXTRA_DIST): Add libgpgme.vers.
	(libgpgme_version_script_cmd): New variable.
	(libgpgme_la_LDFLAGS): Add libgpgme_version_script_cmd here.
	(libgpgme_la_DEPENDENCIES): New variable.
2002-12-23 23:47:27 +00:00
Marcus Brinkmann
1bf2a7b4a2 2002-12-24 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: New conditional HAVE_LD_VERSION_SCRIPT.
	Call AC_CANONICAL_HOST, use host instead target.

gpgme/
2002-12-24  Marcus Brinkmann  <marcus@g10code.de>

	* libgpgme.vers: New file.
	* Makefile.am (EXTRA_DIST): Add libgpgme.vers.
	(libgpgme_version_script_cmd): New variable.
	(libgpgme_la_LDFLAGS): Add libgpgme_version_script_cmd here.
	(libgpgme_la_DEPENDENCIES): New variable.
2002-12-23 23:45:28 +00:00
Marcus Brinkmann
768098eb93 Fix last change. 2002-12-23 23:44:22 +00:00
Marcus Brinkmann
acae8a0dce Fingerprints of subkeys are available. 2002-12-23 22:51:33 +00:00
Marcus Brinkmann
d1346f398e I believe this was fixed a while ago. 2002-12-23 22:49:09 +00:00
Marcus Brinkmann
06afcd13c6 doc/
2002-12-23  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Information About Keys): Document that
	GPGME_ATTR_IS_SECRET is not representable as a string anymore.
2002-12-23 22:34:25 +00:00
Marcus Brinkmann
15de808fea 2002-12-23 Marcus Brinkmann <marcus@g10code.de>
* key.c (gpgme_key_get_string_attr): Don't accept GPGME_ATTR_IS_SECRET.
	(otrust_to_string): New function.
	(gpgme_key_get_as_xml): Use it.
	(validity_to_string): New function.
	(gpgme_key_get_string_attr): Beautify using above functions.
	(gpgme_key_get_ulong_attr): Likewise.
2002-12-23 22:31:03 +00:00
Marcus Brinkmann
a0fc64745f 2002-12-23 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Bump up to 0.4.1.

	Released 0.4.0.
2002-12-23 21:28:35 +00:00
Marcus Brinkmann
856d9db479 Added new items. 2002-12-23 21:19:23 +00:00
Marcus Brinkmann
c60bcb31ad 2002-12-23 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/Makefile.am (./gpgsm.conf): Add a faked system time to
	avoid certification's expiry.
	* gpgsm/t-encrypt.c (main): Use the short certification name.
2002-12-23 21:06:38 +00:00
Marcus Brinkmann
51168de35d 2002-12-23 Marcus Brinkmann <marcus@g10code.de>
* autogen.sh (automake_vers): Require 1.7 (really 1.7.1) for the
	conditional source distribution bug fix.
2002-12-23 20:29:33 +00:00
Marcus Brinkmann
1ab62dbcba 2002-12-23 Marcus Brinkmann <marcus@g10code.de>
* data-mem.c (mem_release): Fix gcc warning.
	* data-user.c (user_release): Likewise.
2002-12-23 17:47:01 +00:00
Marcus Brinkmann
9d8143f071 2002-12-22 Marcus Brinkmann <marcus@g10code.de>
* gpgme.texi (Key Signatures): New section.
	(Listing Keys): Add gpgme_get_key.
2002-12-23 17:12:48 +00:00
Marcus Brinkmann
215ab30bba Add 0.3 branch changes. 2002-12-22 13:55:00 +00:00
Marcus Brinkmann
76253cd2fa 2002-12-08 Marcus Brinkmann <marcus@g10code.de>
* configure.ac (LIBGPGME_LT_CURRENT): Increase by one.
	(LIBGPGME_LT_AGE, LIBGPGME_LT_REVISION): Set to 0.
2002-12-08 13:54:11 +00:00
Marcus Brinkmann
0f78cb1e66 Fix bugs in last change. 2002-12-06 22:27:12 +00:00
Marcus Brinkmann
6a772bd6bc doc/
2002-12-06  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Memory Based Data Buffers): New subsection.
	(File Based Data Buffers): Likewise.
	(Callback Based Data Buffers): Likewise.
	(Manipulating Data Buffers): Update interfaces.  Add
	gpgme_data_seek.
	* gpgme.texi (Engine Version Check): Remove gpgme_chec_engine.

gpgme/
2002-12-06  Marcus Brinkmann  <marcus@g10code.de>

	* data.h (gpgme_data_release_cb): Change return type to void.
	(gpgme_data_read_cb): Change return type to ssize_t.
	* data.c (gpgme_data_read): Likewise.
	* data-stream.c (stream_read): Likewise.
	* data-fd.c (fd_read): Likewise.
	* data-mem.c (mem_read): Likewise.
	(mem_release): Change return type to void.
	* data-user.c (user_read): Change return type to ssize_t.
	(user_release): Change return type to void.
	* data-compat.c (old_user_read): Change return type to ssize_t.
	* gpgme.h (GpgmeDataReadCb): Likewise.
	(gpgme_data_read): Likewise.
	(GpgmeDataSeekCb): Change return type to off_t.
2002-12-06 22:06:25 +00:00
Marcus Brinkmann
1b495c5140 2002-12-04 Marcus Brinkmann <marcus@g10code.de>
* gpgme.h: Add prototype for gpgme_get_key.
	* key.c (gpgme_get_key): New function.
	* verify.c (gpgme_get_sig_key): Rewrite using gpgme_get_key.

	* gpgme.h: Add prototypes for new interfaces
	gpgme_key_sig_get_string_attr and gpgme_key_get_ulong_attr.
	(enum GpgmeAttr): New attribute GPGME_ATTR_SIG_CLASS.
	* gpgme.c (gpgme_set_keylist_mode): Allow GPGME_KEYLIST_MODE_SIGS.
	* key.h (struct certsig_s): New members ALGO, NAME_PART,
	EMAIL_PART, COMMENT_PART, NAME, SIG_STAT and SIG_CLASS.

	* conversion.c (_gpgme_decode_c_string): Add new parameter LEN.
	Use that to determine if allocation is desired or not.
	* util.h: Adjust prototype of _gpgme_decode_c_string.
	* keylist.c (keylist_colon_handler): Adjust caller of
	_gpgme_decode_c_string.

	* key.h (struct gpgme_key_s): New member last_uid.
	* key.c (_gpgme_key_append_name): Rewritten using
	_gpgme_decode_c_string and the last_uid pointer.
	(my_isdigit): Macro removed.
	(ALLOC_CHUNK): Likewise.
	* keylist.c (set_userid_flags): Use last_uid member of KEY.

	* context.h (struct user_id_s): New member last_certsig.
	* key.h: Add prototype for _gpgme_key_add_certsig.
	* key.c (_gpgme_key_add_certsig): New function.
	(set_user_id_part): Move function before _gpgme_key_add_certsig.
	(parse_user_id): Change first argument to SRC, add new arguments
	NAME, EMAIL and COMMENT.  Change code to use these arguments
	instead going through UID.  Move function before
	_gpgme_add_certsig.
	(parse_x509_user_id): Likewise.
	(_gpgme_key_append_name): Adjust arguments to parse_x509_user_id
	and parse_user_id invocation.
	(one_certsig_as_xml): New function.
	(one_uid_as_xml): Print signatures.
	* context.h (struct gpgme_context_s): New member TMP_UID.
	* keylist.c (keylist_colon_handler): Rewritten, implement "sig"
	record entries.

	* key.c (get_certsig): New function.
	(gpgme_key_sig_get_string_attr): Likewise.
	(gpgme_key_sig_get_ulong_attr): Likewise.

	* keylist.c: Include <ctype.h>.
	(my_isdigit): Macro removed.
	(set_mainkey_trust_info): Use isdigit, not my_isdigit.
	(set_userid_flags): Likewise.
	(set_subkey_trust_info): Likewise.
	(set_ownertrust): Likewise.
	(finish_key): Move function up a bit and remove prototype.

	* rungpg.c (gpg_keylist_ext): Correct precedence of signature
	listing mode.
	(gpg_keylist_ext): Implement signature listing mode.
2002-12-04 16:28:34 +00:00
Marcus Brinkmann
7394638cdb Fix spelling of my name. 2002-11-28 20:20:46 +00:00
Marcus Brinkmann
1c66649aad 2002-11-28 Marcus Brinkmann <marcus@g10code.de>
* NEWS: Add note about moving "gpgmeplug" to the "cryptplug"
	package.
	* README: Remove instructions related to "gpgmeplug".
	* configure.ac: Remove enable option "gpgmeplug" and automake
	conditional BUILD_GPGMEPLUG, as well as the status info about it.
	(GPGMEPLUG): Remove variable.
	* Makefile.am (gpgmeplug): Remove variable.
	(SUBDIRS): Remove ${gpgmeplug}.
	* cryptplug.h, gpgme-openpgp.c, gpgmeplug.dox, gpgme-smime.c,
	Makefile.am, gpgmeplug.c, ChangeLog: Files removed.
CVSk: ----------------------------------------------------------------------
2002-11-28 19:39:48 +00:00
Marcus Brinkmann
856c4398c6 2002-11-25 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (_gpgme_gpg_spawn): Do not set parent fds to -1.
	* posix-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead close
	for parent fds.
	* w32-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead
	CloseHandle for parent fds.
2002-11-25 21:12:46 +00:00