Commit Graph

2302 Commits

Author SHA1 Message Date
Werner Koch
441dd8b5d2 Better detection of a missing libassuan 2010-05-07 23:22:38 +00:00
Marcus Brinkmann
a274f0ea10 2010-05-07 Marcus Brinkmann <marcus@g10code.de>
* autogen.sh: Update the thing.
2010-05-07 02:14:04 +00:00
Marcus Brinkmann
be3a828e70 2010-05-07 Marcus Brinkmann <marcus@g10code.de>
* engine-g13.c, gpgme.c, engine-gpgsm.c, engine-gpg.c,
	op-support.c, engine-assuan.c, gpgme-tool.c: Include <locale.h>
	only if available with HAVE_LOCALE_H and conditionalize use of
	LC_CTYPE on its definition.
	* engine-gpgconf.c: Do not include <locale.h>.
2010-05-07 01:32:54 +00:00
Marcus Brinkmann
97df297ae2 2010-05-07 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (gpgsm_new, start): Cast between int and
	assuan_fd_t.
	* assuan-support.c (my_pipe, my_close, my_read, my_write): Likewise.
	* gpgme-tool.c (server_data_obj, server_reset_fds, gpgme_server),
	(my_recvmsg, my_sendmsg, my_spawn): Likewise.
	* engine-assuan.c (start): Likewise.
	* engine-g13.c (start): Likewise.
2010-05-07 01:06:14 +00:00
Marcus Brinkmann
9121a17238 2010-05-06 Marcus Brinkmann <marcus@g10code.de>
* w32-glib-io.c, w32-io.c, w32-qt-io.cpp, w32-sema.c, w32-util.c:
	Do not include <signal.h>.
2010-05-06 15:16:57 +00:00
Marcus Brinkmann
8203ccefe4 2010-05-06 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Detect Windows CE.
	(HAVE_W32CE_SYSTEM): New symbol and automake conditional.
	* ltmain.sh, m4/libtool.m4: Patch so that it works for Windows CE.
2010-05-06 14:49:43 +00:00
Marcus Brinkmann
749325d6c1 2010-05-06 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Require libgpg-error 1.8.

src/
2010-05-06  Marcus Brinkmann  <marcus@g10code.de>

	* sign.c, data-user.c, conversion.c, debug.c, verify.c, data.c,
	decrypt.c, delete.c, assuan-support.c, import.c, engine-gpgsm.c,
	data-mem.c, op-support.c, w32-io.c, w32-util.c, data-compat.c: Use
	gpg_error_from_syserror instead gpg_error_from_errno, and use
	gpg_err_set_errno to set error number.
	* setenv.c: Include <gpg-error.h> and define __set_errno to use
	gpg_err_set_errno.
	* gpgme-tool.c (ARGP_ERR_UNKNOWN): Define to EDEADLOCK (which is
	mapped in Windows CE) instead of E2BIG (which is not).
	(gt_import_keys): Initialize err.
2010-05-06 13:39:55 +00:00
Marcus Brinkmann
dfefe1b390 2010-04-19 Marcus Brinkmann <marcus@g10code.de>
* assuan-support.c (my_spawn): Cast to avoid warning.
	* engine-g13.c (g13_new): Make ARGV array of pointer to const
	char.
	(g13_assuan_simple_command) [!USE_DESCRIPTOR_FUNCTION]: Don't define.
	* ops.h (_gpgme_key_append_name): Same in prototype.
	* key.c (_gpgme_key_append_name): Make SRC argument pointer to
	const char.
	* posix-util.c (_gpgme_get_uiserver_socket_path): Make HOMEDIR
	const.
	* vfs-mount.c (gpgme_op_vfs_transact_start): Never define this
	potentially useful but currently unused function.
	* vfs-create.c (gpgme_op_vfs_transact_start): Likewise.
