Blame ChangeLog

Packit fc043f
2018-05-02  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.31.
Packit fc043f
	+ commit 10a984d25048a09d1c489224bae866372e8066a1
Packit fc043f
	* configure.ac: Set LT version to C24/A24/R2.
Packit fc043f
Packit fc043f
2018-05-01  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core,w32: Avoid recursive use of npth_unprotect.
Packit fc043f
	+ commit b26a227173e8e9b91be14f06ee781c6e214e50ff
Packit fc043f
	* src/w32-estream.c (reader): Use standard free.
Packit fc043f
	(writer): Ditto.
Packit fc043f
Packit fc043f
2018-05-01  emma peel  <emma.peel@riseup.net>
Packit fc043f
Packit fc043f
	po: new Spanish translation.
Packit fc043f
	+ commit 7e2517a29619c35257b38aa137b6772e471d7e4e
Packit fc043f
Packit fc043f
Packit fc043f
2018-04-30  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.30.
Packit fc043f
	+ commit cac048bf8454ade95a905f9d3840b1ec284fce20
Packit fc043f
	* configure.ac: Bump LT version to C24/A/24/R1.
Packit fc043f
Packit fc043f
	build: More release creation automation.
Packit fc043f
	+ commit d1d4c4f8eb9830bfb671054e1558342106ba9d8d
Packit fc043f
	* Makefile.am: Add release and sign-release targets.
Packit fc043f
Packit fc043f
	core: Fix gpgrt_poll for Windows under nPth.
Packit fc043f
	+ commit 4f45f3e0bb404b4a9787cb55ca154c6f60c1437b
Packit fc043f
	* src/estream.c (_gpgrt_poll) [W32]: Use syscall clamp.
Packit fc043f
Packit fc043f
2018-04-13  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	doc: Fix yat2m build for cross compilation.
Packit fc043f
	+ commit 792877a08ca7bc9d1377161dc9af374602a394cc
Packit fc043f
	* doc/Makefile.am: Fix target of yat2m-for-build.
Packit fc043f
Packit fc043f
2018-04-12  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	build: Check -lsocket -lnsl for Solaris.
Packit fc043f
	+ commit e35749023ca68de6f1f85d3072f7b36fd6f6fe7c
Packit fc043f
	* configure.ac: Check inet_addr for -lnsl, and socket for -lsocket.
Packit fc043f
Packit fc043f
2018-04-11  Damien Goutte-Gattat via Gnupg-devel  <gnupg-devel@gnupg.org>
Packit fc043f
Packit fc043f
	build: Make sure version.texi is generated in time.
Packit fc043f
	+ commit 8ef76d9373db16f1ca176f9c87c8dac2758c8b85
Packit fc043f
	[[PGP Signed Part:Good signature from AA4373E6C82C78AD Damien Goutte-Gattat <dgouttegattat@incenp.org> (trust undefined) created at 2018-04-11T17:05:27+0200 using RSA]]
Packit fc043f
	[1. text/plain]
Packit fc043f
Packit fc043f
	* doc/Makefile.am (yat2m-stamp): Depend on version.texi.
Packit fc043f
Packit fc043f
2018-04-11  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.29.
Packit fc043f
	+ commit c3825327da826e434ada9abde34e6bbd7ef61737
Packit fc043f
	* configure.ac: Bump LT version to C24/A24/R0.
Packit fc043f
Packit fc043f
	core: Finalize the API for argparse.
Packit fc043f
	+ commit e901c9fb04f5a96ba2bd49225b396ce7857a3782
Packit fc043f
	* src/gpg-error.h.in (ARGPARSE_end): Simplify.
Packit fc043f
	* src/argparse.c (_gpgrt_argparse_internal_s): Add field opts.
Packit fc043f
	(deinitialize): Release new field.
Packit fc043f
	(initialize): Add arg opts and create a copy of the option list.  Add
Packit fc043f
	the internal options.
Packit fc043f
	(_gpgrt_argparse): Rename arg opts to opts_orig and set new local var
Packit fc043f
	opts.  Adjust all references to opts.
Packit fc043f
	(find_long_option): Adjust for chnaged type of OPTS.  Re-indent.
Packit fc043f
	(arg_parse): Remove internal option assignment.  Rename arg opts to
Packit fc043f
	opts_orig and set new local var opts.  Adjust all references to opts.
Packit fc043f
	(show_help): Adjust all references to opts.
Packit fc043f
Packit fc043f
2018-03-27  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	doc: Support cross compilation for yat2m.
Packit fc043f
	+ commit efc4769339d42a4a399c040c146cf4a29c02ea4f
Packit fc043f
	* configure.ac (HAVE_YAT2M): New.
Packit fc043f
	* doc/Makefile.am [CROSS_COMPILING]: Supported.
Packit fc043f
Packit fc043f
2018-03-22  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	build: Add option --git-build to autogen.sh.
Packit fc043f
	+ commit 1b30d21c8780f5510815d4fb2523afad9fff85dc
Packit fc043f
Packit fc043f
Packit fc043f
	yat2m: Avoid compiler warnings.
Packit fc043f
	+ commit 30621ee4c13006d08881994c32c89f60604c0188
Packit fc043f
	* doc/yat2m.c (evaluate_conditions): Mark args unused
Packit fc043f
	(proc_texi_cmd): Avoid shadowing warning.
Packit fc043f
Packit fc043f
	core: Add Base-64 encoder.
Packit fc043f
	+ commit ffc8f805165a13d16ed227051c59d732117ec9d4
Packit fc043f
	* src/b64enc.c: Change to fit into libgpg-error.
Packit fc043f
	* src/Makefile.am: Add b64enc.c
Packit fc043f
	* src/b64dec.c: Use xtrymalloc etc.  Always use gpg_err_code_t.
Packit fc043f
	(_gpgrt_b64dec_start): Set decoder flag
Packit fc043f
	(_gpgrt_b64dec_finish): Check for conflict.
Packit fc043f
	(_gpgrt_b64state): Move to ...
Packit fc043f
	* src/gpgrt-int.h: here.  Add new fields.
Packit fc043f
	* src/visibility.c (gpgrt_b64enc_start): New.
Packit fc043f
	(gpgrt_b64enc_write): New.
Packit fc043f
	(gpgrt_b64enc_finish): New.
Packit fc043f
	* src/gpg-error.vers, src/gpg-error.def.in: Add new functions.
Packit fc043f
	* src/gpg-error.h.in: Ditto.
Packit fc043f
	* src/visibility.h: Ditto.
Packit fc043f
Packit fc043f
	* tests/t-b64dec.c: Remove.
Packit fc043f
	* tests/t-b64.c: New.
Packit fc043f
	* tests/Makefile.am (TESTS): Replace t-b64dec by t-b64.
Packit fc043f
Packit fc043f
2018-03-22  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	doc: Fix build and installation of yat2m.
Packit fc043f
	+ commit 4dc6d4d2067c726cdb13593bf151637319ff65e6
Packit fc043f
	* configure.ac (YAT2M): Require it when cross compiling.
Packit fc043f
	* doc/Makefile.am (bin_PROGRAMS): Add yat2m.
Packit fc043f
Packit fc043f
2018-03-21  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	po: Merge GnuPG's strings from argparse.c.
Packit fc043f
	+ commit e492e0a0a73e1ea9c80f355a25f632af69d3a569
Packit fc043f
Packit fc043f
Packit fc043f
	tools: Use gpgrt_argparse for the gpg-error tool.
Packit fc043f
	+ commit 11ce9bc3d6fe75859e18112824ae7ec3ca0fc8df
Packit fc043f
	* src/gpg-error.c (show_usage): Remove.
Packit fc043f
	(my_strusage): New.
Packit fc043f
	(main): Change to use argparse.  Also use log_error.
Packit fc043f
Packit fc043f
	core: Add public function gpgrt_usage.
Packit fc043f
	+ commit ed78ef7f06649f85f1c94c4fb2bd3f6b16fd9a63
Packit fc043f
	* src/visibility.c (gpgrt_usage): New.
Packit fc043f
Packit fc043f
	core: Add the group of argparse functions.
Packit fc043f
	+ commit 13d6fbfd4360cb74588556a3a0058c4057d0bcf0
Packit fc043f
	* src/visibility.c (gpgrt_argparse): New.
Packit fc043f
	(gpgrt_strusage): New.
Packit fc043f
	(gpgrt_set_strusage): New.
Packit fc043f
	(gpgrt_set_usage_outfnc): New.
Packit fc043f
	(gpgrt_set_fixed_string_mapper): New.
Packit fc043f
	* src/gpg-error.def.in, src/gpg-error.vers: Add new functions.
Packit fc043f
	* src/gpg-error.h.in: Add ARGPARSE macros from the former argparse.h.
Packit fc043f
	(gpgrt_argparse_t): New.
Packit fc043f
	(gpgrt_opt_t): New.
Packit fc043f
	* configure.ac (AH_BOTTOM): Request argparse macros.
Packit fc043f
	* src/Makefile.am (libgpg_error_la_SOURCES): Add argparse.c.
Packit fc043f
	* src/argparse.h: Remove.
Packit fc043f
	* src/argparse.c: Revamp to fit into libgpg-error.
Packit fc043f
	(_gpgrt_argparse): New.
Packit fc043f
	(_gpgrt_usage): Rename from usage.
Packit fc043f
	(_gpgrt_strusage): Rename from strusage.  Define two new levels and
Packit fc043f
	templates for three common licenses.
Packit fc043f
	(_gpgrt_set_strusage): Rename from set_strusage.
Packit fc043f
	(_gpgrt_set_usage_outfnc): New.
Packit fc043f
	(_gpgrt_set_fixed_string_mapper): New.
Packit fc043f
Packit fc043f
	* tests/t-argparse.c: New.
Packit fc043f
Packit fc043f
2018-03-18  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Fix regression on arm64 due to invalid use of va_list.
Packit fc043f
	+ commit 791177de023574223eddf7288eb7c5a0721ac623
Packit fc043f
	* src/logging.c (_gpgrt_log_printhex): Provide a dummy arg instead of
Packit fc043f
	NULL.
Packit fc043f
Packit fc043f
2018-03-14  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Fix building on W64.
Packit fc043f
	+ commit c36a60687976d98b54dac17f699dfca4918a737c
Packit fc043f
	* src/w32-add.h: Remove hack to define pid_t.
Packit fc043f
	* src/gpg-error.h.in: Eval macro to define pid_t.
Packit fc043f
	* src/mkheader.c (have_sys_types_h, sys_types_h_included): New.
Packit fc043f
	(parse_config_h): Test for sys/types.h.
Packit fc043f
	(write_special): Protect inclusion of sys/types.h.  Define new macro
Packit fc043f
	'define:pid_t'.
Packit fc043f
Packit fc043f
2018-03-13  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.28.
Packit fc043f
	+ commit e32342397eab85fed5ef709317cc50dc7cbc41a5
Packit fc043f
Packit fc043f
Packit fc043f
2018-02-28  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
	    Karsten Merker  <merker@debian.org>
Packit fc043f
Packit fc043f
	syscfg: Add a riscv64 architecture.
Packit fc043f
	+ commit 596c0d701edeb45e0069bb74b9343e3d5b708ef0
Packit fc043f
	* src/syscfg/lock-obj-pub.riscv64-unknown-linux-gnu.h: New.
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Add it.
Packit fc043f
Packit fc043f
2018-02-21  Werner Koch  <wk@gnupg.org>
Packit fc043f
	    Todd Zullinger
Packit fc043f
Packit fc043f
	build: Document how to use git send-email.
Packit fc043f
	+ commit 70058cd9f944d620764e57c838209afae8a58c78
Packit fc043f
	* autogen.rc: Add patches_to.
Packit fc043f
	* autogen.sh: Run git config sendemail.to.
Packit fc043f
	* doc/HACKING: Describe use of git send-email.
Packit fc043f
Packit fc043f
2018-02-21  Thorsten Behrens  <Thorsten.Behrens@CIB.de>
Packit fc043f
Packit fc043f
	doc: clarify patch submission workflow.
Packit fc043f
	+ commit 887530733d0486ab68ff351c4855f5450c2d50e6
Packit fc043f
Packit fc043f
Packit fc043f
2017-12-11  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Avoid using estream_t in the public API.
Packit fc043f
	+ commit f9a33a7f7e44a644ff4e31f7e9f1c2c1ec1f8eee
Packit fc043f
	* src/gpg-error.h.in: Always use gpgrt_stream-t.
Packit fc043f
Packit fc043f
2017-12-08  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Rename the gpgrt_log_levels enum values.
Packit fc043f
	+ commit de167fa92d009745c51dae547990845282cbb351
Packit fc043f
	* src/gpg-error.h.in (gprt_log_levels): Rename to GPGRT_LOGLVL.
Packit fc043f
Packit fc043f
2017-11-29  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Wrap blocking system calls of the spawn functions.
Packit fc043f
	+ commit 4acf116ba6d144c2cfa39ff54a23b8864b4ce895
Packit fc043f
Packit fc043f
Packit fc043f
	core: Unify syscall_clamp functions.
Packit fc043f
	+ commit adc786d034b63176b941a1ef8d996acbf8d0ea5d
Packit fc043f
	* src/estream.c (_gpgrt_set_syscall_clamp)
Packit fc043f
	(_gpgrt_get_syscall_clamp): Move to ...
Packit fc043f
	* src/syscall-clamp.c: new file.
Packit fc043f
	(_gpgrt_pre_syscall, _gpgrt_post_syscall): New.
Packit fc043f
	* src/Makefile.am (libgpg_error_la_SOURCES): Add that file.
Packit fc043f
	* src/estream.c: Replace the syscall wrapper with the new functions.
Packit fc043f
	* src/posix-lock.c: Ditto.
Packit fc043f
	* src/w32-lock.c: Ditto.
Packit fc043f
	* src/posix-thread.c: Ditto.
Packit fc043f
	* src/w32-thread.c: Ditto.
Packit fc043f
Packit fc043f
	core: Implement the spawn functions.
Packit fc043f
	+ commit 1865c0ba1769b407a3c504f1ab0a4278704a9fc1
Packit fc043f
	* src/gpg-error.h.in  (GPGRT_SPAWN_NONBLOCK): New const.
Packit fc043f
	(GPGRT_SPAWN_RUN_ASFW): New const.
Packit fc043f
	(GPGRT_SPAWN_DETACHED): New const.
Packit fc043f
	(gpgrt_make_pipe): New function.
Packit fc043f
	(gpgrt_create_pipe): New macro.
Packit fc043f
	(gpgrt_create_inbound_pipe): New macro.
Packit fc043f
	(gpgrt_create_outbound_pipe): New macro.
Packit fc043f
	(gpgrt_spawn_process): New function.
Packit fc043f
	(gpgrt_spawn_process_fd): New function.
Packit fc043f
	(gpgrt_spawn_process_detached): New function.
Packit fc043f
	(gpgrt_wait_process): New function.
Packit fc043f
	(gpgrt_wait_processes): New function.
Packit fc043f
	(gpgrt_kill_process): New function.
Packit fc043f
	(gpgrt_release_process): New function.
Packit fc043f
	* src/gpg-error.def.in, src/gpg-error.vers: Add new functions.
Packit fc043f
	* src/visibility.c, src/visibility.h: Add wrappers for new functions.
Packit fc043f
	* src/spawn-posix.c: Rework to better fit the use in gpgrt.  Rename
Packit fc043f
	all public function with a _gpgrt prefix.
Packit fc043f
	* src/spawn-w32.c: Ditto.
Packit fc043f
	* src/gpgrt-int.h: Likewise.
Packit fc043f
	* src/Makefile.am (arch_sources): Add spawn-posix.c and spawn-w32.c.
Packit fc043f
	* src/w32-add.h: Add pid_t typedef as a temporary hack.
Packit fc043f
	* configure.ac: Check for signal.h and getrlimit.
Packit fc043f
	(AC_FUNC_FORK): New.
Packit fc043f
Packit fc043f
	Import and relicense exechelp* functions from GnuPG.
Packit fc043f
	+ commit 8f41cc23b12485404203be5881aaaadb78696b4d
Packit fc043f
	* src/spawn-posix.c: New.  Taken from GnuPG's exechelp-posix.c.
Packit fc043f
	* src/spawn-w32.c: New.  Taken from GnuPG's exechelp-w32.c.
Packit fc043f
	* src/gpgrt-int.h: Include prototypes from GnuPG's exechelp.h.
Packit fc043f
Packit fc043f
2017-11-28  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Change new functions to return gpg_err_code_t.
Packit fc043f
	+ commit 513415c71781ab400ebb01f6b4cf2984ec6b1757
Packit fc043f
	* src/gpg-error.h.in (gpgrt_sentenv, gpgrt_mkdir, gpgrt_chdir): Change
Packit fc043f
	return type to gpg_err_code_t.
Packit fc043f
	* src/sysutils.c (_gpgrt_setenv): Implement that.
Packit fc043f
	(_gpgrt_mkdir): Ditto.
Packit fc043f
	(_gpgrt_chdir): Ditto.
Packit fc043f
	* gpgscm/ffi.c (do_setenv, do_mkdir): Adjust for this change.
Packit fc043f
Packit fc043f
	gpgscm: Some adjustments for use in gpgrt.
Packit fc043f
	+ commit 930d27ba6b1205395add0c79139e62355a1d5b62
Packit fc043f
	* gpgscm/Makefile.am: Remove cruft leftover from GnuPG.  Link to the
Packit fc043f
	just build libgpg-error.
Packit fc043f
	* gpgscm/private.h: Include gpgrt.h and provide i18n macros.
Packit fc043f
	(xfree, xtrymalloc, xtrycalloc, xtryrealloc): New macros.
Packit fc043f
	(xmalloc, xstrdup): New inline functions.
Packit fc043f
	* gpgscm/main.c: Remove inclusion of gcrypt.h and gpg-error.h.  Remove
Packit fc043f
	all other gnupg specific headers.
Packit fc043f
	(opts, parse_arguments): Temporary comment out.
Packit fc043f
	(main): Adjust for use with gpgrt.  Temporary comment out some stuff.
Packit fc043f
	* gpgscm/ffi-private.h: Include local gpgrt.h instead of gpg-error.h.
Packit fc043f
	* gpgscm/ffi.h: Ditto.
Packit fc043f
	* gpgscm/ffi.c: Remove gpg-error.h and headers from GnuPG.
Packit fc043f
	(do_getenv): Use gpgrt_getenv.
Packit fc043f
	(do_setenv): Use gpgrt_setenv.
Packit fc043f
	(do_mkdtemp): Temporary return an error.
Packit fc043f
	(unlink_recursively): Use gpgrt_bsprintf.
Packit fc043f
	(do_getcwd): Use gpgrt_getcwd.
Packit fc043f
	(do_mkdir): Use gpgrt_mkdir.
Packit fc043f
	(do_get_isotime): Temporary return an error.
Packit fc043f
	(do_get_time): Directly use time().
Packit fc043f
Packit fc043f
	core: New API functions gpgrt_mkdir, gpgrt_chdir, gpgrt_getcwd.
Packit fc043f
	+ commit 4a2538e69dd35377bce0fb584f72322c69a111b3
Packit fc043f
	* src/gpg-error.h.in (gpgrt_mkdir, gpgrt_chdir, gpgrt_getcwd): New.
Packit fc043f
	* src/visibility.c, src/visibility.h: Add wrappers.
Packit fc043f
	* src/gpg-error.vers, src/gpg-error.def.in: Add them.
Packit fc043f
	* src/sysutils.c (modestr_to_mode): New.
Packit fc043f
	(_gpgrt_mkdir, _gpgrt_chdir, _gpgrt_getcwd): New.
Packit fc043f
	* m4/gnupg-misc.m4: New.
Packit fc043f
	* m4/Makefile.am (EXTRA_DIST): Add new M4 file.
Packit fc043f
	* configure.ac: Call new GNUPG_FUNC_MKDIR_TAKES_ONE_ARG.
Packit fc043f
	(AC_CHECK_FUNCS): Add stat.
Packit fc043f
Packit fc043f
	core: Prepare to build with gpgscm.
Packit fc043f
	+ commit 241e9a73891fcd12f124aab1a299c2cf4f8eebc4
Packit fc043f
	* configure.ac: New option --enable-gpgscm.  Create gpgscm/Makefile.
Packit fc043f
	(GPGRT_ENABLE_LOG_MACROS): Define.
Packit fc043f
	* Makefile.am (SUBDIRS): Add gpgscm
Packit fc043f
	* src/logging.c (_gpgrt_logv_clock): Do not use the log_debug macro.
Packit fc043f
Packit fc043f
	core: New API functions gpgrt_getenv and gpgrt_setenv.
Packit fc043f
	+ commit b67daca506991507cea9d383df7faf95117e58a6
Packit fc043f
	* src/gpg-error.h.in (gpgrt_getenv, gpgrt_setenv): New.
Packit fc043f
	(gpgrt_unsetenv): New macro.
Packit fc043f
	* src/gpg-error.vers, src/gpg-error.def.in: Add them.
Packit fc043f
	* src/visibility.c (gpgrt_getenv, gpgrt_setenv): New.
Packit fc043f
	* src/visibility.h: Add them.
Packit fc043f
	* src/sysutils.c: Include string.h and on Windows windows.h.
Packit fc043f
	(_gpgrt_getenv): New.
Packit fc043f
	(_gpgrt_setenv): New.
Packit fc043f
Packit fc043f
2017-11-27  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Install new files gpgrt.m4 and gpgrt-config.
Packit fc043f
	+ commit 97b0881216af24f2a46c11650e23691cff9cb12a
Packit fc043f
	* src/gpgrt.m4: New.  Bascially a copy of libgpg-error.m4
Packit fc043f
	* src/gpg-error-config.in: Decide which name to print.
Packit fc043f
	* src/Makefile.am (nodist_bin_SCRIPTS): Add gpgrt-config.
Packit fc043f
	(m4data_DATA): Add gpgrt.m4
Packit fc043f
	(EXTRA_DIST): Add gpgrt.m4.
Packit fc043f
	(BUILT_SOURCES): Add gpgrt-config.
Packit fc043f
	(CLEANFILES): Add gpgrt-config.
Packit fc043f
	(gpgrt-config): Create from gpg-error-config.
Packit fc043f
Packit fc043f
	core: Avoid endless recursion if log_set_sink has not been used.
Packit fc043f
	+ commit 84ebd2f34882d29510f819a797fade0297fe9ab9
Packit fc043f
	* src/logging.c (_gpgrt_log_set_sink): Do not call gf_is_valid if the
Packit fc043f
	default sink has been requested.
Packit fc043f
Packit fc043f
	core: Add new macro log_assert to the API.
Packit fc043f
	+ commit d1e3401013f85620f3136958be079c13ca758b20
Packit fc043f
	* src/gpg-error.h.in (log_assert): New macro.
Packit fc043f
Packit fc043f
2017-11-22  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	core: Do not use the estream_t alias in gpg-error.h.
Packit fc043f
	+ commit e0ef8126c20216f79b7ad147c103bb2cf2790c59
Packit fc043f
	* src/gpg-error.h.in: Use gpgrt_stream_t in prototypes.
Packit fc043f
Packit fc043f
2017-11-17  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	w32: Avoid unused code warning.
Packit fc043f
	+ commit a950326d20990fa33cee637d5b54d708fff585b2
Packit fc043f
	* src/w32-estream.c (_gpgrt_w32_poll) [!ENABLE_TRACING]: Do not use
Packit fc043f
	waitinfo.
Packit fc043f
Packit fc043f
	w32: Add new API fucntion gpgrt_w32_reg_query_string.
Packit fc043f
	+ commit b5c4a2721d7b4bd54705c53e6f294ab2ef66a6f7
Packit fc043f
	* src/w32-reg.c: New.
Packit fc043f
	* src/w32-add.h: Add gpgrt_w32_reg_query_string.
Packit fc043f
	* src/visibility.c (gpgrt_w32_reg_query_string): New wrapper.
Packit fc043f
	* src/gpg-error.def.in: Add gpgrt_w32_reg_query_string.
Packit fc043f
	* configure.ac (ac_check_funcs): Add stpcpy.
Packit fc043f
	* src/Makefile.am (arch_sources): Add w32-reg.c
Packit fc043f
	(socklibs): New.
Packit fc043f
	(libgpg_error_la_LIBADD): Add socklibs.
Packit fc043f
	* src/gpgrt-int.h (xfree, xtrymalloc, xtrycalloc)
Packit fc043f
	(xtryrealloc): New internal macros.
Packit fc043f
	(_gpgrt_stpcpy, stpcpy): New replacement fucntion and macro.
Packit fc043f
	* src/logging.c (_gpgrt_logv_internal): Use new registry query
Packit fc043f
	function and add standard registry key.
