gpgme.git
4 years agoRelease 1.4.1. gpgme-1.4.1
Werner Koch [Wed, 1 May 2013 11:51:27 +0000 (13:51 +0200)]
Release 1.4.1.

* configure.ac: Bump LT version to C20/A9/R1.

4 years agoDisable fd-passing for Apple.
Werner Koch [Wed, 1 May 2013 11:47:41 +0000 (13:47 +0200)]
Disable fd-passing for Apple.

* configure.ac: Disable fd-passing by default for Apple.
--

We have not yet tracked down the problem, thus we revert to the
pre-1.4 behaviour for Apple.

GnuPG-bug-id: 1483

4 years agoAllow reading of long gpgconf output lines.
Werner Koch [Tue, 30 Apr 2013 16:09:13 +0000 (18:09 +0200)]
Allow reading of long gpgconf output lines.

* src/engine-gpgconf.c (gpgconf_read): Rewrite to allow for line
lengths up to 64k.

4 years agoSyntax fix for gpgme.texi.
Werner Koch [Tue, 30 Apr 2013 16:05:04 +0000 (18:05 +0200)]
Syntax fix for gpgme.texi.

--

This fixes commit 12374cbecede047accd2d2267bba5927037ed16c.

4 years agoFix for i686-w64-mingw32.
Werner Koch [Mon, 29 Apr 2013 07:58:57 +0000 (09:58 +0200)]
Fix for i686-w64-mingw32.

* configure.ac (NEED__FILE_OFFSET_BITS): Do not define under Windows.

4 years agoExplain the GPGME_DEBUG variable.
Werner Koch [Tue, 16 Apr 2013 16:30:20 +0000 (18:30 +0200)]
Explain the GPGME_DEBUG variable.

--

4 years agoPost release version number bump.
Werner Koch [Tue, 26 Feb 2013 17:32:08 +0000 (18:32 +0100)]
Post release version number bump.

--

4 years agoRelease 1.4.0. gpgme-1.4.0
Werner Koch [Tue, 26 Feb 2013 16:28:04 +0000 (17:28 +0100)]
Release 1.4.0.

* configure.ac: Bump LT version to C20/A9/R0.

4 years agoEnable FD passing and thus building of the UI-server.
Werner Koch [Tue, 26 Feb 2013 16:25:20 +0000 (17:25 +0100)]
Enable FD passing and thus building of the UI-server.

* configure.ac: Make --enable-fd-passing the default.
* src/engine-uiserver.c (_gpgme_engine_ops_uiserver): Syntax fix.

4 years agow32: Hacks for building with 32 bit mingw64.
Werner Koch [Tue, 26 Feb 2013 16:06:39 +0000 (17:06 +0100)]
w32: Hacks for building with 32 bit mingw64.

* configure.ac (INSERT__TYPEDEFS_FOR_GPGME_H): Add hacks for 32 bit
mingw64.
* src/util.h [W32]: Include winsock2.h before windows to make mingw64
happy.
* src/w32-util.c (_WIN32_IE): Need to use 5.1 for mingw64.
--

It is not clear to me what mingw64 wants to achieve with their POSIX
hacks. In particular the off64_t stuff looks quite strange given that
Windows has a pretty stable API for close to 2 decades.  Thus I can't
say whether it will really work when build with that toolchain.

4 years agoImprove missing libgpg-error reporting in configure.
Werner Koch [Tue, 26 Feb 2013 14:58:51 +0000 (15:58 +0100)]
Improve missing libgpg-error reporting in configure.

* configure.ac (NEED_GPG_ERROR_VERSION): New.  Improve reporting for
missing libgpg-error.

4 years agoChange the various version numbers to the new scheme.
Werner Koch [Tue, 26 Feb 2013 16:10:18 +0000 (17:10 +0100)]
Change the various version numbers to the new scheme.

* configure.ac: Rename my_foo variables to mym4_foo variables to make
clear that they are processed by m4.
(VERSION_NUMBER): New ac_subst.
(AH_BOTTOM): Add CRIGHTBLURB macro.
(BUILD_REVISION, BUILD_FILEVERSION, BUILD_TIMESTAMP): Change them to
work similar to libgpg-error et al.
* src/versioninfo.rc.in: Remove use of BUILD_NUMBER and get it in line
with gpg-error et al.
* src/version.c (cright_blurb): New.
(gpgme_check_version_internal): Add magic to display the above
information.
* tests/t-version.c (main): Add option --verbose.

4 years agoUpdate GnuPG related m4 files.
Werner Koch [Tue, 26 Feb 2013 12:33:28 +0000 (13:33 +0100)]
Update GnuPG related m4 files.

* m4/gpg-error.m4: Update from libgpg-error.
* m4/libassuan.m4: Update from libassuan.