2010-04-19 16:59:23 +00:00
Werner Koch
779823c09c More robust detection of handle and sockets 2010-04-16 14:08:41 +00:00
Werner Koch
a684c13c55 Make generated header file read-only in an emacs buffer. 2010-03-15 12:04:53 +00:00
Werner Koch
c9f6151c18 Add constant to the template and not to a built file. 2010-03-12 22:24:13 +00:00
Werner Koch
6e3602b556 Detect old gpg versions not featuring the --passwd command. 2010-03-12 18:03:02 +00:00
Werner Koch
113b8e1536 Hack to start the agent as a side-effect of a secret key listing 2010-03-09 11:15:53 +00:00
Werner Koch
01ad3b7562 Changed the close notify implementaion to allow for more than 256 fds.
We should write a test case for it, though.
2010-02-17 21:40:02 +00:00
Werner Koch
2281024d4c Add option GPGME_EXPORT_MODE_MINIMAL 2010-02-16 20:07:03 +00:00
Werner Koch
9fb8b16f88 Convert C++ comments to C90 comments. 2010-02-16 19:37:51 +00:00
Werner Koch
dbcce0df8f Allow the native W32 version to properly work with sockets. 2010-01-25 16:04:27 +00:00
Marcus Brinkmann
75116f9dab Post-release fixup. 2010-01-11 12:42:59 +00:00
Marcus Brinkmann
20b19496a8 2010-01-11 Marcus Brinkmann <marcus@g10code.de>
Release 1.3.0.
2010-01-11 12:30:22 +00:00
Werner Koch
1b2fb1b737 Support gpgme_op_apsswd for GPG. 2010-01-08 19:15:06 +00:00
Marcus Brinkmann
77d8ea8916 2010-01-07 Marcus Brinkmann <marcus@g10code.de>
* gpgme-tool.c (result_xml_write_cb_t, struct result_xml_state):
	New types.
	(MAX_TAGS): New macro.
	(result_init, result_xml_indent, result_xml_tag_start)
	(result_xml_tag_data, result_xml_tag_end, result_add_error)
	(result_add_pubkey_algo, result_add_hash_algo, result_add_keyid)
	(result_add_fpr, result_add_timestamp, result_add_sig_mode)
	(result_add_value, result_add_string, result_encrypt_to_xml)
	(result_decrypt_to_xml, result_sign_to_xml)
	(result_verify_to_xml, result_import_to_xml)
	(result_genkey_to_xml, result_keylist_to_xml)
	(result_vfs_mount_to_xml): New functions.
	(gt_result): Rewritten.
2010-01-07 18:16:54 +00:00
Werner Koch
97c5d4d312 Add an API to change passphrases. Currently only implemented for
GPGSM.  Requires GnuPG 2.1
2010-01-05 17:36:53 +00:00
Marcus Brinkmann
7eb555370f 2009-12-22 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Do not use echo -n.  Test for __thread.

src/
2009-12-22  Marcus Brinkmann  <marcus@g10code.de>

	* debug.c: Test for TLS, not __GNUC__
2009-12-22 13:00:30 +00:00
Marcus Brinkmann
bc7e0f6339 2009-12-17 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Make largefile check more robust.
2009-12-17 17:36:20 +00:00
Marcus Brinkmann
1094c0a5d3 2009-12-15 Marcus Brinkmann <marcus@g10code.de>
* assuan-support.c (my_spawn): Calloc, not malloc, the fd_items.
2009-12-15 01:01:40 +00:00
Werner Koch
31844d30cd Test on sgid process 2009-12-10 09:49:47 +00:00
Marcus Brinkmann
02e2f56d1d Forgotten file. 2009-12-08 22:39:27 +00:00
Marcus Brinkmann
0a80f62089 2009-12-08 Marcus Brinkmann <marcus@g10code.de>
Update to libtool 2.2.6a.
	* configure.ac: Invoke AC_CONFIG_MACRO_DIR.
	(AC_LIBTOOL_WIN32_DLL, AC_LIBTOOL_RC): Replace by ...
	(LT_PREREQ, LT_INIT, LT_LANG): ... these.
	* config.guess, config.sub, install-sh, ltmain.sh, m4/libtool.m4:
	Updated to libtool 2.2.6a.
	* m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4,
	m4/lt~obsolete.m4: New files from libtool 2.2.6a.

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

	* Makefile.am (LTRCCOMPILE): Refactor with ...
	(RCCOMPILE): ... this new macro.
	(SUFFIXES): Add .lo.
	(gpgme_res_ldflag): Removed.
	(gpgme_res): Use libtool object file name here.
	(libgpgme_la_LDFLAGS): Remove gpgme_res_ldflag usage.
