Commit Graph

395 Commits

Author SHA1 Message Date
Marcus Brinkmann
197fb96bf7 2005-04-14 Marcus Brinkmann <marcus@g10code.de>
* wait-global.c (gpgme_wait): If no context is found, and we
	should not hang, set *status to 0 and return NULL.
	Reported by Igor Belyi <gpgme@katehok.ac93.org>.
2005-04-14 08:41:12 +00:00
Marcus Brinkmann
669f8728cb 2005-03-24 Marcus Brinkmann <marcus@g10code.de>
* configure.ac (AH_BOTTOM): Removed.

gpgme/
2005-03-24  Marcus Brinkmann  <marcus@g10code.de>

	* data.h (EOPNOTSUPP) [_WIN32]: Remove definition.
	* data.c (EOPNOTSUPP) [HAVE_W32_SYSTEM]: Remove definition.
	(gpgme_data_read, gpgme_data_write, gpgme_data_seek): Return
	ENOSYS instead EOPNOTSUPP.
	* data-compat.c (EOPNOTSUPP) [HAVE_W32_SYSTEM]: Remove definition.
	(gpgme_error_to_errno): Map GPG_ERR_NOT_SUPPORTED
	to ENOSYS.
2005-03-24 13:09:54 +00:00
Marcus Brinkmann
9167a07446 2005-03-24 Marcus Brinkmann <marcus@g10code.de>
* io.h: Rename to ...
	* priv-io.h: ... this.
	* Makefile.am (libgpgme_real_la_SOURCES): Change io.h to priv-io.h.
	* data.c, engine-gpgsm.c, posix-io.c, rungpg.c, version.c,
	w32-io.c, wait-private.c, wait-global.c, wait-user.c, wait.c:
	Change all includes of "io.h" to "priv-io.h"
2005-03-24 13:05:12 +00:00
Werner Koch
65e9122612 * acinclude.m4 (GNUPG_CHECK_VA_COPY): Assume no when cross-compiling.
* Makefile.am (EXTRA_DIST): Include autogen.sh

* autogen.sh: Added the usual code to build for W32 (--build-w32).

* configure.ac: Fixed the mingw32 host string, removed OS/2 stuff.
(HAVE_DRIVE_LETTERS): Removed.
(HAVE_W32_SYSTEM): Added.
(AC_GNU_SOURCE): New to replace the identical AH_VERBATIM.
(AH_BOTTOM): Added.

* w32-util.c (_gpgme_get_gpg_path, _gpgme_get_gpgsm_path): Do not
cast away type checks.

* io.h [W32]: Do not include stdio.h.  If it is needed do it at
the right place.

* data.h [W32]: Removed kludge for EOPNOTSUP.
* data.c, data-compat.c [W32]: Explicitly test for it here.
2005-03-09 16:03:05 +00:00
Timo Schulz
ef0c6c6aee 2005-03-07 Timo Schulz <twoaday@g10code.de>
* gpgme.h: [_WIN32] Removed ssize_t typedef.
        * ath.h: [_WIN32] Added some (dummy) types.
        * io.h: [_WIN32] include stdio.h.
        * data.h: [_WIN32] Define EOPNOTSUPP.
        * w32-io.c [_WIN32] (_gpgme_io_subsystem_init): New.
        * gpgme.c [_WIN32] (gpgme_set_locale): Disabled.
2005-03-09 11:47:21 +00:00
Marcus Brinkmann
862971f4fd 2004-12-12 Marcus Brinkmann <marcus@g10code.de>
* engine.c (_gpgme_set_engine_info): Fix assertion.
2004-12-12 14:58:12 +00:00
Marcus Brinkmann
c008a15cb6 2004-12-11 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Replace ttyname_r if it doesn't exist (and warn in
	that case).

gpgme/
2004-12-11  Marcus Brinkmann  <marcus@g10code.de>

	* util.h [HAVE_CONFIG_H && HAVE_TTYNAME_R] (ttyname_r): Define
	prototype.
	* ttyname_r.c: New file.
2004-12-11 15:48:00 +00:00
Marcus Brinkmann
06fc934f56 2004-12-07 Marcus Brinkmann <marcus@g10code.de>
* README: Refer to COPYING.LESSER and "each file" instead of
	COPYING.
	* COPYING.LESSER: New file.
	* gpgme.spec.in (%doc): Add COPYING.LESSER.
	* acinclude.m4, configure.ac, Makefile.am: Change license to LGPL
	2.1 or later.
	* TODO: Add copyright notice.
	* README.CVS: Likewise.

assuan/
2004-12-07  Marcus Brinkmann  <marcus@g10code.de>

	* README.1st: Add copyright notice.