4 years agoUpdate helper scripts.
Werner Koch [Tue, 26 Feb 2013 15:14:52 +0000 (16:14 +0100)]
Update helper scripts.

* configure.ac: Use AC_CONFIG_AUX_DIR.  Remove args from
AM_INIT_AUTOMAKE.  Replace AM_CONFIG_HEADER by AC_CONFIG_HEADER.
* compile, config.guess, config.sub, depcomp, install-sh, ltmain.sh
* mkinstalldirs, texinfo.texi: Move to build-aux/ and update from
gnulib (c042abf).
* build-aux/mdate-sh, build-aux/missing: Install via automake -a -c.
Update autogen.sh for changed config dir.
* autogen.sh: Adjust for scripts dir change.  Update W32 toolprefix
list.

4 years agoRemove included gitlog-to-changelog.
Werner Koch [Mon, 25 Feb 2013 13:40:36 +0000 (14:40 +0100)]
Remove included gitlog-to-changelog.

* build-aux/gitlog-to-changelog: Remove.
* configure.ac (GITLOG_TO_CHANGELOG): Default to just
gitlog-to-changelog.

4 years agoDeclare next version to be 1.4.0
Werner Koch [Tue, 12 Feb 2013 13:06:07 +0000 (14:06 +0100)]
Declare next version to be 1.4.0

--

4 years agoAdd macro GPGME_VERSION_NUMBER.
Werner Koch [Tue, 12 Feb 2013 13:02:08 +0000 (14:02 +0100)]
Add macro GPGME_VERSION_NUMBER.

* src/gpgme.h.in (GPGME_VERSION_NUMBER): New.
* configure.ac (my_version_major, my_version_minor)
(my_version_micro): New m4 macros.
(my_version): Build from new m4 macros.
(VERSION_NUMBER): New ac_subst.

4 years agoAdd public function gpgme_get_pinentry_mode.
Werner Koch [Tue, 12 Feb 2013 09:42:54 +0000 (10:42 +0100)]
Add public function gpgme_get_pinentry_mode.

* src/gpgme.c (gpgme_get_pinentry_mode): New.

4 years agogpgme_tool: Support GPG's new pinentry-mode.
Werner Koch [Thu, 7 Feb 2013 20:03:02 +0000 (21:03 +0100)]
gpgme_tool: Support GPG's new pinentry-mode.

* src/gpgme-tool.c (log_error): Do not always print the error source.
(gt_set_pinentry_mode): New.
(server_passphrase_cb): New.
(cmd_pinentry_mode): New.
(register_commands): Add cmd_pinentry_mode.
(options): Add option --gpg-binary.
(struct args): Add field gpg-binary.
(parse_options, main): Implement that option.

4 years agoAdd public function gpgme_set_pinentry_mode.
Werner Koch [Thu, 7 Feb 2013 19:59:16 +0000 (20:59 +0100)]
Add public function gpgme_set_pinentry_mode.

* src/gpgme.c (gpgme_set_pinentry_mode): New.
* src/gpgme.h.in (gpgme_pinentry_t): New.
(gpgme_set_pinentry_mode): New.
* src/context.h (struct gpgme_context): Add field pinentry_mode.
* src/engine-backend.h (struct engine_ops): Add field
set_pinentry_mode.
* src/engine-gpg.c (struct engine_gpg): Add field pinentry_mode.
(build_argv): Implement pinentry_mode.
(gpg_set_pinentry_mode): New.
(_gpgme_engine_ops_gpg): Register gpg_set_pinentry_mode.

--

Note that this new fucntion may only be used with gpg 2.1.

4 years agoAdd public function gpgme_io_writen.
Werner Koch [Thu, 7 Feb 2013 19:51:29 +0000 (20:51 +0100)]
Add public function gpgme_io_writen.

* src/gpgme.c (gpgme_io_read): New.
--

This is a writen style variant for gpgme_io_write.  It is often easier
to use this one in passphrase and edit callbacks.

4 years agoUse gpg_error_from_syserror instead of directly accessing errno.
Werner Koch [Wed, 6 Feb 2013 16:35:40 +0000 (17:35 +0100)]
Use gpg_error_from_syserror instead of directly accessing errno.

--

Also fixed a couple of minor thing; e.g. save the error before calling
cleanup functions.  Do not save the errno if only free is called
in between.

5 years agoImprove parsing of the GIT revision number.
Werner Koch [Fri, 16 Nov 2012 12:50:58 +0000 (13:50 +0100)]
Improve parsing of the GIT revision number.

* configure.ac (git_revision): Use git rev-parse.

5 years agoFix non-portable use of chmod in autogen.sh.
Werner Koch [Fri, 16 Nov 2012 12:45:14 +0000 (13:45 +0100)]
Fix non-portable use of chmod in autogen.sh.

