Commit Graph

125 Commits

Author SHA1 Message Date
Marcus Brinkmann
38c5950991 2008-01-10 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-gpgconf.c (main): Allow for dirmngr not to be available.
2008-01-10 04:54:16 +00:00
Marcus Brinkmann
ade61e1311 2008-01-10 Marcus Brinkmann <marcus@g10code.de>
* gpg/Makefile.am (./gpg-agent.conf): Correct pinentry path.
2008-01-10 04:40:25 +00:00
Marcus Brinkmann
25dccf5897 2008-01-10 Marcus Brinkmann <marcus@g10code.de>
* gpg/pinentry: New file.
	* gpg/Makefile.am (DISTCLEANFILES, all-local): Add gpg-agent.conf
	(./gpg-agent.conf): New target.
	(EXTRA_DIST): Add pinentry.
2008-01-10 04:33:34 +00:00
Marcus Brinkmann
62a1429a5c 2008-01-10 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-gpgconf.c (main): Exit early if compiled without gpgconf.
2008-01-10 02:13:18 +00:00
Marcus Brinkmann
4028a0f390 2008-01-04 Marcus Brinkmann <marcus@g10code.de>
* gpg/Makefile.am (CLEANFILES): Add pubring.kbx and dirmngr.conf.
2008-01-04 14:40:45 +00:00
Marcus Brinkmann
19025d7918 2008-01-04 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Support gpgconf.