doc/
2004-12-07  Marcus Brinkmann  <marcus@g10code.de>

	* Makefile.am: Change license to LGPL.
	(gpgme_TEXINFOS): Replace gpl.texi with lesser.texi.

	* gpgme.texi: Change license to LGPL (also for documentation of
	GPGME's license).
	* lesser.texi: New file.
	* gpl.texi: File removed.

gpgme/
2004-12-07  Marcus Brinkmann  <marcus@g10code.de>

	* putc_unlocked.c, funopen.c: I just claim copyright on these
	files and change their license to LGPL, because they are totally
	trivial wrapper functions.
	* isascii.c: Change copyright notice to the one from ctype/ctype.h
	in the GNU C Library (CVS Head 2004-10-10), where isascii is
	defined as a macro doing exactly the same as the function in this
	file.
	* memrchr.c: Update from the GNU C Library (CVS Head 2001-07-06).
	* stpcpy.c: Update from the GNU C Library (CVS Head 2004-10-10).
	* ath.c, ath-compat.c, ath.h, ath-pth.c, ath-pth-compat.c,
	ath-pthread.c, ath-pthread-compat.c, context.h, conversion.c,
	data.c, data-compat.c, data-fd.c, data.h, data-mem.c,
	data-stream.c, data-user.c, debug.c, debug.h, decrypt.c,
	decrypt-verify.c, delete.c, edit.c, encrypt.c, encrypt-sign.c,
	engine-backend.h, engine.c, engine-gpgsm.c, engine.h, error.c,
	export.c, genkey.c, get-env.c, gpgme.c, gpgme.h, import.c, io.h,
	key.c, keylist.c, mkstatus, Makefile.am, ops.h, op-support.c,
	passphrase.c, posix-io.c, posix-sema.c, posix-util.c, progress.c,
	rungpg.c, sema.h, sign.c, signers.c, trust-item.c, trustlist.c,
	util.h, verify.c, version.c, w32-io.c, w32-sema.c, w32-util.c,
	wait.c, wait-global.c, wait.h, wait-private.c, wait-user.c: Change
	license to LGPL.

tests/
2004-12-07  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/mkdemodirs: Add copyright notice.

	* gpgsm/Makefile.am, gpgsm/t-support.h, gpgsm/t-decrypt.c,
	gpgsm/t-encrypt.c, gpgsm/t-export.c, gpgsm/t-genkey.c,
	gpgsm/t-import.c, gpgsm/t-keylist.c, gpgsm/t-sign.c,
	gpgsm/t-verify.c, gpg/Makefile.am, gpg/t-decrypt.c,
	gpg/t-decrypt-verify.c, gpg/t-edit.c, gpg/t-encrypt.c,
	gpg/t-encrypt-sign.c, gpg/t-encrypt-sym.c, gpg/t-eventloop.c,
	gpg/t-export.c, gpg/t-genkey.c, gpg/t-import.c, gpg/t-keylist.c,
	gpg/t-keylist-sig.c, gpg/t-sign.c, gpg/t-signers.c,
	gpg/t-support.h, gpg/t-thread1.c, gpg/t-trustlist.c,
	gpg/t-verify.c, Makefile.am, t-data.c, t-engine-info.c,
	t-version.c: Change license to LGPL.
2004-12-07 21:13:39 +00:00
Marcus Brinkmann
b51c2219ec 2004-12-07 Marcus Brinkmann <marcus@g10code.de>
* libgpgme.vers (GPGME_1.1): New version.
	* engine-backend.h (struct engine_ops): Add argument FILE_NAME to
	member get_version().  Add arguments FILE_NAME and HOME_DIR to
	member new().  Change return type of get_file_name and get_version
	to char *.
	* engine-gpgsm.c (gpgsm_get_version): Change return type to char
	pointer.  Do not cache result.
	(gpgsm_new): Add file_name and home_dir argument, and use them
	instead of the defaults, if set.
	* rungpg.c (struct engine_gpg): New member file_name.
	(gpg_get_version): Change return type to char pointer, and do not
	cache result.
	(gpg_release): Free gpg->file_name.
	(gpg_new): Take new arguments file_name and home_dir.  Set the
	--homedir argument if HOME_DIR is not NULL.  Set gpg->file_name.
	(start): Use gpg->file_name instead _gpgme_get_gpg_path, if set.
	* engine.h (_gpgme_engine_info_copy, _gpgme_engine_info_release):
	New prototypes.
	(_gpgme_engine_new): Change first argument to gpgme_engine_info_t
	info.
	* engine.c: Include <assert.h>.
	(gpgme_get_engine_info): Set *INFO within the lock.  Move
	ENGINE_INFO and ENGINE_INFO_LOCK to ....
	(engine_info, engine_info_lock): ... here.  New static variables.
	(engine_get_version): Add file_name argument to
	get_version invocation.  Change return type to char pointer.
	(gpgme_engine_check_version): Rewritten to free() the return value
	of engine_get_version after using it.
	(_gpgme_engine_info_release): New function.
	(gpgme_get_engine_info): Rewritten.
	(_gpgme_engine_info_copy): New function.
	(_gpgme_set_engine_info): New function.
	(gpgme_set_engine_info): New function.
	(_gpgme_engine_new): Change first argument to gpgme_engine_info_t
	info, and use that.
	* gpgme.h (struct _gpgme_engine_info): Change type of file_name
	and version to char * (remove the const).  New member home_dir.
	(gpgme_set_engine_info, gpgme_ctx_get_engine_info,
	gpgme_ctx_set_engine_info): New prototypes.
	* context.h (struct gpgme_context): New member engine_info.
	* gpgme.c (gpgme_new): Allocate CTX->engine_info.
	(gpgme_release): Deallocate CTX->engine_info.
	(gpgme_ctx_get_engine_info, gpgme_ctx_set_engine_info): New
	functions.
	* op-support.c (_gpgme_op_reset): Look for correct engine info and
	pass it to _gpgme_engine_new.
	* version.c (gpgme_check_version): Adjust to
	_gpgme_compare_versions returning an int.
	(_gpgme_compare_versions): Return an int value, not a const char
	pointer.
	* ops.h (_gpgme_compare_versions): Same for prototype.
2004-12-07 18:25:54 +00:00
Marcus Brinkmann
6af44222ff 2004-10-03 Marcus Brinkmann <marcus@g10code.de>
* verify.c (parse_trust): If no reason is provided, set
	SIG->validity_reason to 0.
	(calc_sig_summary): Set GPGME_SIGSUM_CRL_TOO_OLD if appropriate.
2004-10-22 17:57:56 +00:00
Marcus Brinkmann
8cb3353e48 2004-10-22 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (map_assuan_error): Return 0 if ERR is 0.
	(start): Call map_assuan_error on return value of
	assuan_write_line.
2004-10-22 16:55:16 +00:00
Marcus Brinkmann
5a430dc15f 2004-10-05 Marcus Brinkmann <marcus@g10code.de>
* op-support.c (_gpgme_op_data_lookup): Use char pointer for
	pointer arithmetic.
2004-10-05 15:08:45 +00:00
Marcus Brinkmann
0a0c5718b0 2004-09-30 Marcus Brinkmann <marcus@g10code.de>
* gpgme.m4: Implement the --api-version check.
2004-09-30 01:06:19 +00:00
Marcus Brinkmann
f23da05769 2004-09-30 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (read_status): Move the polling of the output data pipe
	to just before removing the command fd, from just before adding
	it.  This avoids buffering problems.
2004-09-30 00:24:58 +00:00
Marcus Brinkmann
c2f9533955 2004-09-30 Marcus Brinkmann <marcus@g10code.de>
* data.c (_gpgme_data_inbound_handler): Use _gpgme_io_read, not
	read, to improve debug output.
2004-09-30 00:19:22 +00:00
Marcus Brinkmann
f07da294d0 doc/
2004-09-29  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Key Management): Change type of keylist_mode in
	gpgme_key_t to gpgme_keylist_mode_t.