* autogen.sh: Remove option -c from chmod.

5 years agoMake _gpgme_encode_percent_string work for memory buffers.
Werner Koch [Thu, 15 Nov 2012 10:14:58 +0000 (11:14 +0100)]
Make _gpgme_encode_percent_string work for memory buffers.

* src/conversion.c (D_gpgme_encode_percent_string): Remove stray
semicolon.  Reported by Xi Wang.
--
Obviously this function is not used with a supplied LEN argument != 0.

5 years agoMake local variables configure hack more robust
Werner Koch [Wed, 24 Oct 2012 14:51:47 +0000 (16:51 +0200)]
Make local variables configure hack more robust

* configure.ac (emacs_local_vars_begin): Use extra m4 quoting so that
newer Emscasen won't take it up as Local Variables for this file.

5 years agoFix ttyname problem on Android.
Werner Koch [Wed, 24 Oct 2012 14:44:34 +0000 (16:44 +0200)]
Fix ttyname problem on Android.

* configure.ac: Define macro and conditional HAVE_ANDROID_SYSTEM.
* m4/gnupg-ttyname.m4: Force use of replacement on Android.
* src/ttyname_r.c: Ditto.
--

Android's bionic lib has no working ttyname_r() nor ttyname().  Using
them anyway will print

  FIX ME! implement ttyname_r() bionic/libc/bionic/stubs.c:466

Thus we force the use of our replacement code which simply return
"/dev/tty".

5 years agotests: Adhere to the docs and call gpgme_check_version.
Werner Koch [Wed, 24 Oct 2012 14:07:31 +0000 (16:07 +0200)]
tests: Adhere to the docs and call gpgme_check_version.

* tests/t-engine-info.c: Call gpgme_check_version.

5 years agoTrace the use of GPG_ERR_INV_ENGINE.
Werner Koch [Fri, 19 Oct 2012 09:23:39 +0000 (11:23 +0200)]
Trace the use of GPG_ERR_INV_ENGINE.

* src/debug.h: Include "gpgme.h"
(_gpgme_trace_gpgme_error): New.
(trace_gpg_error): New macro.  Use it in all files where we return
GPG_ERR_INV_ENGINE; also "include debug.h" as needed.
--

This is a pretty common error code but often it is hard to figure out
the actual cause.  With debug level 4 we now print the file name and
line number where this error code is generated by gpgme.  Along with
the git revision printed in the first log lines, this should give us
an easier way to track down the problems related to this error code.

5 years agoAvoid warning about initialized but not used variable
Werner Koch [Fri, 19 Oct 2012 09:18:08 +0000 (11:18 +0200)]
Avoid warning about initialized but not used variable

* src/engine-gpgsm.c (gpgsm_set_fd): Do not set DIR if not needed.

5 years agogpgme-tool: Use membuf functions to build up strings.
Werner Koch [Thu, 11 Oct 2012 15:02:50 +0000 (17:02 +0200)]
gpgme-tool: Use membuf functions to build up strings.

* src/gpgme-tool.c (clear_membuf, init_membuf, put_membuf)
(put_membuf_str, get_membuf, peek_membuf): Add membuf functions.
Take from GnuPG master's common/membuf.[ch] and patch for our use.
(result_xml_escape): Rewrite using new functions.
--

First counting, then allocating, and finally copying data is prone to
errors.  We better use the membuf functions which make it much easier.

5 years agogpgme-tool: Change license from LPGLv2+ to GPLv3+
Werner Koch [Thu, 11 Oct 2012 14:54:58 +0000 (16:54 +0200)]
gpgme-tool: Change license from LPGLv2+ to GPLv3+

* src/gpgme-tool.c: Change license notice.
--

gpgme-tool.c is a standalone program, thus it makes no sense to keep
it under the LGPL.  We already had the manual under GPLv3+.

5 years agogpgme-tool: escape special characters in output XML data (<, >, and &).
W. Trevor King [Sat, 6 Oct 2012 15:30:21 +0000 (11:30 -0400)]
gpgme-tool: escape special characters in output XML data (<, >, and &).

[[PGP Signed Part:Undecided]]
src/gpgme-tool.c (result_xml_escape_replacement, result_xml_escape):
New.
(result_xml_tag_data): Use result_xml_escape() to escape data.
(result_add_error): Use unescaped < and >.
--

This is a general solution for generating valid XML, but the specific
output that inspired the change was from the KEYLIST command:

  <uid>William Trevor King <wking@tremily.us></uid>

Now the uids are properly escaped:

   <uid>William Trevor King &lt;wking@tremily.us&gt;</uid>

