Commit Graph

123 Commits

Author SHA1 Message Date
Ben McGinnes
85bdca3b2b New stuff
* Added the idea for alternative Emacs bindings (to extend the
  existing ones, not replace them outright).
* Added a reference to the API Squared part of the project.
2018-02-28 03:43:59 +11:00
Ben McGinnes
8047e1374f TODO the TODO
* Added an actual TODO to fix the TODOs.
* Pretty sure I know who will be completing this one ...  ;)
2018-02-28 03:30:46 +11:00
Ben McGinnes
73c51bc985 TODO ... the TODO
* If we're going to use Org, let's actually use Org.
* Added the properties tags for each point.
* Some of thems still need custom ID tags assigned properly.
* Probably ought to make them actual TODOs at some point, but that can
  wait until they can be marked as DONE anyway.
* Will add a TODO for some of this stuff ... oh, the irony.
2018-02-28 03:21:18 +11:00
Marcus Brinkmann
96cf17b159 2009-11-10 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Activate UIServer if FD passing is enabled and
	Assuan is available.

m4/
2009-11-10  Marcus Brinkmann  <marcus@g10code.de>

	* libassuan.m4: Fix LIBASSUAN_VERSION.

src/
2009-11-10  Marcus Brinkmann  <marcus@g10code.de>

	* Makefile.am (uiserver_components): New variable.
	(main_sources): Add it.
	* ops.h, key.c (_gpgme_key_append_name): Take CONVERT argument,
	implement it.  Adjust callers.
	(gpgme_key_from_uid): New function.
	* gpgme.h.in (gpgme_protocol_t): Add GPGME_PROTOCOL_DEFAULT.
	(gpgme_encrypt_flags_t): Add GPGME_ENCRYPT_PREPARE,
	GPGME_ENCRYPT_EXPECT_SIGN.
	(gpgme_set_sub_protocol, gpgme_key_from_uid): New functions.
	* libgpgme.vers, gpgme.def: Add new functions.
	* gpgme.c (gpgme_set_protocol): Add UIServer protocol.
	(gpgme_set_sub_protocol): New function.
	(gpgme_get_protocol_name): Add UIServer and default protocol.
	* assuan-support.c: Return correct error values, implement
	socketpair for POSIX.
	* priv-io.h, posix-io.c, w32-io.c, w32-glib-io.c,
	w32-qt-io.cpp (_gpgme_io_spawn): Add ATFORK and ATFORKVALUE
	arguments.  Implement it for POSIX.  Adjust all callers.
	* engine.h, engine-backend.h (_gpgme_engine_set_protocol)
	(_gpgme_engine_op_decrypt_verify): New prototypes.  Adjust all
	users.
	* engine.c (engine_ops, gpgme_get_engine_info): Add UIServer
	engine.
	(_gpgme_engine_set_protocol, _gpgme_engine_op_decrypt_verify): New
	function.
	* decrypt-verify.c (decrypt_verify_start): Call
	_gpgme_engine_op_decrypt_verify.
	* util.h, posix-util.c,
	w32-util.c (_gpgme_get_uiserver_socket_path): New function.
	* engine-gpgsm.c (gpgsm_set_fd): Fix _gpgme_io_pipe invocation.
	* gpgme-tool.c: Some support for UIServer protocol.
	* engine-uiserver.c: New file.
2009-11-10 09:07:19 +00:00
Marcus Brinkmann
6c3fadef5e Some additions. 2009-10-30 14:13:42 +00:00
Marcus Brinkmann
0d77c1a3aa 2009-06-18 Marcus Brinkmann <marcus@g10code.de>
* gpgme.h.in (GPGME_CONF_PATHNAME): Remove obsolete macro.

	* w32-io.c (_gpgme_io_pipe): Allocate reader/writer thread right
	away.
	(_gpgme_io_read, _gpgme_io_write, _gpgme_io_select)
	(_gpgme_io_dup): Never allocate threads here.
	(find_writer, find_reader): Check return value of thread creation
	function.
