Commit Graph

1958 Commits

Author SHA1 Message Date
Werner Koch
4280710f33 Define error code. 2009-06-09 12:13:28 +00:00
Marcus Brinkmann
bdb7bcf938 doc/
2009-05-28  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.texi (Library Version Check): Document selftest error.
	(Creating Contexts): Likewise.

src/
2009-05-28  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme.h.in (gpgme_check_version_internal): New prototype.
	(gpgme_check_version): New macro, overriding function of the same
	name.
	* libgpgme.vers, gpgme.def: Add gpgme_check_version_internal.o
	* context.h (_gpgme_selftest): New variable declaration.
	* version.c: Include "context.h".
	(gpgme_check_version): Set _gpgme_selftest on success.
	(gpgme_check_version_internal): New function.
	* gpgme.c (_gpgme_selftest): Define it.
	(gpgme_new): Check the selftest result.
2009-05-28 15:16:01 +00:00
Marcus Brinkmann
2c5d801fc4 doc/
2009-05-18  Marcus Brinkmann  <marcus@g10code.de>

        * gpgme.texi (Encrypting a Plaintext): Document                                             
        GPGME_ENCRYPT_NO_ENCRYPT_TO.                                                                
                                                                                                    
src/                                                                                                
2009-05-18  Marcus Brinkmann  <marcus@g10code.de>                                                   
                                                                                                    
        * gpgme.h.in (gpgme_encrypt_flags_t): Add                                                   
        GPGME_ENCRYPT_NO_ENCRYPT_TO.                                                                
        * engine-gpg.c (gpg_encrypt): Pass --no-encrypt-to to gpg if                                
        GPGME_ENCRYPT_NO_ENCRYPT_TO flag is set.
2009-05-18 17:38:31 +00:00
Werner Koch
63ebab659e * gpgme.h.in (gpgme_status_code_t): Explicitly initialize for
better maintainability and to help debugging.
2009-05-14 07:40:51 +00:00
Marcus Brinkmann
6e27621062 2009-05-05 Marcus Brinkmann <marcus@g10code.de>
* gpgme.texi (Engine Information): Replace path by file_name.
2009-05-05 17:19:17 +00:00
Marcus Brinkmann
065a0a3f6d 2009-05-05 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Add infrastructure for compile time check of
	_FILE_OFFSET_BITS.

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

	* gpgme.h.in: Add compile time check for _FILE_OFFSET_BITS.
2009-05-05 17:03:33 +00:00
Moritz Schulte
edf19bbf8f * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Specify --with-gpg.
* gpg/Makefile.am (EXTRA_DIST): Replaced mkdemodirs with mkdemodirs.in.
(mkdemodirs): New target.
(clean-local): Added command for removing mkdemodirs script.
(./Alpha/Secret.gpg): Added dependency on mkdemodirs.

* gpg/mkdemodirs: Renamed to ...
* gpg/mkdemodirs.in: ... here.
* gpg/mkdemodirs.in (GPG): Derive value from @GPG@ instead of hard-coding "gpg".
2009-04-19 18:03:49 +00:00
Marcus Brinkmann
2dce8370e7 2009-04-15 Marcus Brinkmann <marcus@g10code.de>
* posix-io.c (_gpgme_io_socket, _gpgme_io_connect): New functions.
	* w32-io.c (_gpgme_io_connect): Fix stupid error.
2009-04-15 12:04: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
Marcus Brinkmann
6f8aa0e29d 2009-03-23 Marcus Brinkmann <marcus@g10code.de>
* assuan.h: Add prefix macros for _assuan_close and _assuan_usleep.
2009-03-23 22:23:25 +00:00
Werner Koch
aceb60d4dd Add GPGME_KEYLIST_MODE_EPHEMERAL. 2009-03-18 11:19:29 +00:00
Werner Koch
f8b80c55f4 Fix locale problem, e.g. for et_ET. 2009-03-13 14:19:55 +00:00
Marcus Brinkmann
9ace1d5642 assuan/
2009-03-06  Marcus Brinkmann  <marcus@g10code.de>

	* assuan/: Update to libassuan SVN 2009-03-06.

src/
2009-03-06  Marcus Brinkmann  <marcus@g10code.de>

	* version.c (do_subsystem_inits): Do not set assuan log level.
	* debug.c (debug_init): Likewise.