gpgme/
2004-09-29  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h (GPGME_IMPORT_NEW, GPGME_IMPORT_UID, GPGME_IMPORT_SIG,
	GPGME_IMPORT_SUBKEY, GPGME_IMPORT_SECRET,
	(GPGME_KEYLIST_MODE_LOCAL, GPGME_KEYLIST_MODERN_EXTERN,
	GPGME_KEYLIST_MODE_SIGS, GPGME_KEYLIST_MODE_VALIDATE): Change from
	enum to macros.
	(gpgme_keylist_mode_t): Define as unsigned int.
	(gpgme_key_t): Change type of keylist_mode to
	gpgme_keylist_mode_t.
2004-09-28 23:15:39 +00:00
Marcus Brinkmann
8567bed308 2004-09-23 Marcus Brinkmann <marcus@g10code.de>
* data.c (_gpgme_data_outbound_handler): Close the file descriptor
	if we get an EPIPE.
2004-09-23 19:23:33 +00:00
Marcus Brinkmann
6ec821677e 2004-09-23 Marcus Brinkmann <marcus@g10code.de>
* data-stream.c (stream_seek): Call ftello and return the current
	offset.
	* data.h (struct gpgme_data): Change type of data.mem.offset to
	off_t.
	* data.c (gpgme_data_seek): Check dh->cbs->seek callback, not read
	callback.  If SEEK_CUR, adjust the offset by the pending buffer
	size.  Clear pending buffer on success.
2004-09-23 17:54:26 +00:00
Marcus Brinkmann
e3c8b346a4 2004-09-14 Marcus Brinkmann <marcus@g10code.de>
* gpgme.m4: Add copyright notice.
2004-09-14 18:40:35 +00:00
Marcus Brinkmann
4ea2c7e0cb 2004-08-18 Marcus Brinkmann <marcus@g10code.de>
* passphrase.c (_gpgme_passphrase_status_handler): Always run the
	status handler.
2004-08-18 00:48:50 +00:00
Marcus Brinkmann
9208aad23a 2004-08-17 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (build_argv): Use --no-sk-comment, not --no-comment.
2004-08-17 21:16:12 +00:00
Marcus Brinkmann
9ae8a86756 2004-06-23 Marcus Brinkmann <marcus@g10code.de>
* key.c (_gpgme_key_append_name): Make sure tail points to the
        byte following the uid.
        (_gpgme_key_add_sig): Likewise.  Don't use calloc, but malloc and
        memset.
2004-06-23 21:15:21 +00:00
Marcus Brinkmann
ad3a0629ef 2004-06-02 Marcus Brinkmann <marcus@g10code.de>
* libgpgme.vers: Remove C-style comment, which is not supported by
	older binutils.
2004-06-02 14:18:03 +00:00
Marcus Brinkmann
82edb12c98 2004-05-21 Marcus Brinkmann <marcus@g10code.de>
* configure.ac (GPGME_CONFIG_API_VERSION): New variable,
	substitute it.

gpgme/
2004-05-21  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme-config.in (Options): Support --api-version.
2004-05-21 19:49:38 +00:00
Marcus Brinkmann
200addff8d 2004-05-21 Marcus Brinkmann <marcus@g10code.de>
* libgpgme.vers: List all gpgme symbols under version GPGME_1.0.
2004-05-21 19:43:39 +00:00
Marcus Brinkmann
bb6da7f8ff 2004-05-21 Marcus Brinkmann <marcus@g10code.de>
* decrypt.c (_gpgme_decrypt_status_handler): Fix last change.
	* verify.c (parse_error): Likewise.
2004-05-21 19:17:27 +00:00
Marcus Brinkmann
138df322be 2004-05-21 Marcus Brinkmann <marcus@g10code.de>
* verify.c (parse_error): Do not skip location of where token.
2004-05-21 19:15:06 +00:00
Marcus Brinkmann
d37e43d6b6 2004-05-21 Marcus Brinkmann <marcus@g10code.de>
* gpgme.h (gpgme_status_code_t): Add GPGME_STATUS_REVKEYSIG.
	* verify.c (_gpgme_verify_status_handler): Add handling of
	GPGME_STATUS_REVKEYSIG.
	(parse_trust): Likewise.
2004-05-21 16:36:28 +00:00
Marcus Brinkmann
a53e807505 doc/
2004-05-21  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Decrypt): Add note about new field wrong_key_usage
	of gpgme_decrypt_result_t.

