Commit Graph

48 Commits

Author SHA1 Message Date
Werner Koch
46943d1dce 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
43df183ca5 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
52a210580a 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
Marcus Brinkmann
bf64b900fe 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
c13f85f1c0 Chnaged the op-assuan interface. 2009-02-24 15:13:01 +00:00
Marcus Brinkmann
c8995fc933 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
2634b0b827 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
Marcus Brinkmann
e955933edf 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
7643d22d7a Chnages to supporta pinnetry notification 2008-02-14 19:51:21 +00:00
Marcus Brinkmann
4c68beed7c 2008-01-04 Marcus Brinkmann <marcus@g10code.de>
* assuan-pipe-connect.c (_gpgme_io_pipe)
	(_gpgme_io_spawn) [_ASSUAN_IN_GPGME_BUILD_ASSUAN]: Add prototypes
2008-01-04 16:06:42 +00:00
Werner Koch
6d20b367cc Fixed a name clash under W32 2007-09-25 15:08:14 +00:00
Marcus Brinkmann
772b8bfead 2007-09-03 Marcus Brinkmann <marcus@g10code.de>
* assuan.h [_ASSUAN_EXT_SYM_PREFIX]: Add missing symbol renames
	with _ASSUAN_PREFIX.
2007-09-03 14:19:29 +00:00
Werner Koch
cbbee0844f Improved debug support: Assuan logging is now directed to the gpgme debug
stream.
Create processes detached.
2007-08-02 14:59:01 +00:00
Werner Koch
fbed0231f8 Minor fixes for W32 2007-07-12 18:54:45 +00:00
Werner Koch
8a322a05b7 Changes for W32 2007-07-12 15:25:20 +00:00
Marcus Brinkmann
3e8e05d273 2007-07-08 Marcus Brinkmann <marcus@g10code.de>
* configure.ac (GPGSM_DEFAULT) [*-mingw32*]: Initialize it.
	(HAVE_ASSUAN_H): Set to 1 if we have it.
	(funopen): Use AC_REPLACE_FUNCS.
	(USE_DESCRIPTOR_PASSING): Define to 1 if we have it.  Do not
	define it at all if we don't.
	(NETLIBS) [have_w32_system]: Add -lws2_32.
	(DIRSEP_C, DIRSEP_S, EXPSEP_C, EXPSEP_S, PATHSEP_S)
	[HAVE_DOSISH_SYSTEM]: Remove definitions.

	* assuan/assuan.h (_assuan_funopen): Define to _gpgme_funopen.
	* assuan/funopen.c: Move to ../gpgme/funopen.c.
	* assuan/Makefile.am (libassuan_la_SOURCES): Remove funopen.c.

assuan/
2007-07-08  Marcus Brinkmann  <marcus@g10code.de>

	* assuan-defs.h (struct assuan_context_s): Have partial peercred
	structure even if HAVE_W32_SYSTEM, and have full peercred
	structure only if HAVE_SO_PEERCRED.
	* assuan-connect.c (assuan_get_peercred) [!HAVE_SO_PEERCRED]: Do
	not try to set PID, UID and GID.

gpgme/
2007-07-08  Marcus Brinkmann  <marcus@g10code.de>

	* engine-gpgsm.c [HAVE_W32_SYSTEM]: Enable the bunch of the file.
	* funopen.c (funopen): Rename to _gpgme_funopen.
2007-07-08 15:46:10 +00:00
Marcus Brinkmann
9efbc9916d 2007-07-04 Marcus Brinkmann <marcus@g10code.de>
* assuan/: Update files to 2007-07-04 version of assuan.
2007-07-04 20:03:39 +00:00
Marcus Brinkmann
cba1fa6f2d Update to rev 231 of libassuan. 2006-11-29 16:25:46 +00:00
Marcus Brinkmann
41f65ab203 assuan/
Update to current version.

2006-09-19  Marcus Brinkmann  <marcus@g10code.de>

	* configure.ac: Turn stpcpy into a replacement function.
	Check for unistd.h and add setenv as replacement function.

gpgme/
2006-09-19  Marcus Brinkmann  <marcus@g10code.de>

	* setenv.c: New file.
2006-09-19 14:01:54 +00:00
Marcus Brinkmann
4b9abc67d6 2005-10-01 Marcus Brinkmann <marcus@g10code.de>
* assuan.h (assuan_pipe_connect, assuan_pipe_connect2): Make type
	of ARGV parameter const in prototype.
	* assuan-pipe-connect.c (assuan_pipe_connect,
	assuan_pipe_connect2): Likewise in declaration.
	(assuan_pipe_connect2): Add braindead cast to make execv happy.
2005-10-01 20:17:03 +00:00
Marcus Brinkmann
d33f1d9e42 2005-10-01 Marcus Brinkmann <marcus@g10code.de>
* assuan-client.c (assuan_transact): Change LINE, S and D from
	unsigned char * to char * to silence gcc warning.
	* assuan-util.c (_assuan_log_sanitized_string): Add explicit cast
	to silence gcc warning.
	* assuan-inquire.c (assuan_inquire): Likewise.
2005-10-01 19:51:27 +00:00
Werner Koch
b9f021ea1d Added missing files and fixed stuff from the recent merged. I did only
tests on W32 at that time.
2005-08-19 16:34:42 +00:00
Werner Koch
1e619ce23f Merged changes from upstream libassuan to allow building a W32 DLL. 2005-08-09 13:19:24 +00:00
Werner Koch
204eb3165f (struct assuan_io): Renamed elements READ and
WRITE to READFNC and WRITEFNC to avoid problems with read defined
as macro.  Changed callers.  Noted by Ville Skytt��.
2005-03-22 09:10:36 +00:00
Marcus Brinkmann
fbb41bdc3a 2004-12-16 Marcus Brinkmann <marcus@g10code.de>
* assuan-pipe-connect.c (do_finish): Do not wait for child to finish.
	(assuan_pipe_connect): Use double-fork approach.
	* assuan-connect.c (assuan_disconnect): Do not write BYE to the
	status line.