gpgme/
2008-01-04  Marcus Brinkmann  <marcus@g10code.de>

	* Makefile.am (gpgconf_components): New variable.
	(main_sources): Add gpgconf.c.
	* gpgme.h (gpgme_protocol_t): New protocol GPGME_PROTOCOL_GPGCONF.
	(gpgme_conf_level_t, gpgme_conf_type_t, gpgme_conf_arg_t)
	(gpgme_conf_opt_t, gpgme_conf_comp_t, gpgme_conf_arg_new)
	(gpgme_conf_arg_release, gpgme_conf_opt_change)
	(gpgme_conf_release, gpgme_op_conf_load, gpgme_op_conf_save): New
	types.
	* gpgconf.c, engine-gpgconf.c: New files.
	* engine.h: (_gpgme_engine_op_conf_load,
	(_gpgme_engine_op_conf_save): New prototypes.
	* op-support.c (_gpgme_op_reset): Ignore not implemented locale
	function.
	* posix-util.c (_gpgme_get_gpgconf_path): New function.
	* w32-util.c (_gpgme_get_gpgconf_path): New function.
	* engine-gpgsm.c:
	(_gpgme_engine_ops_gpgsm): Add stubs for conf_load and conf_save.
	* rungpg.c:
	(_gpgme_engine_ops_gpg): Add stubs for conf_load and conf_save.
	* gpgme.def: Add new gpgconf related interfaces.
	* libgpgme.vers: Likewise.
	* util.h (_gpgme_get_gpgconf_path): New prototype.
	* gpgme.h (gpgme_protocol_t): Add GPGME_PROTOCOL_GPGCONF.
	* engine-backend.h (_gpgme_engine_ops_gpgconf): New prototype.
	(struct engine_ops): Add members for conf_load and conf_save.
	* engine.c (engine_ops): Add _gpgme_engine_ops_gpgconf.
	(_gpgme_engine_op_conf_load,
	(_gpgme_engine_op_conf_save): New functions.
	(gpgme_get_engine_info): Allow protocol GPGME_PROTOCOL_GPGCONF.

tests/
2008-01-04  Marcus Brinkmann  <marcus@g10code.de>

	* Makefile.am (TESTS_ENVIRONMENT): Use absolute path for
	GNUPGHOME.
	* gpg/Makefile.am (TESTS_ENVIRONMENT): Use absolute path for
	GNUPGHOME.
	* gpgsm/Makefile.am (TESTS_ENVIRONMENT): Use absolute path for
	GNUPGHOME.
	* gpg/Makefile.am (TESTS): Add t-gpgconf.
	t-gpgconf.c: New file.
2008-01-04 14:31:15 +00:00
Marcus Brinkmann
f6ebf8638f 2007-11-23 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/t-verify.c (show_auditlog): Check for GPG_ERR_ASS_UNKNOWN_CMD.
2007-11-23 17:25:11 +00:00
Werner Koch
c07011580a Make getauditlog work. For now only when configured with --enable-fd-passing. 2007-11-23 13:07:04 +00:00
Marcus Brinkmann
37ac53e74c 2007-09-27 Marcus Brinkmann <marcus@g10code.de>
* assuan-pipe-connect.c (pipe_connect_gpgme): Do not close process
	handle here.  Use this function also on Unix systems.

gpgme/
2007-09-27  Marcus Brinkmann  <marcus@g10code.de>

	* w32-glib-io.c (_gpgme_io_spawn),
	w32-qt-io.cpp (_gpgme_io_spawn), w32-io.c (_gpgme_io_spawn): Close
	the process handle, return 0.

tests/
2007-09-27  Marcus Brinkmann  <marcus@g10code.de>

	* t-engine-info.c (check_engine_info): Fix debug output.
	* gpg/Makefile.am (tests_unix): New variable.
	(TESTS): Use it.
	* gpg/t-support.h (passphrase_cb) [HAVE_W32_SYSTEM]: Use WriteFile instead of write.
	* gpg/t-wait.c [HAVE_W32_SYSTEM]: Define sleep as _sleep.
2007-09-27 13:01:54 +00:00
Marcus Brinkmann
5f726f4af7 2007-09-14 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/t-verify.c (main): Release TEXT and SIG.
2007-09-13 22:40:22 +00:00
Marcus Brinkmann
1ef14744a2 2007-07-12 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/Makefile.am (key_id): Change := into =.
2007-07-12 18:26:51 +00:00
Werner Koch
906da085cf Changes for W32 2007-07-12 15:25:20 +00:00
Werner Koch
1786019d68 Detect and bailo out on double plaintext messages. 2007-02-26 10:36:08 +00:00
Marcus Brinkmann
68fc3075c3 2006-12-02 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/t-keylist.c (main): Skip unknown keys.  Newer versions of
	GPGSM import more keys than older ones.
2006-12-02 22:47:02 +00:00
Werner Koch
a1e484f9ea * Fixed a bug in that the fingerprints of subkeys are not available.
* Clarified usage of the SECRET flag in key listings.  It is now
   reset for stub keys.
2005-12-06 16:30:21 +00:00
Werner Koch
deae5fa5a2 Add a test for expired subkeys 2005-10-19 08:23:23 +00:00
Marcus Brinkmann
81735c3e4c 2005-10-07 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/t-keylist.c (main): Allow for an email address as a second
	uid.
2005-10-07 13:34:22 +00:00
Marcus Brinkmann
2513557bf5 2005-10-07 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-sig-notation.c: Change critical notation to something
	GnuPG understands.
2005-10-06 23:28:50 +00:00
Marcus Brinkmann
bda9541b51 2005-10-01 Marcus Brinkmann <marcus@g10code.de>
* gpg/Makefile.am (EXTRA_DIST): Remove gpg.conf.
	(DISTCLEANFILES): Add gpg.conf.
	(all-local): Add gpg.conf.
	(./gpg.conf): New target.
	* gpg/gpg.conf: Remove file.
2005-10-01 20:41:41 +00:00
Marcus Brinkmann
efb2ed5a78 2005-10-01 Marcus Brinkmann <marcus@g10code.de>
* gpg/Makefile.am (EXTRA_DIST): Add gpg.conf.
2005-10-01 19:22:16 +00:00
Marcus Brinkmann
b3304042aa doc/
2005-10-01  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Signature Notation Data): New section.
	(Verify): Added more about the notation data structure.

gpgme/
2005-10-01  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.def: Add gpgme_data_set_file_name,
	gpgme_data_get_file_name, gpgme_sig_notation_clear,
	gpgme_sig_notation_add and gpgme_sig_notation_get.
	* libgpgme.vers: Add gpgme_sig_notation_clear,
	gpgme_sig_notation_add and gpgme_sig_notation_get.
	* Makefile.am (libgpgme_real_la_SOURCES): Add sig-notation.c.
	* context.h (struct gpgme_context): New field sig_notations.
	* gpgme.h (struct _gpgme_sig_notation): New member value_len and
	critical.
	(GPGME_SIG_NOTATION_CRITICAL): New symbol.
	(gpgme_sig_notation_flags_t): New type.
	(gpgme_sig_notation_add, gpgme_sig_notation_clear,
	gpgme_sig_notation_get): New prototypes.
	* ops.h (_gpgme_sig_notation_create, _gpgme_sig_notation_free):
	New prototypes.
	* sig-notation.c (_gpgme_sig_notation_free): New file.
	* verify.c (parse_notation): Use support functions.
	(release_op_data): Likewise.
	* rungpg.c (append_args_from_sig_notations): New function.
	(gpg_encrypt_sign, gpg_sign): Call it.


tests/
2005-10-01  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/Makefile.am (TESTS): Add t-sig-notation.
	* gpg/t-sig-notation.c (check_result): New file.
	* gpg/t-verify.c (check_result): Also check the length of the
	notation data.
	* gpg/gpg.conf: New file.
2005-10-01 02:33:35 +00:00
Marcus Brinkmann
c6ee58ef55 doc/
2005-09-30  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Data Buffer I/O Operations, Data Buffer Meta-Data):
	New subsections.