Packit fc043f
Packit fc043f
	core: New API functions gpgrt_strdup and gpgrt_strconcat.
Packit fc043f
	+ commit 0d8d46c76a32176be440b062d2501bbb044fb99d
Packit fc043f
	* src/visibility.c (gpgrt_strdup): New API fucntion.
Packit fc043f
	(gpgrt_strconcat): New API fucntion.
Packit fc043f
	* src/visibility.h: Add corresponding macros.
Packit fc043f
	* src/gpg-error.def.in: Add them.
Packit fc043f
	* src/gpg-error.vers: Add them.
Packit fc043f
	* src/gpgrt-int.h (DIM): New macro.
Packit fc043f
	* src/init.c (_gpgrt_strdup): New.
Packit fc043f
	(_gpgrt_strconcat_core): New.
Packit fc043f
	(_gpgrt_strconcat): New.
Packit fc043f
Packit fc043f
	core: New API functions gpgrt_malloc, gpgrt_calloc, and gpgrt_realloc.
Packit fc043f
	+ commit 80c18e1b212cc91946864db7a53da50e9f91b861
Packit fc043f
	* src/visibility.c (gpgrt_realloc): New API function.
Packit fc043f
	(gpgrt_malloc): New API function.
Packit fc043f
	(gpgrt_calloc): New API function.
Packit fc043f
	* src/visibility.h: Add corresponding macros.
Packit fc043f
	* src/gpg-error.def.in: Add them.
Packit fc043f
	* src/gpg-error.vers: Add them.
Packit fc043f
	* src/init.c (_gpgrt_calloc): New.
Packit fc043f
	* src/gpg-error.h.in: Add prototypes.
Packit fc043f
Packit fc043f
	core: Add logging API.
Packit fc043f
	+ commit 1b653e7f37e2eb2a8f590a43651eb8aecbe8756e
Packit fc043f
	* src/visibility.c (gpgrt_get_errorcount): New API.
Packit fc043f
	(gpgrt_inc_errorcount): New API.
Packit fc043f
	(gpgrt_log_set_sink): New API.
Packit fc043f
	(gpgrt_log_set_socket_dir_cb): New API.
Packit fc043f
	(gpgrt_log_set_pid_suffix_cb): New API.
Packit fc043f
	(gpgrt_log_set_prefix): New API.
Packit fc043f
	(gpgrt_log_get_prefix): New API.
Packit fc043f
	(gpgrt_log_test_fd): New API.
Packit fc043f
	(gpgrt_log_get_fd): New API.
Packit fc043f
	(gpgrt_log_get_stream): New API.
Packit fc043f
	(gpgrt_log): New API.
Packit fc043f
	(gpgrt_logv): New API.
Packit fc043f
	(gpgrt_logv_prefix): New API.
Packit fc043f
	(gpgrt_log_string): New API.
Packit fc043f
	(gpgrt_log_info): New API.
Packit fc043f
	(gpgrt_log_error): New API.
Packit fc043f
	(gpgrt_log_fatal): New API.
Packit fc043f
	(gpgrt_log_bug): New API.
Packit fc043f
	(gpgrt_log_debug): New API.
Packit fc043f
	(gpgrt_log_debug_string): New API.
Packit fc043f
	(gpgrt_log_printf): New API.
Packit fc043f
	(gpgrt_log_flush): New API.
Packit fc043f
	(gpgrt_log_printhex): New API.
Packit fc043f
	(gpgrt_log_clock): New API.
Packit fc043f
	(_gpgrt_log_assert): New function for the ABI.
Packit fc043f
	* src/visibility.h: Add corresponding macros.
Packit fc043f
	* src/gpg-error.def.in: Add new functions.
Packit fc043f
	* src/gpg-error.vers: Add new functions.
Packit fc043f
	* src/gpg-error.h.in (GPGRT_LOG_WITH_PREFIX): New constant.
Packit fc043f
	(GPGRT_LOG_WITH_TIME): New constant.
Packit fc043f
	(GPGRT_LOG_WITH_PID): New constant.
Packit fc043f
	(GPGRT_LOG_RUN_DETACHED): New constant.
Packit fc043f
	(GPGRT_LOG_NO_REGISTRY): New constant.
Packit fc043f
	(GPGRT_LOG_BEGIN): New enum value.
Packit fc043f
	(GPGRT_LOG_CONT): New enum value.
Packit fc043f
	(GPGRT_LOG_INFO): New enum value.
Packit fc043f
	(GPGRT_LOG_WARN): New enum value.
Packit fc043f
	(GPGRT_LOG_ERROR): New enum value.
Packit fc043f
	(GPGRT_LOG_FATAL): New enum value.
Packit fc043f
	(GPGRT_LOG_BUG): New enum value.
Packit fc043f
	(GPGRT_LOG_DEBUG): New enum value.
Packit fc043f
	(log_get_errorcount, log_inc_errorcount, log_set_file, log_set_fd)
Packit fc043f
	(log_set_stream, log_set_socket_dir_cb, log_set_pid_suffix_cb)
Packit fc043f
	(log_set_prefix, log_get_prefix, log_test_fd, log_get_fd)
Packit fc043f
	(log_get_stream, log_log, log_logv, log_logv_prefix, log_string)
Packit fc043f
	(log_bug, log_fatal, log_error, log_info, log_debug, log_debug_string)
Packit fc043f
	(log_printf, log_printhex, log_clock)
Packit fc043f
	(log_flush) [GPGRT_ENABLE_LOG_MACROS]: New wrapper macros.
Packit fc043f
	(gpgrt_assert): New macro.
Packit fc043f
	* src/gpgrt-int.h: Add prototypes for logging.c.
Packit fc043f
	(gpgrt_assert): Redefine for internal use.
Packit fc043f
	* src/logging.h: Remove.
Packit fc043f
	* src/logging.c: Include gpgrt-int.h instead of the stuff from GnuPG.
Packit fc043f
	Use _gpgrt malloc funcsions and the internal versions of the estream
Packit fc043f
	functions.  Rename all public fucntions with a _gpgrt_ prefix.
Packit fc043f
	(print_prefix): Return the printed length.
Packit fc043f
	(_gpgrt_logv_internal): Ditto.
Packit fc043f
	(_gpgrt_log_printhex): Change order of args and turn into a printf
Packit fc043f
	like function.
Packit fc043f
	(_gpgrt_logv_printhex): New. Take the core of the former
Packit fc043f
	log_printhex.
Packit fc043f
	(_gpgrt_log_clock): Turn into a printf like functions.
Packit fc043f
	(_gpgrt_logv_clock): New.  Take the core of the former log_clock.
Packit fc043f
Packit fc043f
	New configure options and macros for internal use.
Packit fc043f
	+ commit 9c904765c9b2b75e73b196b381470f0fb2f3b458
Packit fc043f
	* configure.ac: Add option --enable-log-clock.
Packit fc043f
	* configure.ac: Add option --enable-werror.
Packit fc043f
	* src/sysutils.c: New.
Packit fc043f
	* src/Makefile.am (libgpg_error_la_SOURCES): Add sysutils.c
Packit fc043f
	* src/gpgrt-int.h: Add internal i18n macros and hacks to make working
Packit fc043f
	with sockets easier.
Packit fc043f
	(es_stdin, es_stdout, es_stderr): New internal macros.
Packit fc043f
	(snprintf): New macro.
Packit fc043f
Packit fc043f
2017-10-05  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	gpgscm: Add required configure checks.
Packit fc043f
	+ commit 7c48edad2c782f416854eaa5c03bcf546d68eae2
Packit fc043f
	* configure.ac: Add new checks.
Packit fc043f
	* m4/readline.m4: New.  Taken from gnupg.
Packit fc043f
	* m4/Makefile.am (EXTRA_DIST): Add it.
Packit fc043f
Packit fc043f
2017-08-21  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix -Wimplicit-fallthrough warnings.
Packit fc043f
	+ commit dda5fb3474a81047e5bd52a194640fb44e1d60ab
Packit fc043f
	* tests/gpgscm/scheme.c (CASE): Rearrange so that the case statement
Packit fc043f
	is at the front.
Packit fc043f
	(Eval_Cycle): Improve fallthrough annotations.
Packit fc043f
Packit fc043f
2017-08-08  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	build: New configure option --enable-all-tests.
Packit fc043f
	+ commit 3aa37d802ac10a38414a8cfe120de92a76968836
Packit fc043f
	* configure.ac: New option --enable-all-tests.
Packit fc043f
	* tests/gpgscm/ffi.c (ffi_init): New gloabl var *run-all-tests*.
Packit fc043f
	* tests/openpgp/all-tests.scm (all-tests): Use that var instead
Packit fc043f
	of *maintainer-mode*.
Packit fc043f
	* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Add --enable-all-tests.
Packit fc043f
Packit fc043f
	gpgscm: Make the test summary stand out.
Packit fc043f
	+ commit c2fbc80c643db372f16aed100393cd2d4de46979
Packit fc043f
	* tests/gpgscm/tests.scm (test-pool): Add delimiter lines.
Packit fc043f
Packit fc043f
2017-08-07  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Do not run all tests unless in maintainer mode.
Packit fc043f
	+ commit d230224c38dd4b31348f7a1ad24be9e27935dc80
Packit fc043f
	* configure.ac: Leak the maintainer mode flag into 'config.h'.
Packit fc043f
	* tests/gpgscm/ffi.c: Pass it into the scheme environment.
Packit fc043f
	* tests/openpgp/all-tests.scm: Only run tests against non-default
Packit fc043f
	configurations (keyring, extended-key-format) in maintainer mode.
Packit fc043f
Packit fc043f
2017-07-18  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm,w32: Fix testing for absolute paths.
Packit fc043f
	+ commit c4230af0e62d7c8812eaedf4e6451a6288ff5769
Packit fc043f
	* tests/gpgscm/main.c (path_absolute_p): New function.
Packit fc043f
	(load): Use new function.
Packit fc043f
Packit fc043f
2017-07-14  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Library improvements.
Packit fc043f
	+ commit a4dbace8c1d771bed5783aadf87a8075454e5a35
Packit fc043f
	* tests/gpgscm/repl.scm (prompt-yes-no?): New function.
Packit fc043f
	* tests/gpgscm/tests.scm (pathsep-split): Likewise.
Packit fc043f
	(pathsep-join): Likewise.
Packit fc043f
	(with-path): Use the new function.
Packit fc043f
Packit fc043f
	gpgscm: Fail early if the test setup fails.
Packit fc043f
	+ commit c67386dcd95dd6a451b861e178503b29a7b13502
Packit fc043f
	* tests/gpgscm/tests.scm (make-environment-cache): Check status code
Packit fc043f
	of setup script.
Packit fc043f
Packit fc043f
2017-07-13  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Make loading of modules less verbose.
Packit fc043f
	+ commit 8377569cae0764fd44701d67626b4c96f0bd8804
Packit fc043f
	* tests/gpgscm/main.c (load): Increase logging threshold.
Packit fc043f
Packit fc043f
	gpgscm: Make it impossible to catch '*interpreter-exit*'.
Packit fc043f
	+ commit ba3164673676468472ae37f32c3964d231e8a8f8
Packit fc043f
	* tests/gpgscm/init.scm (throw'): Make it impossible to catch
Packit fc043f
	'*interpreter-exit*'.  This fixes 'exit' (and with it 'fail') inside
Packit fc043f
	'catch' statements.
Packit fc043f
Packit fc043f
2017-07-05  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	syscfg: Add lock-obj-pub file for ia64-unknown-linux-gnu.
Packit fc043f
	+ commit 0f5c3f67946fb5389df5b9963e6976b462bf5726
Packit fc043f
	* src/syscfg/lock-obj-pub.ia64-unknown-linux-gnu.h: new.
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Add it.
Packit fc043f
Packit fc043f
	yat2m: Use version from libgpg-error.
Packit fc043f
	+ commit 0148ea8d5acde2ad5d0376fb7eaa2221e88f258a
Packit fc043f
	* doc/yat2m.c (VERSION): Define as PACKAGE_VERSION.
Packit fc043f
	* doc/Makefile.am (yat2m): Pass PACKAGE_VERSION with -D.
Packit fc043f
Packit fc043f
	build: Install yat2m.
Packit fc043f
	+ commit d81b1379edbc6007a89c3b2fff1b51c8dfe2e868
Packit fc043f
	* doc/Makefile.am (install-exec-hook): New.
Packit fc043f
	(uninstall-local): Uninstall yat2m.
Packit fc043f
Packit fc043f
	yat2m: Take care of SOURCE_DATE_EPOCH.
Packit fc043f
	+ commit 5494a5728418938d2e42158bb646b07124184e64
Packit fc043f
	* doc/yat2m.c (main): Set a default for OPT_DATE.
Packit fc043f
Packit fc043f
2017-07-05  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	doc: minor fix for @xref.
Packit fc043f
	+ commit 187e2ad24fb92210587beb779a1cc746821a169c
Packit fc043f
	* doc/yat2m.c (proc_texi_cmd): Captalize "see" for xref.
Packit fc043f
Packit fc043f
2017-07-05  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	doc: Implement simple '@ref'erences.
Packit fc043f
	+ commit 55d560358f7ee4a8b68f98e051021a05d4c0bb1f
Packit fc043f
	* doc/yat2m.c (proc_texi_cmd): Handle '@ref'.
Packit fc043f
Packit fc043f
2017-06-19  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Limit the number of parallel jobs.
Packit fc043f
	+ commit 895ae4c6b1bd2fd9758d9c2835d9a3881e57a85a
Packit fc043f
	* ffi.c (do_wait_processes): Suppress the timeout error.
Packit fc043f
	* tests.scm (semaphore): New definition.
Packit fc043f
	(test-pool): Only run a bounded number of tests in parallel.
Packit fc043f
	(test::started?): New function.
Packit fc043f
	(run-tests-parallel): Do not report results, do not start the tests.
Packit fc043f
	(run-tests-sequential): Adapt.
Packit fc043f
	(run-tests): Parse the number of parallel jobs.
Packit fc043f
Packit fc043f
	gpgscm: Improve option parsing.
Packit fc043f
	+ commit b4628b4a23d7e8b55ef3f17d79ca86ae77cbc685
Packit fc043f
	* tests/gpgscm/tests.scm (flag): Accept arguments of the form
Packit fc043f
	'--foo=bar'.
Packit fc043f
Packit fc043f
	gpgscm: Improve error handling of foreign functions.
Packit fc043f
	+ commit f8934d091a274685c1b2a303ac2772adddd303c6
Packit fc043f
	* tests/gpgscm/ffi.scm (ffi-fail): Do not needlessly join the error
Packit fc043f
	message.
Packit fc043f
Packit fc043f
	gpgscm: Improve error reporting.
Packit fc043f
	+ commit f57405bea31bac1e3c8e4353aea9bb3cede1b90c
Packit fc043f
	* tests/gpgscm/init.scm (throw'): Guard against 'args' being atomic.
Packit fc043f
	* tests/gpgscm/scheme.c (Eval_Cycle): Remove any superfluous colons in
Packit fc043f
	error messages.
Packit fc043f
Packit fc043f
2017-05-31  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	Align 'es_poll' semantics closer with POSIX.
Packit fc043f
	+ commit 4a9857a2b6d8a8e847638416d35398508b3291fd
Packit fc043f
	* src/estream.c (_gpgrt_poll): Do not return early if some streams are
Packit fc043f
	found to be ready before even polling the others.
Packit fc043f
Packit fc043f
	build: Prepend the maintainer CFLAGS.
Packit fc043f
	+ commit df1d61d5c84d984fb2d2a6f1b69c57878decf13e
Packit fc043f
	* configure.ac: Prepend the maintainer CFLAGS making it possible to
Packit fc043f
	override e.g. the optimization level for debugging.
Packit fc043f
Packit fc043f
2017-05-30  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	Fix memory leak for estream.
Packit fc043f
	+ commit 1e7203515be0b030709109e9da621642dfa20312
Packit fc043f
	* src/estream.c (do_list_remove): Free the item.
Packit fc043f
	(do_close): Free the buffer.
Packit fc043f
Packit fc043f
2017-05-17  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix checking for opcode arguments.
Packit fc043f
	+ commit d2747ce24d445ae7ef3ec4ed0cca2f30aa833e7c
Packit fc043f
	* tests/gpgscm/scheme.c (Eval_Cycle): Update 'pcd' after dispatching
Packit fc043f
	an instruction.
Packit fc043f
Packit fc043f
2017-05-11  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Make it possible to run all tests using our infrastructure.
Packit fc043f
	+ commit 4bc110e219b13d551c0c6c9987b7602e44715032
Packit fc043f
	* Makefile.am (TESTS_ENVIRONMENT): New variable.
Packit fc043f
	(check-all): New phony target to run all tests.
Packit fc043f
	* tests/gpgme/gpgme-defs.scm (have-gpgme?): New function that tests
Packit fc043f
	whether the GPGME test suite is available instead of exiting the
Packit fc043f
	process.
Packit fc043f
	* tests/gpgscm/init.scm (export): New macro.
Packit fc043f
	* tests/gpgscm/tests.scm (run-tests): New function.
Packit fc043f
	(load-tests): Likewise.
Packit fc043f
	* tests/gpgme/run-tests.scm: Simplify and move the parsing of the list
Packit fc043f
	of tests to 'all-tests.scm'.
Packit fc043f
	* tests/gpgsm/run-tests.scm: Likewise.
Packit fc043f
	* tests/migrations/run-tests.scm: Likewise.
Packit fc043f
	* tests/openpgp/run-tests.scm: Likewise.
Packit fc043f
	* tests/gpgme/Makefile.am: To select the tests to run, use the
Packit fc043f
	variable 'TESTS'.  This harmonizes the interface with the automake
Packit fc043f
	test suite.
Packit fc043f
	* tests/gpgsm/Makefile.am: Likewise.
Packit fc043f
	* tests/migrations/Makefile.am: Likewise.
Packit fc043f
	* tests/openpgp/Makefile.am: Likewise.
Packit fc043f
	* tests/openpgp/README: Likewise.
Packit fc043f
	* agent/all-tests.scm: New file.
Packit fc043f
	* common/all-tests.scm: Likewise.
Packit fc043f
	* g10/all-tests.scm: Likewise.
Packit fc043f
	* g13/all-tests.scm: Likewise.
Packit fc043f
	* tests/gpgme/all-tests.scm: Likewise.
Packit fc043f
	* tests/gpgsm/all-tests.scm: Likewise.
Packit fc043f
	* tests/migrations/all-tests.scm: Likewise.
Packit fc043f
	* tests/openpgp/all-tests.scm: Likewise.
Packit fc043f
	* tests/run-tests.scm: Likewise.
Packit fc043f
Packit fc043f
	tests: Move the makefile parser.
Packit fc043f
	+ commit 197404aae66c688d004337c0aefe153ef6b10f87
Packit fc043f
	* tests/gpgme/gpgme-defs.scm (parse-makefile, parse-makefile-expand):
Packit fc043f
	Move...
Packit fc043f
	* tests/gpgscm/makefile.scm: ... here.
Packit fc043f
	* tests/gpgscm/Makefile.am (EXTRA_DIST): Add new file.
Packit fc043f
Packit fc043f
	gpgscm: Make it possible to set the logfile name.
Packit fc043f
	+ commit dd48994b0c99a4099f49ccd437a08ddff39af8a2
Packit fc043f
	* tests/gpgscm/tests.scm (test): Only set the default log filename
Packit fc043f
	when it has not been set before.
Packit fc043f
Packit fc043f
2017-05-04  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Support tests that are expected to fail.
Packit fc043f
	+ commit 212a0febf8bbaf735ae2e65722f39a47a1c5b122
Packit fc043f
	* tests/gpgscm/tests.scm (test-pool): Rework reporting.  Filter using
Packit fc043f
	the computed test status instead of the return value.  Also print the
Packit fc043f
	new categories 'failed expectedly' and 'passed unexpectedly'.
Packit fc043f
	(test): If a test ends with a bang (!), it is expected to fail.  Adapt
Packit fc043f
	status, status-string, and xml accordingly.
Packit fc043f
Packit fc043f
2017-05-03  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Create and re-use frame objects.
Packit fc043f
	+ commit 272b0ad65ec4c6023d4b5a4fb2f003ada432b6e5
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): New field
Packit fc043f
	'frame_freelist'.
Packit fc043f
	* tests/gpgscm/scheme.c (enum scheme_types): New type 'T_FRAME'.
Packit fc043f
	(type_to_string): Handle new type.
Packit fc043f
	(settype): New macro.
Packit fc043f
	(gc_disable): Make sure there is at least one frame in the free list.
Packit fc043f
	(mark): Handle frame objects.
Packit fc043f
	(finalize_cell): Likewise.
Packit fc043f
	(dump_stack_initialize): Initialize free list.
Packit fc043f
	(dump_stack_free): Simplify.
Packit fc043f
	(frame_length): New variable.
Packit fc043f
	(dump_stack_make_frame): New function.
Packit fc043f
	(frame_slots): Likewise.
Packit fc043f
	(frame_payload): New macro.
Packit fc043f
	(dump_stack_allocate_frame): New function.
Packit fc043f
	(dump_stack_deallocate_frame): Likewise.
Packit fc043f
	(dump_stack_preallocate_frame): Likewise.
Packit fc043f
	(_s_return): Unpack frame object and deallocate it.
Packit fc043f
	(s_save): Wrap state in an frame object.
Packit fc043f
	(dump_stack_mark): Mark the free list.
Packit fc043f
Packit fc043f
	gpgscm: Merge opexe_0.
Packit fc043f
	+ commit df499c6ee5edf0a560138640141a3abef360b4f5
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): Remove field 'op'.
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Inline into 'Eval_Cycle'.
Packit fc043f
	(_Error_1): Return the opcode to evaluate next.
Packit fc043f
	(Error_1): Do not return, but set the opcode and goto dispatch.
Packit fc043f
	(Error_0): Likewise.
Packit fc043f
	(s_goto): Likewise.
Packit fc043f
	(s_return): Likewise.
Packit fc043f
	(s_return_enable_gc): Likewise.
Packit fc043f
	(s_thread_to): Remove superfluous cast.
Packit fc043f
	(_s_return): Return the opcode to evaluate next.
Packit fc043f
	(scheme_init_custom_alloc): Adapt to removal of field 'op'.
Packit fc043f
Packit fc043f
2017-04-24  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Refactor cell finalization.
Packit fc043f
	+ commit 36e266a5cbb78560d32bc33f18f9041db1ff5080
Packit fc043f
	* tests/gpgscm/scheme.c (finalize_cell): Use switch, return whether
Packit fc043f
	the cell may be freed.
Packit fc043f
	(gc): Update callsite.
Packit fc043f
Packit fc043f
	gpgscm: Tweak error message display.
Packit fc043f
	+ commit e8c896c7f9aabad6e1387f538accb54ac6b2b1cc