2009-06-18 13:41:48 +00:00
Werner Koch
b872605941 Add new functions to import and export keys specified by gpgme_key_t.
Allow  exporting keys to a keyserver.
2009-06-16 11:42:21 +00:00
Marcus Brinkmann
d255b4bec9 assuan/
2009-04-08  Marcus Brinkmann  <marcus@g10code.de>

	* assuan.h (_gpgme_io_socket): New prototype.
	(_ASSUAN_CUSTOM_IO, _assuan_custom_close, _assuan_custom_read)
	(_assuan_custom_write, _assuan_custom_pipe, _assuan_custom_socket)
	(_assuan_custom_connect): New macros.
	* assuan-socket.c (_assuan_close, _assuan_sock_new)
	(_assuan_sock_connect) [_ASSUAN_CUSTOM_IO]: Use custom I/O function.
	* assuan-buffer.c (assuan_read_line): Do not handle EAGAIN anymore.
	* assuan-client.c (_assuan_read_from_server): Likewise.
	* assuan-handler.c (process_next): Likewise
	* assuan-inquire.c (assuan_inquire): Likewise.

src/
2009-04-08  Marcus Brinkmann  <marcus@g10code.de>

	* w32-glib-io.c (giochannel_table): New members used, fd, socket.
	(find_channel): Drop CREATE argument.
	(new_dummy_channel_from_fd, new_channel_from_fd)
	(new_channel_from_socket): New functions.
	(_gpgm_io_fd2str): Implement for sockets.
	(_gpgme_io_write, _gpgme_io_read): Translate EAGAIN errors
	correctly.
	(_gpgme_io_pipe): Fix for new channel bookkeeping.
	(_gpgme_io_close, _gpgme_io_dup): Likewise.
	(wsa2errno, _gpgme_io_socket, _gpgme_io_connect): New.
	* w32-io.c (MAX_READERS, MAX_WRITERS): Bump up to 40.
	(wsa2errno, _gpgme_io_socket, _gpgme_io_connect): New.
	* w32-qt-io.cpp (_gpgme_io_socket, _gpgme_io_connect): New stubs.
	* version.c [HAVE_W32_SYSTEM]: Include "windows.h.
	(do_subsystem_inits) [HAVE_W32_SYSTEM]: Call WSAStartup.
	* engine-assuan.c (llass_status_handler): Ignore EAGAIN errors.
2009-04-08 18:53:57 +00:00
Werner Koch
9e4169fcec Add new types to the gpgconf interface.
Fix a parsing bug in gpgconf interface.
2008-06-19 17:37:31 +00:00
Werner Koch
b72c001283 Support --locate-keys feature of gpg. 2008-05-07 15:41:14 +00:00
Marcus Brinkmann
3dcae464f4 doc/
2008-03-11  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (File Based Data Buffers): Document the need for
	blocking operations.
	(Callback Based Data Buffers): Likewise.

gpgme/
2008-03-11  Marcus Brinkmann  <marcus@g10code.de>

	* data.c (gpgme_data_read, gpgme_data_write): Retry on EINTR.