gpgme/
2005-09-30  Marcus Brinkmann  <marcus@g10code.de>

	* data.h (struct gpgme_data): New member file_name.
	* data.c (gpgme_data_set_filename): New function.
	(_gpgme_data_release): Free DH->filename if necessary.
	(gpgme_data_get_filename): New function.
	* rungpg.c (gpg_encrypt): Set filename option.
	(gpg_encrypt_sign): Likewise.
	(gpg_sign): Likewise.
	* libgpgme.vers (GPGME_1.1): Add gpgme_data_set_file_name and
	gpgme_data_get_file_name.

tests/
2005-09-30  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/Makefile.am (TESTS): Add t-filename.
	* gpg/t-filename.c: New file.
2005-09-30 14:17:47 +00:00
Werner Koch
8a1ce95287 Boosted performance of w32 I/O 2005-09-23 13:29:04 +00:00
Marcus Brinkmann
172a8df25f gpgme/
2005-06-03  Marcus Brinkmann  <marcus@g10code.de>

	* wait-global.c (gpgme_wait): Break out of the fd processing loop
	after an error.
	Reported by Igor Belyi <gpgme@katehok.ac93.org>.

tests/
2005-06-03  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/Makefile.am (TESTS): Add t-wait.
	* gpg/t-wait.c (main): New test.
2005-06-02 22:59:41 +00:00
Marcus Brinkmann
71775ad8fc 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
6d65ae9632 2004-08-17 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/t-keylist.c (struct): Add new fields VALIDITY and
	KEY_LENGTH.
	(main): Use them.
	* gpgsm/t-import.c (check_result): New argument total_stat.
	(main): Pass this argument.  Reduce number of total considered
	keys to 1 for the second test.
2004-08-17 21:13:20 +00:00
Werner Koch
edf5d2bd31 * gpgme.h: Add GPGME_STATUS_NEWSIG.
* gpgsm/Makefile.am: Changed the faked system time to 20011213T12000.
2004-04-05 18:40:10 +00:00
Marcus Brinkmann
af3c09d9b2 2004-03-07 Marcus Brinkmann <marcus@g10code.de>
* configure.ac (NEED_GPGSM_VERSION): Bump up to 1.9.6.