Packit fc043f
	* tests/gpgscm/init.scm (throw'): If the first argument to the error
Packit fc043f
	is a string, display it as such.
Packit fc043f
Packit fc043f
	gpgscm: Fix test.
Packit fc043f
	+ commit b67d1a3f36f2b15fb75de613942668b71cad1bd7
Packit fc043f
	* tests/gpgscm/t-child.scm: Use 'string-length' on the string.
Packit fc043f
Packit fc043f
	gpgscm: Improve syntax checking.
Packit fc043f
	+ commit 008894eff46724d60a24879d319b427606fcafd1
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Make sure closure arguments are
Packit fc043f
	symbols.
Packit fc043f
Packit fc043f
	gpgscm: Emit JUnit-style XML reports.
Packit fc043f
	+ commit 5dc43e579ef4340c668fa7e294f5a69fef9d622e
Packit fc043f
	* tests/gpgscm/Makefile.am (EXTRA_DIST): Add new file.
Packit fc043f
	* tests/gpgscm/lib.scm (string-translate): New function.
Packit fc043f
	* tests/gpgscm/main.c (main): Load new file.
Packit fc043f
	* tests/gpgscm/tests.scm (dirname): New function.
Packit fc043f
	(test-pool): Record execution times, emit XML report.
Packit fc043f
	(test): Record execution times, record log file name, emit XML report.
Packit fc043f
	(run-tests-parallel): Write XML report.
Packit fc043f
	(run-tests-sequential): Likewise.
Packit fc043f
	* tests/gpgscm/xml.scm: New file.
Packit fc043f
	* tests/gpgme/Makefile.am (CLEANFILES): Add 'report.xml'.
Packit fc043f
	* tests/gpgsm/Makefile.am: Likewise.
Packit fc043f
	* tests/migrations/Makefile.am: Likewise.
Packit fc043f
	* tests/openpgp/Makefile.am: Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Make logging less verbose and more useful.
Packit fc043f
	+ commit a3e51fab6b30774959dc7d4d3409000fdbe1f7b3
Packit fc043f
	* tests/gpgscm/tests.scm (call-with-io): When being verbose, include
Packit fc043f
	the pid in the output, and avoid duplicating the command arguments.
Packit fc043f
Packit fc043f
	gpgscm: Make test framework less functional.
Packit fc043f
	+ commit aa843dbcd32c65eeac8c7c3cea4efb3ed7a94a0c
Packit fc043f
	* tests/gpgscm/tests.scm (test-pool, tests): Previously, these methods
Packit fc043f
	updated objects by creating new updated copies of the object being
Packit fc043f
	manipulated.  This made the code awkward without any benefit,
Packit fc043f
	therefore I change it to just update the object.
Packit fc043f
Packit fc043f
	gpgscm: Move 'trace' and 'stringify'.
Packit fc043f
	+ commit 763bd518b27d4e125fa3dce64417ae2aca2101d4
Packit fc043f
	* tests/gpgscm/tests.scm (trace, stringify): Move...
Packit fc043f
	* tests/gpgscm/lib.scm: ... here.
Packit fc043f
Packit fc043f
	gpgscm: Avoid fruitless garbage collection cycles.
Packit fc043f
	+ commit 8bda9387d5be9193fd0f484fd1272367a7422389
Packit fc043f
	* tests/gpgscm/scheme-private.h (CELL_MINRECOVER): New macro.
Packit fc043f
	* tests/gpgscm/scheme.c (_get_cell): Move the heuristic to get more
Packit fc043f
	cells...
Packit fc043f
	(gc): ... here where every caller benefits from the optimization.
Packit fc043f
Packit fc043f
2017-04-19  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	Minor clean up.
Packit fc043f
	+ commit a8d267a7220399f7acf69723fe1d31efd2160319
Packit fc043f
	* src/b64dec.c (_gpgrt_b64dec_proc): Add a comment.
Packit fc043f
	* src/estream.c (_gpgrt_fread, _gpgrt_fwrite): Use &&.
Packit fc043f
	* src/mkheader.c (xstrdup): Use memcpy as we know length.
Packit fc043f
Packit fc043f
2017-04-12  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	gpgscm: Fix test program.
Packit fc043f
	+ commit e71c0d39d2fb896df85949a61811e3b19fd050d7
Packit fc043f
	* tests/gpgscm/t-child.c (main): Fix for setmode.
Packit fc043f
Packit fc043f
2017-04-11  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Fix distcheck.
Packit fc043f
	+ commit b03bcee96fc4eb950c6ae38fd8b5af831b281f02
Packit fc043f
	* tests/gpgscm/Makefile.am (EXTRA_DIST): Add 'gnupg.scm'.
Packit fc043f
Packit fc043f
	tests: Move common functionality.
Packit fc043f
	+ commit d9dd8135ec6e1a4b7a66bc385714b8c1beba3e96
Packit fc043f
	* tests/openpgp/defs.scm (with-home-directory,
Packit fc043f
	with-ephemeral-home-directory): Move...
Packit fc043f
	* tests/gpgscm/gnupg.scm: ... to this new file.
Packit fc043f
	* tests/gpgscm/main.c (main): Load the new file.
Packit fc043f
Packit fc043f
2017-04-10  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix opcode dispatch.
Packit fc043f
	+ commit afb7060de5c55976d08e0692fbffd0cc108914a0
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Consider 'op', not 'sc->op'.  The
Packit fc043f
	former is the opcode we are currently executing.
Packit fc043f
Packit fc043f
	gpgscm: Mmap script files.
Packit fc043f
	+ commit ef41f332cba624e9bca6100ebacd4fffe4e61679
Packit fc043f
	* tests/gpgscm/main.c (load): Try to mmap the script.
Packit fc043f
	* tests/gpgscm/scheme.c (scheme_load_memory): New function, a
Packit fc043f
	generalization of 'scheme_load_string'.
Packit fc043f
	* tests/gpgscm/scheme.h (scheme_load_memory): New prototype.
Packit fc043f
Packit fc043f
	gpgscm: Refactor checking for opcode arguments.
Packit fc043f
	+ commit 6c9de8ff59a9c637de944706533421dc4cf20708
Packit fc043f
	* tests/gpgscm/scheme.c (op_code_info): Fix type, add forward
Packit fc043f
	declaration.
Packit fc043f
	(check_arguments): New function.
Packit fc043f
	(Eval_cycle): Use the new function.
Packit fc043f
Packit fc043f
	gpgscm: Improve syntax dispatch.
Packit fc043f
	+ commit 173531921d133a007d30c32cec00546749d8cfbf
Packit fc043f
	* tests/gpgscm/scheme.c (assign_syntax): Add opcode parameter, store
Packit fc043f
	opcode in the tag.
Packit fc043f
	(syntaxnum): Add sc parameter, retrieve opcode from tag.
Packit fc043f
	(opexe_0): Adapt callsite.
Packit fc043f
	(scheme_init_custom_alloc): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Make tags mandatory.
Packit fc043f
	+ commit d6c83fbb06abc99de696b3f9a0b1cb962fa05b26
Packit fc043f
	* tests/gpgscm/opdefines.h: Make tags mandatory.
Packit fc043f
	* tests/gpgscm/scheme.c: Likewise.
Packit fc043f
	* tests/gpgscm/scheme.h: Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Add and use opcode for reversing a list in place.
Packit fc043f
	+ commit be78c20cdd93ed295bfee1aef1e9d2e9253b779c
Packit fc043f
	* tests/gpgscm/lib.scm (string-split-pln): Use 'reverse!'.
Packit fc043f
	(string-rtrim): Likewise.
Packit fc043f
	* tests/gpgscm/opdefines.h (reverse!): New opcode.
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Handle new opcode.
Packit fc043f
Packit fc043f
	gpgscm: Deduplicate code.
Packit fc043f
	+ commit 8a2d1706e5d4b3d33ff349838f0c51631e32a2ce
Packit fc043f
	* tests/gpgscm/scheme.c (oblist_add_by_name): Deduplicate.
Packit fc043f
	(new_slot_spec_in_env): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Move dispatch table into rodata.
Packit fc043f
	+ commit 5aeeb5af96dce901a8b21613e33baed8b9331692
Packit fc043f
	* tests/gpgscm/opdefines.h: Use 0 instead of NULL.
Packit fc043f
	* tests/gpgscm/scheme.c (op_code_info): Use char arrays instead of
Packit fc043f
	pointers, make arity parameters smaller.
Packit fc043f
	(INF_ARG): Adapt.
Packit fc043f
	(_OP_DEF): Likewise.
Packit fc043f
	(dispatch_table): Likewise.
Packit fc043f
	(procname): Likewise.
Packit fc043f
	(Eval_cycle): Likewise.
Packit fc043f
	(scheme_init_custom_alloc): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Use more threaded code.
Packit fc043f
	+ commit 49c22bd71892f47835d9e03f3bd3122a1f0b8faa
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Use 's_thread_to' instead of
Packit fc043f
	's_goto' wherever possible.
Packit fc043f
Packit fc043f
	gpgscm: Remove now obsolete dispatcher function from the opcodes.
Packit fc043f
	+ commit 6d99d2f287aa40d8add81ce892026dfe05768fd4
Packit fc043f
	* tests/gpgscm/opdefines.h: Remove now obsolete dispatcher function
Packit fc043f
	from the opcodes.
Packit fc043f
	* tests/gpgscm/scheme-private.h (_OP_DEF): Adapt.
Packit fc043f
	* tests/gpgscm/scheme.c (dispatch_func): Remove type declaration.
Packit fc043f
	(op_code_info): Remove 'func'.
Packit fc043f
	(_OP_DEF): Adapt.
Packit fc043f
	(Eval_Cycle): Always call 'opexe_0'.
Packit fc043f
Packit fc043f
	gpgscm: Merge 'opexe_6'.
Packit fc043f
	+ commit c183d8f4c6cdf6b48265f01e4c007895f2626fc5
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_6): Merge into 'opexe_0'.
Packit fc043f
	* tests/gpgscm/opdefines.h: Adapt.
Packit fc043f
Packit fc043f
	gpgscm: Merge 'opexe_5'.
Packit fc043f
	+ commit 72674f169386d68a6d0fc2ba4bc5a065435802a0
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_5): Merge into 'opexe_0'.
Packit fc043f
	* tests/gpgscm/opdefines.h: Adapt.
Packit fc043f
Packit fc043f
	gpgscm: Merge 'opexe_4'.
Packit fc043f
	+ commit 5898ead4a99d3bc9e23859daf2cca9632d92f1f7
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_4): Merge into 'opexe_0'.
Packit fc043f
	* tests/gpgscm/opdefines.h: Adapt.
Packit fc043f
Packit fc043f
	gpgscm: Merge 'opexe_3'.
Packit fc043f
	+ commit b13610ec7bf2bf199eb22f936bc2f2d4ac240fde
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_3): Merge into 'opexe_0'.
Packit fc043f
	* tests/gpgscm/opdefines.h: Adapt.
Packit fc043f
Packit fc043f
	gpgscm: Merge 'opexe_2'.
Packit fc043f
	+ commit 7bc96831c7156fa07cfd55259f309ca4fa676c2e
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_2): Merge into 'opexe_0'.
Packit fc043f
	* tests/gpgscm/opdefines.h: Adapt.
Packit fc043f
Packit fc043f
	gpgscm: Merge 'opexe_1'.
Packit fc043f
	+ commit 19a1be5ac3c9f3e26c453cf2ddc6d88af19e2d43
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_1): Merge into 'opexe_0'.
Packit fc043f
	* tests/gpgscm/opdefines.h: Adapt.
Packit fc043f
Packit fc043f
2017-04-07  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Allocate small integers in the rodata section.
Packit fc043f
	+ commit 7cee693e31fa1196161d5fbe7149a176049735ac
Packit fc043f
	* tests/gpgscm/Makefile.am (gpgscm_SOURCES): Add new file.
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct cell): Move number to the top
Packit fc043f
	of the union so that we can initialize it.
Packit fc043f
	(struct scheme): Remove 'integer_segment'.
Packit fc043f
	* tests/gpgscm/scheme.c (initialize_small_integers): Remove function.
Packit fc043f
	(small_integers): New variable.
Packit fc043f
	(MAX_SMALL_INTEGER): Compute.
Packit fc043f
	(mk_small_integer): Adapt.
Packit fc043f
	(mark): Avoid marking objects already marked.  This allows us to run
Packit fc043f
	the algorithm over objects in the rodata section if they are already
Packit fc043f
	marked.
Packit fc043f
	(scheme_init_custom_alloc): Remove initialization.
Packit fc043f
	(scheme_deinit): Remove deallocation.
Packit fc043f
	* tests/gpgscm/small-integers.h: New file.
Packit fc043f
Packit fc043f
	gpgscm: Make global data constant when possible.
Packit fc043f
	+ commit 9fc4e6cbe6d5d3f2dd1c61ded15e2ad42f8f9460
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): Make 'vptr' const.
Packit fc043f
	* tests/gpgscm/scheme.c (num_zero): Statically initialize and turn
Packit fc043f
	into constant.
Packit fc043f
	(num_one): Likewise.
Packit fc043f
	(charnames): Change type so that it can be stored in rodata.
Packit fc043f
	(is_ascii_name): Adapt slightly.
Packit fc043f
	(assign_proc): Make argument const char *.
Packit fc043f
	(op_code_info): Make some fields const char *.
Packit fc043f
	(tests): Make const.
Packit fc043f
	(dispatch_table): Make const.  At least it can be made read-only after
Packit fc043f
	relocation.
Packit fc043f
	(Eval_Cycle): Adapt slightly.
Packit fc043f
	(vtbl): Make const.
Packit fc043f
Packit fc043f
	gpgscm: Remove arbitrary limit on number of cell segments.
Packit fc043f
	+ commit 961f3b3a3001384d5df1d5a9963c5f67f800cd4d
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): Remove fixed-size
Packit fc043f
	arrays for cell segments, replace them with a pointer to the new
Packit fc043f
	'struct cell_segment' instead.
Packit fc043f
	* tests/gpgscm/scheme.c (struct cell_segment): New definition.
Packit fc043f
	(_alloc_cellseg): Allocate the header within the segment, return a
Packit fc043f
	pointer to the header.
Packit fc043f
	(_dealloc_cellseg): New function.
Packit fc043f
	(alloc_cellseg): Insert the segments into a list.
Packit fc043f
	(_get_cell): Allocate a new segment if less than a quarter of
Packit fc043f
	CELL_SIGSIZE is recovered during garbage collection.
Packit fc043f
	(initialize_small_integers): Adapt callsite.
Packit fc043f
	(gc): Walk the list of segments.
Packit fc043f
	(scheme_init_custom_alloc): Remove initialization of removed field.
Packit fc043f
	(scheme_deinit): Adapt deallocation.
Packit fc043f
Packit fc043f
	gpgscm: Fix compact vector encoding.
Packit fc043f
	+ commit a493ad44b6a67026aeae08d25575fee8c0f137b4
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct cell): Use uintptr_t for
Packit fc043f
	'_flags'.  This way, '_flags' has the size of a machine word.
Packit fc043f
Packit fc043f
2017-04-06  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Avoid mutating integer.
Packit fc043f
	+ commit 00de0fd1cebd89330765470bbb6e1e8bf5f3dfc9
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_5): Do not modify the integer in-place
Packit fc043f
	while printing an vector.  Integer objects may be shared, so they must
Packit fc043f
	not be mutated.
Packit fc043f
Packit fc043f
	gpgscm: Initialize unused slots in vectors.
Packit fc043f
	+ commit 54ea82c2e7e5700b9644c663142c2d46441a3f4e
Packit fc043f
	* tests/gpgscm/scheme.c (get_vector_object): Initialize unused slots
Packit fc043f
	at the end of vectors.
Packit fc043f
Packit fc043f
2017-04-04  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix copying values.
Packit fc043f
	+ commit 52d0423e48dfe4dd51dc0acbf119431701280a70
Packit fc043f
	* tests/gpgscm/scheme.c (copy_value): New function.
Packit fc043f
	(mk_tagged_value): Use new function.
Packit fc043f
	(opexe_4): Likewise for OP_SAVE_FORCED.
Packit fc043f
Packit fc043f
	gpgscm: Simplify get-output-string operation.
Packit fc043f
	+ commit c9244b2eb43e0f06928b709ac35127966e1d24ce
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_4): Simplify 'get-output-string'.
Packit fc043f
Packit fc043f
	gpgscm: Simplify substring operation.
Packit fc043f
	+ commit 6900f118303962262923f9d103b802508d5f469f
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_2): Simplify 'substring'.
Packit fc043f
Packit fc043f
2017-04-03  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Slightly improve the procedure dispatch.
Packit fc043f
	+ commit 9a4283ed6aafc1e43d8f7a5fd9cef6118615f284
Packit fc043f
	* tests/gpgscm/scheme.c (procnum): Procedures always have an integer
Packit fc043f
	number, so we can safely use the cheaper 'ivalue_unchecked'.
Packit fc043f
Packit fc043f
2017-03-23  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Make test cleanup more robust.
Packit fc043f
	+ commit e1780b2f981d3fd48bbf2672b35f2f33152f6c32
Packit fc043f
	* tests/gpgscm/tests.scm (mkdtemp-autoremove): New function that
Packit fc043f
	cleans up at interpreter shutdown.
Packit fc043f
	(run-tests-parallel): Use the new function.
Packit fc043f
	(run-tests-sequential): Likewise.
Packit fc043f
	(make-environment-cache): Execute setup with an temporary working
Packit fc043f
	directory.
Packit fc043f
Packit fc043f
2017-03-21  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests,w32: Use GetTempPath to get the path for temporary files.
Packit fc043f
	+ commit 8835ee681f5ae92ded982b51f5808935d227b126
Packit fc043f
	* tests/gpgscm/ffi.c (do_get_temp_path): New function.
Packit fc043f
	(ffi_init): Make function available.
Packit fc043f
	* tests/gpgscm/tests.scm (mkdtemp): Use the new function.
Packit fc043f
Packit fc043f
	tests: Create temporary directories in '/tmp'.
Packit fc043f
	+ commit cfc49428a427d1a140424c687cb45ba00117d443
Packit fc043f
	* tests/gpgscm/tests.scm (mkdtemp): Create temporary directories in
Packit fc043f
	'/tmp' on UNIX, or in '%Temp' on Windows.
Packit fc043f
	* tests/migrations/common.scm (run-test): Turn error into a warning.
Packit fc043f
	* tests/openpgp/defs.scm (start-agent): Likewise.
Packit fc043f
Packit fc043f
2017-03-17  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Simplify hash tables.
Packit fc043f
	+ commit 053a3f9a61a2918131b9dec60149b93861c04a51
Packit fc043f
	* tests/gpgscm/scheme.c (oblist_add_by_name): We now always get a
Packit fc043f
	slot.  Simplify accordingly.
Packit fc043f
	(oblist_find_by_name): Always return the slot.
Packit fc043f
	(vector_elem_slot): New function.
Packit fc043f
	(new_slot_spec_in_env): We now always get a slot.  Remove parameter
Packit fc043f
	'env'.  Simplify accordingly.
Packit fc043f
	(find_slot_spec_in_env): Always return a slot.
Packit fc043f
	(new_slot_in_env): Adapt callsite.
Packit fc043f
	(opexe_0): Likewise.
Packit fc043f
	(opexe_1): Likewise.
Packit fc043f
	(scheme_define): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Remove framework for immediate values.
Packit fc043f
	+ commit a1ed4b6ab25f28114d8ba6f704824a456d4fdc0c
Packit fc043f
	* tests/gpgscm/scheme.c (IMMEDIATE_TAG): Remove macro.
Packit fc043f
	(is_immediate): Likewise.
Packit fc043f
	(set_immediate): Likewise.
Packit fc043f
	(clr_immediate): Likewise.
Packit fc043f
	(enum scheme_types): Set the LSB in every value.
Packit fc043f
	(fill_vector): Adapt.
Packit fc043f
	(vector_elem): Likewise.
Packit fc043f
	(set_vector_elem): Likewise.
Packit fc043f
	(mark): Likewise.
Packit fc043f
	(gc): Test for the LSB to tell typeflags apart from pointers stored in
Packit fc043f
	the same memory location.
Packit fc043f
Packit fc043f
2017-03-09  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Rework environment setup.
Packit fc043f
	+ commit 14fcdcabb25d975f0f91be86b0571694fb533e7a
Packit fc043f
	* tests/gpgscm/tests.scm (test::scm): Add a setup argument.
Packit fc043f
	(test::binary): Likewise.
Packit fc043f
	(run-tests-parallel): Remove setup parameter.
Packit fc043f
	(run-tests-sequential): Likewise.
Packit fc043f
	(make-environment-cache): New function that handles the cache
Packit fc043f
	protocol.
Packit fc043f
	* tests/gpgme/run-tests.scm: Adapt accordingly.
Packit fc043f
	* tests/gpgsm/run-tests.scm: Likewise.
Packit fc043f
	* tests/migrations/run-tests.scm: Likewise.
Packit fc043f
	* tests/openpgp/run-tests.scm: Likewise.
Packit fc043f
Packit fc043f
2017-03-08  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	build: Use macOS' compatibility macros to enable all features.
Packit fc043f
	+ commit 5e51b642f747547c737a7abbc37e65b0f630d188
Packit fc043f
	* configure.ac: On macOS, use the compatibility macros to expose every
Packit fc043f
	feature of the libc.  This is the equivalent of _GNU_SOURCE on GNU
Packit fc043f
	libc.
Packit fc043f
Packit fc043f
2017-03-07  Michael Haubenwallner  <michael.haubenwallner@ssi-schaefer.com>
Packit fc043f
Packit fc043f
	gpgscm: Use system strlwr if available.
Packit fc043f
	+ commit ca3d31ec77612cecc16c376ac7c06ce09541b28e
Packit fc043f
	* tests/gpgscm/scheme.c: Define local strlwr only when HAVE_STRLWR is
Packit fc043f
	not defined in config.h.
Packit fc043f
	* tests/gpgscm/scheme-config.h: Remove hack.
Packit fc043f
Packit fc043f
2017-03-07  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	More change for common.
Packit fc043f
	+ commit d372378d28b2504225aae6819d056330e7ac0674
Packit fc043f
	* g10, scd, test, tools: Follow the change of removal of -Icommon.
Packit fc043f
Packit fc043f
	w32: Conditionalize ISO 2022 definitions.
Packit fc043f
	+ commit 1126c4c117a47c8ea8435ac11561d51b13f538dd
Packit fc043f
	* src/w32-iconv.c (iso2022_SI_seq, iso2022_SO_seq) [USE_MLANG_DLL]:
Packit fc043f
	Only for USE_MLANG_DLL.
Packit fc043f
Packit fc043f
2017-03-06  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Harmonize temporary and socket directory handling.
Packit fc043f
	+ commit 490c5d5afeaae66dc061295afbc254e57abd20c8
Packit fc043f
	* tests/gpgscm/tests.scm (mkdtemp): Do not magically obey the
Packit fc043f
	environment variable 'TMP', make sure to always return an absolute
Packit fc043f
	path.
Packit fc043f
	* tests/gpgme/Makefile.am (TMP): Drop variable.
Packit fc043f
	(TESTS_ENVIRONMENT): Drop 'TMP'.
Packit fc043f
	* tests/gpgme/gpgme-defs.scm (create-gpgmehome): Start the agent.  Do
Packit fc043f
	not create private key store, the agent does that for us.
Packit fc043f
	* tests/gpgsm/Makefile.am (TMP): Drop variable.
Packit fc043f
	(TESTS_ENVIRONMENT): Drop 'TMP'.
Packit fc043f
	* tests/gpgme/gpgme-defs.scm (create-gpgsmhome): Start the agent.  Do
Packit fc043f
	not create private key store, the agent does that for us.
Packit fc043f
	* tests/migrations/Makefile.am (TMP): Drop variable.
Packit fc043f
	(TESTS_ENVIRONMENT): Drop 'TMP'.
Packit fc043f
	* tests/migrations/common.scm (gpgconf): New variable.
Packit fc043f
	(run-test): Create and remove socket directory.
Packit fc043f
	* tests/migrations/extended-pkf.scm (src-tarball): Remove variable.
Packit fc043f
	(setup): Remove function.
Packit fc043f
	(trigger-migration): Likewise.
Packit fc043f
	Use 'run-test' to execute the test.
Packit fc043f
	* tests/migrations/from-classic.scm (src-tarball): Remove variable.
Packit fc043f
	(setup): Remove function.
Packit fc043f
	Use 'run-test' to execute the tests.
Packit fc043f
	* tests/openpgp/Makefile.am (TMP): Drop variable.
Packit fc043f
	(TESTS_ENVIRONMENT): Drop 'TMP'.
Packit fc043f
	* tests/openpgp/README: Do not mention 'TMP'.
Packit fc043f
	* tests/openpgp/defs.scm (with-home-directory): New macro.
Packit fc043f
	(create-legacy-gpghome): Do not create private key store, the agent
Packit fc043f
	does that for us.
Packit fc043f
	(start-agent): Make sure to terminate the right agent with 'atexit'.
Packit fc043f
Packit fc043f
	gpgscm: Fix creation of temporary directories.
Packit fc043f
	+ commit 9e29af900544fe4210a72cae87be78186d03e231
Packit fc043f
	* tests/gpgscm/ffi.c (do_mkdtemp): Use a larger buffer for the
Packit fc043f
	template.
Packit fc043f
Packit fc043f
2017-02-28  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Improve parsing.
Packit fc043f
	+ commit 9467f3c7758864f3c025c14166c9d099bea6fe62
Packit fc043f
	* tests/gpgscm/scheme.c (port_increment_current_line): Avoid creating
Packit fc043f
	the same integer if the delta is zero.  This happens a lot during
Packit fc043f
	parsing, and puts pressure on the memory allocator.
Packit fc043f
Packit fc043f
	gpgscm: Fix calculating the line number.
Packit fc043f
	+ commit 08e1cfddc94a6aae79b21d7795accf3e100a1f2f
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_5): Only increment the line number on
Packit fc043f
	newlines.
Packit fc043f
Packit fc043f
2017-02-28  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.27.
Packit fc043f
	+ commit c1668f61c58ea6f0439e5193d83b4e2ac622b286
Packit fc043f
	* configure.ac: Bump LT version to C22/A22/R0.
Packit fc043f
Packit fc043f
	Add support for armv7-unknown-linux-gnueabihf.
Packit fc043f
	+ commit 8d45ec8f8f61268a74d9c40b840a8fbd6f805a07
Packit fc043f
	* src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabihf.h: Remove.
Packit fc043f
	* src/syscfg/lock-obj-pub.armv5-unknown-linux-musleabi.h: Remove.