gpgme/
2004-05-21  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h (struct _gpgme_decrypt_result): New fields
	wrong_key_usage and _unused.
	* decrypt.c (_gpgme_decrypt_status_handler): Don't skip over
	character after a matched string, as in a protocol error this
	could skip over the trailing binary zero.
	Handle decrypt.keyusage error notifications.
2004-05-21 15:51:53 +00:00
Marcus Brinkmann
c6ef76e79c doc/
2004-05-21  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Key Management): Add note about new field
	keylist_mode of gpgme_key_t.

gpgme/
2004-05-21  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h (struct _gpgme_key): New member keylist_mode.
	* keylist.c (keylist_colon_handler): Set the keylist_mode of KEY.
2004-05-21 15:15:21 +00:00
Marcus Brinkmann
9b703534eb 2004-04-29 Marcus Brinkmann <marcus@g10code.de>
* gpgme.h (struct _gpgme_signature): Change member WRONG_KEY_USAGE
	to unsigned int.  Same for member _unused.
2004-04-29 21:19:43 +00:00
Marcus Brinkmann
77e113ba86 2004-04-29 Marcus Brinkmann <marcus@g10code.de>
* keylist.c (set_mainkey_trust_info): Rewritten.
	(set_subkey_capability): Handle 'd' (disabled).
	(set_mainkey_capability): Rewritten.