2004-03-07  Marcus Brinkmann  <marcus@g10code.de>

	* gpgsm/t-keylist.c: Add chain IDs.
2004-03-07 22:49:42 +00:00
Werner Koch
e65396c735 * 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
Werner Koch
91d3e5aa57 * gpgsm/t-import.c (check_result): gpgsm does now return info in
the result->imports; adjust for that.

* gpgsm/Makefile.am (TESTS_ENVIRONMENT): Reset the GPG_AGENT_INFO.

* gpg/t-keylist-sig.c (main): s/class/sig_class/.
* gpg/t-signers.c (check_result): Ditto.
* gpg/t-sign.c (check_result): Ditto.
* gpg/t-encrypt-sign.c (check_result): Ditto.
* gpgsm/t-sign.c (check_result): Ditto.
2004-02-17 17:26:20 +00:00
Werner Koch
215da10c1c About to release 0.4.4:
* configure.ac: Bumbed LT_Revision; now at C12/A1/R1.
(NEED_GPGSM_VERSION): Set to 1.9.3.

* sign.c: Include util.h for prototype of _gpgme_parse_timestamp.

* gpg/t-keylist-sig.c (main): Temporary disabled one test due top
gpg 1.3.4 problems.
* gpg/t-import.c (check_result): Likewise.
2004-01-12 13:28:36 +00:00
Werner Koch
82cb03cc83 * gpg/t-support.h (DIM): Added.
* gpg/t-verify.c (check_result): Rewrote test for notations
because the order of notaions is not guaranteed.

* gpgsm/t-support.h (fail_if_err): Also print the numeric values.
2003-11-19 15:15:33 +00:00
Marcus Brinkmann
91cc459641 2003-10-06 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-eventloop.c: Include <sys/types.h> for old systems.
2003-10-06 19:46:55 +00:00
Marcus Brinkmann
638c25eda4 2003-10-06 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/Makefile.am (DISTCLEANFILES): Add random_seed.
2003-10-06 19:33:05 +00:00
Marcus Brinkmann
0d0378a200 doc/
2003-10-06  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Signal Handling): New section.

gpgme/
2003-10-06  Marcus Brinkmann  <marcus@g10code.de>

	* io.h (_gpgme_io_subsystem_init): New prototype.
	* posix-io.c (_gpgme_io_subsystem_init): Add function.
	(_gpgme_io_spawn): Do not fixup signal handler here.
	* version.c (do_subsystem_inits): Call _gpgme_io_subsystem_init.

tests/
2003-10-06  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/t-thread1.c (thread_one): Do not call initialize_gpgme.
	Likewise.
2003-10-06 16:17:13 +00:00
Marcus Brinkmann
b4473cfffd doc/
2003-09-14  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Multi Threading): Correct documentation on memory
	synchronization requirement.

tests/
2003-09-14  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/t-thread1.c (main): Call init_gpgme here.
	(initialize_gpgme): Function removed.
2003-09-14 14:48:48 +00:00
Marcus Brinkmann
0a952a59b6 2003-09-14 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-thread1.c: New file.
	* gpg/Makefile.am (TESTS): Add t-thread1.c.
	(t_thread1_LDADD): New variable.
	(LDADD): Remove GPG Error lib.
	* gpgsm/Makefile.am (LDADD): Likewise.