Packit fc043f
	* src/syscfg/lock-obj-pub.armv6-unknown-linux-musleabihf.h: Remove.
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Remove them.
Packit fc043f
	* src/mkheader.c (canon_host_triplet): Add removed as aliases.  Addn
Packit fc043f
	alias for armv7-unknown-linux-gnueabihf.
Packit fc043f
Packit fc043f
	New public header gpgrt.h as alias for gpg-error.h.
Packit fc043f
	+ commit 012f1bdc87e9969131c72c5575af0851484a2196
Packit fc043f
	* src/gpg-error.h.in (GPGRT_H): New double include protection.
Packit fc043f
	* src/Makefile.am (nodist_include_HEADERS): Add gpgrt.h.
Packit fc043f
	(BUILT_SOURCES): Ditto.
Packit fc043f
	(CLEANFILES): Ditto.
Packit fc043f
	(gpgrt.h): New rule.
Packit fc043f
Packit fc043f
	tests: New option --debug for t-poll.
Packit fc043f
	+ commit f141fdee4015d36aec2122853ef55f3ae42197da
Packit fc043f
	* tests/t-poll.c (test_poll): Add option.
Packit fc043f
Packit fc043f
	Improve tracing of estream.
Packit fc043f
	+ commit f27e516aabd27afeddecfde197eae1fd21a11395
Packit fc043f
	* src/gpgrt-int.h (trace_errno): Add new parameter.  Adjust all users.
Packit fc043f
	* src/init.c (trace_fp, trace_with_errno, trace_missing_lf)
Packit fc043f
	(trace_prefix_done): New vars.
Packit fc043f
	(_gpgrt_internal_trace_begin): Add arg WITH_ERRNO.  Open a trace file
Packit fc043f
	on first use.  Init new vars.
Packit fc043f
	(print_internal_trace_prefix): New.
Packit fc043f
	* src/estream.c, src/w32-estream.c: Improve tracing.
Packit fc043f
Packit fc043f
2017-02-28  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Track source locations in every kind of ports.
Packit fc043f
	+ commit 9b23e71a6b41cd11b39ab1e1d18c140eaf63c3e7
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct port): Move location
Packit fc043f
	information out of the union.
Packit fc043f
	* tests/gpgscm/scheme.c (mark): All ports need marking now.
Packit fc043f
	(gc): Likewise all ports on the load stack.
Packit fc043f
	(port_clear_location): Adapt accordingly.  Also, add an empty function
Packit fc043f
	for !SHOW_ERROR_LINE.
Packit fc043f
	(port_increment_current_line): Likewise.
Packit fc043f
	(port_reset_current_line): Drop function in favor of...
Packit fc043f
	(port_init_location): ... this new function.
Packit fc043f
	(file_push): Simplify.
Packit fc043f
	(file_pop): Likewise.
Packit fc043f
	(port_rep_from_filename): Likewise.
Packit fc043f
	(port_rep_from_file): Likewise.
Packit fc043f
	(port_rep_from_string): Also initialize the location.
Packit fc043f
	(port_rep_from_scratch): Likewise.
Packit fc043f
	(port_close): Simplify and generalize.
Packit fc043f
	(skipspace): Likewise.
Packit fc043f
	(token): Likewise.
Packit fc043f
	(_Error_1): Generalize.
Packit fc043f
	(opexe_5): Likewise.
Packit fc043f
	(scheme_deinit): Simplify and generalize.
Packit fc043f
	(scheme_load_named_file): Likewise.
Packit fc043f
	(scheme_load_string): Also initialize the location.
Packit fc043f
Packit fc043f
2017-02-28  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	w32: Fix gpgrt_poll for Windows.
Packit fc043f
	+ commit 07d5bd918d2185f79c7d61d56ee7f3090b6f5dcd
Packit fc043f
	* src/estream.c (_gpgrt_poll) [W32]: Do not call the syscall clamp.
Packit fc043f
Packit fc043f
2017-02-27  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Use the new tracing ramework for estream.
Packit fc043f
	+ commit 84aaa84d41f17d6f5e2bb31930e101568df554e2
Packit fc043f
	* src/estream.c: Add trace calls to some functions.
Packit fc043f
	* src/w32-estream.c: Replace existing trace calls by the new
Packit fc043f
	framework.
Packit fc043f
Packit fc043f
	Add a tracing framework.
Packit fc043f
	+ commit a52f12cc1879d171ddf309b5ac461bab06c8b5e2
Packit fc043f
	* src/init.c (trace_save_errno, trace_arg_module)
Packit fc043f
	(trace_arg_file, trace_arg_line): New module vars.
Packit fc043f
	(do_internal_trace): New.
Packit fc043f
	(_gpgrt_internal_trace_printf): New.
Packit fc043f
	(_gpgrt_internal_trace): New.
Packit fc043f
	(_gpgrt_internal_trace_errno): New.
Packit fc043f
	(_gpgrt_internal_trace_end): New.
Packit fc043f
	* src/gpgrt-int.h (trace): New macro.
Packit fc043f
	(trace_errno): New macro.
Packit fc043f
	(trace_start): New macro.
Packit fc043f
	(trace_append): New macro.
Packit fc043f
	(trace_finish): New macro.
Packit fc043f
Packit fc043f
2017-02-26  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Rename internal functions of estream.
Packit fc043f
	+ commit be49b02a56e8b405eeb0c07c80eb24e71e841b4a
Packit fc043f
	* src/estream.c (_gpgrt_es_init): Rename to _gpgrt_estream_init.
Packit fc043f
	(es_fill): Rename to fill_stream.
Packit fc043f
	(es_fflush): Rename to flush_stream.
Packit fc043f
	(es_deinitialize): Rename to deinit_stream_obj.
Packit fc043f
	(es_create): Rename to create_stream
Packit fc043f
	(es_read_nbf): Rename to do_read_nbf.
Packit fc043f
	(es_read_lbf): Rename to do_read_lbf.
Packit fc043f
	(es_read_fbf): Rename to do_read_fbf.
Packit fc043f
	(es_peek): Rename to peek_stream.
Packit fc043f
	(es_skip): Rename to skip_stream.
Packit fc043f
	(es_print): Rename to do_print_stream.
Packit fc043f
Packit fc043f
2017-02-24  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	w32: Do not use the syscall clamps in pollable mode.
Packit fc043f
	+ commit 915e1bf2ad1b23239b17843755376344e59a3110
Packit fc043f
	* src/estream.c (estream_cookie_w32): Add flag no_syscall_clamp.
Packit fc043f
	(func_w32_create): Add arg no_syscall_clamp.
Packit fc043f
	(func_w32_read): Do not call pre/post_syscall_clamp when flag is set.
Packit fc043f
	(func_w32_write): Ditto.
Packit fc043f
	(func_w32_seek): Ditto.
Packit fc043f
	(do_w32open): Set NO_SYSCALL_CLAMP in pollable mode.
Packit fc043f
	(es_create) [W32]: Make sure that pollable-mode is unly used with the
Packit fc043f
	W32 backend.
Packit fc043f
Packit fc043f
2017-02-23  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	w32: Replace gpgrt locks in w32-streams by native critical sections.
Packit fc043f
	+ commit c9e44c92e08187626e878d826cdedf4cd4e931fe
Packit fc043f
	* src/w32-estream.c (TRACE_ERR): Also print the error number.  This is
Packit fc043f
	in particular useful on non-english systems.
Packit fc043f
	(reader_context_s, writer_context_s): Replace the gpgrt mutex by a
Packit fc043f
	native critical section.  Change all calls to gpgrt_lock_ fucntions by
Packit fc043f
	the EnterCriticalSection et al.
Packit fc043f
	(_gpgrt_w32_poll): Make CODE unsigned which is what WFMO returns.
Packit fc043f
	Remove the then useless condition.
Packit fc043f
Packit fc043f
2017-02-19  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	New error code GPG_ERR_INV_NAME.
Packit fc043f
	+ commit 3a2ee6df5911728938a2fb56237b08f790841a0c
Packit fc043f
Packit fc043f
Packit fc043f
2017-02-17  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Guard use of tagged expressions.
Packit fc043f
	+ commit 86082852350810afa548c607241df95f9cac777a
Packit fc043f
	* tests/gpgscm/init.scm (vm-history-print): Check that the tag added
Packit fc043f
	to expressions when parsing source files matches the expected format.
Packit fc043f
	* tests/gpgscm/lib.scm (assert): Likewise.
Packit fc043f
Packit fc043f
2017-02-15  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests,build: Fix distcheck.
Packit fc043f
	+ commit 52748cd96c70c9da01c35de10dd1627f7897d085
Packit fc043f
	* tests/gpgscm/Makefile.am (EXTRA_DIST): Add 'time.scm'.
Packit fc043f
Packit fc043f
	tests: Check expiration times of created keys.
Packit fc043f
	+ commit b2db15dfe894a27246236ed416c8e2c2fc0e73c4
Packit fc043f
	* tests/gpgscm/ffi.c (do_get_time): New function.
Packit fc043f
	(ffi_init): Expose new function.
Packit fc043f
	* tests/gpgscm/ffi.scm (get-time): Document new function.
Packit fc043f
	* tests/gpgscm/time.scm: New file.
Packit fc043f
	* tests/openpgp/quick-key-manipulation.scm: Use the new facilities to
Packit fc043f
	check the expiration times of created keys.
Packit fc043f
	* tests/openpgp/tofu.scm: Use the new module.
Packit fc043f
Packit fc043f
2017-02-02  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	syscfg: Add a sh3 architecture.
Packit fc043f
	+ commit 67e51f9957f875ca854f25f4a9a63aeb831c55c4
Packit fc043f
	* src/syscfg/lock-obj-pub.sh3-unknown-linux-gnu.h: New.
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Add it.
Packit fc043f
Packit fc043f
2017-02-01  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	Add Base64 decoder.
Packit fc043f
	+ commit 4bfc2117b70415a5c5d3f0a0ac9086e168350d83
Packit fc043f
	* NEWS: Add interface changes.
Packit fc043f
	* src/Makefile.am (libgpg_error_la_SOURCES): Add b64dec.c.
Packit fc043f
	* src/b64dec.c: New.  Taken from gpgme.  Prefix function names with
Packit fc043f
	_gpgrt_.  Change API a bit, not exposing the structure.
Packit fc043f
	* src/gpg-error.def.in: Export Base64 functions.
Packit fc043f
	* src/gpg-error.vers: Likewise.
Packit fc043f
	* src/visibility.c, src/visibility.h: Likewise.
Packit fc043f
	* src/gpg-error.h.in: Add Base64 struct and functions.
Packit fc043f
	* src/gpgrt-int.h: Add Base64 internal functions.
Packit fc043f
	* tests/Makefile.am (TESTS): Add t-b64dec.
Packit fc043f
	* tests/t-b64dec.c: New.
Packit fc043f
Packit fc043f
2017-01-31  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Tune the hash tables.
Packit fc043f
	+ commit 1c99db04ed62d395c1c88171ef147a580e0bb4ab
Packit fc043f
	* tests/gpgscm/scheme.c (oblist_initial_value): Increase the size of
Packit fc043f
	the hash table based on the number of symbols used after initializing
Packit fc043f
	the interpreter.
Packit fc043f
	(new_frame_in_env): Increase the size of the hash table based on the
Packit fc043f
	number of variables in the global environement.
Packit fc043f
Packit fc043f
	gpgscm: Optimize environment lookups and insertions.
Packit fc043f
	+ commit fa2363d9d903dfc9885f7d2f290fb4d7738bb737
Packit fc043f
	* tests/gpgscm/scheme.c (pointercmp): New function.
Packit fc043f
	(new_slot_spec_in_env): Add and use slot for insertions.
Packit fc043f
	(find_slot_spec_in_env): New variant of 'find_slot_in_env' that
Packit fc043f
	returns the slot on failures.
Packit fc043f
	(find_slot_in_env): Express using the new function.
Packit fc043f
	(new_slot_in_env): Update callsite.
Packit fc043f
	(opexe_0): Optimize lookup-or-insert.
Packit fc043f
	(opexe_1): Likewise.
Packit fc043f
	(scheme_define): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Fix build with list environments.
Packit fc043f
	+ commit e982432ba66652bc9bc16e334e1d4d184e1b68bd
Packit fc043f
	* tests/gpgscm/scheme.c (new_slot_spec_in_env): Provide preallocation
Packit fc043f
	inforomation if USE_ALIST_ENV.
Packit fc043f
Packit fc043f
	gpgscm: Optimize symbol lookups and insertions.
Packit fc043f
	+ commit d374a1271326e503bd7cabe11cf5fd10a970d9fc
Packit fc043f
	* tests/gpgscm/scheme.c (oblist_find_by_name): Keep the list of
Packit fc043f
	symbols sorted, return the slot where a new symbol must be inserted on
Packit fc043f
	lookup failures.
Packit fc043f
	(oblist_add_by_name): Add the new symbol at the given slot.
Packit fc043f
	(mk_symbol): Adjust callsite.
Packit fc043f
	(gensym): Likewise.
Packit fc043f
	(assign_syntax): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Fix build with object list.
Packit fc043f
	+ commit 85f6f60197fe56c90b663fb34db4cddf62c28c1b
Packit fc043f
	* tests/gpgscm/scheme.c (oblist_add_by_name): Provide preallocation
Packit fc043f
	information if USE_OBJECT_LIST.
Packit fc043f
Packit fc043f
	gpgscm: Remove unused functions.
Packit fc043f
	+ commit 92e929d4b91cbb5e36d6cb89aabf2211a7185a65
Packit fc043f
	* tests/gpgscm/scheme.c (check_cell_alloced): Remove function.
Packit fc043f
	(check_range_alloced): Likewise.
Packit fc043f
Packit fc043f
2017-01-30  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Use a compact vector representation.
Packit fc043f
	+ commit 5809edef40acf1f8f0e71b69dcb10e1d5464f2a5
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct cell): Add a compact vector
Packit fc043f
	representation.
Packit fc043f
	* tests/gpgscm/scheme.c (vector_length): Use new representation.
Packit fc043f
	(vector_size): New macro.
Packit fc043f
	(get_vector_object): Use the new representation.
Packit fc043f
	(fill_vector): Likewise.
Packit fc043f
	(vector_elem): Likewise.
Packit fc043f
	(set_vector_elem): Likewise.
Packit fc043f
	(mark): Likewise.
Packit fc043f
	(gc): Likewise.  Be careful not to confuse immediate values for type
Packit fc043f
	flags.
Packit fc043f
	(finalize_cell): Vectors now require finalization.
Packit fc043f
Packit fc043f
	gpgscm: Provide framework for immediate values.
Packit fc043f
	+ commit e1dc204ac465498436f463d419b9583011026807
Packit fc043f
	* tests/gpgscm/scheme.c (IMMEDIATE_TAG): New macro.
Packit fc043f
	({is,set,clr}_immediate): Likewise.
Packit fc043f
	(enum scheme_types): Make type tags disjoint from immediate values.
Packit fc043f
	(TYPE_BITS): We need one more bit now.
Packit fc043f
	(ADJ,T_MASKTYPE): Compute values.
Packit fc043f
Packit fc043f
	gpgscm: Fix setting the line of the first gc reservation.
Packit fc043f
	+ commit c587e6a038fc532df064eec7bea2ad1db31238ad
Packit fc043f
	* tests/gpgscm/scheme.c (_gc_disable): Negate guard.
Packit fc043f
Packit fc043f
	gpgscm: Introduce macro for the vector length.
Packit fc043f
	+ commit e2caaa957b56f20cfe09bc6ca5a595b37a860b51
Packit fc043f
	* tests/gpgscm/scheme.c (vector_length): New macro.
Packit fc043f
	(get_vector_object): Use the new macro.
Packit fc043f
	(oblist_add_by_name): Likewise.
Packit fc043f
	(oblist_find_by_name): Likewise.
Packit fc043f
	(oblist_all_symbols): Likewise.
Packit fc043f
	(mk_vector): Likewise.
Packit fc043f
	(mark): Likewise.
Packit fc043f
	(new_slot_spec_in_env): Likewise.
Packit fc043f
	(find_slot_spec_in_env): Likewise.
Packit fc043f
	(opexe_2): Likewise.
Packit fc043f
	(opexe_5): Likewise.
Packit fc043f
Packit fc043f
2017-01-19  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Correctly set ERRNO to EOPNOTSUPP.
Packit fc043f
	+ commit 55c497904dd0794ca5cfcafe369943736b0d4e62
Packit fc043f
	* src/estream.c (es_flush, es_write_nbf): Fix setting of ERRNO to
Packit fc043f
	EOPNOTSUPP.
Packit fc043f
Packit fc043f
2017-01-17  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	build: Modernize autogen.sh.
Packit fc043f
	+ commit 66275ac5b8db9d83a72b5497eec4e6d9ac3b4e65
Packit fc043f
	* autogen.sh: Update from GnuPG.
Packit fc043f
	* autogen.rc (version_parts): New.
Packit fc043f
	* configure.ac: Change to use autogen.sh --find-version helper.
Packit fc043f
	* Makefile.am (dist-hook): Do not create VERSION
Packit fc043f
	(EXTRA_DIST): Add VERSION.
Packit fc043f
Packit fc043f
2017-01-10  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>
Packit fc043f
Packit fc043f
	doc,configure: Be consistent about preferring --with-libgpg-error-prefix
Packit fc043f
	+ commit 19de4cef279272d3969e36dd8cd2fa05a7bf5276
Packit fc043f
	* doc/gpgrt.texi: Say "--with-libgpg-error-prefix" instead of
Packit fc043f
	  "--with-gpg-error-prefix".
Packit fc043f
	* src/gpg-error.m4: When warning about library locations, warn with
Packit fc043f
	  the preferred "--with-libgpg-error-prefix" name.
Packit fc043f
Packit fc043f
2017-01-03  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Fix macro GPGRT_GCC_VERSION.
Packit fc043f
	+ commit 704c31992e8716bbe61e6d5751e125a64badeef0
Packit fc043f
	* src/gpg-error.h.in (GPGRT_GCC_VERSION): Fix.
Packit fc043f
Packit fc043f
2017-01-02  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fail if too many arguments are given.
Packit fc043f
	+ commit 56787d898a6911e62b35c3054a22df1a913c26cf
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Enable check.
Packit fc043f
	* tests/gpgscm/tests.scm (test::report): Remove superfluous argument.
Packit fc043f
Packit fc043f
	gpgscm: Add 'finally', rework all macros.
Packit fc043f
	+ commit 7d95db002aac773e596c551b8fcba2d983244495
Packit fc043f
	* tests/gpgscm/init.scm (finally): New macro.
Packit fc043f
	* tests/gpgscm/tests.scm (letfd): Rewrite.
Packit fc043f
	(with-working-directory): Likewise.
Packit fc043f
	(with-temporary-working-directory): Likewise.
Packit fc043f
	(lettmp): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Use boxed values for source locations.
Packit fc043f
	+ commit 4165c9303d894179c0da3a1b12316d3df8d4ce82
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct port): Use boxed values for
Packit fc043f
	filename and current line.  This allows us to use the same Scheme
Packit fc043f
	object for labeling all expressions in a file.
Packit fc043f
	* tests/gpgscm/scheme.c (file_push): Use boxed type for filename.
Packit fc043f
	(mark): Mark location objects of port objects.
Packit fc043f
	(gc): Mark location objects in the load stack.
Packit fc043f
	(port_clear_location): New function.
Packit fc043f
	(port_reset_current_line): Likewise.
Packit fc043f
	(port_increment_current_line): Likewise.
Packit fc043f
	(file_pop): Adapt accordingly.
Packit fc043f
	(port_rep_from_filename): Likewise.
Packit fc043f
	(port_rep_from_file): Likewise.
Packit fc043f
	(port_close): Likewise.
Packit fc043f
	(skipspace): Likewise.
Packit fc043f
	(token): Likewise.
Packit fc043f
	(_Error_1): Likewise.
Packit fc043f
	(opexe_0): Likewise.
Packit fc043f
	(opexe_5): Likewise.
Packit fc043f
	(scheme_deinit): Likewise.
Packit fc043f
	(scheme_load_file): Likewise.
Packit fc043f
	(scheme_load_named_file): Likewise.
Packit fc043f
Packit fc043f
2016-12-21  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Guard use of union member.
Packit fc043f
	+ commit aa6b3449bf1b42703b4c6466d87f91620743a5d2
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_5): Check that we have a file port
Packit fc043f
	before accessing filename.  Fixes a crash on 32-bit architectures.
Packit fc043f
Packit fc043f
2016-12-21  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.26.
Packit fc043f
	+ commit 82266defa39901ec9f97533623af5638a35e5a77
Packit fc043f
	* configure.ac: Bump LT version to C21/A21/R0.
Packit fc043f
Packit fc043f
2016-12-20  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Move argument parser.
Packit fc043f
	+ commit 5f16dec938ac6e337c6ff72981285385d75ec455
Packit fc043f
	* tests/gpgme/gpgme-defs.scm (flag): Move...
Packit fc043f
	* tests/gpgscm/tests.scm: ... over here.
Packit fc043f
Packit fc043f
2016-12-19  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Change associativity of ::.
Packit fc043f
	+ commit 3ae0b5d9af063e7af03558be2bf8f32e5bb4e5cd
Packit fc043f
	* tests/gpgscm/scheme.c (mk_atom): Change associativity of the ::
Packit fc043f
	infix-operator.  This makes it possible to naturally express accessing
Packit fc043f
	nested structures (e.g. a::b::c).
Packit fc043f
Packit fc043f
	gpgscm: Display location when assertions fail.
Packit fc043f
	+ commit b852ac097f3dfe4e62c3d27e18a22f1b9f704530
Packit fc043f
	* tests/gpgscm/lib.scm (assert): Use location information if
Packit fc043f
	available.
Packit fc043f
Packit fc043f
	gpgscm: Make exception handling more robust.
Packit fc043f
	+ commit 5221e0b2a3bd2dbb4f997e3c2118b176e10e116e
