Commit Graph

1605 Commits

Author SHA1 Message Date
Marcus Brinkmann
2bdbe88822 Fix socket implementation on Windows.
2011-02-03  Marcus Brinkmann  <marcus@g10code.com>

        * w32-io.c (_gpgme_io_socket): Return fd, not res.
2011-02-03 12:38:28 +01:00
Marcus Brinkmann
129741d2f7 Fix Windows port (spawn and assuan engine).
2011-02-02  Marcus Brinkmann  <mb@g10code.com>

        * configure.ac (NEED_LIBASSUAN_VERSION): Bump to 2.0.2 for system hooks.

src/
2011-02-02  Marcus Brinkmann  <mb@g10code.com>

        * assuan-support.c (my_socket, my_connect): New functions.
        (_gpgme_assuan_system_hooks): Add my_Socket, my_connect.
        * priv-io.h (_gpgme_io_socket): New prototype.
        * w32-io.c (pid_to_handle, handle_to_oid, fd_to_handle): Remove macros.
        (is_socket): Remove function.
        (_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Remove some dead code.
        (_gpgme_io_spawn): Translate handles before DuplicateHandle them.
2011-02-02 14:11:18 +01:00
Marcus Brinkmann
de287a7996 Merge commit 'a2b9adafe46c55a2c26dd46163055bbdf3526835' 2011-02-02 13:51:42 +01:00
Marcus Brinkmann
a2b9adafe4 2011-02-02 Marcus Brinkmann <mb@g10code.com>
* w32-util.c (mkstemp): Don't use CreateFile instead of open (the
        function is not used on Windows CE, and the callers were not
        adjusted).
2011-02-02 13:47:53 +01:00
Marcus Brinkmann
1f0f033f55 Fix gpgconf option change if not self-assigning.
2011-01-21  Marcus Brinkmann  <mb@g10code.com>

        * engine-gpgconf.c (_gpgme_conf_opt_change): Fix the case that is
        not self-assignment.
2011-01-21 04:21:30 +01:00
Werner Koch
3a7058cade Typo fixes spotted by Daiki Ueno. 2011-01-07 14:00:54 +01:00
Werner Koch
b3f04d033b Typo fixes. Spotted by Daiki Ueno. 2011-01-07 13:52:31 +01:00
Werner Koch
1feea09619 Shorten git revision id 2011-01-03 16:47:41 +01:00
Werner Koch
5fd3ef55d0 Add a git revision number 2010-12-30 16:21:45 +01:00
Werner Koch
ce1d166ef7 Allow multiple patterns for KEYLIST. 2010-12-08 09:55:00 +00:00
Marcus Brinkmann
e59b0a98ba 2010-11-23 Marcus Brinkmann <mb@g10code.com>
* w32-io.c (create_reader, create_writer): Use small stack size on
        Windows CE.
2010-11-23 10:47:59 +00:00
Marcus Brinkmann
eff0b7766a 2010-11-23 Marcus Brinkmann <mb@g10code.com>
* gpgme.h.in (gpgme_conf_arg_new): Make VALUE arg const void *.
	* gpgconf.c (_gpgme_conf_arg_new): Likewise.
	(gpgme_conf_arg_new): Likewise.
	* engine-gpgconf.c (_gpgme_conf_arg_new): Likewise.
	(gpgconf_write): Remove debug hack.
2010-11-23 09:46:52 +00:00
Marcus Brinkmann
ed8c52941c 2010-11-19 Marcus Brinkmann <mb@g10code.com>
* engine-gpgconf.c (_gpgme_conf_opt_change): Support
	self-assignment.  Requested by Marc Mutz.
2010-11-19 16:06:43 +00:00
Marcus Brinkmann
f1527436c4 2010-11-17 Marcus Brinkmann <mb@g10code.com>
* vasprintf.c (int_vasprintf) [HAVE_W32CE_SYSTEM]: Just use a
        fixed size buffer, as va_copy is not easy to fake.