2003-09-14 01:32:41 +00:00
Marcus Brinkmann
f8867f2707 2003-09-14 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-import.c (main): Likewise.
	* gpg/t-keylist-sig.c (main): Likewise.
	* gpg/t-keylist.c (main): Likewise.
	* gpg/t-sign.c (main): Likewise.
	* gpg/t-signers.c (main): Likewise.
	* gpg/t-trustlist.c (main): Likewise.
	* gpgsm/t-support.h: Include <stdlib.h> and <locale.h>.
	(init_gpgme): New function.
	* gpg/t-support.h: Likewise.
	* gpgsm/t-verify.c (main): Call init_gpgme.
	* gpgsm/t-decrypt.c (main): Likewise.
	* gpgsm/t-encrypt.c (main): Likewise.
	* gpgsm/t-export.c (main): Likewise.
	* gpgsm/t-genkey.c (main): Likewise.
	* gpgsm/t-import.c (main): Likewise.
	* gpgsm/t-keylist.c (main): Likewise.
	* gpgsm/t-sign.c (main): Likewise.
	* gpg/t-verify.c (main): Call init_gpgme.
	* gpg/t-decrypt-verify.c (main): Likewise.
	* gpg/t-decrypt.c (main): Likewise.
	* gpg/t-edit.c (main): Likewise.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpg/t-encrypt-sym.c (main): Likewise.
	* gpg/t-encrypt.c (main): Likewise.
	* gpg/t-eventloop.c (main): Likewise.
	* gpg/t-export.c (main): Likewise.
	* gpg/t-genkey.c (main): Likewise.
2003-09-14 00:30:53 +00:00
Marcus Brinkmann
5231aa6a2a 2003-08-14 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-sign.c (check_result): Change output format for signature
	class to unsigned int.
	* gpg/t-signers.c (check_result): Likewise.
	* gpg/t-encrypt-sign.c (check_result): Likewise.
	* gpgsm/t-sign.c (check_result): Likewise.
2003-09-02 22:00:37 +00:00
Marcus Brinkmann
694e2a8041 doc/
2003-08-14  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Creating a Signature): Change type of member class
	to unsigned int.

gpgme/
2003-08-14  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h (struct _gpgme_new_signature): Rename member CLASS to
	_OBSOLETE_CLASS, add member CLASS with type unsigned int.
	* sign.c (parse_sig_created): Also set SIG->_unused_class for
	backward compatibility.

tests/
2003-08-14  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/t-sign.c (check_result): Change output format for signature
	class to unsigned int.
2003-08-14 17:32:18 +00:00
Marcus Brinkmann
51c384409e 2003-07-31 Marcus Brinkmann <marcus@g10code.de>
* gpg/t-verify.c (check_result): Change type of SUMMARY to
	unsigned int.
	* gpg/t-decrypt-verify.c (check_verify_result): Likewise.
	* gpg/t-keylist-sig.c (keys): Change type of member CLASS to
	unsigned int.
	* t-data.c (read_cb): Change type of AMOUNT to unsigned int.
	* t-version.c (version): Remove unused variable.
2003-07-31 15:44:32 +00:00
Marcus Brinkmann
ade276f81e 2003-07-22 Marcus Brinkmann <marcus@g10code.de>
* Makefile.am (AM_CPPFLAGS): New variable.
	(LDADD): Add @GPG_ERROR_LIBS@.
	* gpg/Makefile.am (AM_CPPFLAGS): New variable.
	(LDADD): Add @GPG_ERROR_LIBS@.
	* gpgsm/Makefile.am (AM_CPPFLAGS): New variable.
	(LDADD): Add @GPG_ERROR_LIBS@.
2003-07-22 11:40:48 +00:00
Marcus Brinkmann
02536bb72b doc/
2003-06-06  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi: Change error codes to GPG_ERR_* variants.
	(Error Handling): Rewritten.

gpgme/
2003-06-05  Marcus Brinkmann  <marcus@g10code.de>

	Everywhere: Use libgpg-error error codes.

	* Makefile.am (EXTRA_DIST): Remove mkerrors.
	(BUILT_SOURCES): Remove errors.c.
	(MOSTLYCLEANFILES): Likewise.
	(libgpgme_la_SOURCES): Likewise.  Add error.c.
	(errors.c): Remove target.
	* mkerrors: File removed.
	* error.c: New file.

	* gpgme.h (gpgme_error_t): Change to type gpg_error_t.
	(gpgme_err_code_t, gpgme_err_source_t): New types.
	(gpgme_err_code, gpgme_err_source, gpgme_error, gpgme_err_make):
	New static inline functions.
	(gpgme_strsource, gpgme_err_code_from_errno,
	gpgme_err_code_to_errno, gpgme_err_make_from_errno,
	gpgme_error_from_errno): New prototypes.

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

	Everywhere: Use libgpg-error error codes.

	* gpg/Makefile.am (noinst_HEADERS): New variable.
	* gpg/t-support.h: New file.
	* gpgsm/Makefile.am (noinst_HEADERS): New variable.
	* gpgsm/t-support.h: New file.