Packit fc043f
	* tests/gpgscm/init.scm (throw'): Check that args is a list.
Packit fc043f
Packit fc043f
2016-12-13  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Print failed and skipped tests.
Packit fc043f
	+ commit e8c5871609dd3ff3b2aa3d21ab5c3651ba683ed7
Packit fc043f
	* tests/gpgscm/tests.scm (test-pool::report): Print failed and skipped
Packit fc043f
	tests at the end.
Packit fc043f
Packit fc043f
	gpgscm: Generalize the test runner.
Packit fc043f
	+ commit b1e67a725d17ff1605ba79d8bb61f37c4a48f0a5
Packit fc043f
	* tests/gpgscm/tests.scm (test::scm) Add explicit name argument.
Packit fc043f
	(test::binary): Likewise.  Also, add missing unquote.
Packit fc043f
	* tests/openpgp/run-tests.scm: Adapt accordingly.
Packit fc043f
Packit fc043f
	gpgscm: Move the test runner to the Scheme library.
Packit fc043f
	+ commit 0031a4d4d8a1851f0c32ad1af2f42f59bd016001
Packit fc043f
	* tests/openpgp/run-tests.scm: Move most of the code...
Packit fc043f
	* tests/gpgscm/tests.scm: ... here.
Packit fc043f
Packit fc043f
	gpgscm: Improve library functions.
Packit fc043f
	+ commit f745dcab2b1789c8f64c2be4b5dcc7322212e1d2
Packit fc043f
	* tests/gpgscm/tests.scm (absolute-path?): New function.
Packit fc043f
	(canonical-path): Use the new function.
Packit fc043f
	* tests/gpgscm/lib.scm (string-split-pln): New function.
Packit fc043f
	(string-indexp, string-splitp): Likewise.
Packit fc043f
	(string-splitn): Express using the above function.
Packit fc043f
	(string-ltrim, string-rtrim): Fix corner case.
Packit fc043f
	(list->string-reversed): New function.
Packit fc043f
	(read-line): Fix performance.
Packit fc043f
Packit fc043f
2016-12-13  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	New error code GPG_ERR_TRY_LATER.
Packit fc043f
	+ commit f02a657f0129b30700b2f36956ee37b40cc2da82
Packit fc043f
Packit fc043f
Packit fc043f
2016-12-12  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	New error code GPG_ERR_DNS_TIMEOUT.
Packit fc043f
	+ commit 90b4dfad438900c7808b8c2995ba984fa3587bb2
Packit fc043f
Packit fc043f
Packit fc043f
	New error codes to support libdns.
Packit fc043f
	+ commit 56ab574c28586fccd95a08acdc9ee4962ab0db50
Packit fc043f
Packit fc043f
Packit fc043f
2016-12-08  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Better error reporting.
Packit fc043f
	+ commit 735c66bd2d5672de8cc7573fe9d6af4615b86fe2
Packit fc043f
	* tests/gpgscm/ffi.scm: Move the customized exception handling and
Packit fc043f
	atexit logic...
Packit fc043f
	* tests/gpgscm/init.scm: ... here.
Packit fc043f
	(throw): Record the current history.
Packit fc043f
	(throw'): New function that is history-aware.
Packit fc043f
	(rethrow): New function.
Packit fc043f
	(*error-hook*): Use the new throw'.
Packit fc043f
	* tests/gpgscm/main.c (load): Fix error handling.
Packit fc043f
	(main): Save and use the 'sc->retcode' as exit code.
Packit fc043f
	* tests/gpgscm/repl.scm (repl): Print call history.
Packit fc043f
	* tests/gpgscm/scheme.c (_Error_1): Make a snapshot of the history,
Packit fc043f
	use it to provide a accurate location of the expression causing the
Packit fc043f
	error at runtime, and hand the history trace to the '*error-hook*'.
Packit fc043f
	(opexe_5): Tag all lists at parse time with the current location.
Packit fc043f
	* tests/gpgscm/tests.scm: Update calls to 'throw', use 'rethrow'.
Packit fc043f
Packit fc043f
	gpgscm: Keep a history of calls for error messages.
Packit fc043f
	+ commit 81c95b26e769a1ed4933fdf598a3df42d0416928
Packit fc043f
	* tests/gpgscm/init.scm (vm-history-print): New function.
Packit fc043f
	* tests/gpgscm/opdefines.h: New opcodes 'CALLSTACK_POP', 'APPLY_CODE',
Packit fc043f
	and 'VM_HISTORY'.
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct history): New definition.
Packit fc043f
	(struct scheme): New field 'history'.
Packit fc043f
	* tests/gpgscm/scheme.c (gc): Mark objects in the history.
Packit fc043f
	(history_free): New function.
Packit fc043f
	(history_init): Likewise.
Packit fc043f
	(history_mark): Likewise.
Packit fc043f
	(add_mod): New macro.
Packit fc043f
	(sub_mod): Likewise.
Packit fc043f
	(tailstack_clear): New function.
Packit fc043f
	(callstack_pop): Likewise.
Packit fc043f
	(callstack_push): Likewise.
Packit fc043f
	(tailstack_push): Likewise.
Packit fc043f
	(tailstack_flatten): Likewise.
Packit fc043f
	(callstack_flatten): Likewise.
Packit fc043f
	(history_flatten): Likewise.
Packit fc043f
	(opexe_0): New variable 'callsite', keep track of the expression if it
Packit fc043f
	is a call, implement the new opcodes, record function applications in
Packit fc043f
	the history.
Packit fc043f
	(opexe_6): Implement new opcode.
Packit fc043f
	(scheme_init_custom_alloc): Initialize history.
Packit fc043f
	(scheme_deinit): Free history.
Packit fc043f
	* tests/gpgscm/scheme.h (USE_HISTORY): New macro.
Packit fc043f
Packit fc043f
	gpgscm: Add flag TAIL_CONTEXT.
Packit fc043f
	+ commit 83175b317dccceb149906cda721aa33178797f3e
Packit fc043f
	* tests/gpgscm/scheme.c (S_FLAG_TAIL_CONTEXT): New macro.  This flag
Packit fc043f
	indicates that the interpreter is evaluating an expression in a tail
Packit fc043f
	context (see R5RS, section 3.5).
Packit fc043f
	(opexe_0): Clear and set the flag according to the rules layed out in
Packit fc043f
	R5RS, section 3.5.
Packit fc043f
	(opexe_1): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Add flags to the interpreter.
Packit fc043f
	+ commit 14d9ea4bd43e077fab4c756b513557cad76aacd2
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): Add field 'flags'.
Packit fc043f
	* tests/gpgscm/scheme.c (S_OP_MASK): New macro.
Packit fc043f
	(S_FLAG_MASK, s_set_flag, s_clear_flag, s_get_flag): Likewise.
Packit fc043f
	(_s_return): Unpack the encoded opcode and flags.
Packit fc043f
	(s_save): Encode the flags along with the opcode.  Use normal
Packit fc043f
	integers to encode the result.
Packit fc043f
	(scheme_init_custom_alloc): Initialize 'op' and 'flags'.
Packit fc043f
Packit fc043f
	gpgscm: Implement tags.
Packit fc043f
	+ commit 88753eea0d9b1ea40a46f3b3969d418ba75cccf9
Packit fc043f
	* tests/gpgscm/opdefines.h: Add opcodes to create and retrieve tags.
Packit fc043f
	* tests/gpgscm/scheme.c (T_TAGGED): New macro.
Packit fc043f
	(mk_tagged_value): New function.
Packit fc043f
	(has_tag): Likewise.
Packit fc043f
	(get_tag): Likewise.
Packit fc043f
	(mark): Mark tag.
Packit fc043f
	(opexe_4): Implement new opcodes.
Packit fc043f
	* tests/gpgscm/scheme.h (USE_TAGS): New macro.
Packit fc043f
Packit fc043f
	gpgscm: Generalize 'for-each-p'.
Packit fc043f
	+ commit 94e8811cb2fd0cb56b330a811d13075d54681e38
Packit fc043f
	* tests/gpgscm/tests.scm (for-each-p): Generalize to N lists like
Packit fc043f
	for-each.
Packit fc043f
	(for-each-p'): Likewise.
Packit fc043f
Packit fc043f
2016-12-06  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Rename 'error' to 'fail'.
Packit fc043f
	+ commit 85613efd8d49b39c1310d84484cb1647db83b4d5
Packit fc043f
	* tests/gpgscm/tests.scm (error): Rename to 'fail'.  'error' is a
Packit fc043f
	primitive function (an opcode) of the TinySCHEME vm, and 'error' is
Packit fc043f
	also defined by R6RS.  Better avoid redefining that.  Fix all call
Packit fc043f
	sites.
Packit fc043f
	* tests/openpgp/4gb-packet.scm: Adapt.
Packit fc043f
	* tests/openpgp/decrypt-multifile.scm: Likewise.
Packit fc043f
	* tests/openpgp/ecc.scm: Likewise.
Packit fc043f
	* tests/openpgp/export.scm: Likewise.
Packit fc043f
	* tests/openpgp/gpgtar.scm: Likewise.
Packit fc043f
	* tests/openpgp/gpgv-forged-keyring.scm: Likewise.
Packit fc043f
	* tests/openpgp/import.scm: Likewise.
Packit fc043f
	* tests/openpgp/issue2015.scm: Likewise.
Packit fc043f
	* tests/openpgp/issue2346.scm: Likewise.
Packit fc043f
	* tests/openpgp/issue2419.scm: Likewise.
Packit fc043f
	* tests/openpgp/key-selection.scm: Likewise.
Packit fc043f
	* tests/openpgp/mds.scm: Likewise.
Packit fc043f
	* tests/openpgp/multisig.scm: Likewise.
Packit fc043f
	* tests/openpgp/setup.scm: Likewise.
Packit fc043f
	* tests/openpgp/signencrypt.scm: Likewise.
Packit fc043f
	* tests/openpgp/ssh-import.scm: Likewise.
Packit fc043f
	* tests/openpgp/tofu.scm: Likewise.
Packit fc043f
	* tests/openpgp/verify.scm: Likewise.
Packit fc043f
Packit fc043f
2016-12-06  Neal H. Walfield  <neal@g10code.com>
Packit fc043f
Packit fc043f
	tests: Change (interactive-shell) to start an interactive shell.
Packit fc043f
	+ commit 0d27b63f35c1e3a36631874fd111d3df2a1d51db
Packit fc043f
	* tests/gpgscm/tests.scm (interactive-shell): Start an interactive
Packit fc043f
	shell.
Packit fc043f
Packit fc043f
2016-12-02  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Fix NULL segv in new option --desc.
Packit fc043f
	+ commit 140a19617c78d5f0e2ac8d7e2c8e7092862ec2fb
Packit fc043f
	* src/gpg-error.c (print_desc): Shortcur for unknown symbols.
Packit fc043f
Packit fc043f
	New error code GPG_ERR_INV_FLAG.
Packit fc043f
	+ commit c761c981b38741421d13bb7102b1ea7625d2d639
Packit fc043f
Packit fc043f
Packit fc043f
	New option --desc for gpg-error.
Packit fc043f
	+ commit b462d603f5110842489edce9e01e4ea40ac05cba
Packit fc043f
	* doc/errorref.txt: Remove all tabs.
Packit fc043f
	* doc/Makefile.am (install-data-local): New to install errorref.txt.
Packit fc043f
	(uninstall-local): New.
Packit fc043f
	(errorref.txt.x): New.
Packit fc043f
	* src/Makefile.am (gpg_error_CPPFLAGS): Define PKGDATADIR
Packit fc043f
	* src/gpg-error.c (print_desc): New.
Packit fc043f
	(show_usage): New.
Packit fc043f
	(main): Improve option parser.  Add new option --desc.  Call
Packit fc043f
	print_desc.
Packit fc043f
Packit fc043f
2016-11-29  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Avoid truncating pointers.
Packit fc043f
	+ commit 941c0efdf826717aae88ea448ec60801f74bb476
Packit fc043f
	* tests/gpgscm/scheme.c (_alloc_cellseg): Avoid truncating pointers on
Packit fc043f
	systems where sizeof(unsigned long) < sizeof(void *).
Packit fc043f
Packit fc043f
2016-11-23  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Make 'reverse' compatible with 'reverse_in_place'.
Packit fc043f
	+ commit 7f7869357cae0f75c5976ece12a1d94a659b904a
Packit fc043f
	* tests/gpgscm/scheme.c (reverse): Update prototype, add terminator
Packit fc043f
	argument.
Packit fc043f
	(opexe_4): Update callsite.
Packit fc043f
Packit fc043f
	gpgscm: Clean sweeped cells.
Packit fc043f
	+ commit a078d448415c74ee5169d548a901d27380d933f3
Packit fc043f
	* tests/gpgscm/scheme.c (gc): Zero typeflag and car of free cells.
Packit fc043f
Packit fc043f
	gpgscm: Fix initialization of 'sink'.
Packit fc043f
	+ commit 95db0d64ac0ccab6cf0e6d6ec25251ccb0fab9d3
Packit fc043f
	* tests/gpgscm/scheme.c (scheme_init_custom_alloc): Also initialize
Packit fc043f
	cdr.
Packit fc043f
Packit fc043f
2016-11-22  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Refactor.
Packit fc043f
	+ commit b18458f3dfd53627994783d0f2ad835ae70a05af
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Reduce code duplication.
Packit fc043f
Packit fc043f
	gpgscm: Fix property lists.
Packit fc043f
	+ commit 08f16887de9d6f6dcb0b7a377407dbd4f541fe13
Packit fc043f
	* tests/gpgscm/opdefines.h (put, get): Check arguments.  Also rename
Packit fc043f
	to 'set-symbol-property' and 'symbol-property', the names used by
Packit fc043f
	Guile, because put and get are too unspecific.
Packit fc043f
	* tests/gpgscm/scheme.c (hasprop): Only symbols have property lists.
Packit fc043f
	(get_property): New function.
Packit fc043f
	(set_property): Likewise.
Packit fc043f
	(opexe_4): Use the new functions.
Packit fc043f
Packit fc043f
	gpgscm: Fix installation of error handler.
Packit fc043f
	+ commit 185ba177abeaf2f8ad66529a42966362107a2d8b
Packit fc043f
	* tests/gpgscm/ffi.scm: Set '*error-hook*' again so that the
Packit fc043f
	interpreter will use our function.
Packit fc043f
Packit fc043f
	gpgscm: Use a static pool of cells for small integers.
Packit fc043f
	+ commit eca7b9bbee2986157ec6c078c998bd8a25becd8f
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): New fields for the
Packit fc043f
	static integer cells.
Packit fc043f
	* tests/gpgscm/scheme.c (_alloc_cellseg): New function.
Packit fc043f
	(alloc_cellseg): Use the new function.
Packit fc043f
	(MAX_SMALL_INTEGER): New macro.
Packit fc043f
	(initialize_small_integers): New function.
Packit fc043f
	(mk_small_integer): Likewise.
Packit fc043f
	(mk_integer): Return a small integer if possible.
Packit fc043f
	(_s_return): Do not free 'op' if it is a small integer.
Packit fc043f
	(s_save): Use a small integer to box the opcode.
Packit fc043f
	(scheme_init_custom_alloc): Initialize small integers.
Packit fc043f
	(scheme_deinit): Free chunk of small integers.
Packit fc043f
	* tests/gpgscm/scheme.h (USE_SMALL_INTEGERS): New macro.
Packit fc043f
Packit fc043f
2016-11-17  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Re-enable the garbage collector in case of errors.
Packit fc043f
	+ commit d2a75dc5ae2b172a232dad88639b15b4930b9151
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Enable gc before calling 'Error_1'.
Packit fc043f
Packit fc043f
	gpgscm: Fix string.
Packit fc043f
	+ commit 63cad2c16fdd343be89b576901c8f34de7cb74bf
Packit fc043f
	* tests/gpgscm/scheme.c (type_to_string): Fix string.
Packit fc043f
Packit fc043f
2016-11-17  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	Fix EXEEXT for lock obj creation.
Packit fc043f
	+ commit eeef6b8724b43e105ae2beef022fc957eb228bcf
Packit fc043f
	* src/Makefile.am (lock-obj-pub.native.h): Add EXEEXT for
Packit fc043f
	the executable gen-posix-lock-obj.
Packit fc043f
Packit fc043f
2016-11-15  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Mark cells requiring finalization.
Packit fc043f
	+ commit ad10069af6b0d247f27b7dbf891029eb34d264e0
Packit fc043f
	* tests/gpgscm/scheme.c (T_FINALIZE): New macro.
Packit fc043f
	(mk_port): Use the new macro.
Packit fc043f
	(mk_foreign_object): Likewise.
Packit fc043f
	(mk_counted_string): Likewise.
Packit fc043f
	(mk_empty_string): Likewise.
Packit fc043f
	(gc): Only call 'finalize_cell' for cells with the new flag.
Packit fc043f
Packit fc043f
	gpgscm: Recover more cells.
Packit fc043f
	+ commit dd6bd1bf2a767e22bb7c1bd470ce94527a9fae3d
Packit fc043f
	* tests/gpgscm/scheme.c (_s_return): Recover the cell holding the
Packit fc043f
	opcode.
Packit fc043f
Packit fc043f
2016-11-14  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.25.
Packit fc043f
	+ commit 6d834f817fdb741ec64dcfbd2166ea044e4e0c3d
Packit fc043f
	* configure.ac: Set LT version to C20/A20/R0.
Packit fc043f
Packit fc043f
	po: Update German translation.
Packit fc043f
	+ commit 9cecc8ccded0759d94b08c9859e7ea843430dd97
Packit fc043f
Packit fc043f
Packit fc043f
	Fix typo in two new error descriptions.
Packit fc043f
	+ commit 80350f97e9e811b9e77b59b8fc4172043f072f42
Packit fc043f
Packit fc043f
Packit fc043f
2016-11-14  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Avoid cell allocation overhead.
Packit fc043f
	+ commit dc1d3a79fa3e7944ea6ef02bc968446f9aa6d648
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): New fields
Packit fc043f
	'inhibit_gc', 'reserved_cells', and 'reserved_lineno'.
Packit fc043f
	* tests/gpgscm/scheme.c (GC_ENABLED): New macro.
Packit fc043f
	(USE_GC_LOCKING): Likewise.
Packit fc043f
	(gc_reservations): Likewise.
Packit fc043f
	(gc_reservation_failure): New function.
Packit fc043f
	(_gc_disable): Likewise.
Packit fc043f
	(gc_disable): New macro.
Packit fc043f
	(gc_enable): Likewise.
Packit fc043f
	(gc_enabled): Likewise.
Packit fc043f
	(gc_consume): Likewise.
Packit fc043f
	(get_cell_x): Consume reserved cell if garbage collection is disabled.
Packit fc043f
	(_get_cell): Assert that gc is enabled.
Packit fc043f
	(get_cell): Only record cell in the list of recently allocated cells
Packit fc043f
	if gc is enabled.
Packit fc043f
	(get_vector_object): Likewise.
Packit fc043f
	(gc): Assert that gc is enabled.
Packit fc043f
	(s_return): Add comment, adjust call to '_s_return'.
Packit fc043f
	(s_return_enable_gc): New macro.
Packit fc043f
	(_s_return): Add flag 'enable_gc' and re-enable gc if set.
Packit fc043f
	(oblist_add_by_name): Use the new facilities to protect the
Packit fc043f
	allocations.
Packit fc043f
	(new_frame_in_env): Likewise.
Packit fc043f
	(new_slot_spec_in_env): Likewise.
Packit fc043f
	(s_save): Likewise.
Packit fc043f
	(opexe_0): Likewise.
Packit fc043f
	(opexe_1): Likewise.
Packit fc043f
	(opexe_2): Likewise.
Packit fc043f
	(opexe_5): Likewise.
Packit fc043f
	(opexe_6): Likewise.
Packit fc043f
	(scheme_init_custom_alloc): Initialize the new fields.
Packit fc043f
Packit fc043f
2016-11-12  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	estream: Support 'es_poll' on Windows.
Packit fc043f
	+ commit 40e5ff0a0084c0d9521b401db4f38885bfdae233
Packit fc043f
	* src/Makefile.am (arch_sources): Add new file.
Packit fc043f
	* src/estream.c (O_NONBLOCK): Move to 'gpgrt-int.h'.
Packit fc043f
	(BUFFER_BLOCK_SIZE): Likewise.
Packit fc043f
	(BUFFER_UNREAD_SIZE): Likewise.
Packit fc043f
	(struct notify_list_s, notify_list_t): Likewise.
Packit fc043f
	(struct _gpgrt_stream_internal, estream_internal_t): Likewise.
Packit fc043f
	(X_POLLABLE): New macro.
Packit fc043f
	(parse_mode): Parse keyword 'pollable', emulate O_NONBLOCK using the
Packit fc043f
	same mechanism on Windows.
Packit fc043f
	(_gpgrt_poll): Use the new '_gpgrt_w32_poll' on Windows.
Packit fc043f
	* src/gpgrt-int.h (_gpgrt_functions_w32_pollable): New declaration.
Packit fc043f
	(_gpgrt_w32_pollable_create): New prototype.
Packit fc043f
	(_gpgrt_w32_poll): Likewise.
Packit fc043f
	* src/w32-estream.c: New file.  This code is adapted from GPGME.
Packit fc043f
	* tests/t-poll.c (create_pipe): Create pollable streams.
Packit fc043f
Packit fc043f
	estream: Track the kind of backend used.
Packit fc043f
	+ commit e15416d3668ea9dcc6a64cbb98140a99be8a7865
Packit fc043f
	* src/estream.c (struct _gpgrt_stream_internal): Add 'kind'.
Packit fc043f
	(init_stream_obj): New parameter 'kind', initialize field.
Packit fc043f
	(es_create): New parameter 'kind'.  Update all callers.
Packit fc043f
	* src/gpgrt-int.h (gpgrt_stream_backend_kind_t): New type.
Packit fc043f
Packit fc043f
	estream: Rework how the cookie functions are handled.
Packit fc043f
	+ commit a0651e910f962a49b0b7f7942512f17a5fe39a7d
Packit fc043f
	* src/estream.c (cookie_ioctl_function_t): Move to 'gpgrt-int.h',
Packit fc043f
	along with the macros for the IOCTL numbers.
Packit fc043f
	(estream_functions_mem): Use the new type and add the ioctl function.
Packit fc043f
	(estream_functions_fd): Likewise.
Packit fc043f
	(estream_functions_w32): Likewise.
Packit fc043f
	(estream_functions_fp): Likewise.
Packit fc043f
	(init_stream_object): Use the new type, and also initialize
Packit fc043f
	'func_ioctl'.
Packit fc043f
	(es_create): Use the new type.
Packit fc043f
	(_gpgrt_fopen): Adapt.
Packit fc043f
	(_gpgrt_mopen): Likewise.
Packit fc043f
	(_gpgrt_fopenmem): Likewise.
Packit fc043f
	(_gpgrt_fopencookie): Likewise.
Packit fc043f
	(_gpgrt_fdopen): Likewise.
Packit fc043f
	(_gpgrt_fpopen): Likewise.
Packit fc043f
	(do_w32open): Likewise.
Packit fc043f
	* src/gpgrt-int.h (struct cookie_io_functions_s): New type.
Packit fc043f
Packit fc043f
	estream: Rework modestring handling.
Packit fc043f
	+ commit 135319b5d1f9a88187687646c762759cfa05a7ec
Packit fc043f
	* src/estream.c (X_SAMETHREAD, X_SYSOPEN): New macros.
Packit fc043f
	(parse_mode): Rework how information flows from here to 'es_create'.
Packit fc043f
	Instead of using an integer flag per mode, use flags.
Packit fc043f
	(init_stream_obj): Adapt accordingly.
Packit fc043f
	(es_create): Likewise.
Packit fc043f
	(_gpgrt_fopen): Likewise.
Packit fc043f
	(_gpgrt_mopen): Likewise.
Packit fc043f
	(_gpgrt_fopenmem): Likewise.
Packit fc043f
	(_gpgrt_fopencookie): Likewise.
Packit fc043f
	(_gpgrt_fdopen): Likewise.
Packit fc043f
	(_gpgrt_fpopen): Likewise.
Packit fc043f
	(do_w32open): Likewise.
Packit fc043f
	(_gpgrt_freopen): Likewise.
Packit fc043f
Packit fc043f
2016-11-12  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add new interface gpgrt_get_syscall_clamp.
Packit fc043f
	+ commit b7972767513c8748096ebed78d1e1621bd2bd459
Packit fc043f
	* src/visibility.c (gpgrt_get_syscall_clamp): New.
Packit fc043f
	* src/gpg-error.vers, src/gpg-error.def.in: Add function.
Packit fc043f
	* src/gpg-error.h.in: Ditto.
Packit fc043f
	* src/estream.c (_gpgrt_get_syscall_clamp): New.
Packit fc043f
Packit fc043f
2016-11-11  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Use the syscall clamp functions also for lock functions.
Packit fc043f
	+ commit 25d463c67821901c8fd6736c815f11e85bbae66f
Packit fc043f
	* src/posix-lock.c (pre_lock_func, post_lock_func): New.
Packit fc043f
	(_gpgrt_lock_set_lock_clamp): New.
Packit fc043f
	(_gpgrt_lock_lock): Use clamp functions.
Packit fc043f
	* src/w32-lock.c (pre_lock_func, post_lock_func): New.
Packit fc043f
	(_gpgrt_lock_set_lock_clamp): New.
Packit fc043f
	(_gpgrt_lock_lock): Use clamp functions.
Packit fc043f
	* src/posix-lock.c (pre_syscall_func, post_syscall_func): New.
Packit fc043f
	(_gpgrt_thread_set_syscall_clamp): New.
Packit fc043f
	(_gpgrt_yield): Use clamp functions.
Packit fc043f
	* src/w32-lock.c (pre_syscall_func, post_syscall_func): New.
Packit fc043f
	(_gpgrt_thread_set_syscall_clamp): New.
Packit fc043f
	(_gpgrt_yield): Use clamp functions.
Packit fc043f
	* src/estream.c: Include lock.h and thread.h.
Packit fc043f
	(do_deinit): Call _gpgrt_lock_set_lock_clamp.
Packit fc043f
	(_gpgrt_set_syscall_clamp): Ditto.
Packit fc043f
Packit fc043f
2016-11-11  Andre Heinecke  <aheinecke@intevation.de>
Packit fc043f
Packit fc043f
	w32: Fix lock c++ narrowing conversion warning.
Packit fc043f
	+ commit b1ccab5bf8e1206aae1307ad5d23890be4251c8f
Packit fc043f
	* src/syscfg/lock-obj-pub.mingw32.h (gpgrt_lock_t): Declare priv as
Packit fc043f
	unsigned char.
Packit fc043f
Packit fc043f
2016-11-10  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Change description of GPG_ERR_OPEN_KEYRING.
Packit fc043f
	+ commit bae57a21cfab25ad11c82dc6e69d82d1f2f7a415
Packit fc043f
Packit fc043f
Packit fc043f
2016-11-10  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Recover cells from the list of recently allocated cells.
Packit fc043f
	+ commit 1659878b827d0a4e041921e0c3a3555d39a742df
Packit fc043f
	* tests/gpgscm/scheme.c (ok_to_freely_gc): Recover cells.
Packit fc043f
Packit fc043f
	gpgscm: Recover cells used to maintain interpreter state.
Packit fc043f
	+ commit 85388f1ef82bd0a92e94a463acfa157e6f9356f8
Packit fc043f
	* tests/gpgscm/scheme.c (free_cell): New function.
Packit fc043f
	(free_cons): Likewise.
Packit fc043f
	(_s_return): Use the new function to recover cells used to save the