2010-11-17 02:11:05 +00:00
Marcus Brinkmann
f8e4d353fa 2010-11-15 Marcus Brinkmann <mb@g10code.com>
* w32-ce.h (strcasecmp, strdup) [_MSC_VER]: Define.
	* genkey.c, passphrase.c: Include util.h.
2010-11-15 15:30:04 +00:00
Marcus Brinkmann
9c605744a6 2010-11-15 Marcus Brinkmann <mb@g10code.com>
* conf-w32ce-msc/fcntl.h: New file.
	* conf-w32ce-msc/build.mk (conf_sources): Add fnctl.h.
	(sources): Remove memrchr.c.
2010-11-15 15:29:17 +00:00
Marcus Brinkmann
15ef3c9eeb 2010-11-15 Marcus Brinkmann <mb@g10code.com>
* w32-util.c (_gpgme_w32ce_get_debug_envvar): Fix return value.
2010-11-15 15:11:59 +00:00
Marcus Brinkmann
f2890cc064 2010-11-15 Marcus Brinkmann <mb@g10code.com>
* conf-w32ce-msc/io.h: New file.
	* conf-w32ce-msc/build.mk (conf_sources): Add io.h.
2010-11-15 15:02:54 +00:00
Marcus Brinkmann
5164bd8678 2010-11-15 Marcus Brinkmann <mb@g10code.com>
* conf-w32ce-msc/stdint.h: New file.
	* conf-w32ce-msc/build.mk (conf_sources): Add stdint.h.
	* conf-w32ce-msc/build.mk (copy-static-source): Revert last change.
2010-11-15 15:01:17 +00:00
Werner Koch
eef49ef417 Fixes for the MSC build 2010-11-15 08:40:30 +00:00
Werner Koch
44b2702258 More changes for W32CE with MSC. 2010-11-04 08:16:57 +00:00
Werner Koch
83d88d444e Hopefully last changes for building with MSC. 2010-11-03 10:33:10 +00:00
Werner Koch
21eb91ae3a More include guards.
Provide access for Wince.
Install dummy sehmap.h
2010-11-03 09:56:27 +00:00
Werner Koch
753375ffcf Might now build for CE using MSC. 2010-11-02 20:17:57 +00:00
Werner Koch
987993a38d First take on changes to allow building with MSC for W32CE.
Fixed regression in plain W32 build.
2010-11-02 16:27:46 +00:00
Marcus Brinkmann
b65638692e 2010-10-28 Marcus Brinkmann <marcus.brinkmann@ruhr-uni-bochum.de>
* opassuan.c (gpgme_op_assuan_transact_ext): Fix uninitialized
	value use.  Reported by Marc Mutz.
2010-10-28 14:00:14 +00:00
Werner Koch
de9f0b932e Fix last change 2010-10-07 12:54:17 +00:00
Werner Koch
c2ef39811d Enable debugging feature for W32CE.
kFreeBSD portability fix.
2010-10-07 10:58:51 +00:00
Werner Koch
b927279603 Return GPG_ERR_MISSING_ISSUER_CERT. 2010-09-16 14:17:50 +00:00
Werner Koch
bc22c2098d Add a new error code. 2010-09-16 13:39:00 +00:00
Marcus Brinkmann
c828c9d9a4 2010-09-02 Marcus Brinkmann <marcus@g10code.de>
* error.c (gpgme_err_code_to_errno): Fix cut and paste bug (thanks
	to Marc Mutz).
2010-09-02 21:33:26 +00:00
Marcus Brinkmann
03c7412e47 2010-09-01 Marcus Brinkmann <marcus@g10code.de>
* w32-io.c: Revert change from 2009-06-18, as it created a race
        condition.