2003-06-05 23:20:29 +00:00
Marcus Brinkmann
8f8c78d534 doc/
2003-05-29  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Exporting Keys): Change and document prototypes.
	Add new gpgme_op_export_ext and gpgme_op_export_ext_start
	variants.
	(Selecting Recipients): Section removed.
	(Encrypting a Plaintext): Change prototypes and document the
	changes.

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

	* gpgme.h (gpgme_op_export_start): Change second arg to const char *.
	(gpgme_op_export): Likewise.
	(gpgme_op_export_ext_start): New prototype.
	(gpgme_op_export_ext): Likewise.
	* engine.h: Likewise for _gpgme_engine_op_export and
	_gpgme_engine_op_export_ext.
	* engine-backend.h (struct engine_ops): Change second argument of
	prototype of export to const char *, and add reserverd int as
	third argument.  Add prototype for export_ext.
	* engine.c (_gpgme_engine_op_export_ext): New function.
	(_gpgme_engine_op_export): Change second argument of prototype of
	export to const char *, and add reserverd int as third argument.
	* rungpg.c (gpg_export): Change second argument of prototype of
	export to const char *, and add reserverd int as third argument.
	(gpg_export_ext): New function.
	(gpg_keylist_ext): Break loop at error.
	(_gpgme_engine_ops_gpg): Add gpg_export_ext.
	* engine-gpgsm.c (gpgsm_export): Change second argument of
	prototype of export to const char *, and add reserverd int as
	third argument.
	(gpgsm_export_ext): New function.
	(_gpgme_engine_ops_gpgsm): Add gpgsm_export_ext.
	* export.c (export_start): Change second argument of prototype of
	export to const char *, and add reserverd int as third argument.
	(gpgme_op_export_start): Likewise.
	(export_ext_start): New function.
	(gpgme_op_export_ext_start): Likewise.
	(gpgme_op_export_ext): Likewise.

	* gpgme.h (gpgme_keylist_mode_t): New type for anonymous enum.
	(gpgme_sigsum_t): New type for anonymous enum.

	* encrypt-sign.c (encrypt_sign_start): Check for errors earlier,
	and return an error if RECP is not set.

	* Makefile.am (libgpgme_la_SOURCES): Remove user-id.c.
	* user-id.c: Remove file.
	* ops.h: Remove prototype for _gpgme_user_ids_all_valid.
	* gpgme.h (gpgme_encrypt_flags_t): New type.
	(gpgme_op_encrypt_start): Change second parameter to type
	gpgme_key_t[], and add third parameter.
	(gpgme_op_encrypt): Likewise.
	(gpgme_op_encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign): Likewise.
	* encrypt.c (encrypt_start): Likewise.
	(gpgme_op_encrypt_start): Likewise.
	(gpgme_op_encrypt): Likewise.  Pass flags to engine.
	* encrypt-sign.c (encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign): Likewise.
	* engine-backend.h (struct engine_ops): Likewise for prototypes of
	encrypt and encrypt_sign.
	* engine.h: Likewise for prototypes of _gpgme_engine_op_encrypt
	and _gpgme_engine_op_encrypt_sign.
	* engine.c (_gpgme_engine_op_encrypt): Likewise.
	(_gpgme_engine_op_encrypt_sign): Likewise.
	* rungpg.c (gpg_encrypt): Likewise.
	(gpg_encrypt_sign): Likewise.
	* rungpg.c (gpg_encrypt): Check flags for always trust option.
	* engine-gpgsm.c (gpgsm_encrypt): Likewise.
	(set_recipients): Rewritten to use keys instead user IDs.
	* rungpg.c (append_args_from_recipients): Rewritten to use keys
	instead user IDs.
	* encrypt.c (_gpgme_encrypt_status_handler): Change errors
	returned to GPGME_Invalid_Key and GPGME_General_Error.