Packit fc043f
	state of the interpreter in 's_save'.  This reduces the need to do a
Packit fc043f
	garbage collection considerably.
Packit fc043f
Packit fc043f
	gpgscm: Reduce opcode dispatch overhead.
Packit fc043f
	+ commit f65fb16724712b3d6072f27b47e2658f27398dd4
Packit fc043f
	* tests/gpgscm/scheme.c (s_thread_to): New macro.
Packit fc043f
	(CASE): Likewise.
Packit fc043f
	(opexe_[0-6]): Use 'CASE' instead of 'case' statements, replace
Packit fc043f
	's_goto' with 's_thread_to' where applicable.
Packit fc043f
Packit fc043f
	gpgscm: Make the compile-hook configurable.
Packit fc043f
	+ commit a678b9fdf7d48409a32afab5b487322a7fc11e16
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): Make field
Packit fc043f
	'COMPILE_HOOK' optional.
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Fix guard.
Packit fc043f
	(scheme_init_custom_alloc): Conditionally initialize 'COMPILE_HOOK'.
Packit fc043f
	* tests/gpgscm/scheme.h (USE_COMPILE_HOOK): Define to 1 by default.
Packit fc043f
Packit fc043f
	gpgscm: Drop obsolete commented-out code.
Packit fc043f
	+ commit f69a754515f43037da8ac8535967cd825b220be4
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_5): Drop obsolete code.
Packit fc043f
Packit fc043f
	gpgscm: Remove dubious stack implementation.
Packit fc043f
	+ commit a6ce303f0c69542999c607309128afd6293e2e1b
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): Remove related fields.
Packit fc043f
	* tests/gpgscm/scheme.c: Drop all !USE_SCHEME_STACK code.
Packit fc043f
	* tests/gpgscm/scheme.h (USE_SCHEME_STACK): Remove macro.
Packit fc043f
Packit fc043f
2016-11-08  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Expose seek and associated constants.
Packit fc043f
	+ commit 13831e9cd6839e44a8e32c640589edb8bf17ef51
Packit fc043f
	* tests/gpgscm/ffi.c (do_seek): New function.
Packit fc043f
	(ffi_init): Expose 'seek' and 'SEEK_{SET,CUR,END}'.
Packit fc043f
	* tests/gpgscm/lib.scm: Document the new function.
Packit fc043f
Packit fc043f
	gpgscm: Fix error message.
Packit fc043f
	+ commit d5458258299889af97e714c15e6a9b859e1a0545
Packit fc043f
	* tests/gpgscm/ffi.c (do_wait_processes): Fix and improve error
Packit fc043f
	messages.
Packit fc043f
Packit fc043f
2016-11-07  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Generalize splice to write to multiple sinks.
Packit fc043f
	+ commit 1edacbc5a4a0f4dee3ab82c1fda7c7b1c5874761
Packit fc043f
	* tests/gpgscm/ffi.c (ordinal_suffix): New function.
Packit fc043f
	(do_splice): Generalize splice to write to multiple sinks.
Packit fc043f
	* tests/gpgscm/lib.scm (splice): Document this fact.
Packit fc043f
Packit fc043f
	gpgscm: Drop 'len' argument from splice.
Packit fc043f
	+ commit 598aeda60bc3e6d49d935927b5ec33145f7af9db
Packit fc043f
	* tests/gpgscm/ffi.c (do_splice): Drop 'len' argument, no-one uses it.
Packit fc043f
	* tests/gpgscm/lib.scm (splice): Document foreign function.
Packit fc043f
Packit fc043f
	tests: Move environment creation and teardown into each test.
Packit fc043f
	+ commit 1564fc3b2ff52e7e5ad9b01a24e1f399934775b8
Packit fc043f
	* tests/gpgscm/tests.scm (log): New function.
Packit fc043f
	* tests/openpgp/run-tests.scm (run-tests-parallel): Do not run the
Packit fc043f
	startup and teardown scripts.
Packit fc043f
	(run-tests-sequential): Likewise.
Packit fc043f
	* tests/openpgp/setup.scm: Move all functions...
Packit fc043f
	* tests/openpgp/defs.scm: ... here and make them less verbose.
Packit fc043f
	(setup-environment): New function.
Packit fc043f
	(setup-legacy-environment): Likewise.
Packit fc043f
	(start-agent): Make less verbose, run 'stop-agent' at interpreter
Packit fc043f
	exit.
Packit fc043f
	(stop-agent): Make less verbose.
Packit fc043f
	* tests/openpgp/finish.scm: Drop file.
Packit fc043f
	* tests/openpgp/Makefile.am (EXTRA_DIST): Drop removed file.
Packit fc043f
	* tests/openpgp/4gb-packet.scm: Use 'setup-environment' or
Packit fc043f
	'setup-legacy-environment' as appropriate.
Packit fc043f
	* tests/openpgp/armdetach.scm: Likewise.
Packit fc043f
	* tests/openpgp/armdetachm.scm: Likewise.
Packit fc043f
	* tests/openpgp/armencrypt.scm: Likewise.
Packit fc043f
	* tests/openpgp/armencryptp.scm: Likewise.
Packit fc043f
	* tests/openpgp/armor.scm: Likewise.
Packit fc043f
	* tests/openpgp/armsignencrypt.scm: Likewise.
Packit fc043f
	* tests/openpgp/armsigs.scm: Likewise.
Packit fc043f
	* tests/openpgp/clearsig.scm: Likewise.
Packit fc043f
	* tests/openpgp/conventional-mdc.scm: Likewise.
Packit fc043f
	* tests/openpgp/conventional.scm: Likewise.
Packit fc043f
	* tests/openpgp/decrypt-dsa.scm: Likewise.
Packit fc043f
	* tests/openpgp/decrypt.scm: Likewise.
Packit fc043f
	* tests/openpgp/default-key.scm: Likewise.
Packit fc043f
	* tests/openpgp/detach.scm: Likewise.
Packit fc043f
	* tests/openpgp/detachm.scm: Likewise.
Packit fc043f
	* tests/openpgp/ecc.scm: Likewise.
Packit fc043f
	* tests/openpgp/encrypt-dsa.scm: Likewise.
Packit fc043f
	* tests/openpgp/encrypt.scm: Likewise.
Packit fc043f
	* tests/openpgp/encryptp.scm: Likewise.
Packit fc043f
	* tests/openpgp/export.scm: Likewise.
Packit fc043f
	* tests/openpgp/finish.scm: Likewise.
Packit fc043f
	* tests/openpgp/genkey1024.scm: Likewise.
Packit fc043f
	* tests/openpgp/gpgtar.scm: Likewise.
Packit fc043f
	* tests/openpgp/gpgv-forged-keyring.scm: Likewise.
Packit fc043f
	* tests/openpgp/import.scm: Likewise.
Packit fc043f
	* tests/openpgp/issue2015.scm: Likewise.
Packit fc043f
	* tests/openpgp/issue2417.scm: Likewise.
Packit fc043f
	* tests/openpgp/issue2419.scm: Likewise.
Packit fc043f
	* tests/openpgp/key-selection.scm: Likewise.
Packit fc043f
	* tests/openpgp/mds.scm: Likewise.
Packit fc043f
	* tests/openpgp/multisig.scm: Likewise.
Packit fc043f
	* tests/openpgp/quick-key-manipulation.scm: Likewise.
Packit fc043f
	* tests/openpgp/seat.scm: Likewise.
Packit fc043f
	* tests/openpgp/shell.scm: Likewise.
Packit fc043f
	* tests/openpgp/signencrypt-dsa.scm: Likewise.
Packit fc043f
	* tests/openpgp/signencrypt.scm: Likewise.
Packit fc043f
	* tests/openpgp/sigs-dsa.scm: Likewise.
Packit fc043f
	* tests/openpgp/sigs.scm: Likewise.
Packit fc043f
	* tests/openpgp/ssh.scm: Likewise.
Packit fc043f
	* tests/openpgp/tofu.scm: Likewise.
Packit fc043f
	* tests/openpgp/use-exact-key.scm: Likewise.
Packit fc043f
	* tests/openpgp/verify.scm: Likewise.
Packit fc043f
	* tests/openpgp/version.scm: Likewise.
Packit fc043f
	* tests/openpgp/issue2346.scm: Likewise and simplify.
Packit fc043f
Packit fc043f
	gpgscm,w32: Provide schemish file handling for binary files.
Packit fc043f
	+ commit fa82512020f8cd91c68bbf1d24a4f6bffe5385ba
Packit fc043f
	* tests/gpgscm/lib.scm (call-with-binary-input-file): New function.
Packit fc043f
	(call-with-binary-output-file): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Add support for pseudo-random numbers.
Packit fc043f
	+ commit 70c5f30074ec996f60f62cd09e67167da78c6d8a
Packit fc043f
	* tests/gpgscm/ffi.c (do_getpid): New function.
Packit fc043f
	(do_srandom): Likewise.
Packit fc043f
	(random_scaled): Likewise.
Packit fc043f
	(do_random): Likewise.
Packit fc043f
	(do_make_random_string): Likewise.
Packit fc043f
	(ffi_init): Expose the new functions.
Packit fc043f
	* tests/gpgscm/lib.scm: Document the new functions.
Packit fc043f
Packit fc043f
2016-11-04  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix printing strings containing zero bytes.
Packit fc043f
	+ commit fa221a1d5272eb231393a2cc0173635a5098bb89
Packit fc043f
	* tests/gpgscm/scheme.c (atom2str): Fix computing the length of Scheme
Packit fc043f
	strings.  Scheme strings can contain zero bytes.
Packit fc043f
Packit fc043f
	gpgscm: Implement 'atexit'.
Packit fc043f
	+ commit 97024a0cd0e1f5262ee60bf40a91f169bcc45a23
Packit fc043f
	* tests/gpgscm/ffi.scm (throw): Run *run-atexit-handlers* when
Packit fc043f
	terminating the interpreter.
Packit fc043f
	(*atexit-handlers*): New variable.
Packit fc043f
	(*run-atexit-handlers*): New function.
Packit fc043f
	(atexit): Likewise.
Packit fc043f
	* tests/gpgscm/main.c (main): Run *run-atexit-handlers* at normal
Packit fc043f
	interpreter shutdown.
Packit fc043f
Packit fc043f
2016-11-03  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm,tests: Add new functions to the test environment.
Packit fc043f
	+ commit e4a694eb48a098c3a3983767099dcce4e9157d16
Packit fc043f
	* tests/gpgscm/lib.scm (first, last, powerset): New functions.
Packit fc043f
	* tests/gpgscm/tests.scm (interactive-shell): New function.
Packit fc043f
	* tests/openpgp/Makefile.am (EXTRA_DIST): Add new file.
Packit fc043f
	* tests/openpgp/README: Document 'interactive-shell'.
Packit fc043f
	* tests/openpgp/shell.scm: New file.
Packit fc043f
Packit fc043f
2016-11-02  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix inclusion of readline header.
Packit fc043f
	+ commit 0ccc6f5ffccec23587d06e32da88fb0acd80f2c6
Packit fc043f
	* tests/gpgscm/ffi.c: Define magic macro to prevent the completion
Packit fc043f
	function from redefined.
Packit fc043f
Packit fc043f
2016-11-02  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add error codes GPG_ERR_TOO_YOUNG and GPG_ERR_TOO_OLD.
Packit fc043f
	+ commit 49e32eed4550869644d706352d683ddba5696d4e
Packit fc043f
Packit fc043f
Packit fc043f
2016-10-20  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	common,w32: Fix setting environment variables on Windows.
Packit fc043f
	+ commit e7ba35f207cb06f6d0e085ab3faf68d118606655
Packit fc043f
	* common/sysutils.c (gnupg_setenv): Also update the environment block
Packit fc043f
	maintained by the C runtime.
Packit fc043f
	(gnupg_unsetenv): Likewise.
Packit fc043f
	* tests/gpgscm/ffi.c (do_setenv): Fix error handling.
Packit fc043f
Packit fc043f
2016-10-18  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	estream: Fix modestring parsing.
Packit fc043f
	+ commit 0734f4863859257d18ca96f4b9be62be75fcffe1
Packit fc043f
	* src/estream.c (parse_mode): Fix parsing the 'sysopen' flag.
Packit fc043f
Packit fc043f
2016-10-17  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Initialize nesting stack.
Packit fc043f
	+ commit 7a262df038f495d27e2d8ec806ea0d47c925c88b
Packit fc043f
	* tests/gpgscm/scheme.c (scheme_init_custom_alloc): Initialize nesting
Packit fc043f
	stack.
Packit fc043f
Packit fc043f
2016-10-07  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Improve handling of Windows newlines.
Packit fc043f
	+ commit e8db2ea9542eef0bc7b51c9f69109a056269c048
Packit fc043f
	* tests/gpgscm/lib.scm (string-split-newlines): New function.
Packit fc043f
	* tests/openpgp/default-key.scm: Use new function.
Packit fc043f
	* tests/openpgp/defs.scm: Likewise.
Packit fc043f
	* tests/openpgp/export.scm: Likewise.
Packit fc043f
	* tests/openpgp/import.scm: Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Improve test of low-level functions.
Packit fc043f
	+ commit 2e47dcf432bc26cbaa1a6ba6716ab74facd06353
Packit fc043f
	* tests/gpgscm/t-child.c: Print large amounts of data.
Packit fc043f
	* tests/gpgscm/t-child.scm: Test that this works.
Packit fc043f
Packit fc043f
	gpgscm: Improve path handling.
Packit fc043f
	+ commit ff00a2d792091f35380c9541ee88fbd9c0d76c43
Packit fc043f
	* tests/gpgscm/ffi.c (ffi_init): New Scheme variable '*win32*'.
Packit fc043f
	* tests/gpgscm/tests.scm (canonical-path): Correctly handle paths with
Packit fc043f
	drive letter on Windows.  Use 'path-join'.
Packit fc043f
	(path-expand): Use 'path-join'.
Packit fc043f
Packit fc043f
2016-10-07  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add error code USER_ID_EXISTS, NAME_EXISTS, and DUP_NAME.
Packit fc043f
	+ commit 0c837a82207d0b19f9dabc8870ffb23d6a4ade64
Packit fc043f
Packit fc043f
Packit fc043f
2016-10-06  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Update callsite of 'gnupg_spawn_process'.
Packit fc043f
	+ commit bbd3be18ca9feac21963cc7d682f5a7d89fd9aba
Packit fc043f
	* tests/gpgscm/ffi.c (do_spawn_process): Adapt to the changes to
Packit fc043f
	'gnupg_spawn_process'.
Packit fc043f
Packit fc043f
2016-10-04  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests,w32: Do not expose 'glob' to gpgscm.
Packit fc043f
	+ commit 7359d7acb687d572dd0a4e40fd979566efbf4e21
Packit fc043f
	* tests/gpgscm/ffi.c (do_glob): Remove function.
Packit fc043f
	(ffi_init): Likewise.
Packit fc043f
Packit fc043f
2016-09-19  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Refine the repl function.
Packit fc043f
	+ commit a3b6b7643d906264b56d6fa041bcb95e96eb1898
Packit fc043f
	* tests/gpgscm/repl.scm (repl): Add an argument 'environment'.
Packit fc043f
	(interactive-repl): Add an optional argument 'environment'.
Packit fc043f
Packit fc043f
	tests: Implement interpreter shutdown using exceptions.
Packit fc043f
	+ commit ea399aaaf4c9de92d24ab59cdc3586608bf35698
Packit fc043f
	* tests/gpgscm/ffi.c (ffi_init): Rename 'exit' to '_exit'.
Packit fc043f
	* tests/gpgscm/ffi.scm (*interpreter-exit*): New variable.
Packit fc043f
	(throw): New function.
Packit fc043f
	(exit): New function.
Packit fc043f
Packit fc043f
	tests: Correctly handle exceptions in resource handling macros.
Packit fc043f
	+ commit ec34346129c77a7011872812567689aa09d99caa
Packit fc043f
	* tests/gpgscm/tests.scm (letfd): Correctly release resources when an
Packit fc043f
	exception is thrown.
Packit fc043f
	(with-working-directory): Likewise.
Packit fc043f
	(with-temporary-working-directory): Likewise.
Packit fc043f
	(lettmp): Likewise.
Packit fc043f
Packit fc043f
	tests: Refine exception handling.
Packit fc043f
	+ commit 3fd08ed018f837399564896462f64af8ae389eec
Packit fc043f
	* tests/gpgscm/init.scm (catch): Bind all arguments to '*error*' in
Packit fc043f
	the error handler, update and fix comment.
Packit fc043f
	(*error-hook*): Revert to original definition.
Packit fc043f
	* tests/gpgscm/tests.scm (tr:do): Adapt accordingly.
Packit fc043f
	* tests/openpgp/issue2419.scm: Likewise.
Packit fc043f
Packit fc043f
	tests: Use descriptive temporary file names.
Packit fc043f
	+ commit 86f421b7de364138d2d066b267b0f08a62c42a42
Packit fc043f
	* tests/gpgscm/ffi.c (do_get_isotime): New function.
Packit fc043f
	(ffi_init): Add parameter 'scriptname', bind new function and
Packit fc043f
	scriptname.
Packit fc043f
	* tests/gpgscm/ffi.h (ffi_init): Update prototype.
Packit fc043f
	* tests/gpgscm/main.c (main): Hand in the script name.
Packit fc043f
	* tests/gpgscm/tests.scm (mkdtemp): Use current time and script name
Packit fc043f
	for the names of temporary directories.
Packit fc043f
Packit fc043f
2016-09-19  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	gpgscm: Fix gcrypt version check.
Packit fc043f
	+ commit a3cdf6ba9987ec2f4b951c3b2519f6beea147126
Packit fc043f
	* tests/gpgscm/main.c (main): Check against required and not installed
Packit fc043f
	version.
Packit fc043f
Packit fc043f
2016-09-17  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>
Packit fc043f
Packit fc043f
	Fix more spelling.
Packit fc043f
	+ commit 42b61e8469179292814fea267ecd7d911396b965
Packit fc043f
	* NEWS, acinclude.m4, agent/command-ssh.c, agent/command.c,
Packit fc043f
	  agent/gpg-agent.c, agent/keyformat.txt, agent/protect-tool.c,
Packit fc043f
	  common/asshelp.c, common/b64enc.c, common/recsel.c, doc/DETAILS,
Packit fc043f
	  doc/HACKING, doc/Notes, doc/TRANSLATE, doc/dirmngr.texi,
Packit fc043f
	  doc/faq.org, doc/gpg-agent.texi, doc/gpg.texi, doc/gpgsm.texi,
Packit fc043f
	  doc/instguide.texi, g10/armor.c, g10/gpg.c, g10/keyedit.c,
Packit fc043f
	  g10/mainproc.c, g10/pkclist.c, g10/tofu.c, g13/sh-cmd.c,
Packit fc043f
	  g13/sh-dmcrypt.c, kbx/keybox-init.c, m4/pkg.m4, sm/call-dirmngr.c,
Packit fc043f
	  sm/gpgsm.c, tests/Makefile.am, tests/gpgscm/Manual.txt,
Packit fc043f
	  tests/gpgscm/scheme.c, tests/openpgp/gpgv-forged-keyring.scm,
Packit fc043f
	  tests/openpgp/multisig.test, tests/openpgp/verify.scm,
Packit fc043f
	  tests/pkits/README, tools/applygnupgdefaults,
Packit fc043f
	  tools/gpg-connect-agent.c, tools/mime-maker.c, tools/mime-parser.c:
Packit fc043f
	  minor spelling cleanup.
Packit fc043f
Packit fc043f
2016-09-15  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	tests/gpgscm: Fix use of pointer.
Packit fc043f
	+ commit 95f7320a37d3870330a2b1f3493025b4820fa767
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct scheme): Use (void *) for
Packit fc043f
	alloc_seg.
Packit fc043f
	* tests/gpgscm/scheme.c (alloc_cellseg): Use (void *) for cp.  Use
Packit fc043f
	(void *) for coercion of address calculation.
Packit fc043f
Packit fc043f
2016-09-06  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix detection of unbalanced parenthesis.
Packit fc043f
	+ commit 36405b2d208e5ec4c2c289d99ba4e7e1a29b8321
Packit fc043f
	* tests/gpgscm/main.c (load): Print error message.
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Correctly report nesting level when
Packit fc043f
	loading files.
Packit fc043f
Packit fc043f
2016-09-01  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Check the size of the time_t.
Packit fc043f
	+ commit bf7eb978597ba07906f0a7490e626c071af1987f
Packit fc043f
	* configure.ac (AC_HEADER_TIME): New.
Packit fc043f
	(AC_CHECK_SIZEOF): Check size of time_t.
Packit fc043f
Packit fc043f
	Add error WINDOW_TOO_SMALL, WINDOW_TOO_LARGE, and MISSING_ENVVAR.
Packit fc043f
	+ commit bc3e817bd7e671975f94bae20cbbf9a91fe3353b
Packit fc043f
Packit fc043f
Packit fc043f
2016-08-16  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	New error code GPG_ERR_ENGINE_TOO_OLD.
Packit fc043f
	+ commit b2640cb1f7b3b056ea4f8fe4b79d58fcd10ef93b
Packit fc043f
Packit fc043f
Packit fc043f
2016-08-12  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>
Packit fc043f
Packit fc043f
	Call log_set_prefix() with human-readable labels.
Packit fc043f
	+ commit b912b371ffc56b0e657d58e2a891f6bb1affab4b
Packit fc043f
	* agent/preset-passphrase.c, agent/protect-tool.c, dirmngr/dirmngr.c
Packit fc043f
	* dirmngr/t-http.c, g10/gpg.c, g10/gpgv.c, g13/g13-syshelp.c
Packit fc043f
	* g13/g13.c, kbx/kbxutil.c, scd/scdaemon.c, sm/gpgsm.c
Packit fc043f
	* tests/gpgscm/main.c, tools/gpg-check-pattern.c
Packit fc043f
	* tools/gpg-connect-agent.c, tools/gpgconf.c, tools/gpgtar.c
Packit fc043f
	* tools/symcryptrun.c: Invoke log_set_prefix() with
Packit fc043f
	human-readable labels.
Packit fc043f
Packit fc043f
2016-08-10  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Improve temporary directory handling.
Packit fc043f
	+ commit 0b5146376ba4e6ef129ed4a0641591bafa5902f9
Packit fc043f
	* tests/gpgscm/ffi.c (ffi_init): Rename 'mkdtemp'.
Packit fc043f
	* tests/gpgscm/tests.scm (mkdtemp): New function that uses a sensible
Packit fc043f
	location and template if no arguments are given.
Packit fc043f
	(with-temporary-working-directory): Simplify accordingly.
Packit fc043f
	(make-temporary-file): Likewise.
Packit fc043f
	* tests/openpgp/run-tests.scm (run-tests-parallel-isolated): Likewise.
Packit fc043f
	(run-tests-sequential-isolated): Likewise.
Packit fc043f
Packit fc043f
	gpgscm: Make the name of foreign functions more unique.
Packit fc043f
	+ commit c609b6e6b08719b86a64fb186f6eee03d0b01b16
Packit fc043f
	* tests/gpgscm/ffi-private.h (ffi_define_function_name): Add another
Packit fc043f
	underscore.
Packit fc043f
Packit fc043f
2016-07-26  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Do not shadow common function name in catch macro.
Packit fc043f
	+ commit d764c08a9215ab1c90a97fb019aa99ccf3721e02
Packit fc043f
	* tests/gpgscm/init.scm (catch): Do not shadow 'exit'.
Packit fc043f
Packit fc043f
	gpgscm: Make the verbose setting more useful.
Packit fc043f
	+ commit bd958b94ea3cdafa2457fdf0dcf436458fa755f6
Packit fc043f
	* tests/gpgscm/ffi.c (do_get_verbose): New function.
Packit fc043f
	(do_set_verbose): Likewise.
Packit fc043f
	(ffi_init): Turn *verbose* into a function, add *set-verbose!*.
Packit fc043f
	* tests/gpgscm/tests.scm (call): Adapt accordingly.
Packit fc043f
	(call-with-io): Dump output if *verbose* is high.
Packit fc043f
	(pipe-do): Adapt accordingly.
Packit fc043f
	* tests/openpgp/defs.scm: Set verbosity according to environment.
Packit fc043f
	* tests/openpgp/run-tests.scm (test): Adapt accordingly.
Packit fc043f
Packit fc043f
2016-07-22  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Make function more general.
Packit fc043f
	+ commit 593c5ac8553922a7cf8055c6f3d4d3ea6d0f8cb6
Packit fc043f
	* tests/gpgscm/tests.scm (in-srcdir): Accept more path fragments.
Packit fc043f
Packit fc043f
2016-07-21  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Make assert macro more accurate.
Packit fc043f
	+ commit 4f5e0f510d72935ed6bc37f38261efd0ca45e04b