2009-03-06 22:29:49 +00:00
Werner Koch
f0dccac380 Chnaged the op-assuan interface. 2009-02-24 15:13:01 +00:00
Werner Koch
d118b5a2ee Fix spawn prototype for w32 glib and qt versions. 2009-02-04 16:48:25 +00:00
Werner Koch
259cbefd5c Provide inforation about smartcards. 2009-02-04 09:51:43 +00:00
Werner Koch
d951cb713f First take on the low-level assuan interface. 2009-01-26 10:21:10 +00:00
Werner Koch
23022dd9d9 Renamed rungpg.c to engine-gpg.c for conistency. 2009-01-19 14:44:13 +00:00
Marcus Brinkmann
21eaf417dc 2008-12-08 Marcus Brinkmann <marcus@g10code.de>
Release GPGME 1.1.8.

	* configure.ac: Bump API revision.
2008-12-08 19:28:36 +00:00
Marcus Brinkmann
6d93f41f05 2008-12-03 Marcus Brinkmann <marcus@g10code.de>
* Makefile.am (INCLUDES): Fix path to include file.
	* gpg/Makefile.am (INCLUDES), gpgsm/Makefile.am (INCLUDES): Likewise.
2008-12-03 14:27:52 +00:00
Marcus Brinkmann
6216d73611 2008-12-03 Marcus Brinkmann <marcus@g10code.de>
* Makefile.am (status-table.h): Use $(builddir) to find gpgme.h.
2008-12-03 14:24:03 +00:00
Werner Koch
5beba8689c Fix doc bug. 2008-11-28 10:32:12 +00:00
Moritz Schulte
c01087be85 2008-11-08 Moritz <moritz@gnu.org>
* gpgme.lisp (size-t): Wrong call to defctype: function accepts
	optional, not keyword argument.
	(ssize-t): Likewise.
	(off-t): Likewise.
	(gpgme-data-t, gpgme-ctx-t): Likewise.
	(gpgme-error-t): Likewise.
	(gpgme-error-no-signal-t): Likewise.
	(gpgme-err-code-t): Likewise.
	(gpgme-err-source-t): Likewise.
	(gpgme-sig-notation-t, gpgme-engine-info-t): Likewise.
	(gpgme-subkey-t): Likewise.
	(gpgme-key-sig-t): Likewise.
	(gpgme-user-id-t): Likewise.
	(gpgme-key-t): Likewise.
	(gpgme-data-cbs-t): Likewise.
	(gpgme-invalid-key-t): Likewise.
	(gpgme-op-encrypt-result-t): Likewise.
	(gpgme-recipient-t): Likewise.
	(gpgme-op-decrypt-result-t): Likewise.
	(gpgme-new-signature-t): Likewise.
	(gpgme-op-sign-result-t): Likewise.
	(gpgme-signature-t): Likewise.
	(gpgme-op-verify-result-t): Likewise.
	(gpgme-import-status-t): Likewise.
	(gpgme-op-import-result-t): Likewise.
	(gpgme-op-genkey-result-t): Likewise.
	(gpgme-op-keylist-result-t): Likewise.
2008-11-23 18:09:57 +00:00
Werner Koch
92394f92d4 Fix SIGPIPE ignoring regression.
Fix unsupported algorithm detection.
2008-11-18 11:12:36 +00:00
Marcus Brinkmann
66d0fa1973 008-11-03 Marcus Brinkmann <marcus@g10code.com>
* configure.ac: Replace gpgme paths with src.
        * gpgme: Move to ...
        * src: ... this new directory.

assuan/
2008-11-03  Marcus Brinkmann  <marcus@g10code.com>

	* Makefile.am (INCLUDES): Replace gpgme path with src.

tests/
2008-11-03  Marcus Brinkmann  <marcus@g10code.com>

        * gpgsm/Makefile.am (INCLUDES, LDADD): Replace gpgme path with src.
        * gpg/Makefile.am (INCLUDES, LDADD, t_thread1_LDADD): Likewise.
	* Makefile.am (LDADD): Likewise.
2008-11-03 17:24:09 +00:00
Marcus Brinkmann
6405d54bad assuan/
2008-10-30  Marcus Brinkmann  <marcus@g10code.de>

	* assuan-pipe-connect.c: Fix prototype for _gpgme_io_spawn.  Cast
	second argument in its invocation to silence gcc warning.

gpgme/
2008-10-30  Marcus Brinkmann  <marcus@g10code.de>

	* wait-private.c (_gpgme_wait_on_condition): Remove unused
	variable IDX.
	* wait-global.c: Include ops.h to silence gcc warning.
	(_gpgme_wait_global_event_cb): Pass error value directly.
	* wait-user.c: Include ops.h to silence gcc warning.

	* posix-io.c (_gpgme_io_spawn): Make ARGV argument const to
	silence gcc warning.  Cast argument to execv to silence warning.
	* w32-io.c (_gpgme_io_spawn): Likewise.
	* priv-io.h (_gpgme_io_spawn): Likewise for prototype.