2009-12-08 21:38:22 +00:00
Marcus Brinkmann
24169052c1 2009-12-08 Marcus Brinkmann <marcus@g10code.de>
* ath.c (ath_self) [HAVE_W32_SYSTEM]: Fix typo.
2009-12-08 04:07:57 +00:00
Werner Koch
2cd1218b93 Small portability fix 2009-12-02 09:49:56 +00:00
Werner Koch
c2ee84a87a Add flags to the getauditlog command. 2009-12-01 11:21:47 +00:00
Werner Koch
dce41d1ffa Fix segv in printf like functions. 2009-12-01 11:00:27 +00:00
Marcus Brinkmann
56af8b77e6 2009-11-26 Marcus Brinkmann <marcus@g10code.de>
* opassuan.c (opassuan_start): Allocate result structure before
	beginning operation.
2009-11-26 17:53:06 +00:00
Marcus Brinkmann
ef640ca8ef 2009-11-25 Marcus Brinkmann <marcus@g10code.de>
* gpgme-tool.c (gpgme_server): Use assuan_fd_t and assuan_fdopen
	on fds.
2009-11-25 17:57:05 +00:00
Werner Koch
1cb08a35a6 Fixes for the UI server engine . 2009-11-17 13:06:05 +00:00
Marcus Brinkmann
aff1ed3fb6 2009-11-10 Marcus Brinkmann <marcus@g10code.de>
* op-support.c (_gpgme_op_reset): Instead of last change, only set
	sub protocol if it is not the default.
2009-11-10 18:05:04 +00:00
Werner Koch
d173e6e010 Make recipients command work. 2009-11-10 16:32:11 +00:00
Werner Koch
0fae16ae89 Pass fdpassing flag to assuan_socket_connect. 2009-11-10 15:04:12 +00:00
Marcus Brinkmann
e88c7782bf 2009-11-10 Marcus Brinkmann <marcus@g10code.de>
* gpgme.c (gpgme_new): Set default sub protocol.
	* gpgme-tool.c: Implement get sub protocol.
2009-11-10 14:54:39 +00:00
Marcus Brinkmann
cda07b9ab4 2009-11-10 Marcus Brinkmann <marcus@g10code.de>
* gpgme.h.in (gpgme_get_sub_protocol): Add prototype.
	* gpgme.def, libgpgme.vers: Add gpgme_get_sub_protocol.
	* context.h (struct gpgme_context): New member sub_protocol.
	* gpgme.c (gpgme_set_sub_protocol): Set CTX->sub_protocol.
	(gpgme_get_sub_protocol): New function.
	* op-support.c (_gpgme_op_reset): Set sub protocol.
2009-11-10 14:49:35 +00: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
8435f18d96 Fix last change. 2009-11-09 21:21:12 +00:00
Marcus Brinkmann
14f08497ae Remove comment. 2009-11-09 21:19:03 +00:00
Marcus Brinkmann
37c1f0fe54 2009-11-09 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (gpgsm_new): Close server side FDs.
2009-11-09 21:17:58 +00:00
Marcus Brinkmann
75f035e9d0 2009-11-06 Marcus Brinkmann <marcus@g10code.de>
* gpgme-tool.c (struct gpgme_tool): New members write_data and
	write_data_hook.
	(gt_write_data): New function.
	(gt_result): Output vfs_mount result.
	(server_write_data): New function.
	(gpgme_server): Initialize write_data members.