Signed-off-by: W. Trevor King <wking@tremily.us>
5 years agogpgme-tool: Fix chain_id -> chain-id in KEYLIST XML.
W. Trevor King [Sat, 6 Oct 2012 13:33:30 +0000 (09:33 -0400)]
gpgme-tool: Fix chain_id -> chain-id in KEYLIST XML.

[[PGP Signed Part:Undecided]]
src/gpgme-tool.c (cmd_keylist): Use <chain-id> instead of <chain_id>.
--
All the other tags map struct attribute underscores to hyphens, so
fixing <chain_id> follows the priciple of least surprise.

Signed-off-by: W. Trevor King <wking@tremily.us>
5 years agogpgme-tool: Return more detailed XML from KEYLIST
W. Trevor King [Fri, 28 Sep 2012 06:31:13 +0000 (08:31 +0200)]
gpgme-tool: Return more detailed XML from KEYLIST

src/gpgme-tool.c (cmd_keylist): Convert output from a list of
to more detailed XML.
(xml_preamble1, xml_preamble2, xml_end): Make global.
(result_add_protocol, result_add_validity): New functions for
generating XML from GPGME types.
(result_add_string): Treat NULL strings as "".
(result_xml_tag_data): Make 'data' a 'const char' so we can use the
value returned by gpgme_get_protocol_name directly.
--

This is a first pass at returning most of the gpgme_key_t data from the
KEYLIST call.

Signed-off-by: W. Trevor King <wking@tremily.us>
5 years agogpgme-tool: Initialize input_fd and output_fd
W. Trevor King [Wed, 26 Sep 2012 23:26:00 +0000 (19:26 -0400)]
gpgme-tool: Initialize input_fd and output_fd

* src/gpgme-tool.c (gpgme_server): Initialize input_fd and output_fd.

Signed-off-by: W. Trevor King <wking@tremily.us>
5 years agogpgme-tool: Fix handling of file descriptors
Werner Koch [Wed, 26 Sep 2012 07:37:22 +0000 (09:37 +0200)]
gpgme-tool: Fix handling of file descriptors

* src/gpgme-tool.c (server_reset_fds): Use close/CloseHandle instead
of the assuan close functions.
(_cmd_decrypt_verify, _cmd_sign_encrypt, cmd_verify, cmd_import)
(cmd_export, cmd_genkey, cmd_getauditlog): Use SERVER object instead
of assuan_get_*_fd functions.
--

Although we used our own handlers for INPUT and OUTPUT, we still used
assuan_get_input_fd, assuan_get_output_fd and their close functions.
That clearly can't work because libassuan does not have any values for
them.

5 years agoAdd DCO file
Werner Koch [Tue, 25 Sep 2012 17:21:00 +0000 (19:21 +0200)]
Add DCO file

--

5 years agoDocument contribution rules.
Werner Koch [Tue, 25 Sep 2012 17:19:13 +0000 (19:19 +0200)]
Document contribution rules.

* doc/HACKING (License policy): New.
* doc/DCO: New.
* AUTHORS: Change maintainer address.

5 years agoAdd gpgme_set_global_flag to help debugging
Werner Koch [Tue, 25 Sep 2012 13:38:26 +0000 (15:38 +0200)]
Add gpgme_set_global_flag to help debugging

* src/gpgme.c (gpgme_set_global_flag): New.
* src/gpgme.h.in (gpgme_set_global_flag): New.
* src/gpgme.def, src/libgpgme.vers: Add new public function.
* src/debug.c (envvar_override): New.:
(_gpgme_debug_set_debug_envvar): New.
(debug_init): Take ENVVAR_OVERRIDE in account.
--

On Android envvars can't be used, thus we need another way to enable
GPGME debugging.  The new function allows this and may be used in the
future to implement similar things.

5 years agoRemove all trailing whitespace from source files
Werner Koch [Tue, 25 Sep 2012 13:29:49 +0000 (15:29 +0200)]
Remove all trailing whitespace from source files

--
Command used:  sed -i 's,[ \t]*$,,' FILE

5 years agoAdd two recent contributors.
Marcus Brinkmann [Sat, 28 Jul 2012 20:09:01 +0000 (22:09 +0200)]
Add two recent contributors.

5 years agoFix sign error in position calculation for mem_seek.
Marcus Brinkmann [Sat, 28 Jul 2012 20:06:09 +0000 (22:06 +0200)]
Fix sign error in position calculation for mem_seek.

* data-mem.c (mem_seek): Fix sign error in position calculation.

5 years agoAllow null context on gpgme_set_locale.
Marcus Brinkmann [Fri, 27 Jul 2012 23:17:03 +0000 (01:17 +0200)]
Allow null context on gpgme_set_locale.

* gpgme.c (gpgme_set_locale): Allow CTX to be a null pointer.