2004-04-29 10:55:50 +00:00
Marcus Brinkmann
32c1098067 2004-04-22 Marcus Brinkmann <marcus@g10code.de>
* gpgme.m4: Quote first argument to AC_DEFUN.
2004-04-22 18:23:56 +00:00
Werner Koch
23da302bf3 (gpgme_key_unref): Allow passing NULL like free does.
The rule of least surprise.
2004-04-21 18:14:12 +00:00
Werner Koch
238fc52726 (prepare_new_sig, _gpgme_verify_status_handler): Remove
unused result.signatures items.
2004-04-15 15:58:08 +00:00
Werner Koch
7d53746ea6 (gpgme_get_key): Return an error if FPR is NULL. 2004-04-15 15:18:30 +00:00
Werner Koch
505ee6022f * verify.c (_gpgme_verify_status_handler): Ignore the error status
if we can't process it.
* decrypt-verify.c (decrypt_verify_status_handler): Backed out
yesterday's hack.  It is not any longer required.
2004-04-08 09:53:01 +00:00
Werner Koch
4999b43657 (decrypt_verify_status_handler): Hack to cope
with meaningless error codes from the verify status function.
2004-04-07 16:17:27 +00:00
Werner Koch
289df64e35 * verify.c (parse_error): Compare only the last part of the where
token.
(prepare_new_sig): New.
(parse_new_sig): Use prepare_new_sig when required.
(_gpgme_verify_status_handler): Handle STATUS_NEWSIG.

* engine-gpgsm.c (gpgsm_keylist_ext): Send with-validation
option.  Fixed pattern construction.
(status_handler): Add debugging output.
2004-04-05 18:39:28 +00:00
Werner Koch
cd8e200bf9 (parse_error): Compare only the last part of the where
token.
2004-04-05 13:49:29 +00:00
Werner Koch
f8411c66bb (gpgsm_keylist_ext): Send with-validation
option.  Fixed pattern construction.
2004-04-05 11:53:55 +00:00
Marcus Brinkmann
4dff5b24a6 2004-03-23 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (gpgsm_new): Protect _only_ tty related code with
	isatty().  Submitted by Bernhard Herzog.
2004-03-23 18:10:13 +00:00
Marcus Brinkmann
c9f0584081 *** empty log message *** 2004-03-11 14:31:20 +00:00
Marcus Brinkmann
f8ae6eee51 2004-03-11 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (gpg_cancel): Set GPG->fd_data_map to NULL after
	releasing it.
2004-03-11 13:54:27 +00:00
Marcus Brinkmann
fbe2e14a09 2004-03-11 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (gpgsm_cancel): Only call assuan_disconnect if
	GPGSM->assuan_ctx is not NULL.  Set it to NULL afterwards.
2004-03-10 23:52:18 +00:00
Marcus Brinkmann
9db624b26e 2004-03-07 Marcus Brinkmann <marcus@g10code.de>
* gpgme-config.in: Do not emit include and lib directory for
	prefix "/usr" or "".
2004-03-07 17:41:43 +00:00
Werner Koch
71b4406323 * engine-gpgsm.c (gpgsm_export_ext): Properly insert a space
beween patterns.

* gpgsm/t-export.c (main): Also check exporting 2 certificates.
2004-03-03 15:15:41 +00:00
Marcus Brinkmann
398ee40a31 2004-02-25 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (gpg_cancel): New function.
	(gpg_release): Call it here.
	(_gpgme_engine_ops_gpg): Add it here.
	* engine-gpgsm.c (gpgsm_cancel): Fix last change.
2004-02-24 23:15:33 +00:00
Marcus Brinkmann
360107b9c1 doc/
2004-02-24  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (cancellation): New section.

gpgme/
2004-02-24  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.c (gpgme_cancel): New function.
	* engine-backend.h (struct engine_ops): New member cancel.
	* engine.h (_gpgme_engine_cancel): New prototype.
	* engine.c (_gpgme_engine_cancel): New function.
	* engine-gpgsm.c: Add new member cancel.
	(gpgsm_cancel): New function.
	(gpgsm_release): Use it.
	* rungpg.c: Add new member cancel.
2004-02-24 23:08:48 +00:00
Werner Koch
34c9c26efd * gpgme.texi (Key Listing Mode): Doc KEYLIST_MODE_VALIDATE.
* gpgme.h: Add GPGME_KEYLIST_MODE_VALIDATE.
* engine-gpgsm.c (gpgsm_keylist): Send this to gpgsm.
2004-02-17 15:27:42 +00:00