2010-09-01 00:46:19 +00:00
Werner Koch
a8cf3688ed Change for gpg-error change. 2010-08-19 13:41:05 +00:00
Marcus Brinkmann
15a3f59481 2010-08-18 Marcus Brinkmann <marcus@g10code.de>
* gpgme.def: Add gpgme_err_code_from_syserror and gpgme_err_set_errno.
        * libgpgme.vers: Likewise.
        * gpgme.h.in (gpgme_error_from_errno): Fix return type to
        gpgme_error_t.
	(gpgme_err_code_from_syserror, gpgme_err_set_errno): New prototype.
	(gpgme_error_from_syserror): New inline function (why are
        gpgme_err_make_from_errno and gpgme_error_from_errno not inline
        functions?).
        * error.c (gpgme_error_from_errno): Fix return type to gpgme_error_t.
        (gpgme_err_set_errno, gpgme_err_code_from_syserror): New functions.
2010-08-18 14:14:27 +00:00
Marcus Brinkmann
bfd550e0d9 Are you ready already? 2010-08-04 07:47:05 +00:00
Marcus Brinkmann
cf2d82c41c Too embarrassing for a changelog entry. 2010-08-04 07:40:33 +00:00
Marcus Brinkmann
6aa92258ce 2010-08-03 Marcus Brinkmann <marcus@g10code.de>
* gpgme-tool.c (result_encrypt_to_xml, result_sign_to_xml)
	(result_verify_to_xml, result_import_to_xml)
        (result_genkey_to_xml):	Check vigorously for null pointers.
2010-08-03 09:16:01 +00:00
Marcus Brinkmann
6e5c9be0b6 2010-08-03 Marcus Brinkmann <marcus@g10code.de>
* w32-io.c (GPGCEDEV_IOCTL_ASSIGN_RVID): New macro.
        (_gpgme_io_spawn): Use ASSIGN_RVID.
2010-08-03 09:01:24 +00:00
Werner Koch
f89d122607 comment typo fixes 2010-06-29 17:13:07 +00:00
Marcus Brinkmann
6181854e4d 2010-06-11 Marcus Brinkmann <marcus@g10code.de>
* w32-io.c (_gpgme_io_spawn): Remove debug printf.
2010-06-10 23:29:06 +00:00
Marcus Brinkmann
f5d82bf1df 2010-06-10 Marcus Brinkmann <marcus@g10code.de>
* gpgme-tool.c (gpgme_server): Use special hack for Windows CE to
	get at stdin and stdout.
2010-06-10 17:29:43 +00:00
Marcus Brinkmann
99c855353f 2010-06-10 Marcus Brinkmann <marcus@g10code.de>
* engine-gpgsm.c (gpgsm_new): Translate returned achild_fds back
	to child_fds.
2010-06-10 16:13:14 +00:00
Marcus Brinkmann
dbb1112da1 2010-06-10 Marcus Brinkmann <marcus@g10code.de>
* debug.h (TRACE_SUC6): New macro.
	* w32-io.c (MAX_SLAFD): New macro.
	(fd_table): New static variable.
	(new_fd, release_fd): New functions.
	(fd_to_handle, handle_to_fd, handle_to_socket): Remove macros.
	(MAX_READERS, MAX_WRITERS): Increase to 64.
	(notify_table): Increase to MAX_SLAFD.
	(struct reader_context_s, struct writer_context_s): Add member
	file_sock.
	(reader, writer): Use file_hd vs file_sock to decide if socket
	operations to use.  Remove auto-detect mode.
	(create_reader, create_writer): Set file_sock.  Unblock pending
	thread only if this is a pipe fd.
	(_gpgme_io_pipe): Allocate fds from table and return slot indices
	instead of windows handles.  This allows to properly handle RVIDs.
	(_gpgme_io_close): Handle dup'ed file descriptors.
	(build_commandline) [HAVE_W32_SYSTEM]: Use RVID from fd table now.
	(_gpgme_io_spawn): Use fd table now.
	(_gpgme_io_fd2str): Use RVID from fd table now.
	(_gpgme_io_dup): Implement using fd table.
	(_gpgme_io_socket): Allocate fds from table.
	(_gpgme_io_connect): Use fd from table.