2008-03-11 16:05:40 +00:00
Marcus Brinkmann
ca17a12d3a Add item. 2008-02-15 23:02:26 +00:00
Marcus Brinkmann
ba87348230 Add item for tracepoints. 2007-07-17 12:42:42 +00:00
Werner Koch
cc5190ffc1 /
* configure.ac (NEED_GPG_VERSION,
	(NEED_GPGSM_VERSION): Must define after it may have been changed
	by an option.

	* configure.ac: Require gpg-error 1.4 due to the use of
	gpg_error_from_syserror.
	(HAVE_ASSUAN_H): New.

gpgme/

	* ttyname_r.c (ttyname_r) [W32]: Return a dummy name.

	* version.c (do_subsystem_inits): Do assuan init only if building
	with Assuan.
	* setenv.c: Include assuan-def.h only if building with Assuan
	support.

	* op-support.c (_gpgme_op_reset): Set LC_MESSAGES only if
	if defined.
	* engine-gpgsm.c (gpgsm_set_locale): Ditto.
	* rungpg.c (gpg_set_locale): Ditto.
2007-01-10 10:18:05 +00:00
Marcus Brinkmann
13d2e5d1c7 2006-12-17 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Fix two typos in last change.

gpgme/
2006-12-17  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.c (gpgme_set_protocol): Shut down the engine when
	switching protocols.
	(gpgme_ctx_set_engine_info): Likewise for engine info.
	* engine.h (_gpgme_engine_reset): New function prototype.
	* engine.c (_gpgme_engine_reset): New function.
	* engine-backend.h (struct engine_ops): New member RESET.
	* rungpg.c (_gpgme_engine_ops_gpg): Add NULL for reset function.
	* engine-gpgsm.c (_gpgme_engine_ops_gpgsm)
	[USE_DESCRIPTOR_PASSING]: Add gpgsm_reset for reset.
	(_gpgme_engine_ops_gpgsm) [!USE_DESCRIPTOR_PASSING]: Add NULL for
	reset function.
	(gpgsm_reset) [USE_DESCRIPTOR_PASSING]: New function.
	* op-support.c (_gpgme_op_reset): Try to use the engine's reset
	function if available.
	* engine-gpgsm.c (gpgsm_new): Move code to dup status_fd to ...
	(start): ... here.
	* posix-io.c (_gpgme_io_recvmsg, _gpgme_io_sendmsg): New functions.
2006-12-17 21:12:40 +00:00
Marcus Brinkmann
1ae2788117 2006-07-06 Marcus Brinkmann <marcus@g10code.de>
* lang, lang/cl: New subdirectories.
	* lang/Makefile.am, lang/README: New files.
	* configure.ac (AC_CONFIG_FILES): Add lang/Makefile,
	lang/cl/Makefile and lang/cl/gpgme.asd.
	* Makefile.am (SUBDIRS): Add lang.

lang/cl/
2006-07-06  Marcus Brinkmann  <marcus@g10code.de>

	* Initial release.
2006-07-06 10:37:52 +00:00
Marcus Brinkmann
2f4b385332 2006-02-22 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (read_colon_line): Invoke colon preprocess handler if
	it is set.
	(colon_preprocessor_t): New type.
	(struct engine_gpg): New member colon.preprocess_fnc.
	(gpg_keylist_preprocess): New function.
	* keylist.c (keylist_colon_handler): Allow short key IDs.
2006-02-22 11:02:50 +00:00
Werner Koch
deae5fa5a2 Add a test for expired subkeys 2005-10-19 08:23:23 +00:00
Marcus Brinkmann
91c9053f66 Update some items. 2005-10-02 14:55:33 +00:00
Marcus Brinkmann
11203e11a6 Update some items. 2005-10-02 14:41:03 +00:00
Marcus Brinkmann
ceb26145c7 Add item about docs. 2005-10-01 22:17:03 +00:00
Marcus Brinkmann
0dbcb6a144 Update some items. 2005-10-01 21:02:48 +00:00
Marcus Brinkmann
204237d60a Remove ath item. 2005-10-01 20:53:27 +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
9f952a5a0b 2005-08-26 Marcus Brinkmann <marcus@g10code.de>
* engine.h (engine_command_handler_t): Add new argument processed.
	* ops.h (_gpgme_passphrase_command_handler_internal): Rename
	prototype to ...
	(_gpgme_passphrase_command_handler): ... this one.
	* passphrase.c (_gpgme_passphrase_command_handler_internal):
	Rename to ...
	(_gpgme_passphrase_command_handler): ... this one.
	* edit.c (command_handler): Add new argument processed.  Remove
	local variable with the same name.  Always return processed as
	true.
	* rungpg.c (command_handler): Send a newline character if the
	handler did not.
2005-08-26 14:53:55 +00:00
Marcus Brinkmann
7d10a7f296 Remove some obsolete entries. 2005-01-12 11:18:19 +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
4b45385889 Update. 2004-12-07 18:49:35 +00:00
Werner Koch
cae6d4e940 . 2004-11-04 13:58:06 +00:00
Marcus Brinkmann
b6852571b3 Update some entries. 2004-09-28 23:25:35 +00:00
Marcus Brinkmann
497b0f8bd8 Add entry about AC_CONFIG_MACRO_DIR. 2004-09-16 22:21:49 +00:00
Marcus Brinkmann
92f095084a 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
f7b5cdc464 Add item about gpgme.m4. 2004-05-21 19:53:50 +00:00
Marcus Brinkmann
fafe1d9392 Remove item about verify.keyusage. 2004-05-21 19:19:11 +00:00
Marcus Brinkmann
cf6910f69d 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
6aeee0426a 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
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
Werner Koch
afabac4c9d * 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
Marcus Brinkmann
8986b98063 Add note about key signature notations. 2004-01-13 21:44:55 +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
9cf95d61eb * acinclude.m4: Add AM_PATH_GPG_ERROR.
* configure.ac: Check for timegm.  Made warning messages more
prominent.
2003-11-19 15:15:11 +00:00
Werner Koch
2f1226cea9 (parse_timestamp): Detect ISO 8601 timestamps and try
to convert them.
2003-10-31 12:07:48 +00:00
Marcus Brinkmann
68def3d9dc Update release list. 2003-09-14 00:34:48 +00:00
Marcus Brinkmann
c4ea1235d5 doc/
2003-09-13  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Error Strings): Add gpgme_strerror_r.