2008-10-30 15:08:44 +00:00
Werner Koch
9c7489e8d1 use validated mode. 2008-10-30 14:41:23 +00:00
Werner Koch
66c64cfa05 new debug helper program 2008-10-30 13:23:42 +00:00
Werner Koch
6ce90fccd9 Fix last change. 2008-10-24 14:07:14 +00:00
Marcus Brinkmann
69b1a65fb8 2008-10-23 Marcus Brinkmann <marcus@g10code.de>
* rungpg.c (gpg_keylist_preprocess): Convert percent escaped
	string to C coded string.
2008-10-23 10:51:31 +00:00
Werner Koch
eae8d3830c Fix bug #818.
Use gpgme.h.in instead of in-place editing gpgme.h.
2008-10-20 15:59:19 +00:00
Marcus Brinkmann
4dd5ee9106 2008-10-18 Marcus Brinkmann <marcus@g10code.com>
* w32-util.c (find_program_in_registry): Don't define.
	(_gpgme_get_gpg_path, _gpgme_get_gpgsm_path)
	(_gpgme_get_gpgconf_path): Do not check for fooProgram in the
	registry anymore.  It is now no longer possible to overwrite the
	default location in that way.
2008-10-17 23:10:26 +00:00
Marcus Brinkmann
759d969528 Post-release changes. 2008-10-17 21:03:00 +00:00
Marcus Brinkmann
166a5593ad 2008-10-17 Marcus Brinkmann <marcus@g10code.com>
Release GPGME 1.1.7.

	* configure.ac (LIBGPGME_LT_REVISION): Bump for release.
2008-10-17 18:57:49 +00:00
Werner Koch
693e515832 Fix for mingw32 bug. 2008-10-17 11:15:48 +00:00
Marcus Brinkmann
4ae2ac9861 2008-09-23 Marcus Brinkmann <marcus@g10code.com>
* gpgme.c (gpgme_sig_notation_clear): Clear CTX->sig_notations.
	Submitted by "Daniel Mueller" <daniel@danm.de>
2008-09-23 10:52:09 +00:00
Moritz Schulte
a8be6e0da3 2008-09-19 Moritz <moritz@gnu.org>
* configure.ac: Remove bogus "esac".
2008-09-19 14:15:51 +00:00
Marcus Brinkmann
cf5100d27c 2008-09-16 Marcus Brinkmann <marcus@g10code.com>
* configure.ac (_XOPEN_SOURCE) [apple-darwin]: Define it.
2008-09-16 15:30:44 +00:00
Marcus Brinkmann
f300cd09b4 2008-09-16 Marcus Brinkmann <marcus@g10code.com>
* rungpg.c (gpg_new): Don't use errno with ttyname_r.
2008-09-16 15:23:23 +00:00
Marcus Brinkmann
26c0edc270 2008-08-11 Marcus Brinkmann <marcus@g10code.com>
* rungpg.c (gpg_cancel): Remove cmd fd before status fd.
        * gpgme.c (_gpgme_cancel_with_err): New function.
        (gpgme_cancel): Reimplement in terms of _gpgme_cancel_with_err.
        * wait-private.c (_gpgme_wait_on_condition): Use
        _gpgme_cancel_with_err.
        * wait-user.c (_gpgme_user_io_cb_handler): Likewise.
        * wait-global.c (_gpgme_wait_global_event_cb, gpgme_wait): Likewise.
2008-08-11 17:23:45 +00:00
Marcus Brinkmann
569829b6fd 2008-08-08 Marcus Brinkmann <marcus@g10code.com>
* rungpg.c (command_handler): Remove I/O callback on error, too.
2008-08-08 17:53:22 +00:00
Werner Koch
9c6bf32eea Add a module overview diagram. 2008-07-17 17:09:39 +00:00
Werner Koch
a60cbde709 Update automake scripts.
Minor doc changes.
2008-07-04 15:46:01 +00:00
Marcus Brinkmann
8bf7f5bd0c 2008-06-29 Marcus Brinkmann <marcus@ulysses.g10code.com>
* gpgme.c (gpgme_cancel_async): Remove unused variable.
2008-06-29 18:41:19 +00:00
Marcus Brinkmann
01baa339f9 2008-06-27 Marcus Brinkmann <marcus@g10code.de>
* libgpgme.vers: Add gpgme_cancel_async.
	* gpgme.def: Likewise.