2010-06-10 13:49:19 +00:00
Marcus Brinkmann
b243c4263e * debug.h (TRACE_SUC6): New macro. 2010-06-10 13:41:12 +00:00
Marcus Brinkmann
9386a5e760 2010-06-09 Marcus Brinkmann <marcus@g10code.de>
* w32-io.c [HAVE_W32CE_SYSTEM]: Include assuan.h and winioctl.h.
	(GPGCEDEV_IOCTL_UNBLOCK) [HAVE_W32CE_SYSTEM]: Define.
	(set_synchronize) [HAVE_W32CE_SYSTEM]: Stub it out.
	(is_socket): Allow to return -1 for auto-detect (old behaviour).
	(is_socket) [HAVE_W32CE_SYSTEM]: Return -1.
	(reader): Handle auto-detect case.  Handle ctx->stop_me before
	checking for EOF.
	(destroy_reader) [HAVE_W32CE_SYSTEM]: Unblock a pending reader.
	(writer): Handle auto-detect case.  Handle ctx->stop_me with
	ERROR_BUSY.
	(destroy_writer) [HAVE_W32CE_SYSTEM]: Unblock a pending writer.
	(_gpgme_io_pipe) [HAVE_W32CE_SYSTEM]: Implement in terms of a
	half-pipe.
	(build_commandline) [HAVE_W32CE_SYSTEM]: New function.
	(_gpgme_io_spawn) [HAVE_W32CE_SYSTEM]: Implement it differently
	for this platform.
	(_gpgme_io_fd2str) [HAVE_W32CE_SYSTEM]: Implement it for RVIDs.
	(_gpgme_io_dup) [HAVE_W32CE_SYSTEM]: Stub it out.
2010-06-09 13:33:31 +00:00
Marcus Brinkmann
13774269c0 2010-06-09 Marcus Brinkmann <marcus@g10code.de>
* gpgme-tool.c (result_add_timestamp): Add missing NULL argument.
	(result_sign_to_xml): Protect against NULL fingerprint.
	(struct server): New members input_fd, input_filename,
	input_stream output_fd, output_filename, output_stream,
	message_filename, message_stream.
	(server_reset_fds): Deallocate those.
	(server_parse_fd): New function.
	(server_data_obj): Take optional filename argument and direction
	argument.  Also take new argument to return a filestream that
	needs to be closed after destroying the data object.
	Change all callers, too.
	(input_notify, output_notify): Removed.
	(cmd_input, cmd_output): New functions.
	(gpgme_server): Do not register input and output notifier.
	(register_commands): Use cmd_input and cmd_output.
	(cmd_message): Rewritten to use server_parse_fd.
	(cmd_delete, cmd_keylist): Fix inverted option check.
	(main) [HAVE_W32CE_SYSTEM]: Sleep a bit to work around bug in ssh.
2010-06-09 13:23:30 +00:00
Marcus Brinkmann
3029f454e3 2010-06-09 Marcus Brinkmann <marcus@g10code.de>
* genkey.c (gpgme_op_genkey): Return err with TRACE_ERR.
2010-06-09 13:14:44 +00:00
Marcus Brinkmann
9f77c2541c 2010-05-12 Marcus Brinkmann <marcus@g10code.de>
* conversion.c (_gpgme_timegm) [HAVE_W32_SYSTEM]: New static
	function.
	(_gpgme_parse_timestamp) [HAVE_W32_SYSTEM]: Use it.
2010-05-12 18:20:36 +00:00
Marcus Brinkmann
8d27defa02 2010-05-12 Marcus Brinkmann <marcus@g10code.de>
* configure.ac: Check for setlocale.

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

	* gpgme-tool.c (main): Protect call to setlocale with
	HAVE_SETLOCALE.
2010-05-12 17:40:08 +00:00
Marcus Brinkmann
ca3e5c63b9 2010-05-12 Marcus Brinkmann <marcus@g10code.de>
* Makefile.am (system_components): Remove custom cppflags from
	RCCOMPILE (because gpg-error adds -idirafter that makes RC bail.
	[HAVE_W32CE_SYSTEM]: Add w32-ce.h and w32-ce.c, clear
	libexec_PROGRAMS.
	* w32-ce.h, w32-ce.c: New files.
2010-05-12 17:21:36 +00:00