Packit fc043f
	* tests/gpgscm/lib.scm (assert): Print the representation of the
Packit fc043f
	failed expression.
Packit fc043f
Packit fc043f
	gpgscm: Make error message more useful.
Packit fc043f
	+ commit bc5199d51c45e11c5d9cba828b31ced9381bd27c
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Include names of missing function
Packit fc043f
	parameters in the error message.
Packit fc043f
Packit fc043f
2016-07-19  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Add test for ssh support.
Packit fc043f
	+ commit 5851aec15309e9137603bf0e564fd5028ff742c1
Packit fc043f
	* tests/gpgscm/tests.scm (path-expand): New function.
Packit fc043f
	* tests/openpgp/Makefile.am (TESTS): Add new test.
Packit fc043f
	(sample_keys): Add new keys.
Packit fc043f
	(CLEANFILES): Clean ssh socket and control file.
Packit fc043f
	* tests/openpgp/fake-pinentry.c (main): Add a default passphrase.
Packit fc043f
	* tests/openpgp/gpg-agent.conf.tmpl: Enable ssh support.
Packit fc043f
	* tests/openpgp/samplekeys/ssh-dsa.key: New file.
Packit fc043f
	* tests/openpgp/samplekeys/ssh-ecdsa.key: Likewise.
Packit fc043f
	* tests/openpgp/samplekeys/ssh-ed25519.key: Likewise.
Packit fc043f
	* tests/openpgp/samplekeys/ssh-rsa.key: Likewise.
Packit fc043f
	* tests/openpgp/ssh.scm: Likewise.
Packit fc043f
Packit fc043f
2016-07-15  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix linking.
Packit fc043f
	+ commit 4932ef5277957153f4d066f17feb47a4db2b923b
Packit fc043f
	* tests/gpgscm/Makefile.am: Add -lintl.
Packit fc043f
Packit fc043f
2016-07-14  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	gpgscm: Use kludge to avoid improper use of ffi_schemify_name.
Packit fc043f
	+ commit 95c04eca273fe9bacbbd9666fd6806e0748792ed
Packit fc043f
	* tests/gpgscm/ffi.c (ffi_schemify_name): Use xstrdup instead of
Packit fc043f
	strdup for now.
Packit fc043f
Packit fc043f
	Release 1.24.
Packit fc043f
	+ commit bb1269c85bb41dbb6391756a65e8bc357d82d6b6
Packit fc043f
Packit fc043f
Packit fc043f
2016-07-13  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	build: Update config.{guess,sub} to {2016-05-15,2016-06-20}.
Packit fc043f
	+ commit 387eeb5d5b57e4390c4eaf101bb5cf9cf3cbd4ba
Packit fc043f
	* build-aux/config.guess: Update.
Packit fc043f
	* build-aux/config.sub: Update.
Packit fc043f
Packit fc043f
2016-07-12  Yann E. MORIN  <yann.morin.1998@free.fr>
Packit fc043f
Packit fc043f
	Add an option to disable tests.
Packit fc043f
	+ commit d57a16c3779eca84dedcf2423b26e41172cd5a96
Packit fc043f
	* configure.ac: add an option to enable/disable building tests
Packit fc043f
	* Makefile.am: conditionally build tests
Packit fc043f
Packit fc043f
	Fix build without threads.
Packit fc043f
	+ commit abcdfa7964da62b92984516608faf8941038b71d
Packit fc043f
	* src/gen-posix-lock-obj.c: properly guard inclusioin of pthread.h
Packit fc043f
	* tests/t-lock.c: likewise
Packit fc043f
	* tests/t-poll.c: likewise
Packit fc043f
Packit fc043f
2016-07-07  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Capture output of spawned processes.
Packit fc043f
	+ commit 912977e668d59baf39464fab7e93b9a617f9706f
Packit fc043f
	* tests/gpgscm/tests.scm (call-check): Capture stdout and stderr, and
Packit fc043f
	return stdout if the child exited successfully, or include stderr in
Packit fc043f
	the error.
Packit fc043f
	* tests/openpgp/version.scm: Demonstrate this by checking the stdout.
Packit fc043f
Packit fc043f
2016-07-05  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Honor environment variable 'TMP'.
Packit fc043f
	+ commit 228b225c412573d73901e3e79b7cab64a05bb26e
Packit fc043f
	This fixes problems with long socket names, e.g. when doing distcheck.
Packit fc043f
Packit fc043f
	* tests/gpgscm/tests.scm (path-join): New function.
Packit fc043f
	(with-temporary-working-directory): Honor 'TMP'.
Packit fc043f
	(make-temporary-file): Likewise.
Packit fc043f
	* tests/migrations/Makefile.am (TMP): Default to '/tmp'.
Packit fc043f
	(TESTS_ENVIRONMENT): Set 'TMP'.
Packit fc043f
	* tests/openpgp/Makefile.am (TMP): Default to '/tmp'.
Packit fc043f
	(TESTS_ENVIRONMENT): Set 'TMP'.
Packit fc043f
Packit fc043f
	gpgscm: Improve robustness and compatibility.
Packit fc043f
	+ commit 1406aa0fdf349b370cc2a5b87ada557455203dd2
Packit fc043f
	* tests/gpgscm/ffi.c (do_getenv): Avoid gccism.
Packit fc043f
	(do_mkdtemp): Handle errors.
Packit fc043f
Packit fc043f
2016-07-05  Andre Heinecke  <aheinecke@intevation.de>
Packit fc043f
Packit fc043f
	Define EWOULDBLOCK in case it is not defined.
Packit fc043f
	+ commit 65e967627b3d60f550c7d302227dcf9f797e437f
Packit fc043f
	* src/estream.c (EWOULDBLOCK): Define fallback.
Packit fc043f
Packit fc043f
2016-07-02  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	yat2m: Fix table formatting.
Packit fc043f
	+ commit 1a53a0ac4cc241a5c6d360d6259dd04afc09264c
Packit fc043f
	* doc/yat2m.c (proc_texi_cmd): Use .TQ for @itemx.  Print a .P at the
Packit fc043f
	end of a level 0 table.
Packit fc043f
Packit fc043f
2016-06-30  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix reallocating string ports.
Packit fc043f
	+ commit 27d423b785afa3458e102fa3d7c1220ec50a47fe
Packit fc043f
	* tests/gpgscm/scheme.c (realloc_port_string): Use memcpy because
Packit fc043f
	Scheme strings may contain 0s.
Packit fc043f
Packit fc043f
	gpgscm: Free memory backing string ports.
Packit fc043f
	+ commit f103dd1d9dd69eb0a32cf2d91e3a595082f3f41c
Packit fc043f
	* tests/gpgscm/scheme.c (finalize_cell): Free memory backing string
Packit fc043f
	ports.
Packit fc043f
Packit fc043f
	gpgscm: Use the allocator from libgcrypt.
Packit fc043f
	+ commit 9af66b27499646f6386ab902e75056b961192f50
Packit fc043f
	* tests/gpgscm/main.c (main): Use the allocator from libgcrypt.
Packit fc043f
Packit fc043f
2016-06-28  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Fix memory leaks.
Packit fc043f
	+ commit b4e31c551b9205684e812e941bd974cc594cf97f
Packit fc043f
	* tests/gpgscm/ffi-private.h (ffi_schemify_name): Fix prototype.
Packit fc043f
	(ffi_define_function_name): Free schemified name.
Packit fc043f
	(ffi_define_function): Likewise.
Packit fc043f
	(ffi_define_constant): Likewise.
Packit fc043f
	(ffi_define_variable_pointer): Likewise.
Packit fc043f
	* tests/gpgscm/ffi.c (do_wait_processes): Free arrays.
Packit fc043f
	(ffi_schemify_name): Fix type.
Packit fc043f
	* tests/gpgscm/main.c (main): Free 'sc'.
Packit fc043f
Packit fc043f
	gpgscm: Free file names.
Packit fc043f
	+ commit 9368fd55602a1d36f6bf6bc3797a4f2d7a782ded
Packit fc043f
	* tests/gpgscm/scheme.c (scheme_load_named_file): Free file name.
Packit fc043f
Packit fc043f
	gpgscm: Fix buffer overflow.
Packit fc043f
	+ commit 73b24ed0cb0ba3271e887d1044a497e53ca90b62
Packit fc043f
	* tests/gpgscm/scheme.c (store_string): Avoid writing past allocated
Packit fc043f
	buffer.
Packit fc043f
Packit fc043f
2016-06-27  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Fix bug es_fclose_snatch if a seek has been used.
Packit fc043f
	+ commit 467ccbb6062439eda9dce7cd991934d1a5491713
Packit fc043f
	* src/estream.c (func_mem_ioctl): Set LEN from DATA_LEN.
Packit fc043f
Packit fc043f
2016-06-25  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	w32: Silence compiler warnings about redefined macros.
Packit fc043f
	+ commit 7213299fdb2293b974fc436686626ae0a29290b8
Packit fc043f
	* src/estream.c (S_IRGRP) [W32]: Protect against redefinition.
Packit fc043f
Packit fc043f
	doc: Update yat2m.c.
Packit fc043f
	+ commit 9b5e3d1608922f4aaf9958e022431849d5a58501
Packit fc043f
	* doc/yat2m.c: Update from gnupg.
Packit fc043f
Packit fc043f
2016-06-24  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Remove two compiler warning.
Packit fc043f
	+ commit 0982a72ecc8e7738ec968b3a6710bdacb0f2da4e
Packit fc043f
	* src/estream.c (func_file_create): Remove dead assignment.
Packit fc043f
	(doreadline): Do not decrement SPACE_LEFT before breaking the loop.
Packit fc043f
	Add an extra block to limit the scope of that variable.
Packit fc043f
Packit fc043f
2016-06-23  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Handle exceptions in the transformation monad.
Packit fc043f
	+ commit 7b6728b7ecf7b0646db2de35625aba3b0cd0bf02
Packit fc043f
	* tests/gpgscm/tests.scm (pipe:do): Raise errors.
Packit fc043f
	(tr:spawn): Catch and return errors.
Packit fc043f
	(tr:call-with-content): Likewise.
Packit fc043f
	(tr:{open,write-to,pipe-do,assert-identity,assert-weak-identity}):
Packit fc043f
	Adapt.
Packit fc043f
Packit fc043f
	gpgscm: Add types for special objects.
Packit fc043f
	+ commit 24df932e5fdda891760b34b7e5fccd5aba62fde8
Packit fc043f
	* tests/gpgscm/scheme.c (enum scheme_types): Add types for boolean,
Packit fc043f
	nil, eof, and the sink object.
Packit fc043f
	(type_to_string): Handle new types.
Packit fc043f
	(scheme_init_custom_alloc): Give special objects a type.
Packit fc043f
Packit fc043f
	gpgscm: Fix Scheme initialization.
Packit fc043f
	+ commit 64ab51521f1a5fabee292554d7403113898f1b28
Packit fc043f
	This potentially causes a crash if the garbage collector marks an eof
Packit fc043f
	object.
Packit fc043f
Packit fc043f
	* tests/gpgscm/scheme.c (scheme_init_custom_alloc): Initialize
Packit fc043f
	'EOF_OBJ'.
Packit fc043f
Packit fc043f
2016-06-21  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	gpgscm: Add more file handling functions.
Packit fc043f
	+ commit 5fee932e0ad2b2f5e876a70bdeef77c38e248a2e
Packit fc043f
	* tests/gpgscm/ffi.c (do_glob): New function.
Packit fc043f
	(ffi_init): Define new function.
Packit fc043f
	* tests/gpgscm/tests.scm (basename-suffix): New function.x
Packit fc043f
Packit fc043f
	gpgscm: Improve test framework.
Packit fc043f
	+ commit d7df61081ec228db17e2bfe2e05820da8cc2d264
Packit fc043f
	* tests/gpgscm/lib.scm (echo): Move...
Packit fc043f
	* tests/gpgscm/tests.scm (echo): ... here.
Packit fc043f
	(info, error, skip): And use echo here.
Packit fc043f
	(file-exists?): New function.
Packit fc043f
	(tr:spawn): Check that source exists and if the sink has been created.
Packit fc043f
	(tr:call-with-content): Hand in optional arguments.
Packit fc043f
Packit fc043f
	gpgscm: Use native string searching functions.
Packit fc043f
	+ commit f4a23bc0fae621ac4b0978de4ea8f976ec6b650f
Packit fc043f
	* tests/gpgscm/ffi-private.h: Handle character arguments.
Packit fc043f
	* tests/gpgscm/ffi.c (do_string_index): New function.
Packit fc043f
	(do_string_rindex): Likewise.
Packit fc043f
	(do_string_contains): Likewise.
Packit fc043f
	(ffi_init): Define new functions.
Packit fc043f
	* tests/gpgscm/ffi.scm (ffi-define): New macro.
Packit fc043f
	* tests/gpgscm/lib.scm (string-index): Use native function,
Packit fc043f
	demonstrate behavior.
Packit fc043f
	(string-rindex): Likewise.
Packit fc043f
	(string-contains?): Likewise.
Packit fc043f
	Demonstrate behavior of various other functions.
Packit fc043f
	(read-all): Rework so that it can handle large files.
Packit fc043f
Packit fc043f
	gpgscm: Improve error reporting.
Packit fc043f
	+ commit 2bc2f95ac823f0a6449bd68dee4fc094db52f2e5
Packit fc043f
	* tests/gpgscm/scheme.c (type_to_string): New function.
Packit fc043f
	(Eval_Cycle): Include actual type in error message.
Packit fc043f
Packit fc043f
	gpgscm: Make memory allocation failures fatal.
Packit fc043f
	+ commit 224c171c856c662d22ba236eaa2128323bde1d08
Packit fc043f
	* tests/gpgscm/scheme.c (Eval_Cycle): Exit if we run out of memory.
Packit fc043f
Packit fc043f
2016-06-17  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	tests: Make make distcheck work again.
Packit fc043f
	+ commit cdd09e054a6bc4716c7847fd0779a091cbca0e8f
Packit fc043f
	* Makefile.am (tests): Remove test code which would led to doubling
Packit fc043f
	calls to for e.g. "make distclean".
Packit fc043f
	* tests/Makefile.am: Typo fixes.
Packit fc043f
	* tests/gpgscm/Makefile.am (EXTRA_DIST): Fix name of License file.
Packit fc043f
	Add repl.scm.
Packit fc043f
	(check): Replace by check-local because check is a standard automake
Packit fc043f
	target.
Packit fc043f
	* tests/openpgp/Makefile.am (TESTS_ENVIRONMENT): Replace gmake0sim by
Packit fc043f
	automake generated macro.
Packit fc043f
	(EXTRA_DIST): Add defs.scm
Packit fc043f
Packit fc043f
	gpgscm: Silence compiler warnings.
Packit fc043f
	+ commit d230bf3ee80cac2fe721afccab9e98b3a9be2e9a
Packit fc043f
	* tests/gpgscm/scheme.c (mk_integer): Rename arg NUM to N.
Packit fc043f
	(fill_vector): Ditto.
Packit fc043f
	(mark): Rename var NUM to N.
Packit fc043f
	(set_slot_in_env): Mark SC as unused.
Packit fc043f
	(is_any): Mark P as unused.
Packit fc043f
Packit fc043f
	Add license notices for TinySCHEME.
Packit fc043f
	+ commit 8b1798f10c2641f79f4d770e88712be8b13dc22f
Packit fc043f
	* tests/gpgscm/COPYING: Rename to ...
Packit fc043f
	* tests/gpgscm/LICENSE.TinySCHEME: this.
Packit fc043f
	* AUTHORS: Add a note about TinySCHEME.
Packit fc043f
	* build-aux/speedo/w32/pkg-copyright.txt: Add TinySCHEME notice.
Packit fc043f
Packit fc043f
2016-06-17  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests/gpgscm: Add a TinySCHEME-based test driver.
Packit fc043f
	+ commit 5b417d262de048ef221ed77b2f9d2c1a843096bb
Packit fc043f
	* configure.ac: Add new component.
Packit fc043f
	* tests/Makefile.am: Likewise.
Packit fc043f
	* tests/gpgscm/Makefile.am: New file.
Packit fc043f
	* tests/gpgscm/ffi-private.h: Likewise.
Packit fc043f
	* tests/gpgscm/ffi.c: Likewise.
Packit fc043f
	* tests/gpgscm/ffi.h: Likewise.
Packit fc043f
	* tests/gpgscm/ffi.scm: Likewise.
Packit fc043f
	* tests/gpgscm/lib.scm: Likewise.
Packit fc043f
	* tests/gpgscm/main.c: Likewise.
Packit fc043f
	* tests/gpgscm/private.h: Likewise.
Packit fc043f
	* tests/gpgscm/repl.scm: Likewise.
Packit fc043f
	* tests/gpgscm/scheme-config.h: Likewise.
Packit fc043f
	* tests/gpgscm/t-child.c: Likewise.
Packit fc043f
	* tests/gpgscm/t-child.scm: Likewise.
Packit fc043f
	* tests/gpgscm/tests.scm: Likewise.
Packit fc043f
Packit fc043f
	tests/gpgscm: Foreign objects support for TinySCHEME.
Packit fc043f
	+ commit 9fecd60c32aca6b32008310237d0ed524eede3d5
Packit fc043f
	* tests/gpgscm/scheme-private.h (struct cell): Add 'foreign_object'.
Packit fc043f
	(is_foreign_object): New prototype.
Packit fc043f
	(get_foreign_object_{vtable,data}): Likewise.
Packit fc043f
	* tests/gpgscm/scheme.c (enum scheme_types): New type.
Packit fc043f
	(is_foreign_object): New function.
Packit fc043f
	(get_foreign_object_{vtable,data}): Likewise.
Packit fc043f
	(mk_foreign_object): Likewise.
Packit fc043f
	(finalize_cell): Free foreign objects.
Packit fc043f
	(atom2str): Pretty-print foreign objects.
Packit fc043f
	(vtbl): Add new functions.
Packit fc043f
	* tests/gpgscm/scheme.h (struct foreign_object_vtable): New type.
Packit fc043f
	(mk_foreign_object): New prototype.
Packit fc043f
	(struct scheme_interface): Add new functions.
Packit fc043f
Packit fc043f
	Patch from Thomas Munro,
Packit fc043f
	https://sourceforge.net/p/tinyscheme/patches/13/
Packit fc043f
Packit fc043f
	tests/gpgscm: Dynamically allocate string buffer.
Packit fc043f
	+ commit ef65b7bb2232343f72d03a0e0521de4ada3dc63b
Packit fc043f
	* tests/gpgscm/scheme-config.h (strbuff{,_size}): Make buffer dynamic.
Packit fc043f
	* tests/gpgscm/scheme.c (expand_strbuff): New function.
Packit fc043f
	(putcharacter): Adapt length test.
Packit fc043f
	(readstrexp): Expand buffer if necessary.
Packit fc043f
	(scheme_init_custom_alloc): Initialize buffer.
Packit fc043f
	(scheme_deinit): Free buffer.
Packit fc043f
Packit fc043f
	Patch from Thomas Munro,
Packit fc043f
	https://sourceforge.net/p/tinyscheme/patches/11/
Packit fc043f
Packit fc043f
	tests/gpgscm: Make exception value available.
Packit fc043f
	+ commit c0cf52627d8d68d23bcac60571455ffd1b052106
Packit fc043f
	* tests/gpgscm/init.scm (throw): Hand exception value to the handler.
Packit fc043f
	(catch): And bind it to *error*.
Packit fc043f
Packit fc043f
	tests/gpgscm: Add package macro.
Packit fc043f
	+ commit f6c0f9a420c4401d8d358049f8814799161185fa
Packit fc043f
	* tests/gpgscm/init.scm: Add package macro from manual.
Packit fc043f
Packit fc043f
	tests/gpgscm: Expose function to open streams as Scheme ports.
Packit fc043f
	+ commit 2717b9c172f0a25094ad2e654459dbe9d7180e38
Packit fc043f
	* tests/gpgscm/scheme.c (vtbl): Add 'port_from_file' to the vtable.
Packit fc043f
	* tests/gpgscm/scheme.h (struct scheme_interface): New field
Packit fc043f
	'mk_port_from_file'.
Packit fc043f
Packit fc043f
	tests/gpgscm: Nicer error message.
Packit fc043f
	+ commit 0c601ae085e95745a950a9d75ffdc8be42b3e1b2
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_0): Include the value that we tried to
Packit fc043f
	evaluate as function-like in the error message.
Packit fc043f
Packit fc043f
	tests/gpgscm: Fix error hook.
Packit fc043f
	+ commit 16e4898a735e8f85c4ca6b44adf5a92b1a42d1af
Packit fc043f
	* tests/gpgscm/init.scm (*error-hook*): Fix error hook so that the
Packit fc043f
	whole error message is displayed.
Packit fc043f
Packit fc043f
	tests/gpgscm: Handle unhandled enumeration values.
Packit fc043f
	+ commit fe1c0866bc1b2c685136ea19521ffab2deb25ec3
Packit fc043f
	* tests/gpgscm/scheme.c (opexe_{3,4}): Handle unhandled enumeration
Packit fc043f
	values in the opcode dispatching code.
Packit fc043f
Packit fc043f
	tests/gpgscm: Verbatim import of latest TinySCHEME.
Packit fc043f
	+ commit 864992fdf695996dbac9bb344b1fdd879f735473
Packit fc043f
	Revision 110 from svn://svn.code.sf.net/p/tinyscheme/code/trunk
Packit fc043f
Packit fc043f
	* tests/gpgscm/COPYING: New file.
Packit fc043f
	* tests/gpgscm/Manual.txt: Likewise.
Packit fc043f
	* tests/gpgscm/init.scm: Likewise.
Packit fc043f
	* tests/gpgscm/opdefines.h: Likewise.
Packit fc043f
	* tests/gpgscm/scheme-private.h: Likewise.
Packit fc043f
	* tests/gpgscm/scheme.c: Likewise.
Packit fc043f
	* tests/gpgscm/scheme.h: Likewise.
Packit fc043f
Packit fc043f
2016-06-15  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.23.
Packit fc043f
	+ commit e444cacc74c488063336c196f0c01e98f67cf999
Packit fc043f
Packit fc043f
Packit fc043f
	po: Update German translation.
Packit fc043f
	+ commit d878afa4b884149dca587131bdf5b6d8f96227fa
Packit fc043f
Packit fc043f
Packit fc043f
2016-06-15  Jakub Bogusz  <qboosh@pld-linux.org>
Packit fc043f
Packit fc043f
	po: Update Polish translation.
Packit fc043f
	+ commit b908104846a71cf8ae3d3323be6bbc6edcef6ee0
Packit fc043f
Packit fc043f
Packit fc043f
2016-06-15  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	tests: Fix rare deadlock condition in t-poll.
Packit fc043f
	+ commit 7ed150201cc5058650cf9673a4e53720a37841c8
Packit fc043f
	* tests/t-poll.c (launch_thread): Use es_fileno before starting the
Packit fc043f
	thread.
Packit fc043f
Packit fc043f
2016-06-15  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	estream: Fix assertion failure due to es_flush.
Packit fc043f
	+ commit 28fd0ab40739e8cb73f208e30f78d8aa7a0a6d19
Packit fc043f
	* src/estream.c (es_writen): Set writing flag even if no data was
Packit fc043f
	written.
Packit fc043f
Packit fc043f
2016-06-15  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Adjust memory limit of es_fopenmem to the block size.
Packit fc043f
	+ commit baf4bcc0973c8b04bd760aaab0f4232c9354e203
Packit fc043f
	* src/estream.c (func_mem_create): Round up memory limit.
Packit fc043f
Packit fc043f
2016-05-17  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add GPG_ERR_SUBKEYS_EXP_OR_REV.
Packit fc043f
	+ commit 1ee822f9ff73a9a302ad0eb298640797d735e62b
Packit fc043f
Packit fc043f
Packit fc043f
2016-05-07  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	syscfg: Add a powerpc and a tilgegx architecture.
Packit fc043f
	+ commit dfcd58fd3f58e548062b91bd6e20e27cbf4da18d
Packit fc043f
	* src/syscfg/lock-obj-pub.powerpc-unknown-linux-gnuspe.h: New.
Packit fc043f
	* src/syscfg/lock-obj-pub.tilegx-unknown-linux-gnu.h: New.
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Add them.
Packit fc043f
Packit fc043f
2016-04-25  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.22.
Packit fc043f
	+ commit 9a05076e90eef504cbc3ef614982f856b9b60540
Packit fc043f
	* configure.ac: Set LT version to C18/A18/R0.
Packit fc043f
Packit fc043f
	build: Update config.{guess,sub} to 2016-04-02 and 2016-03-30.
Packit fc043f
	+ commit 8ae3af15caaaaffaa9dbeab5fd767076891200bb