2009-11-06 00:44:44 +00:00
Marcus Brinkmann
8acf819d40 2009-11-05 Marcus Brinkmann <marcus@g10code.de>
* engine-g13.c (struct engine_g13): Remove members RESULT_CB and
	RESULT_CB_VALUE.
	(g13_assuan_simple_command, status_handler): Don't use those anymore.
	(g13_transact): Remove them from argument list, too.
	* vfs-mount.c (_gpgme_vfs_mount_status_handler): New function.
	(_gpgme_op_vfs_mount): Pass it to transact.
2009-11-06 00:12:59 +00:00
Marcus Brinkmann
4babea46e7 2009-11-05 Marcus Brinkmann <marcus@g10code.de>
* engine-assuan.c (llass_new): Update use of assuan_socket_connect.
	* engine-gpgsm.c (gpgsm_new): Update use of assuan_pipe_connect.
	* engine-g13.c (g13_new): Likewise.
2009-11-05 12:10:04 +00:00
Marcus Brinkmann
59dc98545a 2009-11-05 Marcus Brinkmann <marcus@g10code.de>
* priv-io.h (IOSPAWN_FLAG_NOCLOSE): New flag.
	* w32-io.c (_gpgme_io_spawn): Implement this flag.
	* posix-io.c (_gpgme_io_spawn): Likewise.
	* w32-glib-io.c (_gpgme_io_spawn): Likewise.
	* assuan-support.c (my_spawn): Set this flag.
2009-11-05 02:39:31 +00:00
Marcus Brinkmann
65ecec1abe 2009-11-05 Marcus Brinkmann <marcus@g10code.de>
* decrypt.c (gpgme_op_decrypt_start): Fix use of debug macro.
	* decrypt-verify.c (gpgme_op_decrypt_verify_start): Likewise.
	* delete.c (gpgme_op_delete_start): Likewise.
	* edit.c (gpgme_op_edit_start, gpgme_op_card_edit_start):
	Likewise.
	* encrypt.c (gpgme_op_encrypt_start): Likewise.
	* encrypt-sign.c (gpgme_op_encrypt_sign_start): Likewise.
	* export.c (gpgme_op_export_start, gpgme_op_export_ext_start)
	(gpgme_op_export_keys_start, gpgme_op_export_keys): Likewise.
	* genkey.c (gpgme_op_genkey_start): Likewise.
	* getauditlog.c (gpgme_op_getauditlog_start): Likewise.
	* import.c (gpgme_op_import_start, gpgme_op_import_keys_start):
	Likewise.
	* opassuan.c (gpgme_op_assuan_transact_start): Likewise.
	* sign.c (gpgme_op_sign_start): Likewise.
	* verify.c (gpgme_op_verify_start): Likewise.
	* vfs-create.c (gpgme_op_vfs_create): Likewise.
	* vfs-mount.c (gpgme_op_vfs_mount): Likewise.
2009-11-05 02:17:07 +00:00
Marcus Brinkmann
49693e8e45 2009-11-04 Marcus Brinkmann <marcus@g10code.de>
* ath.h (ath_self): New prototype.  Include <stdint.h>
	* ath.c, ath-pth.c, ath-pthread.c (ath_self): New function.
	* debug.h: Rewrite most macros to beautify debug output.
	(_gpgme_debug_buffer): Remove tagname and tag argument.
	(_gpgme_debug_frame_begin, _gpgme_debug_frame_end): New prototypes.
	* debug.c: Include <time.h>.  Don't include assuan.h.
	(frame_nr, FRAME_NR): New thread-specific variable and macro.
	(debug_init): Do not initialize assuan.  Call _gpgme_debug after
	initialization instead using printf directly.
	(_gpgme_debug): Do not call debug_init (we now ensure proper
	initialization by user).  Add timestamp and thread/process ID.
	(_gpgme_debug_buffer): Do not take tagname and tag argument.
	(_gpgme_debug_frame_begin, _gpgme_debug_frame_end): New functions.
	* version.c (gpgme_check_version_internal, gpgme_check_version):
	Fix debug string.  Do not initialize assuan.
	* posix-io.c (get_max_fds): Use 0 not NULL (nicer debug output).
2009-11-04 18:13:44 +00:00