2004-12-21 08:42:31 +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
bbfefa8de9 2004-06-23 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Check for <sys/uio.h>.

assuan
2004-06-23  Marcus Brinkmann  <marcus@g10code.de>

	* assuan-domain-connect.c [HAVE_SYS_UIO_H]: Include <sys/uio.h>.
2004-06-23 14:11:47 +00:00
Marcus Brinkmann
8068efd439 2004-06-23 Marcus Brinkmann <marcus@g10code.de>
* assuan-handler.c: Include <errno.h>.
2004-06-23 13:52:17 +00:00
Marcus Brinkmann
164490e412 2004-06-08 Marcus Brinkmann <marcus@g10code.de>
* assuan-buffer.c (assuan_write_line): If the line is longer than
	the maximum line length, bail out early.
2004-06-08 17:48:37 +00:00
Werner Koch
66708e3fd5 * assuan-socket-connect.c: Include sys/types.h
* assuan-socket-server.c: Ditto
* assuan-domain-connect.c: Ditto.
2004-04-19 14:24:57 +00:00
Werner Koch
e51aa29dd6 * configure.ac: Make the check for funopen fail with just a
warning.

* assuan-handler.c (assuan_get_data_fp): Fail with ENOSYS if we
can't implement this.
2004-02-18 18:05:38 +00:00
Werner Koch
e7a79303ab Removed the unneeded alloca.h 2004-02-13 13:02:07 +00:00
Marcus Brinkmann
6732476ac8 2003-08-18 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: If building Assuan, check for funopen and
	fopencookie, and make isascii, putc_unlocked and memrchr
	replacement functions.

assuan/
Update to the latest assuan version.

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

	* funopen.c, putc_unlocked.c, isascii.c, memrchr.c: New files.
	* fopencookie.c: File removed.
2003-08-18 19:17:08 +00:00
Marcus Brinkmann
2e1a1033ee 2003-02-01 Marcus Brinkmann <marcus@g10code.de>
* assuan/: Update files to 2002-11-10 version of assuan.

gpgme/
2003-02-01  Marcus Brinkmann  <marcus@g10code.de>

	* engine-gpgsm.c (map_assuan_error): Replace
	ASSUAN_Bad_Certificate_Path with ASSUAN_Bad_Certificate_Chain.
	(gpgsm_new): Use assuan_pipe_connect instead assuan_pipe_connect2.

	* util.h (DIMof): Remove macro.

	* ops.h (_gpgme_op_event_cb, _gpgme_op_event_cb_user,
	_gpgme_data_unread): Prototypes removed.
2003-02-01 18:53:06 +00:00
Werner Koch
e3b590515d * assuan-pipe-connect.c (assuan_pipe_connect2): New to extend
assuan_pipe_connect with some flags.  Implemented a bitbucket for
stderr.
2002-05-03 18:19:44 +00:00
Werner Koch
1fc3ed8cb3 * Makefile.am: Create libtool libraries.
* Makefile.am (libgpgme_la_LIBADD): Use libtool libraries.

* Makefile.am: Create libtool libraries
2002-04-26 12:38:27 +00:00
Marcus Brinkmann
cf49f26715 Update assuan and jnlib to 20020424 from newpg. 2002-04-24 01:55:58 +00:00
Marcus Brinkmann
fb476f85dc Update to latest version. 2002-02-01 19:54:25 +00:00
Marcus Brinkmann
33c20b87d1 Update to current version in newpg module. 2002-01-22 16:29:12 +00:00
Marcus Brinkmann
e8a547c3e9 Update from newpg. 2001-12-19 00:23:25 +00:00
Marcus Brinkmann
7e1ce3166f Change history, doubleplusgood. 2001-12-14 01:27:58 +00:00
Marcus Brinkmann
579d7e0b89 2001-12-14 Marcus Brinkmann <marcus@g10code.de>
* assuan-buffer.c (_assuan_read_line): New variable ATTICLEN, use
	it to save the number of bytes left over after the complete line.
	Rediddle the code a bit to make it more clear what happens.
2001-12-14 01:22:00 +00:00
Marcus Brinkmann
63931d2491 2001-12-14 Marcus Brinkmann <marcus@g10code.de>
* assuan-defs.h (LINELENGTH): Define as ASSUAN_LINELENGTH.
	assuan.h: Define ASSUAN_LINELENGTH.
2001-12-13 23:12:37 +00:00
Marcus Brinkmann
e1643c49f5 2001-12-13 Marcus Brinkmann <marcus@gnu.org>
* assuan-connect.c (assuan_pipe_connect): Remove code that closes
	all the little file descriptors we set up.
2001-12-13 21:38:11 +00:00
Marcus Brinkmann
e1ab8914db 2001-12-13 Marcus Brinkmann <marcus@gnu.org>
* assuan-buffer.c (assuan_read_line): Fix order of execution to
	get correct return values.
2001-12-13 20:13:34 +00:00
Werner Koch
c58f06831c * assuan-handler.c (assuan_get_active_fds): Fixed silly bug,
pretty obvious that nobody ever tested this function.
2001-12-13 17:37:04 +00:00
Werner Koch
ae1bcb9da5 Updated Assuan to the current version 2001-12-13 15:04:36 +00:00
Werner Koch
6617b3d090 Guess what. 2001-11-24 21:27:22 +00:00