gpgme/
2003-09-13  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h (gpgme_strerror_r): New prototype.
	* error.c (gpgme_strerror_r): New function.
2003-09-13 21:45:13 +00:00
Marcus Brinkmann
727f0ba45d 2003-09-13 Marcus Brinkmann <marcus@g10code.de>
* acinclude.m4: Remove libtool cruft, add jm_GLIBC21.
	* configure.ac: Add check for getenv_r, and call jm_GLIBC21.
	Define HAVE_THREAD_SAFE_GETENV if appropriate.

gpgme/
2003-09-13  Marcus Brinkmann  <marcus@g10code.de>

	* get-env.c: New file.
	* util.h (_gpgme_getenv): Add prototype.
	* Makefile.am (libgpgme_real_la_SOURCES): Add get-env.c.
	* rungpg.c (build_argv): Use _gpgme_getenv.
	* debug.c (debug_init): Likewise.
	* engine-gpgsm.c (gpgsm_new): Likewise.
	(gpgsm_new): Use ttyname_r.
	* w32-io.c (_gpgme_io_spawn): Disable debugging for now.
2003-09-13 17:45:04 +00:00
Marcus Brinkmann
543f958169 Document thread changes. 2003-09-03 01:18:25 +00:00
Marcus Brinkmann
be89abd137 Document some more problems. 2003-09-02 22:44:46 +00:00
Marcus Brinkmann
0217495902 2003-08-18 Marcus Brinkmann <marcus@g10code.de>
*configure.ac (AM_PATH_GPG_ERROR): Require 0.3.

assuan/
See README.1st.

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

	The ath files (ath.h, ath.c, ath-pth.c, ath-pthread.c,
	ath-compat.c, ath-pth-compat.c and ath-pthread-compat.c) have been
	updated to have better thread support, and the Makefile.am was
	changed to reflect that.

	* util.h [!HAVE_FOPENCOOKIE]: Remove fopencookie declaration.
	* engine-gpgsm.c (gpgsm_assuan_simple_command): Set ERR to return
	value of status_fnc.
	* rungpg.c (start): Return SAVED_ERRNO, not errno.
2003-08-20 20:20:46 +00:00
Marcus Brinkmann
f29ce4cdb4 Add item about configure check for gpg and gpgsm warning. 2003-07-30 12:43:14 +00:00
Marcus Brinkmann
6d6cb1c049 Update information about todo items. 2003-07-30 12:41:57 +00:00