Packit fc043f
	* build-aux/config.guess: Update.
Packit fc043f
	* build-aux/config.sub: Update.
Packit fc043f
Packit fc043f
2016-04-25  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	Fix for HPPA.
Packit fc043f
	+ commit f1104b92249005a31961d1a32c38ba65a0b3ff3a
Packit fc043f
	* configure.ac (HAVE_GCC_ATTRIBUTE_ALIGNED): Revert.
Packit fc043f
	* src/gen-posix-lock-obj.c (USE_16BYTE_ALIGNMENT): Revert.
Packit fc043f
	* src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: Revert.
Packit fc043f
Packit fc043f
2016-04-21  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	w32: Add iconv functions.
Packit fc043f
	+ commit 1cd1ddb4ac2c13223a073f6d77696bcd6253e2ff
Packit fc043f
	* src/w32-add.h (gpgrt_w32_iconv_t): New.
Packit fc043f
	(gpgrt_w32_iconv_open, gpgrt_w32_iconv_close, gpgrt_w32_iconv): New.
Packit fc043f
	( GPGRT_ENABLE_W32_ICONV_MACROS): New
Packit fc043f
	* src/w32-iconv.c: Change license to LGPLv2.1+.  Dispable mlang
Packit fc043f
	feature.  Remove external DLL loading.  Simplify iconv functions.  Use
Packit fc043f
	cleaner context struct pattern.  Use gpgrt namespace.
Packit fc043f
	* src/gpg-error.def.in: Add new functions.
Packit fc043f
Packit fc043f
2016-04-05  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream,w32: Temporary fix for gpgrt_poll.
Packit fc043f
	+ commit 4354720ab3631dfd2811d881566b10a72c8f2165
Packit fc043f
	* src/estream.c (_gpgrt_poll) [W32]: Do not use FD_ISSET.
Packit fc043f
Packit fc043f
2016-03-29  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Prepare for new mode flag "sysopen".
Packit fc043f
	+ commit 5d1adaa5fd12f65f49abeb99e5ae7226ec27ba0e
Packit fc043f
	* src/estream.c (parse_mode): Add arg "sysopen".  Adjust all callers.
Packit fc043f
Packit fc043f
	estream: Use simpler names for static functions.
Packit fc043f
	+ commit de0618d5c64e02b9b3a568fc859d9edcb4ab35ba
Packit fc043f
	* src/estream.c: Replace all es_func_* to just func_*.
Packit fc043f
Packit fc043f
	estream: Remove strange macro for better readability.
Packit fc043f
	+ commit 217a451d54186283f09af5b3c03933f214ddf1c0
Packit fc043f
	* src/estream.c (SET_UNLESS_NONZERO): Remove macro.
Packit fc043f
	(es_deinitialize): Replace that macro by direct code.
Packit fc043f
Packit fc043f
2016-03-24  Peter Wu  <peter@lekensteyn.nl>
Packit fc043f
Packit fc043f
	Add function gpgrt_annotate_leaked_object.
Packit fc043f
	+ commit 52c3606b2384f33ef30ea5ada3f187829de9dcf7
Packit fc043f
	* src/gpg-error.h.in: add gpgrt_annotate_leaked_object to support
Packit fc043f
	  marking memory as non-leaked for Clang and GCC.
Packit fc043f
Packit fc043f
2016-03-14  Kylie McClain  <somasis@exherbo.org>
Packit fc043f
Packit fc043f
	syscfg: Add lock-obj-pub files for {armv5, armv6, x86_64}-musl targets.
Packit fc043f
	+ commit 140cfd51cee738a55caf9d347981f6f81e1990a4
Packit fc043f
	* src/syscfg/lock-obj-pub.armv5-unknown-linux-musleabi.h: New.
Packit fc043f
	* src/syscfg/lock-obj-pub.armv6-unknown-linux-musleabihf.h New.
Packit fc043f
	* src/syscfg/lock-obj-pub.x86_64-pc-linux-musl.h: New.
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Add files.
Packit fc043f
Packit fc043f
2016-03-04  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	Fix detecting Solaris operating system.
Packit fc043f
	+ commit f7a77c5c236ecec846de9be46703026f9b01008f
Packit fc043f
	* src/gen-posix-lock-obj.c (USE_DOUBLE_FOR_ALIGNMENT): Check for
Packit fc043f
	the macro __sun.
Packit fc043f
Packit fc043f
	For Solaris, add -lrt correctly.
Packit fc043f
	+ commit f9fc565129293f47cbfe4da48fcd6099e9ce5508
Packit fc043f
	* configure.ac (LIB_SCHED_YIELD): Not avoiding defining LIB.
Packit fc043f
Packit fc043f
2016-03-01  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	Fix for Solaris.
Packit fc043f
	+ commit 34b07146bbb0863436fc9381a84314b18bdfb807
Packit fc043f
	* src/gen-posix-lock-obj.c (USE_DOUBLE_FOR_ALIGNMENT): Check LP64.
Packit fc043f
Packit fc043f
2016-02-26  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	po: Update Japanese translation.
Packit fc043f
	+ commit 49655fb6ef39b307787e1b6e00c996f9c7db64f7
Packit fc043f
Packit fc043f
Packit fc043f
	Add support for Solaris, fixing HPPA.
Packit fc043f
	+ commit 5168b97fb5e2eebdc99b40f96f9b6289647e87d2
Packit fc043f
	* configure.ac (HAVE_GCC_ATTRIBUTE_ALIGNED): Remove.
Packit fc043f
	(LIB_SCHED_YIELD): New. Check sched_yield in -lrt.
Packit fc043f
	* src/gen-posix-lock-obj.c (USE_16BYTE_ALIGNMENT): Remove.
Packit fc043f
	(USE_DOUBLE_FOR_ALIGNMENT, USE_LONG_DOUBLE_FOR_ALIGNMENT): New.
Packit fc043f
	* src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: Update.
Packit fc043f
Packit fc043f
2016-02-08  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	build: Create an SWDB file during "make distcheck"
Packit fc043f
	+ commit 1e6c5a70b3b51f81d2fc1289129f6c3e1920ebcc
Packit fc043f
	* Makefile.am (distcheck-hook): New.
Packit fc043f
Packit fc043f
2016-01-19  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add GPG_ERR_DB_CORRUPTED.
Packit fc043f
	+ commit b3bb6e2cc31208a198e74b42ca495c08ebb00fc4
Packit fc043f
Packit fc043f
Packit fc043f
2016-01-13  Marek Vasut  <marex@denx.de>
Packit fc043f
Packit fc043f
	Add new lock-obj-pub for NIOS2.
Packit fc043f
	+ commit 71370060aae7a83f4d6c3b9c924f204a57cc2538
Packit fc043f
	src/syscfg/lock-obj-pub.nios2-unknown-linux-gnu.h: New.
Packit fc043f
Packit fc043f
2015-12-14  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	po: Update Japanese translation.
Packit fc043f
	+ commit 1814a9bdc15f00bcf6b13ad16857a4f4922fa1d7
Packit fc043f
Packit fc043f
Packit fc043f
2015-12-12  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.21.
Packit fc043f
	+ commit 425b7687b4f74a22b0aa760262cb8f13ae40dc26
Packit fc043f
	* configure.ac: Set LT version to C17/A17/Ro.
Packit fc043f
Packit fc043f
2015-12-07  Andre Heinecke  <aheinecke@intevation.de>
Packit fc043f
Packit fc043f
	Fix windows 8bit encoding conversion.
Packit fc043f
	+ commit 823e858cdf5eb6b9945a46478f9876819c16bcd3
Packit fc043f
	* src/w32-gettext.c (wchar_to_native): Convert to ConsoleOutputCP.
Packit fc043f
Packit fc043f
2015-12-03  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	tests: Fix read past buffer.
Packit fc043f
	+ commit 68827cbba2083db40df92de1bc449a3d2d0e81ed
Packit fc043f
	* tests/t-poll.c (test_poll): Fix read past buffer.
Packit fc043f
Packit fc043f
2015-11-19  Justus Winter  <justus@g10code.com>
Packit fc043f
Packit fc043f
	Avoid 'malloc' corner case.
Packit fc043f
	+ commit 06af687beaa1f8e72a05bd3a057b73fecb158c3d
Packit fc043f
	* src/init.c (_gpgrt_realloc): Avoid calling 'malloc(0)'.
Packit fc043f
Packit fc043f
2015-10-21  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add error codes NO_NAME, NO_KEY, and SERVER_FAILURE.
Packit fc043f
	+ commit a144fa8863846dc3f6d34731741cd63251620837
Packit fc043f
Packit fc043f
Packit fc043f
2015-10-18  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Avoid calling write(fd,NULL,n).
Packit fc043f
	+ commit 75172adc3b103bd7ef75575a0c0c9c3b63fa4023
Packit fc043f
	* src/estream.c (es_func_fd_write): Take care of a flush requests.
Packit fc043f
	(es_func_w32_write): Ditto.
Packit fc043f
	(es_func_fp_write): Ditto.
Packit fc043f
Packit fc043f
2015-09-28  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Keep track of EPIPE.
Packit fc043f
	+ commit c09997bc50f3fffaf76d60d2e571b1d85536571e
Packit fc043f
	* src/estream.c (_gpgrt_stream_internal): Add indicators.hup.
Packit fc043f
	(init_stream_obj): Init it.
Packit fc043f
	(es_fill, es_flush, es_seek): Set that.
Packit fc043f
	(_gpgrt_poll): Set event.
Packit fc043f
Packit fc043f
	Add GPG_ERR_FALSE and GPG_ERR_TRUE error codes.
Packit fc043f
	+ commit d3e9514ff82ff767fc78ce485aef71ba56f3c0d5
Packit fc043f
Packit fc043f
Packit fc043f
2015-09-25  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Add gpgrt_set_nonblock and gpgrt_poll.
Packit fc043f
	+ commit 071c2170479869f4c6694ae85d2b113e84482a01
Packit fc043f
	* configure.ac (AC_CHECK_HEADERS): Add sys/select.h and sys/time.h.
Packit fc043f
	* src/estream.c: Include both header if available.
Packit fc043f
	(COOKIE_IOCTL_NONBLOCK): New.
Packit fc043f
	(struct estream_cookie_fd): Add field nonblock.
Packit fc043f
	(func_fd_create): Set nonblock from MODEFLAGS.
Packit fc043f
	(es_func_fd_ioctl): New.
Packit fc043f
	(parse_mode): Add modeflag "nonblock".
Packit fc043f
	(es_fill): Map EWOULDBLOCK to EAGAIN.  Do not set error indicator for
Packit fc043f
	EAGAIN.
Packit fc043f
	(es_flush, es_seek, es_write_nbf): Map EWOULDBLOCK to EAGAIN.
Packit fc043f
	(do_fdopen): Call COOKIE_IOCTL_NONBLOCK.
Packit fc043f
	(_gpgrt_set_nonblock): New.
Packit fc043f
	(_gpgrt_get_nonblock): New.
Packit fc043f
	(_gpgrt_poll): New.
Packit fc043f
Packit fc043f
	* src/gpg-error.h.in (struct _gpgrt_poll_s): New.
Packit fc043f
	(gpgrt_poll_t, es_poll_t): New.
Packit fc043f
	(es_set_nonblock, es_get_nonblock, es_poll): New.
Packit fc043f
Packit fc043f
	* src/gpg-error.vers, src/gpg-error.def.in: Add gpgrt_set_nonblock,
Packit fc043f
	gpgrt_get_nonblock, and gpgrt_poll.
Packit fc043f
	* src/visibility.c (gpgrt_set_nonblock, gpgrt_get_nonblock): New.
Packit fc043f
	(gpgrt_poll): New.
Packit fc043f
Packit fc043f
	* tests/t-common.h (DIM): New.
Packit fc043f
	* tests/t-poll.c: New.
Packit fc043f
	* tests/Makefile.am (TESTS): Add t-poll.
Packit fc043f
	(t_poll_LDADD): New.
Packit fc043f
Packit fc043f
2015-09-24  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	estream: Replace indicator help functions to ease code reading.
Packit fc043f
	+ commit 61d832c53b7db5367a5542347e3454c882d0bf28
Packit fc043f
	* src/estream.c (es_set_indicators, es_get_indicator): Remove and
Packit fc043f
	change callers to set/get indicators directly.
Packit fc043f
Packit fc043f
2015-09-17  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>
Packit fc043f
Packit fc043f
	Support i[456]86-pc{,-linux,-kfreebsd}-gnu.h.
Packit fc043f
	+ commit 9decdd7bd105ff6a0973cc1f6652e0eb0625d640
Packit fc043f
	* src/mkheader (canon_host_triplet): Add new entries.
Packit fc043f
	* src/syscfg/lock-obj-pub.i486-pc-gnu.h: Rename to ...
Packit fc043f
	* src/syscfg/lock-obj-pub.i686-pc-gnu.h: this.
Packit fc043f
	* src/syscfg/lock-obj-pub.i486-pc-kfreebsd-gnu.h: Rename to ...
Packit fc043f
	* src/syscfg/lock-obj-pub.i686-pc-kfreebsd-gnu.h: this.
Packit fc043f
	* src/syscfg/lock-obj-pub.i486-pc-linux-gnu.h: Remove.
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Update.
Packit fc043f
Packit fc043f
2015-08-26  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.20.
Packit fc043f
	+ commit 44caed05ec146654f1ce40bba4b25def83c369db
Packit fc043f
	* configure.ac: Set LT version to C16/A16/R0.
Packit fc043f
Packit fc043f
	Add new version macros.
Packit fc043f
	+ commit 030ee30c4ae85f2f41ca77651e4a7d7c9993e284
Packit fc043f
	* src/gpg-error.h.in (GPGRT_VERSION): New.
Packit fc043f
	(GPGRT_VERSION_NUMBER): New.
Packit fc043f
	(GPG_ERROR_VERSION, GPG_ERROR_VERSION_NUMBER): Move to top of file.
Packit fc043f
Packit fc043f
	Add macro GPGRT_INLINE and avoid -Wundef warnings.
Packit fc043f
	+ commit 9cd3f002addf2acae4a7b0f52f8941e517e83d73
Packit fc043f
	* src/gpg-error.h.in (GPG_ERR_INLINE): Use #if defined for possible
Packit fc043f
	undefined macros to avoid warnign with GCC's -Wundef option.
Packit fc043f
	(GPGRT_INLINE): New.
Packit fc043f
Packit fc043f
2015-08-26  Yuri Chornoivan  <yurchor@ukr.net>
Packit fc043f
Packit fc043f
	Update Ukrainian translation.
Packit fc043f
	+ commit 17e4f727d9bd8e406bf977af445ef57201d23249
Packit fc043f
Packit fc043f
Packit fc043f
2015-08-25  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Make configure option --disable-build-timestamp the default.
Packit fc043f
	+ commit d328c4d72fa6d224117d7332082509c240a4f2fc
Packit fc043f
	* configure.ac (BUILD_TIMESTAMP): Set to "<none>" by default.
Packit fc043f
Packit fc043f
	w32: Make sure the setmode is called.
Packit fc043f
	+ commit 1e8d00260a97e0213559c74f687e478e7479a0ea
Packit fc043f
	* src/estream.c (HAVE_DOSISH_SYSTEM): Define if needed.
Packit fc043f
Packit fc043f
2015-07-27  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add option --lib-version to the gpg-error tool.
Packit fc043f
	+ commit d2e4bb4c77167a1ed10f1017a7d06a822bbd5135
Packit fc043f
	* src/gpg-error.c (main): Add new option.
Packit fc043f
Packit fc043f
2015-07-24  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add new public macros for GCC attributes.
Packit fc043f
	+ commit 4e790613f66efcfc62d73722d5f1730a37cb8324
Packit fc043f
	* src/gpg-error.h.in (GPGRT_GCC_VERSION): New.
Packit fc043f
	(GPGRT_ATTR_NORETURN, GPGRT_ATTR_PRINTF, GPGRT_ATTR_NR_PRINTF): New.
Packit fc043f
	(GPGRT_ATTR_FORMAT_ARG, GPGRT_ATTR_SENTINEL): New.
Packit fc043f
	(GPGRT_ATTR_USED, GPGRT_ATTR_UNUSED, GPGRT_ATTR_DEPRECATED): New.
Packit fc043f
	(GPGRT_ATTR_PURE, GPGRT_ATTR_MALLOC): New.
Packit fc043f
	(GPGRT_HAVE_MACRO_FUNCTION, GPGRT_HAVE_PRAGMA_GCC_PUSH): New.
Packit fc043f
	(_GPGRT_GCC_A_PRINTF): Replace GPGRT_ATTR_PRINTF.
Packit fc043f
Packit fc043f
2015-06-15  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Allow building with --disable-threads.
Packit fc043f
	+ commit 13918d05a333255d22aa6718dd467fcb8eaf80c8
Packit fc043f
	* src/posix-lock-obj.h (LOCK_ABI_NOT_AVAILABLE): New.
Packit fc043f
	(LOCK_ABI_VERSION): Define depending on USE_POSIX_THREADS.
Packit fc043f
	(_gpgrt_lock_t) [!USE_POSIX_THREADS]: Do not define the union.
Packit fc043f
	* src/gen-posix-lock-obj.c: Take care of USE_POSIX_THREADS.
Packit fc043f
	* src/posix-lock.c (_gpgrt_lock_init, _gpgrt_lock_lock)
Packit fc043f
	(_gpgrt_lock_trylock, _gpgrt_lock_unlock)
Packit fc043f
	(_gpgrt_lock_destroy): Return success for a no-threads version.
Packit fc043f
	* tests/t-lock.c: Disable tests if threads are not available.
Packit fc043f
	* src/mkheader.c (main): Add NO-THREADS to the printed comment.
Packit fc043f
	* configure.ac: Show NO-TRHEADS in the final summary.
Packit fc043f
Packit fc043f
2015-04-14  NIIBE Yutaka  <gniibe@fsij.org>
Packit fc043f
Packit fc043f
	po: Update Japanese translation.
Packit fc043f
	+ commit 4171d61a97d9628532db84b590a9c135f360fa90
Packit fc043f
Packit fc043f
Packit fc043f
2015-04-10  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.19.
Packit fc043f
	+ commit d77c33ae608d67086ea057cca5ddee99a7202f8b
Packit fc043f
Packit fc043f
Packit fc043f
	po: Update German translation.
Packit fc043f
	+ commit e43045fe63aed0aba6522ebfd6e336b03f250069
Packit fc043f
Packit fc043f
Packit fc043f
	w32: Remove compiler warnings.
Packit fc043f
	+ commit eaec10f48803ee2232d1c1515fbe8f485c1e84b0
Packit fc043f
	* src/Makefile.am (pre_mkheader_cmds): Avoid make diagnostic about
Packit fc043f
	failed but ignored command.  This confuses Emacs' compiler job parser.
Packit fc043f
	* tests/t-lock.c [W32]: Include time.h.
Packit fc043f
	* src/init.c: Reorganize Windows only code.
Packit fc043f
	(wchar_to_utf8, utf8_to_wchar): Remove unused functions.
Packit fc043f
	(_gpg_err_set_errno): Use only one copy for all platforms.
Packit fc043f
Packit fc043f
2015-03-24  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Use assert to print diagnosicts before calling abort.
Packit fc043f
	+ commit 56feff58d4fab92701ae77a1004af820b85e7f6c
Packit fc043f
	* src/posix-lock.c: Add assert calls.
Packit fc043f
Packit fc043f
2015-03-24  Daniel Kahn Gillmor  <dkg@fifthhorseman.net>
Packit fc043f
Packit fc043f
	Avoid breakage with gcc 5.
Packit fc043f
	+ commit c01c8f0c4f55d76b037c7f6aa44ad25ede18d38a
Packit fc043f
	* src/Makefile.am: Add -P to the C preprocessor when building
Packit fc043f
	mkerrcodes.h, to avoid a noisy intermediate pipeline.
Packit fc043f
Packit fc043f
2015-03-19  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add option --defines to gpg-error.
Packit fc043f
	+ commit 528ee704f8f9d881ba370dcbfa9194d6704f9a2f
Packit fc043f
	* src/gpg-error.c (main): Add option --help and --defines.
Packit fc043f
Packit fc043f
	Add GPG_ERR_LDAP_* error codes.
Packit fc043f
	+ commit dc95f1ea1ab902b9f49de651084f514535e4a3fc
Packit fc043f
	* src/err-codes.h.in: Add error codes.
Packit fc043f
	* doc/ldap2gpgerr.c: New.
Packit fc043f
Packit fc043f
2015-03-16  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Remove useless conditions.
Packit fc043f
	+ commit b5cb32f979a80904ea58fc7531e43e2be2270573
Packit fc043f
	* src/estream.c (fname_set_internal): Remove useless condition.
Packit fc043f
	* src/mkheader.c (main): Ditto.
Packit fc043f
Packit fc043f
2015-03-06  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add host-triplet aliasing feature to mkheader.
Packit fc043f
	+ commit 4441e96801fdc4c900abae8c0aa0b53e2e26e079
Packit fc043f
	* src/Makefile.am (lock_obj_pub): Rename i586-pc-linux-gnu to
Packit fc043f
	i686-pc-linux-gnu.  Remove i486-pc-linux-gnu.
Packit fc043f
	* src/mkheader.c (canon_host_triplet): New.
Packit fc043f
	(main): Use it.
Packit fc043f
Packit fc043f
	w32: Add a manifest to libgpg-error.
Packit fc043f
	+ commit 0f814d4c4a285573eef2391c70e21cf8126cafcb
Packit fc043f
	* src/gpg-error.w32-manifest.in: New.
Packit fc043f
	* src/Makefile.am (EXTRA_DIST): Add it.
Packit fc043f
	(versioninfo.lo): Depend on it.
Packit fc043f
	* src/versioninfo.rc.in: Add it.
Packit fc043f
	* configure.ac (AC_CONFIG_FILES): Add it.
Packit fc043f
	(BUILD_VERSION): New.
Packit fc043f
Packit fc043f
2015-02-18  Neal H. Walfield  <neal@gnu.org>
Packit fc043f
Packit fc043f
	Correct URL.
Packit fc043f
	+ commit b400d7c65daaf44f227073ddde7d06986afde786
Packit fc043f
Packit fc043f
Packit fc043f
2015-01-30  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	w32: Use -static-libgcc to avoid linking to libgcc_s_sjlj-1.dll.
Packit fc043f
	+ commit 8487ec25e1c8f73ca7dc31e5d648cb05eede0f14
Packit fc043f
	* src/Makefile.am (extra_ltoptions): New.
Packit fc043f
	(libgpg_error_la_LDFLAGS): Use it.
Packit fc043f
Packit fc043f
2015-01-26  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Release 1.18.
Packit fc043f
	+ commit f79688532f100599b1e24dde1429a229524601c9
Packit fc043f
	* configure.ac: Set LT version to C14/A14/R0.
Packit fc043f
Packit fc043f
	po: Update German translation.
Packit fc043f
	+ commit 83c0bd462b45ddb75da8c2778ba1fb0c210b53ff
Packit fc043f
Packit fc043f
Packit fc043f
2015-01-22  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add GPG_ERR_LEGACY_KEY.
Packit fc043f
	+ commit 524d5bdee2954337e748428469972957663d497d
Packit fc043f
Packit fc043f
Packit fc043f
2015-01-05  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Avoid false warning about uninitialized var.
Packit fc043f
	+ commit 46aaffbe852e334fd1a72affc4a918ceb7dc457b
Packit fc043f
	* src/gpg-error.c (get_err_from_str): Init SAVED_CHAR.
Packit fc043f
Packit fc043f
	build: Update to gettext 0.19.
Packit fc043f
	+ commit abe43b5cbf066086deb735bba37178b34f12a4cb
Packit fc043f
	* po/Makefile.in.in (MSGMERGE): Remove --previous.
Packit fc043f
	* po/Makevars (MSGMERGE_OPTIONS): Add --previous.
Packit fc043f
Packit fc043f
	build: Require automake 1.14.
Packit fc043f
	+ commit 3d32de205211ca91d21941273db306a759ccc3ba
Packit fc043f
	* configure.ac (AM_INIT_AUTOMAKE): Add serial-tests.
Packit fc043f
	* tests/Makefile.am (INCLUDES): Replace by AM_CPPFLAGS.
Packit fc043f
Packit fc043f
2014-12-28  Werner Koch  <wk@gnupg.org>
Packit fc043f
Packit fc043f
	Add GPG_ERR_REQUEST_TOO_SHORT and GPG_ERR_REQUEST_TOO_LONG.
Packit fc043f
	+ commit a672a1510456f3f12769938ab95c50ec6904e42e
Packit fc043f
Packit fc043f
Packit fc043f
2014-12-15  Werner Koch  <wk@gnupg.org>
Packit