tests/
2003-05-29  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/t-encrypt-sym.c (main): Adapt to new syntax.
	* gpg/t-encrypt.c (main): Likewise.
	* gpg/t-eventloop.c (main): Likewise.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpgsm/t-export.c (main): Likewise.
	* gpgsm/t-encrypt.c (main): Likewise.
2003-05-29 03:21:02 +00:00
Marcus Brinkmann
92e9e8dd3a 2003-05-28 Marcus Brinkmann <marcus@g10code.de>
* gpgsm/t-encrypt.c (main): Likewise.
	* gpgsm/t-export.c (main): Likewise.
2003-05-28 01:50:15 +00:00
Marcus Brinkmann
bade4a32b5 doc/
2003-05-28  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Exporting Keys): Change argument type from
	gpgme_recipient_t to gpgme_user_id_t.
	(Encrypting a Plaintext): Likewise.
	(Selecting Recipients): Rewritten.

gpgme/
2003-05-28  Marcus Brinkmann  <marcus@g10code.de>

	* Makefile.am (libgpgme_la_SOURCES): Remove recipient.c, add
	user-id.c.
	* gpgme.h (gpgme_recipients_t): Removed.
	(gpgme_recipients_new, gpgme_recipients_release,
	gpgme_recipients_add_name,
	gpgme_recipients_add_name_with_validity, gpgme_recipients_count,
	gpgme_recipients_enum_open, gpgme_recipients_enum_read,
	gpgme_recipients_enum_close): Removed.
	(gpgme_op_encrypt, gpgme_op_encrypt_start, gpgme_op_encrypt_sign,
	gpgme_op_encrypt_sign_start, gpgme_op_export_start,
	gpgme_op_export): Change second argument to gpgme_user_id_t.
	(gpgme_user_ids_release): New prototype.
	(gpgme_user_ids_append): Likewise.
	* ops.h (_gpgme_recipients_all_valid): Remove.
	(_gpgme_user_ids_all_valid): Add.
	* context.h (struct gpgme_recipients): Removed.
	* user-id.c: New file.
	* recipient.c: Removed file.
	* rungpg.c (append_args_from_recipients): Change last arg to
	gpgme_user_id_t.  Reimplement.
	(gpg_encrypt): Change second arg to gpgme_user_id_t.
	(gpg_encrypt_sign): Likewise.
	(gpg_export): Likewise.  Rewrite user ID list code.
	* engine.c (_gpgme_engine_op_encrypt): Change second arg to
	gpgme_user_id_t.
	(_gpgme_engine_op_encrypt_sign): Likewise.
	(_gpgme_engine_op_export): Likewise.
	* engine.h (_gpgme_engine_op_encrypt, _gpgme_engine_op_encrypt_sign,
	_gpgme_engine_op_export): Likewise.
	* engine-gpgsm.c (set_recipients): Likewise.  Rewrite loop code.
	(gpgsm_encrypt): Likewise.
	(gpgsm_export): Likewise.
	* engine-backend.h (struct engine_ops): Likewise for members
	ENCRYPT, ENCRYPT_SIGN and EXPORT.
	* export.c (export_start, gpgme_op_export_start, gpgme_op_export):
	Likewise.
	* encrypt.c (encrypt_start): Likewise.  Don't check for count of
	recipients.
	(gpgme_op_encrypt_start): Likewise.
	(gpgme_op_encrypt): Likewise.
	* encrypt-sign.c (encrypt_sign_start): Likewise.
	(gpgme_op_encrypt_sign): Likewise.
	(gpgme_op_encrypt_sign_start): Likewise.