5 years agoDo not include the removed file status-table.h
Werner Koch [Fri, 13 Jul 2012 12:00:22 +0000 (14:00 +0200)]
Do not include the removed file status-table.h

* src/engine-uiserver.c: Remove status-table.h which is not anymore
built.  Fixes bug#1412.
--

The file was actually removed from the code by 885243e0 but for
unknown reasons the missing file was not reported by "make distcheck".

5 years agoMake handling of new conf values more robust (bug#1413).
Werner Koch [Fri, 13 Jul 2012 08:59:22 +0000 (10:59 +0200)]
Make handling of new conf values more robust (bug#1413).

* src/engine-gpgconf.c (arg_to_data): Allow for NULL as value.string.
--

I was not able to replicate the problem.  However this patch makes the
code more robust and tolerates errors by the user.  IT should fix the
problem at hand.

5 years agoPost release updates.
Werner Koch [Wed, 2 May 2012 09:30:57 +0000 (11:30 +0200)]
Post release updates.

--

5 years agoRelease 1.3.2. gpgme-1.3.2
Werner Koch [Wed, 2 May 2012 08:58:52 +0000 (10:58 +0200)]
Release 1.3.2.

* configure.ac: Bump LT version to C19/A8/R1.

* configure.ac (GITLOG_TO_CHANGELOG): Define.
* Makefile.am (gen-ChangeLog): Use it.

5 years agoRemove unused pth stuff from gpgme-config.
Werner Koch [Wed, 2 May 2012 08:43:22 +0000 (10:43 +0200)]
Remove unused pth stuff from gpgme-config.

* src/gpgme-config.in: Remove unused pth stuff.

5 years agoFix minor documentation problem.
Werner Koch [Wed, 2 May 2012 08:35:47 +0000 (10:35 +0200)]
Fix minor documentation problem.

--
Fixes bug#1404.
(There is mentioned data field “recipient”, but actual data field
name is “recipients”.)

5 years agoUpdate signature summary for the case of missing X.509 keys.
Werner Koch [Wed, 2 May 2012 08:30:09 +0000 (10:30 +0200)]
Update signature summary for the case of missing X.509 keys.

* src/verify.c (gpgme_op_verify_result): Update summary field.
--

This is actually a hack to solve the problem that GPGME currently does
not emit ERRSIG for a missing public key.

5 years agoFix timestamp parsing for y2038 hack.
Werner Koch [Mon, 30 Apr 2012 15:46:15 +0000 (17:46 +0200)]
Fix timestamp parsing for y2038 hack.

* src/conversion.c (_gpgme_parse_timestamp): Set ENDP before year 2038
check.

5 years agoRemove trailing white space
Werner Koch [Mon, 30 Apr 2012 15:42:53 +0000 (17:42 +0200)]
Remove trailing white space

--

5 years ago.gitignore: flesh out rules and add subdirectory-.gitignores.
W. Trevor King [Thu, 12 Apr 2012 17:51:48 +0000 (13:51 -0400)]
.gitignore: flesh out rules and add subdirectory-.gitignores.

5 years agostatus-table.c: include string.h for strcmp.
W. Trevor King [Thu, 12 Apr 2012 17:51:49 +0000 (13:51 -0400)]
status-table.c: include string.h for strcmp.

* status-table.c: include string.h to avoid `warning: implicit
declaration of function 'strcmp'`.

5 years agogpgme-tool: add help messages for a number of commands.
W. Trevor King [Tue, 27 Mar 2012 19:10:02 +0000 (15:10 -0400)]
gpgme-tool: add help messages for a number of commands.

* src/gpgme-tool.c (hlp_engine, hlp_sub_protocol, hlp_armor, hlp_textmode,
hlp_include_certs, hlp_keylist_mode, hlp_input, hlp_output, hlp_message,
hlp_recipient, hlp_signer, hlp_signers_clear, hlp_decrypt, hlp_decrypt_verify,
hlp_encrypt, hlp_sign_encrypt, hlp_sign, hlp_verify, hlp_import): New strings.
(hlp_protocol): Fix typo.
(register_commands): Add documentation strings.
(doc): Mention Assuan.

5 years agouiserver.texi: fix decryption -> encryption typo in PREP_ENCRYPT discussion.
W. Trevor King [Tue, 27 Mar 2012 19:10:01 +0000 (15:10 -0400)]
uiserver.texi: fix decryption -> encryption typo in PREP_ENCRYPT discussion.

* doc/uiserver.texi (PREP_ENCRYPT): Fix documentation.

5 years agoUpdate Werner Koch's distribution signing key in the README.
W. Trevor King [Tue, 27 Mar 2012 19:10:00 +0000 (15:10 -0400)]
Update Werner Koch's distribution signing key in the README.

* README: Update signing key.

5 years agoDo not rely on glibc name of syscall.
Marcus Brinkmann [Mon, 12 Mar 2012 15:37:26 +0000 (16:37 +0100)]
Do not rely on glibc name of syscall.

* src/ath.c (ath_self): Use __NR_gettid, not SYS_gettid.

5 years agoUpdate config.guess and config.sub to latest version.
Marcus Brinkmann [Mon, 12 Mar 2012 15:00:29 +0000 (16:00 +0100)]
Update config.guess and config.sub to latest version.

* config.guess, config.sub: Update to latest version.

5 years agoRework status table to be less dynamically generated.
Marcus Brinkmann [Tue, 14 Feb 2012 12:03:46 +0000 (13:03 +0100)]
Rework status table to be less dynamically generated.

* src/Makefile.am (EXTRA_DIST): Remove mkstatus.
(BUILT_SOURCE, MOSTLYCLEANFILES): Remove.
(main_sources): Remove status-table.h, extra-stati.h.
Add status-table.c.
(status-table.h): Remove rules for built source.
* src/decrypt.c: Don't include extra-stati.h.
* src/engine-gpg.c: Don't include status-table.h.
(status_cmp): Remove function.
(read_status): Use _gpgme_parse_status.
* src/engine-gpgsm.c: Don't include status-table.h.
(status_cmp, parse_status): Remove function.
(gpgsm_assuan_simple_command, status_handler): Use _gpgme_parse_status.
* src/engine-uiserver.c: Don't include status-table.h.
(status_cmp, parse_status): Remove function.
(uiserver_assuan_simple_command, status_handler): Use
_gpgme_parse_status.
* src/gpgme.h.in (gpgme_status_code_t): Add
GPGME_STATUS_DECRYPTION_INFO.
* src/util.h (_gpgme_status_init,_gpgme_parse_status): New declaration.
* src/status-table.c: New file.
* src/extra-stati.h, src/mkstatus: Files removed.
* version.c (do_subsystem_inits): Call _gpgme_status_init.

5 years agoUse gpgme interface for error handling to avoid linking with gpg-error.
Marcus Brinkmann [Wed, 8 Feb 2012 14:26:17 +0000 (15:26 +0100)]
Use gpgme interface for error handling to avoid linking with gpg-error.

* tests/t-data.c, tests/run-export.c, tests/run-keylist.c,
tests/run-support.h, tests/run-verify.c, tests/gpg/t-decrypt-verify.c,
tests/gpg/t-edit.c, tests/gpg/t-eventloop.c, tests/gpg/t-keylist-sig.c,
tests/gpg/t-keylist.c, tests/gpg/t-support.h, tests/gpg/t-trustlist.c,
tests/gpg/t-verify.c, tests/gpg/t-wait.c, tests/gpgsm/cms-decrypt.c,
tests/gpgsm/cms-keylist.c, tests/gpgsm/t-keylist.c,
tests/gpgsm/t-support.h, tests/gpgsm/t-verify.c,
tests/opassuan/t-command.c: Use gpgme interface for gpg-error functions.

5 years agoLink the thread test to pthread.
Marcus Brinkmann [Wed, 8 Feb 2012 14:19:33 +0000 (15:19 +0100)]
Link the thread test to pthread.

* tests/gpg/Makefile.am (t_thread1_LDADD): Add -lpthread.

5 years agoLink gpgme-tool directly to libassuan, as it uses its interface.
Marcus Brinkmann [Wed, 8 Feb 2012 14:18:11 +0000 (15:18 +0100)]
Link gpgme-tool directly to libassuan, as it uses its interface.

* src/Makefile.am (gpgme_tool_LDADD): Add @LIBASSUAN_LIBS@.

6 years agoSupport the mingw-w64 toolchain.
Werner Koch [Thu, 19 Jan 2012 17:44:39 +0000 (18:44 +0100)]
Support the mingw-w64 toolchain.

* autogen.sh (build-w32): Add i686-w64-mingw32 to the toolprefix.

6 years agoFix Solaris problems with ttyname_r.
Werner Koch [Thu, 19 Jan 2012 17:43:10 +0000 (18:43 +0100)]
Fix Solaris problems with ttyname_r.

* m4/gnupg-ttyname.m4: New.  Based on ttyname_r from gnulib.
* src/ttyname_r.c (_gpgme_ttyname_r): Rename from ttyname_r.
Implement hacks required for Solaris and possible other non-fully
Posix systems.
* src/util.h: Include unistd.h.  Redefine ttyname_r depending on
REPLACE_TTYNAME_R and put it into the gpgme name space.
--

Unfortunately we cant not use the ttyname_r replacement from gnulib
because we want to keep GPGME LGPLv2+.

6 years agoTry to make configure.ac a bit smaller.
Werner Koch [Thu, 19 Jan 2012 15:05:31 +0000 (16:05 +0100)]
Try to make configure.ac a bit smaller.

* configure.ac: Move header checks.

6 years agoFor W32 use a build number instead of abbreviated commit id.
Werner Koch [Thu, 19 Jan 2012 15:04:19 +0000 (16:04 +0100)]
For W32 use a build number instead of abbreviated commit id.

We would need to use a shortened commit id so that it fits into an 16
bit Windows variable.  Further it is a random number and not something
increasing.  Thus a build number made up from the day of the year and
the hour is much more useful to describe a build number for a specific
revision.
* configure.ac [W32]: Replace BUILD_REVISION by BUILD_NUMBER.
* src/versioninfo.rc.in: Ditto.

6 years agoAdjust configure.ac for modern autoconf.
Werner Koch [Thu, 19 Jan 2012 14:57:09 +0000 (15:57 +0100)]
Adjust configure.ac for modern autoconf.

* configure.ac: Minor cleanups.

6 years agoUpdate to libtool 2.4.2
Werner Koch [Thu, 19 Jan 2012 14:30:52 +0000 (15:30 +0100)]
Update to libtool 2.4.2

* ltmain.sh, m4/libtool.m4, m4/ltoptions.m4, m4/ltversion.m4,
* m4/lt~obsolete.m4: Update.

6 years agoAdd ttyname_r check macro from gnulib.
Werner Koch [Thu, 19 Jan 2012 13:58:22 +0000 (14:58 +0100)]
Add ttyname_r check macro from gnulib.

* m4/gnupg-ttyname.m4: New. Taken from current gnulib.

6 years agoGenerate the ChangeLog from commit logs.
Werner Koch [Fri, 2 Dec 2011 10:32:31 +0000 (11:32 +0100)]
Generate the ChangeLog from commit logs.

* build-aux/gitlog-to-changelog: New script.  Taken from gnulib.
* build-aux/git-log-fix: New file.
* build-aux/git-log-footer: New file.
* build-aux/git-hook/commit-msg: New script.
* doc/HACKING: New file.
* ChangeLog: New file.
* Makefile.am (EXTRA_DIST): Add new files.
(gen-ChangeLog): New.
(dist-hook): Run gen-ChangeLog.
* autogen.sh: Install commit-msg hook for git.

Rename all ChangeLog files to ChangeLog-2011.

6 years agoRemove support for libgpgme-pth.
Marcus Brinkmann [Tue, 25 Oct 2011 16:59:26 +0000 (18:59 +0200)]
Remove support for libgpgme-pth.

6 years agoPost-release.
Marcus Brinkmann [Mon, 4 Jul 2011 18:44:12 +0000 (20:44 +0200)]
Post-release.

6 years agoRelease 1.3.1 gpgme-1.3.1
Marcus Brinkmann [Thu, 16 Jun 2011 12:38:59 +0000 (14:38 +0200)]
Release 1.3.1

6 years agoCheck context pointers for null pointer on entry points.
Marcus Brinkmann [Thu, 26 May 2011 14:01:26 +0000 (16:01 +0200)]
Check context pointers for null pointer on entry points.

6 years agoFix I/O callback example.
Marcus Brinkmann [Thu, 12 May 2011 12:45:46 +0000 (14:45 +0200)]
Fix I/O callback example.

6 years agoCorrect key-gen example.
Marcus Brinkmann [Thu, 12 May 2011 12:42:18 +0000 (14:42 +0200)]
Correct key-gen example.

6 years agoClean up the tests correctly.
Marcus Brinkmann [Wed, 11 May 2011 00:32:20 +0000 (02:32 +0200)]
Clean up the tests correctly.

6 years agoUpdate NEWS file.
Marcus Brinkmann [Fri, 6 May 2011 15:46:03 +0000 (17:46 +0200)]
Update NEWS file.

6 years agoRemove complus support.
Marcus Brinkmann [Fri, 6 May 2011 15:07:35 +0000 (17:07 +0200)]
Remove complus support.

6 years agoRemove complus (10 years unused).
Marcus Brinkmann [Fri, 6 May 2011 11:28:11 +0000 (13:28 +0200)]
Remove complus (10 years unused).

6 years agoRemove unused macro GNUPG_FIX_HDR_VERSION.
Marcus Brinkmann [Fri, 6 May 2011 11:26:58 +0000 (13:26 +0200)]
Remove unused macro GNUPG_FIX_HDR_VERSION.

6 years agoMake sure an existing agent doesn't interfere with test suite generation.
Marcus Brinkmann [Fri, 6 May 2011 00:11:40 +0000 (02:11 +0200)]
Make sure an existing agent doesn't interfere with test suite generation.

6 years agoImprove import tests for GnuPG 2.1.
Marcus Brinkmann [Tue, 3 May 2011 22:52:11 +0000 (00:52 +0200)]
Improve import tests for GnuPG 2.1.

6 years agoUpdate GPGME test suite for use with GnuPG 2.1.
Marcus Brinkmann [Wed, 27 Apr 2011 10:56:19 +0000 (12:56 +0200)]
Update GPGME test suite for use with GnuPG 2.1.

6 years agoRequire autoconf 1.11
Werner Koch [Thu, 14 Apr 2011 17:23:04 +0000 (19:23 +0200)]
Require autoconf 1.11

This is because AM_SUBST_NOTMAKE is only offically supported since
this version of automake.

6 years agoAdd an AC_SUBST_NOTMAKE
Werner Koch [Wed, 6 Apr 2011 18:57:23 +0000 (20:57 +0200)]
Add an AC_SUBST_NOTMAKE

Without that the multiline INSERT__TYPEDEFS_FOR_GPGME_H would be
expanded in the Makefiles and mess them up.

6 years agogpgme-config cleanups and --host option
Werner Koch [Wed, 6 Apr 2011 18:10:45 +0000 (20:10 +0200)]
gpgme-config cleanups and --host option

gpgme-config.in: Add option --host.  Change options --cflags and
--libs to collapse duplicate include and lib dirs.  Try to put extra
libs at the end.

Note that gpgme.m4 has not yet been extended.

6 years agoUpdate gpg-error.m4
Werner Koch [Wed, 6 Apr 2011 12:16:52 +0000 (14:16 +0200)]
Update gpg-error.m4

6 years agoInsert platform dependent typedefs into gpgme.h
Werner Koch [Wed, 6 Apr 2011 11:45:15 +0000 (13:45 +0200)]
Insert platform dependent typedefs into gpgme.h

We already modify gpgme.h per playform and thus we can also get rid of
some #ifdefs.  The change does not change anything for current
platforms but should do the right think for W64.

Note that as per MS specs ssize_t is to be defined as LONG_PTR which
translates to a long on 32 bit platforms and to __int64 on 64 bit
Windows platforms.  We already used long in the past.  There seems to
be a problem with some versions of mingw32 which includes a ssize_t
type typedefed to int.  O(n 32 bit W32 platforms int and long are
identically.

6 years agoMerge branch 'master' of git+ssh://playfair.gnupg.org/git/gpgme
Werner Koch [Thu, 3 Feb 2011 19:51:36 +0000 (20:51 +0100)]
Merge branch 'master' of git+ssh://playfair.gnupg.org/git/gpgme

6 years agoAdd support for non-API GnuPG status codes.
Werner Koch [Thu, 3 Feb 2011 19:49:41 +0000 (20:49 +0100)]
Add support for non-API GnuPG status codes.

As an example stub code for DECRYTPION_INFO has been added.  Note
that the status codes in gpgme.h do only make sense for the edit
interactor interface and thus certain codes don't need to be part of
the public interface.

6 years agoFix socket implementation on Windows.
Marcus Brinkmann [Thu, 3 Feb 2011 11:38:28 +0000 (12:38 +0100)]
Fix socket implementation on Windows.

2011-02-03  Marcus Brinkmann  <marcus@g10code.com>

        * w32-io.c (_gpgme_io_socket): Return fd, not res.

6 years agoFix Windows port (spawn and assuan engine).
Marcus Brinkmann [Wed, 2 Feb 2011 13:07:05 +0000 (14:07 +0100)]
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.

6 years agoMerge commit 'a2b9adafe46c55a2c26dd46163055bbdf3526835'
Marcus Brinkmann [Wed, 2 Feb 2011 12:51:42 +0000 (13:51 +0100)]
Merge commit 'a2b9adafe46c55a2c26dd46163055bbdf3526835'

6 years ago2011-02-02 Marcus Brinkmann <mb@g10code.com>
Marcus Brinkmann [Wed, 2 Feb 2011 12:47:53 +0000 (13:47 +0100)]
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).

6 years agoFix gpgconf option change if not self-assigning.
Marcus Brinkmann [Fri, 21 Jan 2011 03:21:30 +0000 (04:21 +0100)]
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.

7 years agoTypo fixes spotted by Daiki Ueno.
Werner Koch [Fri, 7 Jan 2011 12:53:26 +0000 (13:53 +0100)]
Typo fixes spotted by Daiki Ueno.

7 years agoTypo fixes. Spotted by Daiki Ueno.
Werner Koch [Fri, 7 Jan 2011 12:52:31 +0000 (13:52 +0100)]
Typo fixes.  Spotted by Daiki Ueno.