2008-06-27 16:14:57 +00:00
Marcus Brinkmann
67ae7de4c5 Add gpgme_cancel_async 2008-06-27 16:08:35 +00:00
Marcus Brinkmann
695ec56ffb 2008-06-27 Marcus Brinkmann <marcus@g10code.de>
* gpgme.texi (Cancellation): Document gpgme_cancel_async.

gpgme/
2008-06-27  Marcus Brinkmann  <marcus@g10code.de>

	* context.h: Include "sema.h".
	(struct gpgme_context): New members lock and canceled.
	* gpgme.c (gpgme_new): Initialize lock.
	(gpgme_release): Destroy lock.
	(gpgme_cancel_async): New function.
	* op-support.c (_gpgme_op_reset): Reset the canceled flag.
	* wait-global.c (gpgme_wait): Check cancel flag before processing
	any I/O callbacks.
	* wait-private.c (_gpgme_wait_on_condition): Likewise.
	* wait-user.c (_gpgme_user_io_cb_handler): Likewise.
2008-06-27 16:07:33 +00:00
Werner Koch
eccdb17c30 Fix incompatibility with non-recent mingw runtimes. 2008-06-26 14:38:39 +00:00
Marcus Brinkmann
0560f3089b assuan/
2008-06-25  Marcus Brinkmann  <marcus@g10code.de>

	* assuan-pipe-connect.c (struct spawn_fd_item_s): Add new members.
	(HANDLE_TRANSLATION): New macro.
	(pipe_connect_gpgme): Adjust caller of _gpgme_io_spawn.
	[HANDLE_TRANSLATION]: Return translated handles.

gpgme/
2008-06-25  Marcus Brinkmann  <marcus@g10code.de>

	* gpgme-w32spawn.c: New file.
	* Makefile.am (libexec_PROGRAMS) [HAVE_W32_SYSTEM]: New variable
	with gpgme-w32spawn.
	* engine-gpgsm.c (gpgsm_new): Use server translated handles.
	(gpgsm_set_locale): Return early if locale value is NULL.
	* util.h (_gpgme_mkstemp)
	(_gpgme_get_w32spawn_path) [HAVE_W32_SYSTEM]: New function
	prototypes.
	* w32-util.c: Include <stdint.h>, <sys/stat.h> and <unistd.h>.
	(letters, mkstemp, _gpgme_mkstemp, _gpgme_get_w32spawn_path): New
	functions.
	* rungpg.c (gpg_decrypt, gpg_encrypt, gpg_encrypt_sign)
	(gpg_genkey, gpg_import, gpg_verify, gpg_sign): Pass data over
	special filename FD rather than stdin.
	(struct arg_and_data_s): Add member ARG_LOCP.
	(struct fd_data_map_s): Add member ARG_LOC.
	(struct engine_gpg): Add member ARG_LOC to status and colon.
	(_add_arg, add_arg_with_locp): New function.
	(add_arg_ext): Reimplement in terms of _add_arg.
	(gpg_new): Remember argument location for status FD.
	(build_argv): Set argument location if requested.  Also set
	argument location of fd_data_map for data items.
	(start): Adjust caller of _gpgme_io_spawn.
	* priv-io.h (struct spawn_fd_item_s): Add members peer_name and
	arg_loc.
	(_gpgme_io_spawn): Remove parent fd list argument.
	* posix-io.c (get_max_fds): New function.
	(_gpgme_io_dup): Add tracing.
	(_gpgme_io_spawn): Remove parent fd list.  Change meaning of child
	fd list to contain all child fds that should be inherited.  Close
	all other file descriptors after fork.
	* w32-io.c, w32-glib-io.c, w32-qt-io.c(_gpgme_io_spawn): Remove
	parent fd list.  Change meaning of child fd list to contain all
	child fds that should be inherited.  Do not inherit any file
	descriptors, but DuplicateHandle them.  Spawn process through
	wrapper process.  Provide wrapper process with a temporary file
	containing handle translation data.  Return translated handle
	names.
	* w32-io.c (reader): Add more tracing output.
	(_gpgme_io_read): Likewise.
	* engine-gpgconf.c (gpgconf_read): Adjust caller of
	_gpgme_io_spawn.
	* version.c (_gpgme_get_program_version): Likewise.
2008-06-25 16:52:31 +00:00
Werner Koch
d0fe86179c Updated example. 2008-06-25 01:44:50 +00:00