tests/
2003-05-28  Marcus Brinkmann  <marcus@g10code.de>

	* gpg/t-eventloop.c (main): Rewrite recipient management.
	* gpg/t-encrypt-sign.c (main): Likewise.
	* gpg/t-encrypt.c (main): Likewise.
	* gpg/t-export.c (main): Likewise.
2003-05-28 01:15:38 +00:00
Marcus Brinkmann
64b0e7004f Fix last changes. 2003-05-27 08:31:33 +00:00
Marcus Brinkmann
0be6fec1e2 2003-05-27 Marcus Brinkmann <marcus@g10code.de>
* gpg/Makefile.am (TESTS): Order t-keylist and t-keylist-sig after
	t-import.
	* gpg/t-edit.c (edit_fnc): Work around gpg 1.2.2 bug by resetting
	primary uid after setting expiration date.
	* gpg/t-keylist.c: Change order of user IDs.
	* gpg/t-keylist-sig.c: Likewise.
	* gpg/t-import.c: Add support for gpg in CVS.
2003-05-27 05:07:19 +00:00
Marcus Brinkmann
0a1940070d 2003-05-27 Marcus Brinkmann <marcus@g10code.de>
* t-data.c: Remove TEST_OUT_CB.
	(main): Likewise.
	* gpg/t-trustlist.c (main): Access ITEM directly.
2003-05-27 03:06:37 +00:00
Marcus Brinkmann
03bcb7f4c1 doc/
2003-05-27  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Passphrase Callback): Document new prototype.

gpgme/
2003-05-26  Marcus Brinkmann  <marcus@g10code.de>

	* engine.h (EngineCommandHandler): Change last argument to int fd.
	* gpgme.h (gpgme_passphrase_cb_t): Rewritten to take parts of the
	description and fd.
	(gpgme_edit_cb_t): Change last argument to int fd.
	* ops.h (_gpgme_passphrase_command_handler_internal): New prototype.
	* passphrase.c: Include <assert.h>.
	(op_data_t): Rename userid_hint to uid_hint, remove last_pw_handle.
	(release_op_data): Check values before calling free.
	(_gpgme_passphrase_status_handler): Likewise.
	(_gpgme_passphrase_command_handler_internal): New function.
	(_gpgme_passphrase_command_handler): Rewritten.
	* edit.c (edit_status_handler): Pass -1 as fd argument.
	(command_handler): Update prototype.  New variable processed.  Use
	it to store return value of
	_gpgme_passphrase_command_handler_internal which is now used
	instead _gpgme_passphrase_command_handler.  Use it also to check
	if we should call the user's edit function.  Pass fd to user's
	edit function.
	* rungpg.c (struct gpg_object_s): Change type of cmd.cb_data to
	void *.
	(gpg_release): Check value before calling free.  Do not release
	cmd.cb_data.
	(command_cb): Function removed.
	(command_handler): New function.  Thus we don't use a data object
	for command handler stuff anymore, but handle it directly.  This
	allows proper error reporting (cancel of passphrase requests, for
	example).  Also all callbacks work via direct writes to the file
	descriptor (so that passphrases are not kept in insecure memory).
	(gpg_set_command_handler): Rewritten to use even more ugly hacks.
	(read_status): Check cmd.keyword before calling free.  Install
	command_handler as the I/O callback handler with GPG as private
	data.

tests/
2003-05-27  Marcus Brinkmann  <marcus@g10code.de>

	* (t-decrypt-verify.c, t-decrypt.c, t-edit.c, t-encrypt-sign.c,
	t-encrypt-sym.c, t-sign.c, t-signers.c): Include <unistd.h>.
	(passphrase_cb): Rewritten.
	* t-edit.c (edit_fnc): Rewritten.
2003-05-27 01:31:06 +00:00