12021-03-22 Werner Koch <wk@gnupg.org> 2 3 Release 1.42. 4 + commit 303062bf9a383de67227ff942c5482f3a87c71ed 5 6 7 core: Add GPG_ERR_SOURCE_TPM2D. 8 + commit 200bf2ed9d610219cc0b12a91dedb3bfd52d36b7 9 * src/err-sources.h.in (GPG_ERR_SOURCE_TPM2D): New. 10 112021-03-05 Werner Koch <wk@gnupg.org> 12 13 w32: Allow Unicode paths for the gettext domain. 14 + commit 618ce381f9d70f3a94e87f58f667a6138411018e 15 * src/w32-gettext.c: Remove remaining WindowsCE support 16 (load_domain): Use CreateFileW. 17 182021-03-04 Werner Koch <wk@gnupg.org> 19 20 w32: Minor cleanup of w32-gettext. 21 + commit 3bf1de7b72be8e1d9fa78eb94730772d9cf61c44 22 * src/w32-gettext.c: Include gpgrt.h instead gpg-error.h. 23 (utf8_to_wchar): Use underscored function. 24 (_gpg_w32_textdomain): Ditto. 25 262021-02-18 NIIBE Yutaka <gniibe@fsij.org> 27 28 build: Support --disable-threads by gen-lock-obj.sh. 29 + commit 1fb90a7da186ee2ee098a666f6f3a35bb1720e59 30 * configure.ac: Supply --disable-threads to gen-lock-obj.sh. 31 Tighten the condition of using gen-lock-obj.sh for GNU/Linux. 32 * src/gen-lock-obj.sh: Support --disable-threads. 33 342021-02-16 NIIBE Yutaka <gniibe@fsij.org> 35 36 build: Fix gpgrt-config. 37 + commit ed3cd20de8d3eab92dd8fff02bcc214c55d08398 38 * src/gpgrt-config.in: Remove delimiter variable. 39 40 build: More fix for determining libdir for gpgrt-config. 41 + commit 28a21addc2e30b0756cdc6774c79f69070df8829 42 * src/gpg-error.m4: Use CC -print-search-dirs for better support of 43 GNU style cross prefix. 44 452021-02-15 NIIBE Yutaka <gniibe@fsij.org> 46 47 build: Fix the previous change. 48 + commit d7fd25bbfb83cd445bc81aa695b2c6127c22fa59 49 * src/gpg-error.m4: Fix test condition for GPGRT_CONFIG. 50 Fix behaviour when there is no GPG_ERROR_CONFIG. 51 522021-02-12 NIIBE Yutaka <gniibe@fsij.org> 53 54 build: Improve how to determine $libdir for gpgrt-config. 55 + commit 3cabbad4eec0e5bc6bdaa9f8626578934138adee 56 * src/gpg-error.m4: Fix $gpgrt_libdir handling. 57 582021-02-09 NIIBE Yutaka <gniibe@fsij.org> 59 60 Support cross-compiling on more platforms. 61 + commit 99ae862a96a569724f49a604ebb7d3f6d2c2d374 62 * src/gen-lock-obj.sh (ECHO_C, ECHO_N): Portability fix. 63 642020-12-21 Werner Koch <wk@gnupg.org> 65 66 Release 1.41. 67 + commit 98032624ae89a67ee6fe3b1db5d95032e681d163 68 69 70 core: Yet another fix to the ignore meta command. 71 + commit 7021b58b0f2d95b94a2bac43e15ec97d89706b7f 72 * src/argparse.c (_gpgrt_argparse): Entirely skip ignored sysconf 73 commands. Fix state transitions in the ignore case. 74 75 Release 1.40. 76 + commit c1f4ed561e9d214be9fdc3005134b9d0ed87554f 77 * configure.ac: Bump LT version to C31/A31/R0. 78 79 w32: Allow Unicode for internal getusername function. 80 + commit 007cfe8a0ca4c03412f031878d6ce232612a90d8 81 * src/sysutils.c (_gpgrt_getusername) [W32]: Use GetUserNameW. 82 832020-12-18 Werner Koch <wk@gnupg.org> 84 85 core: Fix the "ignore" meta command of the argparser. 86 + commit 4b09c8c2023d52b97be6069c20897ebfb25f9bca 87 * src/argparse.c (_gpgrt_argparse): Factor some code out to ... 88 (prepare_arg_return): new. 89 (_gpgrt_argparse): No missing arg error in ignore sections. 90 912020-12-07 NIIBE Yutaka <gniibe@fsij.org> 92 John Ericson 93 94 build: Use AC_CHECK_TOOL to detect objdump for cross build. 95 + commit 9ee011259f819a3cf50fe7019fa4366dbc437e0e 96 * configure.ac (CROSS_HOST_OBJDUMP): Remove, but use AC_CHECK_TOOL. 97 982020-11-17 NIIBE Yutaka <gniibe@fsij.org> 99 100 m4: Update with newer autoconf constructs. 101 + commit 8047ca99858a7ee812ef11ed3bd2868e920ac1b7 102 * src/gpg-error.m4: Replace AC_HELP_STRING to AS_HELP_STRING. 103 104 build: Update to new autoconf constructs. 105 + commit 41d753e21eaae3e4332e841de2f40e7055f2a68c 106 * configure.ac Replace AC_GNU_SOURCE to Use AC_USE_SYSTEM_EXTENSIONS. 107 Replace AC_HELP_STRING to AS_HELP_STRING. 108 * m4/estream.m4: Replace AC_TRY_LINK to AC_LINK_IFELSE. 109 * m4/gnupg-misc.m4: Replace AC_TRY_COMPILE to AC_COMPILE_IFELSE. 110 * m4/libtool.m4: Use AC_LANG_PUSH/AC_LANG_POP instead of 111 AC_LANG_SAVE/AC_LANG_RESTORE. 112 * m4/readline.m4: Replace AC_HELP_STRING to AS_HELP_STRING. 113 Fix quote for _combo. 114 * m4/threadlib.m4: Replace AC_HELP_STRING to AS_HELP_STRING. 115 1162020-10-19 Werner Koch <wk@gnupg.org> 117 118 New public function gpgrt_access. 119 + commit 4764c5a3a4d704b3b42bafc5eba3996579030703 120 * src/gpg-error.h.in (gpgrt_access): New. 121 * src/gpg-error.vers. src/gpg-error.def.in: Add new function. 122 * src/sysutils.c (any8bitchar): New. 123 (_gpgrt_access): New. 124 * src/visibility.c (gpgrt_access): New. 125 126 * src/spawn-w32.c (_gpgrt_spawn_process_detached): Use it. 127 * src/argparse.c (try_versioned_conffile): Use it. 128 * tests/t-stringutils.c (check_access): New simple test. 129 1302020-10-09 Werner Koch <wk@gnupg.org> 131 132 w32: Support utf8 also for getcwd. 133 + commit dbedf190969de1a796560cfa15fb4ea986bc79dc 134 * src/sysutils.c (_gpgrt_getcwd) [W32]: Implement utf-8 support. 135 * src/w32-gettext.c (wchar_to_native): Factor some code out to .. 136 (wchar_to_cp): new. 137 (_gpgrt_wchar_to_utf8): New. 138 * tests/t-stringutils.c: Include windows.h. 139 (utf8_to_wchar): New. 140 (wchar_to_utf8): New. 141 (mygetcwd): Use wchar version for Windows. 142 (main): New option --pwd. 143 1442020-08-24 Werner Koch <wk@gnupg.org> 145 146 Release 1.39. 147 + commit 59d9f8106db3a23cb5d51d01dc6b719413d3f760 148 149 1502020-08-21 Werner Koch <wk@gnupg.org> 151 152 core,w32: Add UTF-8 support to gpgrt_fopen, gpgrt_mkdir and gpgrt_chdir. 153 + commit a68c1975bda47b0698b48761a62e95b371095e9a 154 * src/protos.h: New. 155 * src/Makefile.am (libgpg_error_la_SOURCES): Add file. 156 * src/gpgrt-int.h: Include protos.h. 157 * src/sysutils.c (_gpgrt_mkdir) [W32]: Make UTF-8 aware. 158 (_gpgrt_chdir) [W32]: Ditto. 159 * src/w32-gettext.c: Include protos.h. 160 (utf8_to_wchar): Allow for strings. 161 (_gpgrt_utf8_to_wchar): New. 162 (_gpgrt_free_wchar): New. 163 * src/estream.c (map_w32_to_errno): Add more error codes. 164 (_gpgrt_w32_set_errno): New. 165 (any8bitchar) [W32]: New helper. 166 (func_file_create) [W32]: Convert file name and use _wopen. 167 1682020-08-21 NIIBE Yutaka <gniibe@fsij.org> 169 170 argparse: Handle a corner case of wrong ARGC. 171 + commit 87a6b28c0f3b6c5b38e0f8a8533df39d3f0c0f03 172 * src/argparse.c (arg_parse): Avoid null dereference when ARGC is wrong. 173 1742020-08-17 Werner Koch <wk@gnupg.org> 175 176 Fix a current gcc's -fsanitize warning. 177 + commit c5fcdd9a58a2508a20327226c52d155c29ddd5f3 178 * src/argparse.c (ARGPARSE_FLAG__INITIALIZED): Make sure it is an 179 unsigned int. 180 1812020-08-11 Werner Koch <wk@gnupg.org> 182 183 core,w32: Use timeout in es_poll even if there are no FDs. 184 + commit fd1340085bc6879436dd2882dc5178c133434675 185 * src/w32-estream.c (_gpgrt_w32_poll): Sleep if there are no handles 186 to wait for. 187 1882020-08-05 Werner Koch <wk@gnupg.org> 189 190 Make --lib-version work again. 191 + commit e0dab4843ded8af172c2566b4d7313a1a13e7e26 192 * src/gpg-error.c (main): Add printing code. 193 1942020-08-03 NIIBE Yutaka <gniibe@fsij.org> 195 196 gpgrt-config: Fix handling 'Requires' field. 197 + commit 4192cbc3c58589055de1fb5ccbe42f3d33adb0af 198 * src/gpgrt-config.in (get_attr_l): New. 199 (all_required_config_files): Use get_attr_l. 200 2012020-07-15 NIIBE Yutaka <gniibe@fsij.org> 202 203 w32: Add gpgrt_fcancel to the definition. 204 + commit c564d8c5a0e7c1aba9103cb4b6561b61074c60f1 205 * src/gpg-error.def.in (gpgrt_fcancel): Add. 206 2072020-06-26 Werner Koch <wk@gnupg.org> 208 209 estream: Add gpgrt_fcancel. 210 + commit 3413489d25577e3fe7f529b8e610a45d2bd1857c 211 * src/estream.c (do_close): Add arg 'cancel_mode' and chnage all 212 callers. 213 (_gpgrt_fcancel): New. 214 * src/gpg-error.def.in, src/gpg-error.vers: Add function. 215 * src/visibility.c (gpgrt_fcancel): New. 216 * src/gpg-error.h.in (gpgrt_fcancel): New. 217 2182020-06-15 NIIBE Yutaka <gniibe@fsij.org> 219 220 build: Fix the gpg-error-config test for cross build. 221 + commit 1a4c1f37a1c95a4cfcaab6df3364ee3515a1ea1b 222 * src/gpg-error-config-test.sh.in: Clear PKG_CONFIG_SYSROOT_DIR. 223 2242020-06-12 NIIBE Yutaka <gniibe@fsij.org> 225 226 build: Fix command-line to make 'src 'dir. 227 + commit 159e394920f6be822d771fe003498de4d93b07c3 228 * configure.ac: Mistake, then, fix it. 229 2302020-06-11 NIIBE Yutaka <gniibe@fsij.org> 231 232 build: On cross build, detect host's objdump. 233 + commit ce97528fa3dcc58d86e18d4d8820f210a624f63d 234 * configure.ac [*-*-linux*] (CROSS_HOST_OBJDUMP): New. 235 2362020-06-03 David Michael <fedora.dm0@gmail.com> 237 238 build: Fix cross-compiling into a separate build dir. 239 + commit 013720333c6ec1d38791689bc49ba039d98e16b3 240 * configure.ac: Create the src directory before writing into it. 241 * src/Makefile.am (EXTRA_DIST): Add gen-lock-obj.sh. 242 2432020-05-29 Werner Koch <wk@gnupg.org> 244 245 Release 1.38. 246 + commit 71d278824c5fe61865f7927a2ed1aa3115f9e439 247 248 2492020-05-29 Yuri Chornoivan <yurchor@ukr.net> 250 251 po: Update Ukrainian translation. 252 + commit 1143b2d3619939a60f47af75be2123f3b225b32b 253 254 2552020-05-29 Ineiev <ineiev@gnu.org> 256 257 po: Update and proofread Russian translation. 258 + commit a6104a9ab717499d405ff2af61a928a08774466a 259 260 2612020-05-19 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 262 263 syscfg: add 64-bit big-endian MIPS architecture. 264 + commit 0db8c768843db3e85935b972f1ed9d1b98159c46 265 * src/syscfg/lock-obj-pub.mips64-unknown-linux-gnuabi64.h: new. 266 * src/Makefile.am (lock_obj_pub): Add it. 267 2682020-04-09 NIIBE Yutaka <gniibe@fsij.org> 269 270 build: Use gen-lock-obj.sh script when possible. 271 + commit 988211d3d4c1f3d5cfa6b460210f65ab636763b5 272 * configure.ac (HAVE_GENERATED_LOCK_OBJ_H): New. 273 * src/Makefile.am: Support HAVE_GENERATED_LOCK_OBJ_H. 274 275 build: Add a shell script to generate lock-obj-pub.h. 276 + commit 50e62b36ea01ed25d12c443088b85d4f41a2b3e1 277 * src/gen-lock-obj.sh: New. 278 2792020-04-03 Werner Koch <wk@gnupg.org> 280 281 core: Improve the echo and info meta commands of the arg parser. 282 + commit 98d11eff669c042d381ee4f18a42d32bcab256ef 283 * src/argparse.c (handle_meta_echo): Substitue some vars. 284 (handle_meta_user): Factor some code out to ... 285 (assure_username): new. 286 287 core: Implement meta command [user] also for Windows. 288 + commit ef07aedc70992742fcef92811345670777a3047b 289 * src/argparse.c (initialize): Clear username. 290 * src/sysutils.c (_gpgrt_getusername): Implement for Windows. 291 292 core: Implement meta command [user] for the arg parser. 293 + commit d843d260f5502ba90a2a35dfe202439f32b0e9aa 294 * src/sysutils.c (_gpgrt_getusername): New. 295 * src/argparse.c (struct _gpgrt_argparse_internal_s): New flags user_* 296 and store the current user. 297 (initialize): Free new malloced field. Clear new flags. 298 (handle_meta_user): Implement. 299 (handle_metacmd): Implement user sections. Remove "group" meta 300 command. 301 (_gpgrt_argparse): Implement user sections. 302 (finish_read_sys): Reset new vars. 303 3042020-03-06 Werner Koch <wk@gnupg.org> 305 306 core: Tweak the printing of headers in the --help output. 307 + commit 85b5006d01fc64763a6e1f0d6cbda91c5cb709c1 308 * src/argparse.c (show_help): Do not print empty sections between 309 headers. 310 311 core: Add features for pretty printing the help. 312 + commit c59bf5824aafe938d5ab0d69079b9d93debc19fe 313 * src/gpg-error.h.in (ARGPARSE_OPT_HEADER): New. 314 (ARGPARSE_OPT_VERBATIM): New. 315 (ARGPARSE_verbatim): New. 316 (ARGPARSE_header): New. 317 * src/argparse.c (show_help): Implement them. 318 3192020-03-03 Werner Koch <wk@gnupg.org> 320 321 core: New function gpgrt_reallocarray. 322 + commit 969abd302211262562df93ae5412ee319aae69e6 323 * src/init.c (_gpgrt_reallocarray): New. 324 * src/visibility.c (gpgrt_reallocarray): New. 325 * src/gpg-error.vers, src/gpg-error.def.in: Add new function. 326 * src/gpg-error.h.in: Add new interface. 327 * tests/t-malloc.c: New. 328 * tests/Makefile.am (TESTS): Add new test. 329 330 core: Fix allocation bug introduced with last commit. 331 + commit 72a15bad8f27303475498ce44e34d29b4c2c4593 332 * src/argparse.c (initialize): Increase number of extra slots. 333 3342020-03-02 Werner Koch <wk@gnupg.org> 335 336 core: New internal option --dump-option-table for argparser. 337 + commit db95feab16e32309a4bfb382827c495c2c49920c 338 * src/argparse.c (initialize): Add new internal option. 339 (arg_parse): Implement that option. 340 (dump_option_table): New. 341 (show_help): Remove exit and let the caller call my_exit. 342 343 core: Replace fputs by es_fputs in argparser. 344 + commit f816797c87340a6130dea1e4f8f0e130511dfe3f 345 * src/argparse.c (writestrings): Use that function to match what we 346 are doing in flushstrings. 347 348 core: Allow returning of attributes from gpgrt_argparser. 349 + commit d3661d81e9aafae75680164ede7322cf3d7b6804 350 * src/gpg-error.h.in (ARGPARSE_FLAG_WITHATTR): New. 351 (ARGPARSE_ATTR_FORCE): New. 352 (ARGPARSE_ATTR_IGNORE): New. 353 (ARGPARSE_TYPE_MASK): Moved from argparse.c to here. 354 * src/argparse.c: Always use macros for constants. 355 (_gpgrt_argparse): Handle ARGPARSE_FLAG_WITHATTR. 356 (arg_parse): Ditto. 357 * tests/t-argparse.c (main): Add commented test case. 358 3592020-02-27 Werner Koch <wk@gnupg.org> 360 361 core: Implement meta commands for the argparser. 362 + commit 2d1969ab465bad62f73a7c24ddc8bb490ff9fd40 363 * src/argparse.c (opttable_t): Add new flags forced, ignore, and 364 explicit_ignore. 365 (struct _gpgrt_argparse_internal_s): Change flags to bitflags. Add 366 several flags to support meta commands. 367 (initialize): Clear them. 368 (handle_meta_user): Use the new verbose flag. 369 (handle_meta_force): Implement. 370 (handle_meta_ignore): Implement. 371 (handle_meta_echo): Support "-echo". 372 (handle_meta_verbose): New. 373 (handle_metacmd): New meta command verbose. Add always flag and move 374 the detection of unexpected meta commands to here. 375 (_gpgrt_argparse): Make use of the ignore and forced meta commands. 376 (finish_read_sys): New. 377 (_gpgrt_argparser): Support the verbose flag. Call finish_read_sys. 378 (arg_parse): Ignore non-explicit ignored and all forced options. 379 380 * tests/t-argparse.c (main): Fix printing of the ARGPARSE_CONFFILE 381 case. New option 'M'. 382 * tests/t-argparse.conf, tests/etc/t-argparse.conf: Various changes to 383 test the new meta commands. 384 385 indent: Fix indentation in an argparse.c function. 386 + commit ffa21bf5b7066f7fa437119ce6b508b324ea2611 387 * src/argparse.c (arg_parse): Fix it here. 388 3892020-02-26 Werner Koch <wk@gnupg.org> 390 391 core: Add meta command handler stubs to argparse.c. 392 + commit 2f169b341e410924c5d7ee7d76ac67f85f26ed6a 393 * src/argparse.c (handle_meta_user): New stub. 394 (handle_meta_force): New stub. 395 (handle_meta_ignore): New stub. 396 (handle_meta_echo): New. 397 (handle_metacmd): New. 398 (_gpgrt_argparse): Call meta command handler. 399 400 core: Prepare argparse.c to track additional info for options. 401 + commit 9d268891dae6093e5346710a38ba8cd978f24f09 402 * src/argparse.c (opttable_t): New. 403 (struct _gpgrt_argparse_internal_s): Use this instead of a ppointer to 404 gpgrt_opt_t. 405 (initialize): Copy options to the new tableand keep an original ordinal. 406 (_gpgrt_argparse): Adjust for changes. 407 (any_opt_conffile): Ditto. 408 (find_long_option): Ditto. 409 (arg_parse): Ditto. 410 (long_opt_strlen): Adjust args. 411 (cmp_ordtbl): New. 412 (show_help): Print using the ordinal numbers. 413 4142020-02-25 Werner Koch <wk@gnupg.org> 415 416 core: Add parser for meta commands to gpgrt_argparser. 417 + commit 6fc2d7cb8ce9e08cb189608466803ee7c8eb6930 418 * src/gpg-error.h.in (ARGPARSE_INVALID_META): New 419 (ARGPARSE_UNKNOWN_META, ARGPARSE_UNEXPECTED_META): New. 420 * src/argparse.c (struct _gpgrt_argparse_internal_s): Add flag 421 insysconfig. 422 (initialize): Init flag. Add error strings. 423 (_gpgrt_argparser): Set that flag. 424 (_gpgrt_argparse): Add parsing of meta commands. 425 426 * tests/etc/t-argparse.conf: Add some test cases. 427 * tests/t-argparse.conf: Ditto. 428 * tests/t-argparse.c (main): Die only after printing all warnings. 429 430 core: Fold duplicated code from _gpgrt_argparse. 431 + commit ca79d5edee8c6d93575708643ec825f81107e624 432 * src/argparse.c (_gpgrt_argparse): Fold common code. 433 434 core: Improve readability of _gpgrt_argparse. 435 + commit 8c185e719860aaa93cc37c0ec91c7bd5e3c2a5ce 436 * src/argparse.c (_gpgrt_argparse): Use enum for the states and 437 replace continue and break. 438 439 core: New flag ARGPARSE_FLAG_USERVERS to try versioned config files. 440 + commit e9f36cabe157aa046b32dfc0b9f5c175b9808722 441 * src/gpg-error.h.in (ARGPARSE_FLAG_USERVERS): New. 442 * src/argparse.c: Include unistd.h. 443 (try_versioned_conffile): New. 444 (_gpgrt_argparser): Use it. 445 446 core: New pseudo option ARGPARSE_PERMISSION_ERROR. 447 + commit f25555aed0da7f0492b68efb789dbe3e03ec7fe8 448 * src/gpg-error.h.in (ARGPARSE_PERMISSION_ERROR): New. 449 * src/argparse.c (initialize): Add code to print this error. 450 4512020-02-25 NIIBE Yutaka <gniibe@fsij.org> 452 453 w32: Fix exporting gpgrt_argparser. 454 + commit 732ac9c681a0b6afdee2e8eb6937500850f74986 455 * src/gpg-error.def.in (gpgrt_argparser): Fix typo. 456 4572020-02-22 Werner Koch <wk@gnupg.org> 458 459 core: Extend the way a config file can be specified, 460 + commit b79b2a7fb3ad3ada45d17e8632f1ee4212ce0764 461 * src/argparse.c (PATHSEP_C, DIRSEP_C): New. 462 (is_absfname, is_twopartfname): New. 463 (_gpgrt_argparser): Allow for a two-part config name. 464 4652020-02-20 Werner Koch <wk@gnupg.org> 466 467 core: Skip cmdline parsing for no or an empty argv. 468 + commit 44258227f7dfb12b3c0faa8ab417a9dc2be46eed 469 * src/argparse.c (_gpgrt_argparser): Allow for empty argv. Also fix 470 memory leak. 471 4722020-02-19 Werner Koch <wk@gnupg.org> 473 474 core: More fixes for the new option/argument parser. 475 + commit 46b3749997da84c41f583b22cda812dd5e42bde0 476 * src/argparse.c (arg_parse): Always set opt_flags. New flag no_init. 477 (_gpgrt_argparse): Clear opt_flags at start. 478 (_gpgrt_argparser): Call arg_parse directly. Call arg_parse with 479 no_init set. 480 481 core: Some fixes for the new option/argument parser. 482 + commit a264fe9c55251458df558718fae0845928bf225e 483 * src/argparse.c (ARGPARSE_FLAG__INITIALIZED): New. 484 (initialize): Use a flag bit to track the initialization state. 485 (_gpgrt_argparser): Clear some state on switching files. 486 4872020-02-18 Werner Koch <wk@gnupg.org> 488 489 core: Add a high level option/argument parser. 490 + commit 933eb9346a84c87f83f77d990be2f66e2f7b62e7 491 * gpg-error.h.in (GPGRT_CONFDIR_USER, GPGRT_CONFDIR_SYS): New consts. 492 (ARGPARSE_FLAG_SYS, ARGPARSE_FLAG_USER, ARGPARSE_FLAG_VERBOSE) 493 (ARGPARSE_NO_CONFFILE, ARGPARSE_CONFFILE, ARGPARSE_OPT_CONFFILE): New 494 consts. 495 (ARGPARSE_conffile, ARGPARSE_noconffile): New macros. 496 (gpgrt_set_confdir): New func. 497 (gpgrt_argparser): New func. 498 * src/argparse.c (confdir): New var. 499 (enum argparser_states): New. 500 (struct _gpgrt_argparse_internal_s): Add a couple of new fields. 501 (initialize): Init them. 502 (any_opt_conffile): New. 503 (_gpgrt_argparser): New. 504 (_gpgrt_set_confdir): New. 505 * src/visibility.c (gpgrt_argparser): New. 506 (gpgrt_set_confdir): New. 507 * src/gpg-error.def.in, src/gpg-error.vers: Add those functions. 508 * tests/t-argparse.c (main): Reworked. 509 * tests/etc/t-argparse.conf: New file. 510 * tests/t-argparse.conf: New file. 511 512 core: Add gpgrt_fnameconcat and gpgrt_absfnameconcat. 513 + commit 5742b8eaf3fa9cda3dfb6b3ad0fea7485fff1a12 514 * src/gpg-error.h.in (gpgrt_fnameconcat): New. 515 (gpgrt_absfnameconcat): New. 516 * src/visibility.c (gpgrt_fnameconcat, gpgrt_absfnameconcat): New. 517 * src/stringutils.c: New file. 518 (_gpgrt_vfnameconcat): New. 519 (_gpgrt_fnameconcat, _gpgrt_absfnameconcat): New. 520 * src/gpg-error.def.in: Add new functions. 521 * src/gpg-error.vers: Ditto. 522 * src/sysutils.c: Include pwd.h. 523 (_gpgrt_getpwdir): New. 524 * configure.ac: Test for pwd.h, getpwnam, getpwuid, and their _r 525 variants. 526 * src/Makefile.am (libgpg_error_la_SOURCES): Add new file. 527 528 * tests/t-stringutils.c: New. 529 * tests/t-common.h (xmalloc, xstrdup, xfree): New. 530 (die): Kludge to avoid compiler warnings. 531 5322020-02-18 NIIBE Yutaka <gniibe@fsij.org> 533 534 w32: Support static link with -lws2_32. 535 + commit a6ab8e3a710b899ecfb2ff518725314a1e0e64ff 536 * configure.ac (GPG_ERROR_CONFIG_LIBS_PRIVATE): New. 537 * src/Makefile.am (socklibs): Use GPG_ERROR_CONFIG_LIBS_PRIVATE. 538 * src/gpg-error.pc.in: Require @GPG_ERROR_CONFIG_LIBS_PRIVATE@. 539 5402020-02-10 Werner Koch <wk@gnupg.org> 541 542 logging: Also protect gpgrt_inc_errorcount against counter overflow. 543 + commit d72c1ddfde09ffa69745ec2439c5a16d15e2202f 544 * src/logging.c (_gpgrt_inc_errorcount): Protect against counter 545 overflow. 546 (_gpgrt_logv_internal): Use that function here so that we have only 547 one check for counter overflow. 548 5492020-02-07 Werner Koch <wk@gnupg.org> 550 551 Release 1.37. 552 + commit 36b9924b483198f896c7ca3db233978978141b60 553 554 5552020-02-06 Werner Koch <wk@gnupg.org> 556 557 tools: Allow error symbol lookup w/o the GPG_ERR_ prefix. 558 + commit 796b66a9449c442991cc205f8a618dffab54d8a3 559 * src/gpg-error.c (get_err_from_codesymbol): New. 560 (main): Use it here. 561 562 build: Always pass -no-undefined to libtool. 563 + commit 6e4b5ca624cb7f771c8dd1f12cbad851a5f0d782 564 * src/Makefile.am: Remove no_undefined macro. 565 5662020-01-23 NIIBE Yutaka <gniibe@fsij.org> 567 568 po: Update Japanese Translation. 569 + commit d1e4b4b001b3fd34b91403f880a42c4a474cdb83 570 571 5722020-01-07 NIIBE Yutaka <gniibe@fsij.org> 573 574 build: Don't use -O0 which is not portable. 575 + commit a2674207f7fef6d0f96b80838303a2e6a55e7785 576 * src/Makefile.am (mkheader): Remove -O0 option. 577 5782019-12-13 Werner Koch <wk@gnupg.org> 579 580 New error codes for SQLite. 581 + commit 308574372055662c76d27f1681b182afddce9166 582 * src/err-codes.h.in: Add GPG_ERR_SQL_ codes. 583 * src/gpg-error.h.in (gpg_err_code_from_sqlite): New. 584 5852019-09-24 NIIBE Yutaka <gniibe@fsij.org> 586 587 Fix gpg-error.c for preprocessor use. 588 + commit f73605e039493ca875f992a45730a6c99430fb14 589 * src/gpg-error.c (main): Fix conditional compilation. 590 5912019-09-18 NIIBE Yutaka <gniibe@fsij.org> 592 593 tests: Fix deallocation of buffer in t-b64.c. 594 + commit 46bb7eb8c5541d62cd90227bde205f663ef0e6d5 595 * tests/t-b64.c (test_b64dec_string): De-allocate. 596 597 gpgrt_setenv: Define behavior when value=NULL. 598 + commit 4b8e8ba9f60cb6eb644be5f86b9c19ebf4332763 599 * src/sysutils.c (_gpgrt_setenv): Avoid call with value=NULL. 600 601 logging: Fix the case of using socket_dir_cb which may return NULL. 602 + commit 521aeecf1e41e8e34bb354cf51bfd37ff7a900c6 603 * src/logging.c (fun_writer): Fix for socket_dir_cb. 604 605 estream: Care about erroneous case for stream close. 606 + commit f41991480aaa79db55e75363dfbb4f278cb8ea21 607 * src/estream.c (do_list_remove): Only access ITEM->NEXT when it's not 608 null. 609 6102019-09-10 Werner Koch <wk@gnupg.org> 611 612 core: Fix broken strings (first letter missing) 613 + commit c1e80f6e8e368c271bbf413d9eaea772ef2062d1 614 src/err-codes.h.in (GPG_ERR_KEYBOXD): Add missing tabs. 615 6162019-09-08 Werner Koch <wk@gnupg.org> 617 618 estream: Fix dead assigniment. 619 + commit f7c24427329075adc98eb93d2abb12c087e0f9d2 620 * src/estream-printf.c (pr_string): Here. 621 6222019-09-04 NIIBE Yutaka <gniibe@fsij.org> 623 624 gpgrt-config: Support Libs.private and Requires.private. 625 + commit cb877252c4dc787755fb4e1ffc36757453af12eb 626 * src/gpgrt-config.in: Support Libs.private and Requires.private. 627 6282019-08-23 NIIBE Yutaka <gniibe@fsij.org> 629 630 estream: Fix gpgrt_poll at EOF. 631 + commit 157b9f6fafb6905fd94c21aaa9e2c103d954a9fc 632 * src/estream.c [HAVE_POLL_H] (_gpgrt_poll): Catch POLLHUP event 633 for want_read. 634 635 estream: Fix gpgrt_poll to prevent waiting indefinitely for others. 636 + commit ab87480fc201ad687153429aee043ab454fed0a3 637 * src/estream.c (_gpgrt_poll): Go to leave, when something is ready. 638 6392019-08-22 NIIBE Yutaka <gniibe@fsij.org> 640 641 estream: Fix poll condition. 642 + commit fc1a7591bdcd64a3df1d2db29afca8e224f64c0a 643 * src/estream.c (_gpgrt_poll): Fix for want_oob. 644 6452019-07-25 NIIBE Yutaka <gniibe@fsij.org> 646 647 w32: Fix cast to internal fd. 648 + commit f93a0358dc82886db12c91180dc82e8bb1258ef0 649 * src/estream.c (tmpfd): Use intptr_t. 650 651 estream: Fix IS_INVALID_FD. 652 + commit 5f9f2c32b038848212bec9d9a95858c18b9a0eee 653 * src/estream.c (IS_INVALID_FD): Simply compare to -1. 654 6552019-07-24 NIIBE Yutaka <gniibe@fsij.org> 656 657 w32: Fix HANDLE to internal fd conversion. 658 + commit 655ed9d83889bbb61d4b96755a2bd676622064c8 659 * src/spawn-w32.c (handle_to_fd): Use intptr_t type. 660 6612019-07-18 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 662 663 build: Use {CFLAGS,CPPFLAGS, LDFLAGS}_FOR_BUILD for helper programs. 664 + commit 732855a483709345a5c0f49504f45cb8da3f883a 665 * doc/Makefile.am: add CPPFLAGS_FOR_BUILD for yat2m-for-build (other 666 flags were already present). 667 * src/Makefile.am: add {CFLAGS,CPPFLAGS,LDFLAGS}_FOR_BUILD for 668 mkhelper, mkw32errmap, and mkerrcodes. 669 6702019-07-11 NIIBE Yutaka <gniibe@fsij.org> 671 672 Fix signedness for a single-bit field. 673 + commit 7ffab1750fdec31d6f6f62c3ff50f1a33eacda5c 674 * src/gpgrt-int.h (struct _gpgrt_b64state): Use unsigned for bit flags. 675 6762019-06-27 Werner Koch <wk@gnupg.org> 677 678 estream: Add missing malloc check. 679 + commit 382fddc151fd42cd6d1d02dbedb7b5031cc68958 680 * src/estream.c (_gpgrt_poll): Check for malloc error. 681 6822019-06-27 NIIBE Yutaka <gniibe@fsij.org> 683 684 estream: Don't use variable length array. 685 + commit 70a5ea407c71cf094794d3d3375aab7fc2c4eca6 686 * src/estream.c [HAVE_POLL_H] (_gpgrt_poll): No VLA. 687 6882019-06-26 NIIBE Yutaka <gniibe@fsij.org> 689 690 estream: Use poll(2) when available. 691 + commit a21a7de8c2cf986235382e7e04805744f6df116e 692 * configure.ac: Detect poll.h. 693 * src/estream.c [HAVE_POLL_H] (_gpgrt_poll): Use poll. 694 6952019-06-18 NIIBE Yutaka <gniibe@fsij.org> 696 697 tests: Skip the test when pkg-config is too old. 698 + commit 6c2fc52d72b4dbd9dac44d9c3105dc3e8a4d5605 699 * src/gpg-error-config-test.sh.in: Check pkg-config version. 700 701 build: Take care of POSIX shell path. 702 + commit 7a7caf4ba1c460c9c36f754fcd0ebfeb4aa5cc6a 703 * configure.ac (INSTALLSHELLPATH): New. 704 * src/Makefile.am: Change invocation of gpg-error-config-test.sh. 705 * src/gpgrt-config.in (INSTALLSHELLPATH): To be substituted. 706 * src/gpg-error-config-test.sh.in: Likewise. 707 708 Portability fix for PID. 709 + commit 10ae655db22321f0d6efb75f88e169b57ce63375 710 * src/spawn-posix.c (gpgrt_wait_processes): Cast to int. 711 712 build: Add failure exit for gpg-error-config build. 713 + commit 849ac6abe3ce0001fb11cef0e26df0893468d238 714 * src/Makefile.am (gpg-error-config): Exit 1 on failure. 715 7162019-05-29 NIIBE Yutaka <gniibe@fsij.org> 717 718 Detect to use strerror_s. 719 + commit cd49ee71887cb2e7f2ca422fbc5c28f4bd92b3ca 720 * configure.ac [mingw32*] (strerror_s): Detect. 721 * src/strerror.c [HAVE_STRERROR_S] (system_strerror_r): Use strerror_s. 722 7232019-05-14 NIIBE Yutaka <gniibe@fsij.org> 724 725 tests: Fix a memory leak. 726 + commit bdb9561a366fa5afee0e855a22390e9282e1abd5 727 * tests/t-logging.c (check_log_info): Free LOGBUF. 728 7292019-05-13 NIIBE Yutaka <gniibe@fsij.org> 730 731 build: Update m4/iconv.m4. 732 + commit 07b1b3be179883cbd38446f38ae950f6d94a150b 733 * m4/iconv.m4: Update from gettext 0.20.1. 734 7352019-04-15 NIIBE Yutaka <gniibe@fsij.org> 736 737 awk: Prepare for Gawk 5.0. 738 + commit 7865041c77f4f7005282f10f9b6666b19072fbdf 739 * src/Makefile.am: Use pkg_namespace (instead of namespace). 740 * src/mkerrnos.awk: Likewise. 741 * lang/cl/mkerrcodes.awk: Don't escape # in regexp. 742 * src/mkerrcodes.awk, src/mkerrcodes1.awk, src/mkerrcodes2.awk: Ditto. 743 7442019-03-19 Werner Koch <wk@gnupg.org> 745 746 Release 1.36. 747 + commit 85f427fd28ae5947277ba02dffc83c53d9da2591 748 * configure.ac: Bump LT version to C27/A27/R0. 749 750 estream: Increase buffer size for Windows. 751 + commit e4f460d8e338d6866a6ab457dcd811c63399706a 752 * src/gpgrt-int.h (BUFFER_BLOCK_SIZE) [W32]: Increase from 512 to 8k. 753 * src/w32-estream.c (READBUF_SIZE, WRITEBUF_SIZE): Increase from 4k to 754 8k. 755 7562019-02-04 Werner Koch <wk@gnupg.org> 757 758 build: Fix for Microsoft MSVC. 759 + commit 21dd885eecdee13da1689519e2fc50fcf64f6ef2 760 * src/gpgrt-int.h (_gpgrt_functions_w32_pollable): Declare with extern 761 so that strict toolchains don't get confused. 762 7632019-01-23 NIIBE Yutaka <gniibe@fsij.org> 764 765 gpgscm: Build well even if NDEBUG defined. 766 + commit 8a9397896fd202dcfb3fb46259e43bc05a0ddd2e 767 * gpgscm/scheme.c (gc_reservation_failure): Fix adding ";". 768 [!NDEBUG] (scheme_init_custom_alloc): Don't init seserved_lineno. 769 7702019-01-16 Werner Koch <wk@gnupg.org> 771 772 Release 1.34. 773 + commit 8bc75741cadf95e2fac64891cf402cde891afe64 774 * configure.ac: Bump LT version to C26/A26/R0. 775 776 build: Fix regression in make distcheck. 777 + commit 5d2b20a04b526d090a2328bd79bc3a76ced327dc 778 * doc/Makefile.am (errorref.txt.x): 779 7802019-01-15 NIIBE Yutaka <gniibe@fsij.org> 781 782 build: Fix for BSD make. 783 + commit fd6f64f1897e00b1d9711463ebb6ec7d099e1995 784 * doc/Makefile.am (errorref.txt.x): Don't use $<. 785 7862019-01-14 Andre Heinecke <aheinecke@gnupg.org> 787 788 Fix symbol name typo in gpg-error.def.in. 789 + commit 51ea153871b79799f88b85f6b60c2b0a3bbd6a12 790 * src/gpg-error.def.in (gogrt_abort): Correct to gpgrt_abort. 791 7922019-01-10 NIIBE Yutaka <gniibe@fsij.org> 793 794 build: Build with LD_LIBRARY_PATH, use of DT_RPATH (2/2). 795 + commit 1fd997231b717853822dff9d3e981d95765f323d 796 * configure.ac (LDADD_FOR_TESTS_KLUDGE): New for --disable-new-dtags. 797 * tests/Makefile.am (LDADD): Use LDADD_FOR_TESTS_KLUDGE. 798 (t_lock_LDADD, t_poll_LDADD): Use LDADD. 799 800 build: Build with LD_LIBRARY_PATH, use of DT_RPATH (1/2). 801 + commit 1044ee639dab7260da481250cd2a46a69ab2b5d3 802 * configure.ac: Check against --disable-new-dtags. 803 8042019-01-04 Werner Koch <wk@gnupg.org> 805 806 core: New functions gpgrt_abort and gpgrt_add_emergency_cleanup. 807 + commit 933bfd7b652a907c0d8dd5337c6b5b9cb82ce7b7 808 * src/init.c (emergency_cleanup_list): New gloabl var. 809 (_gpgrt_add_emergency_cleanup): New. 810 (_gpgrt_abort): New. Repalce all calls to abort by this. Also replace 811 all assert by either log_assert or a stderr output followed by a 812 _gpgrt_abort. 813 (run_emergency_cleanup): New. 814 * src/visibility.c (gpgrt_add_emergency_cleanup): New public API. 815 (gpgrt_abort): New public API. 816 8172018-12-12 Werner Koch <wk@gnupg.org> 818 819 estream: Use correct POSIX name THOUSEP. 820 + commit 12349de46d241cfbadbdf99773d6cabfcbc97578 821 * src/estream-printf.c: Replace HAVE_LANGINFO_THOUSANDS_SEP by 822 HAVE_LANGINFO_THOUSEP. 823 (pr_integer): Use THOUSEP. 824 8252018-12-11 Alistair Francis <Alistair.Francis@wdc.com> 826 827 syscfg: Add a riscv32 architecture. 828 + commit 27ded21fea2a6f1fc161a91744014cce711ad1b3 829 * src/syscfg/lock-obj-pub.riscv32-unknown-linux-gnu.h: New. 830 * src/Makefile.am (lock_obj_pub): Add it. 831 8322018-12-10 NIIBE Yutaka <gniibe@fsij.org> 833 834 gpgrt-config: Portability fix for use of expr. 835 + commit 1d71dbb13709318567aba5b61928d8af37563097 836 * src/gpgrt-config (sysroot): Care about possible interpretation of 837 minus sign be considered an option to a program. 838 (MAIN): Don't use 'match' of expr but use ':' instead. 839 8402018-12-07 Werner Koch <wk@gnupg.org> 841 842 Silence cc warning about snprintf redefinition. 843 + commit 60f3d4440249d7beec3390df66143204ea80be39 844 * src/gpgrt-int.h: First undef snprintf. 845 846 Release 1.33. 847 + commit 174985d91ff277bd4a58a0de3d61fbbb46841cde 848 * configure.ac: Set LT version to C25/A25/R0. 849 850 Add W32-only function gpgrt_w32_override_locale. 851 + commit 0b190ce89de7b3df873c3896d5126c7882b82e18 852 * src/w32-gettext.c (struct override_locale): new. 853 (my_nl_locale_name): Take care of that. 854 (gpgrt_w32_override_locale): New. 855 * src/gpg-error.def.in: Add gpgrt_w32_override_locale. 856 * src/gpg-error.c: New command --locale for Windows. 857 8582018-12-06 Werner Koch <wk@gnupg.org> 859 860 logging: Escape controls in string arguments of log_ functions. 861 + commit b7fae45c24cccb9898c6d5a3a633897afb4649dc 862 * src/logging.c (struct fmt_string_filter_s): New. 863 (fmt_string_filter): New. 864 (_gpgrt_logv_internal): Use the filter. 865 8662018-12-05 Werner Koch <wk@gnupg.org> 867 868 core: Allow logging to an estream. 869 + commit f4d139b399e1e5044fe6bb0ceecd4c72e63dac94 870 * src/logging.c (set_file_fd): Add and use new arg 'stream'. 871 (_gpgrt_log_set_sink): Implement setting an estream sink. 872 * tests/t-logging.c: New test. 873 * tests/Makefile.am (TESTS): Add test. 874 875 tests: Check print arguments of t-common functions. 876 + commit 793838fd859afd837df070ee2e75c100e932b220 877 * tests/t-common.h: Include gpgrt.h instead of gpg-error.h. 878 (die, fail, show): Add printf attributes. 879 8802018-12-05 Marcus Brinkmann <marcus.brinkmann@rub.de> 881 882 Fix gpgrt_ftruncate declaration. 883 + commit 34d6637a34b139fbfafa6c15eaf2fc88158a1c3c 884 885 8862018-11-26 Werner Koch <wk@gnupg.org> 887 888 core: New functions gpgrt_fprintf_sf anf gpgrt_fprintf_sf_unlocked. 889 + commit bd8668c120ac0f725edb092b2c4ca49ffdb78ed2 890 * src/gpg-error.h.in (gpgrt_string_filter_t): New type. 891 (gpgrt_fprintf_sf, gpgrt_fprintf_sf_unlocked): New. 892 * src/gpg-error.vers, src/gpg-error.def.in: Add them. 893 * src/visibility.c (gpgrt_fprintf_sf): New. 894 (gpgrt_fprintf_sf_unlocked): New. 895 * src/estream-printf.c (pr_string): Add and use args sf, sfvalue and 896 string_no. 897 (do_format): Add args sf and sfvalue. Keep a string format counter. 898 (_gpgrt_estream_format): Add args sf and sfvalue. Change all callers 899 to provide NULL for them. 900 * src/estream.c (_gpgrt_vfprintf_unlocked, _gpgrt_vfprintf): Add sf 901 and sfvalue and adjust all callers. 902 (do_print_stream): Ditto. 903 904 * tests/t-printf.c (stream_to_string): New. 905 (struct sfstate_s): New. 906 (string_filter): New. 907 (check_fprintf_sf): New. 908 (main): Call new test. 909 910 core: Add a limited version of gpgrt_ftruncate. 911 + commit ffb49b72f132d954a3d9fa11e45803c36a62fd25 912 * src/gpg-error.h.in (gpgrt_ftruncate, es_ftruncate): New. 913 * src/gpg-error.def.in, src/gpg-error.vers: Add gpgrt_ftruncate. 914 * src/visibility.c (gpgrt_ftruncate): new. 915 * src/gpgrt-int.h (COOKIE_IOCTL_TRUNCATE): New. 916 * src/estream.c (func_mem_ioctl): Support new internal IOCTL. 917 (_gpgrt_ftruncate): New. 918 9192018-11-15 Werner Koch <wk@gnupg.org> 920 921 core: New API gpgrt_cmp_version. 922 + commit a5d4a4b32b11814d673241d62624ecec1d577571 923 * src/gpg-error.h.in: New API gpgrt_cmp_version. 924 * src/visibility.c (gpgrt_cmp_version): New wrapper. 925 * src/version.c (parse_version_string): Revamped. 926 (do_cmp_version): New. 927 (_gpgrt_cmp_version): New. 928 (_gpg_error_check_version): Re-implemented using the new func. 929 * tests/t-version.c: Include t-common.h. 930 (t_gpgrt_cmp_version): New test. 931 (main): Run new test. Change test for new version number to require a 932 2 level number. 933 9342018-11-14 NIIBE Yutaka <gniibe@fsij.org> 935 936 gpgrt-config: Prepend PKG_CONFIG_LIBDIR to PKG_CONFIG_PATH. 937 + commit 4a92763a6e529824f1c6043b75ac1346af41a926 938 * src/gpgrt-config: Handle empty PKG_CONFIG_LIBDIR config, which 939 should ignore --libdir option. Otherwise, prepend 940 PKG_CONFIG_LIBDIR (instead of appending) to PKG_CONFIG_PATH. 941 9422018-11-13 NIIBE Yutaka <gniibe@fsij.org> 943 944 Fix typo in the annotation. 945 + commit 4b41cf3bd16c8afcb4ba152ab9d5d679a7cb91e7 946 * src/init.c [DLL_EXPORT] (DllMain): Fix typo. 947 948 gpgrt.m4: Don't support --with-*-prefix or SYSROOT. 949 + commit 8ed48537de2b141a8f2050b15a65775374f1aa79 950 * src/gpgrt.m4: Remove old backward compatible support. 951 9522018-11-07 NIIBE Yutaka <gniibe@fsij.org> 953 954 Fix a typo. 955 + commit b39b44b9acbed6d4889acba4fe9eae2556c80acc 956 * src/spawn-w32.c (src/spawn-w32.c): Fix to use pid_to_handle. 957 9582018-11-02 NIIBE Yutaka <gniibe@fsij.org> 959 960 gpgrt-config: Don't support variable reference in --libdir option. 961 + commit 78af09ce13969b64f121ae5990e66fb7f1cd3f1d 962 * src/gpgrt-config: Simplify --libdir support, remove variable 963 substituion. 964 * src/gpg-error.m4: Expand possible ${prefix}, ${exec_prefix} in 965 libdir. Simplify invocation of gpgrt-config. 966 * src/gpgrt.m4: Likewise. 967 968 gpg-error.m4: Emit message when using gpgrt-config. 969 + commit 42413de59a063def05620d899a7fbda265b6c406 970 * src/gpg-error.m4: Add AC_MSG_NOTICE. 971 972 gpg-error.m4: Find gpgrt_libdir by CC. 973 + commit 7ffd88b0e98af21aa61a57dde042d75f0d403839 974 * src/gpg-error.m4 (gpgrt_libdir): New. Bump the version date. 975 * src/gpgrt.m4: Likewise. 976 9772018-11-01 NIIBE Yutaka <gniibe@fsij.org> 978 979 gpg-error.m4: Unset GPGRT_CONFIG when gpgrt-config doesn't work. 980 + commit 8f034bb3a1bbde2fc7a8d2ada6e3d779c465895b 981 * src/gpg-error.m4: Unset GPGRT_CONFIG when gpgrt-config doesn't work. 982 983 gpgrt-config: It's distributed script. 984 + commit 998313bd321ae161ec58111ccc6c6f0921007bc5 985 * src/Makefile.am (dist_bin_SCRIPTS): Add gpgrt-config. 986 (bin_SCRIPTS): Remove gpgrt-config. 987 9882018-10-31 Andre Heinecke <aheinecke@intevation.de> 989 990 w32: Remove cruft in w32-estream from olden times. 991 + commit 5b898b8bc89c18e2fd02e6c9efd5e91cb96357cc 992 * src/w32-io.c (set_synchronize): Remove. 993 (create_reader, create_writer): No need for set_synchronize. 994 9952018-10-31 NIIBE Yutaka <gniibe@fsij.org> 996 997 gpgrt-config: Fix typo in the script. 998 + commit 2e9ee747ac81434ca542291287eb56c9025f0a39 999 * src/gpgrt-config: Add missing $ for libdir_option. 1000 10012018-10-29 NIIBE Yutaka <gniibe@fsij.org> 1002 1003 gpgrt-config: Better architecture independent support. 1004 + commit 93d45f7e7e937020c796781705516a4b62e6589a 1005 * configure.ac: Don't generate gpgrt-config. 1006 * src/gpgrt-config: Rename from gpgrt-config.in. 1007 (--prefix, --exec-prefix, --libdir): Use --libdir to determine 1008 PKG_CONFIG_LIBDIR. 1009 * src/Makefile.am (EXTRA_DIST): Remove gpgrt-config.in. 1010 * src/gpg-error-config-test.sh: Fix for path to gpgrt-config. 1011 * src/gpg-error.m4: Provide --prefix, --exec-prefix, --libdir 1012 option from configure. Don't use CC because we have --libdir. 1013 Bump version date. 1014 * src/gpgrt.m4: Likewise. 1015 10162018-10-27 Ben Kibbey <bjk@luxsci.net> 1017 1018 b64dec: Fix to use custom memory handlers. 1019 + commit b229ed40e2653bd3eabaa6931cd8582280a226d7 1020 * src/b64dec.c (_gpgrt_b64dec_finish): Use xfree(). 1021 10222018-10-26 NIIBE Yutaka <gniibe@fsij.org> 1023 1024 gpgrt-config: Clean up the implementation. 1025 + commit aec676c9ca2da4feb2970f6ce036179afe778b25 1026 * src/gpgrt-config.in: Fix copyright notice. 1027 (--exists): Support new option of pkg-config. 1028 (--mt): Relax usage. 1029 (--api-version): Support old option. 1030 (default_module): New. 1031 (usage): Only show pkg-config compatible options. 1032 1033 gpg-error.m4: Better backward compatibility support. 1034 + commit 1096ff770b3d5cc58f423b129cc5d83731398dd9 1035 * src/gpg-error.m4: Don't assume newer implementation of 1036 gpg-error-config. Use old way when it found old. 1037 10382018-10-25 NIIBE Yutaka <gniibe@fsij.org> 1039 1040 gpg-error-config: Keep old gpg-error-config implementation. 1041 + commit ffbff048bde636e3ec19f2912fa4034e70e18f44 1042 * configure.ac: Generate gpgrt-config from gpgrt-config.in. 1043 * src/gpgrt-config.in: Rename from src/gpg-error-config-new.in. 1044 * src/Makefile.am (bin_SCRIPTS): Add gpgrt-config. 1045 (EXTRA_DIST): Add gpgrt-config.in removing gpg-error-config-new.in. 1046 (BUILT_SOURCES, CLEANFILES): Remove gpgrt-config. 1047 (gpg-error-config): Always copy from gpg-error-config-old. 1048 * src/gpg-error-config-test.sh: Follow the rename. 1049 1050 build: Set GPGRT_CONFIG in gpg-error.m4. 1051 + commit e06af32bdde0b4ce8c97193472961f31c5b55ddf 1052 * src/gpg-error.m4: Detect gpgrt-config to set GPGRT_CONFIG. 1053 1054 build: Update gpg-error.m4 and gpgrt.m4. 1055 + commit abc641f27cf712dec572b6629552b6a6f0b7af27 1056 * src/gpg-error.m4: Bump version date. 1057 (min_gpg_error_version): Require >= 1.33, if not specified. 1058 (gpg_error_config_args): Remove bogus uses. 1059 * src/gpgrt.m4: Bump version date. 1060 (libgpgrt-prefix): Add support of --with-libgpgrt-prefix option. 1061 (gpgrt-config): Search/call gpgrt-config instead of gpg-error-config. 1062 (min_gpgrt_version): Require >= 1.33, if not specified. 1063 (gpgrt_config_args): Remove bogus uses. 1064 10652018-10-24 NIIBE Yutaka <gniibe@fsij.org> 1066 1067 gpg-error-config: Fix previous commit. 1068 + commit 184c22bea37d2bee3885ef96c1a3664361b02912 1069 1070 1071 gpg-error-config: Old gpg-error-config support --modversion. 1072 + commit 6d8b1e958ca96b366daac38e7084f999d252a9f8 1073 * src/gpg-error-config.in: Support --modversion. 1074 1075 gpg-error-config: Get var/attr from the first package. 1076 + commit 7b81ec272b0c54ac893c09be4715b76e84c27b23 1077 * src/gpg-error-config-new.in: Only get it from the first. 1078 10792018-10-23 NIIBE Yutaka <gniibe@fsij.org> 1080 1081 build: Fix permission. 1082 + commit 25ea85066cf100e3381f7f7b2d8858a7dfcea480 1083 * build-aux/config.guess: Chmod +x. 1084 * build-aux/config.sub: Chmod +x. 1085 1086 build: Fix detecting build on multiarch environment. 1087 + commit 00e955558c66f80acad9225d2eae82459d87dc54 1088 * configure.ac: Rough match by shell pattern. 1089 1090 build: Supply CC to invoke gpg-error-config. 1091 + commit f575b2fd3f733d78fb61b04805ea63ce65d89e19 1092 * src/gpg-error.m4: Add CC when invoking gpg-error-config. 1093 * src/gpgrt.m4: Likewise. 1094 1095 gpg-error-config: Fix cross build support. 1096 + commit 40e22c774afebca23fdaa6dec2b8698572501c32 1097 * configure.ac: Fix regexp matching multiarch environment. 1098 * src/gpg-error-config-new.in: Support standard cross build. 1099 Handle the case where $multiarch != $triplet. 1100 11012018-10-22 NIIBE Yutaka <gniibe@fsij.org> 1102 1103 yat2m: Avoid compiler warnings. 1104 + commit 12b834ba59ae2f3cd0568e4cfa1dca47fc41269a 1105 * doc/yat2m.c (isodatestring): Prepare enough buffer. 1106 1107 gpg-error-config: Support "auto", architecture independent script. 1108 + commit 91bcb2c7d824de50c7dfedd4490e515ddb5dfc5a 1109 * configure.ac (pkg_config_libdir): Set it "auto" when it looks 1110 multiarch environment. 1111 * src/gpg-error-config-new.in: Automatically detects the triplet. 1112 1113 build: Update config.{guess,sub} to {2018-08-29,2018-08-29}. 1114 + commit 6d2e0546d50a0d4511fb7167566bfd0058a68f38 1115 * build-aux/config.guess: Update. 1116 * build-aux/config.sub: Update. 1117 11182018-10-19 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 1119 1120 build-aux: use https instead of http. 1121 + commit e99480affa595702595e59333aca96ab28389d34 1122 1123 11242018-10-17 NIIBE Yutaka <gniibe@fsij.org> 1125 1126 gpg-error-config: Fix PKG_CONFIG_LIBDIR support. 1127 + commit d8cf57c35d4627fa28588d6ec385fcffbc5a01a0 1128 * configure.ac (pkg_config_libdir): New. 1129 * src/gpg-error-config-new.in: Use pkg_config_libdir. 1130 11312018-10-16 NIIBE Yutaka <gniibe@fsij.org> 1132 1133 gpg-error-config: Support PKG_CONFIG_LIBDIR. 1134 + commit e9566da20cf9428e3094cbd63277ea2179459232 1135 * src/gpg-error-config-new.in: Use PKG_CONFIG_LIBDIR if specified. 1136 11372018-10-12 Wookey <wookey@debian.org> 1138 Wookey <wookey@debian.org> 1139 1140 syscfg: Add support for arm64ilp32. 1141 + commit a3f4e8838036a14e87cca811e40c9f670f152fcd 1142 * src/syscfg/lock-obj-pub.aarch64-unknown-linux-gnu_ilp32.h: New. 1143 * src/Makefile.am (lock_obj_pub): Add it. 1144 11452018-10-10 NIIBE Yutaka <gniibe@fsij.org> 1146 1147 gpg-error-config: Fix the place of *.pc (for multilib). 1148 + commit 9f71b28dcb38e1d5d9001692e2f64009396aaf9b 1149 * src/Makefile.am (pkgconfigdir): It should be under libdir. 1150 * src/gpg-error-config-new.in: Likewise. 1151 1152 gpg-error-config: Add PKG_CONFIG_SYSROOT_DIR support. 1153 + commit 6167f3c461a4e53ccc5af620cdbfa28bfa9234f5 1154 * src/gpg-error-config-new.in (sysroot): New function. 1155 (want_cflags, want_libs): Use sysroot. 1156 * src/gpg-error-config-test.sh: Test with PKG_CONFIG_SYSROOT_DIR. 1157 11582018-09-21 Werner Koch <wk@gnupg.org> 1159 1160 syscfg: Add support for arc-unknown-linux-gnu. 1161 + commit f4f0da74f526d7e35cedbc2e93454df6440dbfa5 1162 * src/mkheader.c (canon_host_triplet): Add to table. 1163 1164 core: Make cross building in mkheader more explicit. 1165 + commit b371e3ca906e6a4db31900d419ddc2b21bed1ea3 1166 * src/mkheader.c (main): Add option --cross. 1167 (write_special): Don't use native in cross mode. 1168 * src/Makefile.am (mkheader_opts): New. 1169 (gpg-error.h): Add MKHEADER_OPTS. 1170 1171 core: Simplify calling convention of mkheader. 1172 + commit 3fc4ce49b23a364a1cf255c8e9e259047206e1e8 1173 * src/Makefile.am (gpg-error.h): Remove HOST_OS from mkheader call. 1174 * src/mkheader.c (canon_host_triplet): Add return arg r_os. 1175 (main): Remove first arg and derive host_os from host_triplet. 1176 11772018-09-20 NIIBE Yutaka <gniibe@fsij.org> 1178 1179 src: Fix portability for echo. 1180 + commit 15309d0fb4c78f8de9bc5dea7d0f8b7468a957b4 1181 * src/Makefile.am: Use ECHO_N and ECHO_C. 1182 1183 gpg-error-config: Remove white space for the output by old. 1184 + commit d510f38ccbc715faa8e07828bf6acd8e9b9a0658 1185 * src/gpg-error-config-test.sh: Remove white spaces at the 1186 end or at the beginning. 1187 1188 gpg-error-config: Use expr to remove var in expression. 1189 + commit a338801aa4bac9a3551729598bcb0ca41882cdb9 1190 * src/gpg-error-config-new.in (remove_var_expr): Use expr. 1191 1192 gpg-error-config: Fix a variable name for zsh. 1193 + commit 4c2601a95f06efd352ad407add71a7ea6bab8152 1194 * src/gpg-error-config-new.in (module_list): Rename from modules. 1195 1196 gpg-error-config: Don't use local variables. 1197 + commit 5731ad6377abcd3d36fd6aa59923a640b25b589b 1198 * src/gpg-error-config-new.in: Use global variables only. 1199 1200 gpg-error-config: Avoid more space char. 1201 + commit 95ab4d037ce2b69754c0542949bf7d9d2467d96b 1202 * src/gpg-error-config-new.in: Don't put more space. 1203 12042018-09-19 NIIBE Yutaka <gniibe@fsij.org> 1205 1206 src: Fix Makefile for BSD make. 1207 + commit 144f4b3df5200ce056f00e20420cde77eb1f673d 1208 * src/Makefile.am (BUILT_SOURCES): Add srcdir to err-sources.h and 1209 err-codes.h. 1210 (CLEANFILES): Move err-sources.h and err-codes.h to... 1211 (MAINTAINERCLEANFILES): ... this new target. 1212 (gpg_error_LDADD): Remove ./ to generate libgpg-error.la. 1213 1214 Accept pkgconf difference for spaces. 1215 + commit 5564efac95e9546af948fc13c90584264b322950 1216 * src/gpg-error-config-test.sh (OUTPUT_OLD): Use shell 1217 and echo to remove spaces. 1218 12192018-09-18 Werner Koch <wk@gnupg.org> 1220 1221 syscfg: Support ARC CPUs and simplify aliasing table. 1222 + commit 48c8f8ddfc80551db7615e1eb3555c1dc3f6a657 1223 * src/mkheader.c (xmalloc): New. 1224 (xstrdup): Implement using xmalloc. 1225 (canon_host_triplet): Add supporr for arc CPU. Adjust alias table to 1226 also alias *-pc-*. Rename ibm to unknown. Add internal arg. Add 1227 unknown vendor hack. 1228 (main): New mode to just print the canonicalized form. 1229 * src/Makefile.am (lock_obj_pub): s/-(pc|ibm)-/-unknown/. Also rename 1230 files accordingly. 1231 12322018-09-11 NIIBE Yutaka <gniibe@fsij.org> 1233 1234 Make gpg-error-config compatible to pkg-config. 1235 + commit 78b679a778ddf37b8952f1808fd8c52cc8163f17 1236 * configure.ac (AC_CONFIG_FILES): Generate src/gpg-error.pc, as well 1237 as src/gpg-error-config-old and src/gpg-error-config-new. 1238 * src/Makefile.am (pkgconfigdir, pkgconfig_DATA): New. 1239 (EXTRA_DIST): Add gpg-error-config-new.in, gpg-error-config-test.sh, 1240 and gpg-error.pc.in. 1241 (CLEANFILES): Add gpg-error-config gpg-error-config-test.log. 1242 (TESTS): New. 1243 (gpg-error-config): New target. 1244 * src/gpg-error-config-new.in: New. 1245 * src/gpg-error-config-test.sh: New. 1246 * src/gpg-error.pc.in: New. 1247 * src/gpg-error.m4 (GPG_ERROR_MT_CFLAGS): Use --variable. 1248 (GPG_ERROR_MT_LIBS, gpg_error_config_host): Likewise. 1249 12502018-09-06 NIIBE Yutaka <gniibe@fsij.org> 1251 1252 gpgscm: Suppress warnings for GCC > 6. 1253 + commit b2aba1bec151d6e6cbf66359a30ba2ff458fc138 1254 * tests/gpgscm/scheme.c (CASE): Use unused attribute for GCC > 6. 1255 (FALLTHROUGH): New for fallthrough. 1256 (Eval_Cycle): Use FALLTHROUGH. Remove not-needed comment of 1257 fallthrough. 1258 1259 po: Fix the previous commit. 1260 + commit 2148e19fbefa9c5d5cdc4982cd2043136c31fb64 1261 1262 12632018-09-05 NIIBE Yutaka <gniibe@fsij.org> 1264 1265 po: Update Japanese Translation. 1266 + commit cb0113f4690ed130c55ef4c6d8699ebc051e957e 1267 1268 1269 gpg-error-config: Forward compatibility support. 1270 + commit 61d78fdc25e5ff9289697c141457d8d322232250 1271 * src/gpg-error-config.in: Support --variable=* option. 1272 12732018-09-04 NIIBE Yutaka <gniibe@fsij.org> 1274 1275 gpg-error-config: Determine output at configure time. 1276 + commit aa697dae4c363b3d24ec9be3a0cd41df3bf806ce 1277 * src/gpg-error-config.in (isubdirafter): Remove. 1278 Also for --cflags and --libs. 1279 * configure.ac (GPG_ERROR_CONFIG_ISUBDIRAFTER): Remove. 1280 (GPG_ERROR_CONFIG_CFLAGS): Add -idirafter gpg-extra for W32CE. 1281 (GPG_ERROR_CONFIG_CFLAGS): Decide here if adding -I$includedir. 1282 (GPG_ERROR_CONFIG_LIBS): Decide here if adding -L$libdir. 1283 12842018-07-17 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> 1285 1286 build: use EXEEXT_FOR_BUILD everywhere. 1287 + commit 19f9902b004cb980de4da908fa571103bfe2b630 1288 * src/Makefile.am: Use EXEEXT_FOR_BUILD with all build tools. 1289 1290 <michael.haubenwallner@ssi-schaefer.com> 1291 12922018-07-12 Werner Koch <wk@gnupg.org> 1293 1294 Release 1.32. 1295 + commit 7b08307ff25b757ed2502cb2bf7893640e404ad1 1296 1297 1298 estream: Always propagate flush event to cookie functions. 1299 + commit bd5bcd2dd19ef0b1c3d33a3a388b537ba08a4eb6 1300 * src/estream.c (flush_stream): Always call cookie's flush func. 1301 13022018-07-11 NIIBE Yutaka <gniibe@fsij.org> 1303 1304 build: Use AX_CC_FOR_BUILD and EXEEXT. 1305 + commit 0727c394562237d7e626849eae04790264e56208 1306 * configure.ac (AX_CC_FOR_BUILD): New. 1307 * doc/Makefile.am: Use EXEEXT and EXEEXT_FOR_BUILD. 1308 * m4/ac_prog_cc_for_build.m4: Remove. 1309 * m4/ax_cc_for_build.m4: New. 1310 1311 doc: Now, yat2m is a standard tool. 1312 + commit f1162767e3552d05c1255497d49de15c2d94d0b4 1313 * configure.ac (YAT2M, HAVE_YAT2M): Remove. 1314 * doc/Makefile.am: Always use yat2m which comes with this source. 1315 13162018-07-10 NIIBE Yutaka <gniibe@fsij.org> 1317 1318 build: Remove version_parts in autogen.sh. 1319 + commit 302d43a130e2364ea882474088a8b0a31bc325b9 1320 * autogen.rc (version_parts): Remove. 1321 * autogen.sh: Determine by $micro argument. 1322 13232018-07-05 Werner Koch <wk@gnupg.org> 1324 1325 Remove leftover debug output from gpg-error. 1326 + commit 1ac63f630cbe1b558ebe20b746bbe4962117d36f 1327 * src/gpg-error.c (main): Remove a log_debug. 1328 13292018-07-05 Yuri Chornoivan <yurchor@ukr.net> 1330 1331 po: Update Ukrainian translation. 1332 + commit 8a72604dc44d36790669e6e591c12cc0b6e057bd 1333 1334 13352018-07-05 Andre Heinecke <aheinecke@intevation.de> 1336 1337 core: Initialize values in estream_format. 1338 + commit fe2f8fca3114e3a5727fdbbc5e7ebc4e442d0401 1339 * src/estream-printf.c (_gpgrt_estream_format): Make sure 1340 valuetable.value is inialized even on stack. 1341 13422018-05-30 Ineiev <ineiev@gnu.org> 1343 1344 po: Update Russian translation. 1345 + commit 043a91b8cd4bb71cb96086b51d6bc1b1a1821a41 1346 1347 13482018-05-30 Werner Koch <wk@gnupg.org> 1349 1350 core: Fix problem with C11 and stdnoreturn.h. 1351 + commit 3eee9efc46f983fe0bf474c814944fef93a2a1b7 1352 * src/gpg-error.h.in (GPGRT_ATTR_NORETURN): Use gcc specific symbol name 1353 __noreturn__. 1354 13552018-05-03 Andre Heinecke <aheinecke@intevation.de> 1356 1357 doc: Fix yat2m name for native w32 build. 1358 + commit 6eb80abcde5ad776379069871e4156b28ef69712 1359 * doc/Makefile.am: Handle not cross compiling but building for 1360 windows. 1361 13622018-05-02 Werner Koch <wk@gnupg.org> 1363 1364 Release 1.31. 1365 + commit 10a984d25048a09d1c489224bae866372e8066a1 1366 * configure.ac: Set LT version to C24/A24/R2. 1367 13682018-05-01 Werner Koch <wk@gnupg.org> 1369 1370 core,w32: Avoid recursive use of npth_unprotect. 1371 + commit b26a227173e8e9b91be14f06ee781c6e214e50ff 1372 * src/w32-estream.c (reader): Use standard free. 1373 (writer): Ditto. 1374 13752018-05-01 emma peel <emma.peel@riseup.net> 1376 1377 po: new Spanish translation. 1378 + commit 7e2517a29619c35257b38aa137b6772e471d7e4e 1379 1380 13812018-04-30 Werner Koch <wk@gnupg.org> 1382 1383 Release 1.30. 1384 + commit cac048bf8454ade95a905f9d3840b1ec284fce20 1385 * configure.ac: Bump LT version to C24/A/24/R1. 1386 1387 build: More release creation automation. 1388 + commit d1d4c4f8eb9830bfb671054e1558342106ba9d8d 1389 * Makefile.am: Add release and sign-release targets. 1390 1391 core: Fix gpgrt_poll for Windows under nPth. 1392 + commit 4f45f3e0bb404b4a9787cb55ca154c6f60c1437b 1393 * src/estream.c (_gpgrt_poll) [W32]: Use syscall clamp. 1394 13952018-04-13 NIIBE Yutaka <gniibe@fsij.org> 1396 1397 doc: Fix yat2m build for cross compilation. 1398 + commit 792877a08ca7bc9d1377161dc9af374602a394cc 1399 * doc/Makefile.am: Fix target of yat2m-for-build. 1400 14012018-04-12 NIIBE Yutaka <gniibe@fsij.org> 1402 1403 build: Check -lsocket -lnsl for Solaris. 1404 + commit e35749023ca68de6f1f85d3072f7b36fd6f6fe7c 1405 * configure.ac: Check inet_addr for -lnsl, and socket for -lsocket. 1406 14072018-04-11 Damien Goutte-Gattat via Gnupg-devel <gnupg-devel@gnupg.org> 1408 1409 build: Make sure version.texi is generated in time. 1410 + commit 8ef76d9373db16f1ca176f9c87c8dac2758c8b85 1411 [[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]] 1412 [1. text/plain] 1413 1414 * doc/Makefile.am (yat2m-stamp): Depend on version.texi. 1415 14162018-04-11 Werner Koch <wk@gnupg.org> 1417 1418 Release 1.29. 1419 + commit c3825327da826e434ada9abde34e6bbd7ef61737 1420 * configure.ac: Bump LT version to C24/A24/R0. 1421 1422 core: Finalize the API for argparse. 1423 + commit e901c9fb04f5a96ba2bd49225b396ce7857a3782 1424 * src/gpg-error.h.in (ARGPARSE_end): Simplify. 1425 * src/argparse.c (_gpgrt_argparse_internal_s): Add field opts. 1426 (deinitialize): Release new field. 1427 (initialize): Add arg opts and create a copy of the option list. Add 1428 the internal options. 1429 (_gpgrt_argparse): Rename arg opts to opts_orig and set new local var 1430 opts. Adjust all references to opts. 1431 (find_long_option): Adjust for chnaged type of OPTS. Re-indent. 1432 (arg_parse): Remove internal option assignment. Rename arg opts to 1433 opts_orig and set new local var opts. Adjust all references to opts. 1434 (show_help): Adjust all references to opts. 1435 14362018-03-27 NIIBE Yutaka <gniibe@fsij.org> 1437 1438 doc: Support cross compilation for yat2m. 1439 + commit efc4769339d42a4a399c040c146cf4a29c02ea4f 1440 * configure.ac (HAVE_YAT2M): New. 1441 * doc/Makefile.am [CROSS_COMPILING]: Supported. 1442 14432018-03-22 Werner Koch <wk@gnupg.org> 1444 1445 build: Add option --git-build to autogen.sh. 1446 + commit 1b30d21c8780f5510815d4fb2523afad9fff85dc 1447 1448 1449 yat2m: Avoid compiler warnings. 1450 + commit 30621ee4c13006d08881994c32c89f60604c0188 1451 * doc/yat2m.c (evaluate_conditions): Mark args unused 1452 (proc_texi_cmd): Avoid shadowing warning. 1453 1454 core: Add Base-64 encoder. 1455 + commit ffc8f805165a13d16ed227051c59d732117ec9d4 1456 * src/b64enc.c: Change to fit into libgpg-error. 1457 * src/Makefile.am: Add b64enc.c 1458 * src/b64dec.c: Use xtrymalloc etc. Always use gpg_err_code_t. 1459 (_gpgrt_b64dec_start): Set decoder flag 1460 (_gpgrt_b64dec_finish): Check for conflict. 1461 (_gpgrt_b64state): Move to ... 1462 * src/gpgrt-int.h: here. Add new fields. 1463 * src/visibility.c (gpgrt_b64enc_start): New. 1464 (gpgrt_b64enc_write): New. 1465 (gpgrt_b64enc_finish): New. 1466 * src/gpg-error.vers, src/gpg-error.def.in: Add new functions. 1467 * src/gpg-error.h.in: Ditto. 1468 * src/visibility.h: Ditto. 1469 1470 * tests/t-b64dec.c: Remove. 1471 * tests/t-b64.c: New. 1472 * tests/Makefile.am (TESTS): Replace t-b64dec by t-b64. 1473 14742018-03-22 NIIBE Yutaka <gniibe@fsij.org> 1475 1476 doc: Fix build and installation of yat2m. 1477 + commit 4dc6d4d2067c726cdb13593bf151637319ff65e6 1478 * configure.ac (YAT2M): Require it when cross compiling. 1479 * doc/Makefile.am (bin_PROGRAMS): Add yat2m. 1480 14812018-03-21 Werner Koch <wk@gnupg.org> 1482 1483 po: Merge GnuPG's strings from argparse.c. 1484 + commit e492e0a0a73e1ea9c80f355a25f632af69d3a569 1485 1486 1487 tools: Use gpgrt_argparse for the gpg-error tool. 1488 + commit 11ce9bc3d6fe75859e18112824ae7ec3ca0fc8df 1489 * src/gpg-error.c (show_usage): Remove. 1490 (my_strusage): New. 1491 (main): Change to use argparse. Also use log_error. 1492 1493 core: Add public function gpgrt_usage. 1494 + commit ed78ef7f06649f85f1c94c4fb2bd3f6b16fd9a63 1495 * src/visibility.c (gpgrt_usage): New. 1496 1497 core: Add the group of argparse functions. 1498 + commit 13d6fbfd4360cb74588556a3a0058c4057d0bcf0 1499 * src/visibility.c (gpgrt_argparse): New. 1500 (gpgrt_strusage): New. 1501 (gpgrt_set_strusage): New. 1502 (gpgrt_set_usage_outfnc): New. 1503 (gpgrt_set_fixed_string_mapper): New. 1504 * src/gpg-error.def.in, src/gpg-error.vers: Add new functions. 1505 * src/gpg-error.h.in: Add ARGPARSE macros from the former argparse.h. 1506 (gpgrt_argparse_t): New. 1507 (gpgrt_opt_t): New. 1508 * configure.ac (AH_BOTTOM): Request argparse macros. 1509 * src/Makefile.am (libgpg_error_la_SOURCES): Add argparse.c. 1510 * src/argparse.h: Remove. 1511 * src/argparse.c: Revamp to fit into libgpg-error. 1512 (_gpgrt_argparse): New. 1513 (_gpgrt_usage): Rename from usage. 1514 (_gpgrt_strusage): Rename from strusage. Define two new levels and 1515 templates for three common licenses. 1516 (_gpgrt_set_strusage): Rename from set_strusage. 1517 (_gpgrt_set_usage_outfnc): New. 1518 (_gpgrt_set_fixed_string_mapper): New. 1519 1520 * tests/t-argparse.c: New. 1521 15222018-03-18 Werner Koch <wk@gnupg.org> 1523 1524 core: Fix regression on arm64 due to invalid use of va_list. 1525 + commit 791177de023574223eddf7288eb7c5a0721ac623 1526 * src/logging.c (_gpgrt_log_printhex): Provide a dummy arg instead of 1527 NULL. 1528 15292018-03-14 Werner Koch <wk@gnupg.org> 1530 1531 core: Fix building on W64. 1532 + commit c36a60687976d98b54dac17f699dfca4918a737c 1533 * src/w32-add.h: Remove hack to define pid_t. 1534 * src/gpg-error.h.in: Eval macro to define pid_t. 1535 * src/mkheader.c (have_sys_types_h, sys_types_h_included): New. 1536 (parse_config_h): Test for sys/types.h. 1537 (write_special): Protect inclusion of sys/types.h. Define new macro 1538 'define:pid_t'. 1539 15402018-03-13 Werner Koch <wk@gnupg.org> 1541 1542 Release 1.28. 1543 + commit e32342397eab85fed5ef709317cc50dc7cbc41a5 1544 1545 15462018-02-28 NIIBE Yutaka <gniibe@fsij.org> 1547 Karsten Merker <merker@debian.org> 1548 1549 syscfg: Add a riscv64 architecture. 1550 + commit 596c0d701edeb45e0069bb74b9343e3d5b708ef0 1551 * src/syscfg/lock-obj-pub.riscv64-unknown-linux-gnu.h: New. 1552 * src/Makefile.am (lock_obj_pub): Add it. 1553 15542018-02-21 Werner Koch <wk@gnupg.org> 1555 Todd Zullinger 1556 1557 build: Document how to use git send-email. 1558 + commit 70058cd9f944d620764e57c838209afae8a58c78 1559 * autogen.rc: Add patches_to. 1560 * autogen.sh: Run git config sendemail.to. 1561 * doc/HACKING: Describe use of git send-email. 1562 15632018-02-21 Thorsten Behrens <Thorsten.Behrens@CIB.de> 1564 1565 doc: clarify patch submission workflow. 1566 + commit 887530733d0486ab68ff351c4855f5450c2d50e6 1567 1568 15692017-12-11 Werner Koch <wk@gnupg.org> 1570 1571 core: Avoid using estream_t in the public API. 1572 + commit f9a33a7f7e44a644ff4e31f7e9f1c2c1ec1f8eee 1573 * src/gpg-error.h.in: Always use gpgrt_stream-t. 1574 15752017-12-08 Werner Koch <wk@gnupg.org> 1576 1577 core: Rename the gpgrt_log_levels enum values. 1578 + commit de167fa92d009745c51dae547990845282cbb351 1579 * src/gpg-error.h.in (gprt_log_levels): Rename to GPGRT_LOGLVL. 1580 15812017-11-29 Werner Koch <wk@gnupg.org> 1582 1583 core: Wrap blocking system calls of the spawn functions. 1584 + commit 4acf116ba6d144c2cfa39ff54a23b8864b4ce895 1585 1586 1587 core: Unify syscall_clamp functions. 1588 + commit adc786d034b63176b941a1ef8d996acbf8d0ea5d 1589 * src/estream.c (_gpgrt_set_syscall_clamp) 1590 (_gpgrt_get_syscall_clamp): Move to ... 1591 * src/syscall-clamp.c: new file. 1592 (_gpgrt_pre_syscall, _gpgrt_post_syscall): New. 1593 * src/Makefile.am (libgpg_error_la_SOURCES): Add that file. 1594 * src/estream.c: Replace the syscall wrapper with the new functions. 1595 * src/posix-lock.c: Ditto. 1596 * src/w32-lock.c: Ditto. 1597 * src/posix-thread.c: Ditto. 1598 * src/w32-thread.c: Ditto. 1599 1600 core: Implement the spawn functions. 1601 + commit 1865c0ba1769b407a3c504f1ab0a4278704a9fc1 1602 * src/gpg-error.h.in (GPGRT_SPAWN_NONBLOCK): New const. 1603 (GPGRT_SPAWN_RUN_ASFW): New const. 1604 (GPGRT_SPAWN_DETACHED): New const. 1605 (gpgrt_make_pipe): New function. 1606 (gpgrt_create_pipe): New macro. 1607 (gpgrt_create_inbound_pipe): New macro. 1608 (gpgrt_create_outbound_pipe): New macro. 1609 (gpgrt_spawn_process): New function. 1610 (gpgrt_spawn_process_fd): New function. 1611 (gpgrt_spawn_process_detached): New function. 1612 (gpgrt_wait_process): New function. 1613 (gpgrt_wait_processes): New function. 1614 (gpgrt_kill_process): New function. 1615 (gpgrt_release_process): New function. 1616 * src/gpg-error.def.in, src/gpg-error.vers: Add new functions. 1617 * src/visibility.c, src/visibility.h: Add wrappers for new functions. 1618 * src/spawn-posix.c: Rework to better fit the use in gpgrt. Rename 1619 all public function with a _gpgrt prefix. 1620 * src/spawn-w32.c: Ditto. 1621 * src/gpgrt-int.h: Likewise. 1622 * src/Makefile.am (arch_sources): Add spawn-posix.c and spawn-w32.c. 1623 * src/w32-add.h: Add pid_t typedef as a temporary hack. 1624 * configure.ac: Check for signal.h and getrlimit. 1625 (AC_FUNC_FORK): New. 1626 1627 Import and relicense exechelp* functions from GnuPG. 1628 + commit 8f41cc23b12485404203be5881aaaadb78696b4d 1629 * src/spawn-posix.c: New. Taken from GnuPG's exechelp-posix.c. 1630 * src/spawn-w32.c: New. Taken from GnuPG's exechelp-w32.c. 1631 * src/gpgrt-int.h: Include prototypes from GnuPG's exechelp.h. 1632 16332017-11-28 Werner Koch <wk@gnupg.org> 1634 1635 core: Change new functions to return gpg_err_code_t. 1636 + commit 513415c71781ab400ebb01f6b4cf2984ec6b1757 1637 * src/gpg-error.h.in (gpgrt_sentenv, gpgrt_mkdir, gpgrt_chdir): Change 1638 return type to gpg_err_code_t. 1639 * src/sysutils.c (_gpgrt_setenv): Implement that. 1640 (_gpgrt_mkdir): Ditto. 1641 (_gpgrt_chdir): Ditto. 1642 * gpgscm/ffi.c (do_setenv, do_mkdir): Adjust for this change. 1643 1644 gpgscm: Some adjustments for use in gpgrt. 1645 + commit 930d27ba6b1205395add0c79139e62355a1d5b62 1646 * gpgscm/Makefile.am: Remove cruft leftover from GnuPG. Link to the 1647 just build libgpg-error. 1648 * gpgscm/private.h: Include gpgrt.h and provide i18n macros. 1649 (xfree, xtrymalloc, xtrycalloc, xtryrealloc): New macros. 1650 (xmalloc, xstrdup): New inline functions. 1651 * gpgscm/main.c: Remove inclusion of gcrypt.h and gpg-error.h. Remove 1652 all other gnupg specific headers. 1653 (opts, parse_arguments): Temporary comment out. 1654 (main): Adjust for use with gpgrt. Temporary comment out some stuff. 1655 * gpgscm/ffi-private.h: Include local gpgrt.h instead of gpg-error.h. 1656 * gpgscm/ffi.h: Ditto. 1657 * gpgscm/ffi.c: Remove gpg-error.h and headers from GnuPG. 1658 (do_getenv): Use gpgrt_getenv. 1659 (do_setenv): Use gpgrt_setenv. 1660 (do_mkdtemp): Temporary return an error. 1661 (unlink_recursively): Use gpgrt_bsprintf. 1662 (do_getcwd): Use gpgrt_getcwd. 1663 (do_mkdir): Use gpgrt_mkdir. 1664 (do_get_isotime): Temporary return an error. 1665 (do_get_time): Directly use time(). 1666 1667 core: New API functions gpgrt_mkdir, gpgrt_chdir, gpgrt_getcwd. 1668 + commit 4a2538e69dd35377bce0fb584f72322c69a111b3 1669 * src/gpg-error.h.in (gpgrt_mkdir, gpgrt_chdir, gpgrt_getcwd): New. 1670 * src/visibility.c, src/visibility.h: Add wrappers. 1671 * src/gpg-error.vers, src/gpg-error.def.in: Add them. 1672 * src/sysutils.c (modestr_to_mode): New. 1673 (_gpgrt_mkdir, _gpgrt_chdir, _gpgrt_getcwd): New. 1674 * m4/gnupg-misc.m4: New. 1675 * m4/Makefile.am (EXTRA_DIST): Add new M4 file. 1676 * configure.ac: Call new GNUPG_FUNC_MKDIR_TAKES_ONE_ARG. 1677 (AC_CHECK_FUNCS): Add stat. 1678 1679 core: Prepare to build with gpgscm. 1680 + commit 241e9a73891fcd12f124aab1a299c2cf4f8eebc4 1681 * configure.ac: New option --enable-gpgscm. Create gpgscm/Makefile. 1682 (GPGRT_ENABLE_LOG_MACROS): Define. 1683 * Makefile.am (SUBDIRS): Add gpgscm 1684 * src/logging.c (_gpgrt_logv_clock): Do not use the log_debug macro. 1685 1686 core: New API functions gpgrt_getenv and gpgrt_setenv. 1687 + commit b67daca506991507cea9d383df7faf95117e58a6 1688 * src/gpg-error.h.in (gpgrt_getenv, gpgrt_setenv): New. 1689 (gpgrt_unsetenv): New macro. 1690 * src/gpg-error.vers, src/gpg-error.def.in: Add them. 1691 * src/visibility.c (gpgrt_getenv, gpgrt_setenv): New. 1692 * src/visibility.h: Add them. 1693 * src/sysutils.c: Include string.h and on Windows windows.h. 1694 (_gpgrt_getenv): New. 1695 (_gpgrt_setenv): New. 1696 16972017-11-27 Werner Koch <wk@gnupg.org> 1698 1699 core: Install new files gpgrt.m4 and gpgrt-config. 1700 + commit 97b0881216af24f2a46c11650e23691cff9cb12a 1701 * src/gpgrt.m4: New. Bascially a copy of libgpg-error.m4 1702 * src/gpg-error-config.in: Decide which name to print. 1703 * src/Makefile.am (nodist_bin_SCRIPTS): Add gpgrt-config. 1704 (m4data_DATA): Add gpgrt.m4 1705 (EXTRA_DIST): Add gpgrt.m4. 1706 (BUILT_SOURCES): Add gpgrt-config. 1707 (CLEANFILES): Add gpgrt-config. 1708 (gpgrt-config): Create from gpg-error-config. 1709 1710 core: Avoid endless recursion if log_set_sink has not been used. 1711 + commit 84ebd2f34882d29510f819a797fade0297fe9ab9 1712 * src/logging.c (_gpgrt_log_set_sink): Do not call gf_is_valid if the 1713 default sink has been requested. 1714 1715 core: Add new macro log_assert to the API. 1716 + commit d1e3401013f85620f3136958be079c13ca758b20 1717 * src/gpg-error.h.in (log_assert): New macro. 1718 17192017-11-22 Werner Koch <wk@gnupg.org> 1720 1721 core: Do not use the estream_t alias in gpg-error.h. 1722 + commit e0ef8126c20216f79b7ad147c103bb2cf2790c59 1723 * src/gpg-error.h.in: Use gpgrt_stream_t in prototypes. 1724 17252017-11-17 Werner Koch <wk@gnupg.org> 1726 1727 w32: Avoid unused code warning. 1728 + commit a950326d20990fa33cee637d5b54d708fff585b2 1729 * src/w32-estream.c (_gpgrt_w32_poll) [!ENABLE_TRACING]: Do not use 1730 waitinfo. 1731 1732 w32: Add new API fucntion gpgrt_w32_reg_query_string. 1733 + commit b5c4a2721d7b4bd54705c53e6f294ab2ef66a6f7 1734 * src/w32-reg.c: New. 1735 * src/w32-add.h: Add gpgrt_w32_reg_query_string. 1736 * src/visibility.c (gpgrt_w32_reg_query_string): New wrapper. 1737 * src/gpg-error.def.in: Add gpgrt_w32_reg_query_string. 1738 * configure.ac (ac_check_funcs): Add stpcpy. 1739 * src/Makefile.am (arch_sources): Add w32-reg.c 1740 (socklibs): New. 1741 (libgpg_error_la_LIBADD): Add socklibs. 1742 * src/gpgrt-int.h (xfree, xtrymalloc, xtrycalloc) 1743 (xtryrealloc): New internal macros. 1744 (_gpgrt_stpcpy, stpcpy): New replacement fucntion and macro. 1745 * src/logging.c (_gpgrt_logv_internal): Use new registry query 1746 function and add standard registry key. 1747 1748 core: New API functions gpgrt_strdup and gpgrt_strconcat. 1749 + commit 0d8d46c76a32176be440b062d2501bbb044fb99d 1750 * src/visibility.c (gpgrt_strdup): New API fucntion. 1751 (gpgrt_strconcat): New API fucntion. 1752 * src/visibility.h: Add corresponding macros. 1753 * src/gpg-error.def.in: Add them. 1754 * src/gpg-error.vers: Add them. 1755 * src/gpgrt-int.h (DIM): New macro. 1756 * src/init.c (_gpgrt_strdup): New. 1757 (_gpgrt_strconcat_core): New. 1758 (_gpgrt_strconcat): New. 1759 1760 core: New API functions gpgrt_malloc, gpgrt_calloc, and gpgrt_realloc. 1761 + commit 80c18e1b212cc91946864db7a53da50e9f91b861 1762 * src/visibility.c (gpgrt_realloc): New API function. 1763 (gpgrt_malloc): New API function. 1764 (gpgrt_calloc): New API function. 1765 * src/visibility.h: Add corresponding macros. 1766 * src/gpg-error.def.in: Add them. 1767 * src/gpg-error.vers: Add them. 1768 * src/init.c (_gpgrt_calloc): New. 1769 * src/gpg-error.h.in: Add prototypes. 1770 1771 core: Add logging API. 1772 + commit 1b653e7f37e2eb2a8f590a43651eb8aecbe8756e 1773 * src/visibility.c (gpgrt_get_errorcount): New API. 1774 (gpgrt_inc_errorcount): New API. 1775 (gpgrt_log_set_sink): New API. 1776 (gpgrt_log_set_socket_dir_cb): New API. 1777 (gpgrt_log_set_pid_suffix_cb): New API. 1778 (gpgrt_log_set_prefix): New API. 1779 (gpgrt_log_get_prefix): New API. 1780 (gpgrt_log_test_fd): New API. 1781 (gpgrt_log_get_fd): New API. 1782 (gpgrt_log_get_stream): New API. 1783 (gpgrt_log): New API. 1784 (gpgrt_logv): New API. 1785 (gpgrt_logv_prefix): New API. 1786 (gpgrt_log_string): New API. 1787 (gpgrt_log_info): New API. 1788 (gpgrt_log_error): New API. 1789 (gpgrt_log_fatal): New API. 1790 (gpgrt_log_bug): New API. 1791 (gpgrt_log_debug): New API. 1792 (gpgrt_log_debug_string): New API. 1793 (gpgrt_log_printf): New API. 1794 (gpgrt_log_flush): New API. 1795 (gpgrt_log_printhex): New API. 1796 (gpgrt_log_clock): New API. 1797 (_gpgrt_log_assert): New function for the ABI. 1798 * src/visibility.h: Add corresponding macros. 1799 * src/gpg-error.def.in: Add new functions. 1800 * src/gpg-error.vers: Add new functions. 1801 * src/gpg-error.h.in (GPGRT_LOG_WITH_PREFIX): New constant. 1802 (GPGRT_LOG_WITH_TIME): New constant. 1803 (GPGRT_LOG_WITH_PID): New constant. 1804 (GPGRT_LOG_RUN_DETACHED): New constant. 1805 (GPGRT_LOG_NO_REGISTRY): New constant. 1806 (GPGRT_LOG_BEGIN): New enum value. 1807 (GPGRT_LOG_CONT): New enum value. 1808 (GPGRT_LOG_INFO): New enum value. 1809 (GPGRT_LOG_WARN): New enum value. 1810 (GPGRT_LOG_ERROR): New enum value. 1811 (GPGRT_LOG_FATAL): New enum value. 1812 (GPGRT_LOG_BUG): New enum value. 1813 (GPGRT_LOG_DEBUG): New enum value. 1814 (log_get_errorcount, log_inc_errorcount, log_set_file, log_set_fd) 1815 (log_set_stream, log_set_socket_dir_cb, log_set_pid_suffix_cb) 1816 (log_set_prefix, log_get_prefix, log_test_fd, log_get_fd) 1817 (log_get_stream, log_log, log_logv, log_logv_prefix, log_string) 1818 (log_bug, log_fatal, log_error, log_info, log_debug, log_debug_string) 1819 (log_printf, log_printhex, log_clock) 1820 (log_flush) [GPGRT_ENABLE_LOG_MACROS]: New wrapper macros. 1821 (gpgrt_assert): New macro. 1822 * src/gpgrt-int.h: Add prototypes for logging.c. 1823 (gpgrt_assert): Redefine for internal use. 1824 * src/logging.h: Remove. 1825 * src/logging.c: Include gpgrt-int.h instead of the stuff from GnuPG. 1826 Use _gpgrt malloc funcsions and the internal versions of the estream 1827 functions. Rename all public fucntions with a _gpgrt_ prefix. 1828 (print_prefix): Return the printed length. 1829 (_gpgrt_logv_internal): Ditto. 1830 (_gpgrt_log_printhex): Change order of args and turn into a printf 1831 like function. 1832 (_gpgrt_logv_printhex): New. Take the core of the former 1833 log_printhex. 1834 (_gpgrt_log_clock): Turn into a printf like functions. 1835 (_gpgrt_logv_clock): New. Take the core of the former log_clock. 1836 1837 New configure options and macros for internal use. 1838 + commit 9c904765c9b2b75e73b196b381470f0fb2f3b458 1839 * configure.ac: Add option --enable-log-clock. 1840 * configure.ac: Add option --enable-werror. 1841 * src/sysutils.c: New. 1842 * src/Makefile.am (libgpg_error_la_SOURCES): Add sysutils.c 1843 * src/gpgrt-int.h: Add internal i18n macros and hacks to make working 1844 with sockets easier. 1845 (es_stdin, es_stdout, es_stderr): New internal macros. 1846 (snprintf): New macro. 1847 18482017-10-05 Werner Koch <wk@gnupg.org> 1849 1850 gpgscm: Add required configure checks. 1851 + commit 7c48edad2c782f416854eaa5c03bcf546d68eae2 1852 * configure.ac: Add new checks. 1853 * m4/readline.m4: New. Taken from gnupg. 1854 * m4/Makefile.am (EXTRA_DIST): Add it. 1855 18562017-08-21 Justus Winter <justus@g10code.com> 1857 1858 gpgscm: Fix -Wimplicit-fallthrough warnings. 1859 + commit dda5fb3474a81047e5bd52a194640fb44e1d60ab 1860 * tests/gpgscm/scheme.c (CASE): Rearrange so that the case statement 1861 is at the front. 1862 (Eval_Cycle): Improve fallthrough annotations. 1863 18642017-08-08 Werner Koch <wk@gnupg.org> 1865 1866 build: New configure option --enable-all-tests. 1867 + commit 3aa37d802ac10a38414a8cfe120de92a76968836 1868 * configure.ac: New option --enable-all-tests. 1869 * tests/gpgscm/ffi.c (ffi_init): New gloabl var *run-all-tests*. 1870 * tests/openpgp/all-tests.scm (all-tests): Use that var instead 1871 of *maintainer-mode*. 1872 * Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Add --enable-all-tests. 1873 1874 gpgscm: Make the test summary stand out. 1875 + commit c2fbc80c643db372f16aed100393cd2d4de46979 1876 * tests/gpgscm/tests.scm (test-pool): Add delimiter lines. 1877 18782017-08-07 Justus Winter <justus@g10code.com> 1879 1880 tests: Do not run all tests unless in maintainer mode. 1881 + commit d230224c38dd4b31348f7a1ad24be9e27935dc80 1882 * configure.ac: Leak the maintainer mode flag into 'config.h'. 1883 * tests/gpgscm/ffi.c: Pass it into the scheme environment. 1884 * tests/openpgp/all-tests.scm: Only run tests against non-default 1885 configurations (keyring, extended-key-format) in maintainer mode. 1886 18872017-07-18 Justus Winter <justus@g10code.com> 1888 1889 gpgscm,w32: Fix testing for absolute paths. 1890 + commit c4230af0e62d7c8812eaedf4e6451a6288ff5769 1891 * tests/gpgscm/main.c (path_absolute_p): New function. 1892 (load): Use new function. 1893 18942017-07-14 Justus Winter <justus@g10code.com> 1895 1896 gpgscm: Library improvements. 1897 + commit a4dbace8c1d771bed5783aadf87a8075454e5a35 1898 * tests/gpgscm/repl.scm (prompt-yes-no?): New function. 1899 * tests/gpgscm/tests.scm (pathsep-split): Likewise. 1900 (pathsep-join): Likewise. 1901 (with-path): Use the new function. 1902 1903 gpgscm: Fail early if the test setup fails. 1904 + commit c67386dcd95dd6a451b861e178503b29a7b13502 1905 * tests/gpgscm/tests.scm (make-environment-cache): Check status code 1906 of setup script. 1907 19082017-07-13 Justus Winter <justus@g10code.com> 1909 1910 gpgscm: Make loading of modules less verbose. 1911 + commit 8377569cae0764fd44701d67626b4c96f0bd8804 1912 * tests/gpgscm/main.c (load): Increase logging threshold. 1913 1914 gpgscm: Make it impossible to catch '*interpreter-exit*'. 1915 + commit ba3164673676468472ae37f32c3964d231e8a8f8 1916 * tests/gpgscm/init.scm (throw'): Make it impossible to catch 1917 '*interpreter-exit*'. This fixes 'exit' (and with it 'fail') inside 1918 'catch' statements. 1919 19202017-07-05 Werner Koch <wk@gnupg.org> 1921 1922 syscfg: Add lock-obj-pub file for ia64-unknown-linux-gnu. 1923 + commit 0f5c3f67946fb5389df5b9963e6976b462bf5726 1924 * src/syscfg/lock-obj-pub.ia64-unknown-linux-gnu.h: new. 1925 * src/Makefile.am (lock_obj_pub): Add it. 1926 1927 yat2m: Use version from libgpg-error. 1928 + commit 0148ea8d5acde2ad5d0376fb7eaa2221e88f258a 1929 * doc/yat2m.c (VERSION): Define as PACKAGE_VERSION. 1930 * doc/Makefile.am (yat2m): Pass PACKAGE_VERSION with -D. 1931 1932 build: Install yat2m. 1933 + commit d81b1379edbc6007a89c3b2fff1b51c8dfe2e868 1934 * doc/Makefile.am (install-exec-hook): New. 1935 (uninstall-local): Uninstall yat2m. 1936 1937 yat2m: Take care of SOURCE_DATE_EPOCH. 1938 + commit 5494a5728418938d2e42158bb646b07124184e64 1939 * doc/yat2m.c (main): Set a default for OPT_DATE. 1940 19412017-07-05 NIIBE Yutaka <gniibe@fsij.org> 1942 1943 doc: minor fix for @xref. 1944 + commit 187e2ad24fb92210587beb779a1cc746821a169c 1945 * doc/yat2m.c (proc_texi_cmd): Captalize "see" for xref. 1946 19472017-07-05 Justus Winter <justus@g10code.com> 1948 1949 doc: Implement simple '@ref'erences. 1950 + commit 55d560358f7ee4a8b68f98e051021a05d4c0bb1f 1951 * doc/yat2m.c (proc_texi_cmd): Handle '@ref'. 1952 19532017-06-19 Justus Winter <justus@g10code.com> 1954 1955 gpgscm: Limit the number of parallel jobs. 1956 + commit 895ae4c6b1bd2fd9758d9c2835d9a3881e57a85a 1957 * ffi.c (do_wait_processes): Suppress the timeout error. 1958 * tests.scm (semaphore): New definition. 1959 (test-pool): Only run a bounded number of tests in parallel. 1960 (test::started?): New function. 1961 (run-tests-parallel): Do not report results, do not start the tests. 1962 (run-tests-sequential): Adapt. 1963 (run-tests): Parse the number of parallel jobs. 1964 1965 gpgscm: Improve option parsing. 1966 + commit b4628b4a23d7e8b55ef3f17d79ca86ae77cbc685 1967 * tests/gpgscm/tests.scm (flag): Accept arguments of the form 1968 '--foo=bar'. 1969 1970 gpgscm: Improve error handling of foreign functions. 1971 + commit f8934d091a274685c1b2a303ac2772adddd303c6 1972 * tests/gpgscm/ffi.scm (ffi-fail): Do not needlessly join the error 1973 message. 1974 1975 gpgscm: Improve error reporting. 1976 + commit f57405bea31bac1e3c8e4353aea9bb3cede1b90c 1977 * tests/gpgscm/init.scm (throw'): Guard against 'args' being atomic. 1978 * tests/gpgscm/scheme.c (Eval_Cycle): Remove any superfluous colons in 1979 error messages. 1980 19812017-05-31 Justus Winter <justus@g10code.com> 1982 1983 Align 'es_poll' semantics closer with POSIX. 1984 + commit 4a9857a2b6d8a8e847638416d35398508b3291fd 1985 * src/estream.c (_gpgrt_poll): Do not return early if some streams are 1986 found to be ready before even polling the others. 1987 1988 build: Prepend the maintainer CFLAGS. 1989 + commit df1d61d5c84d984fb2d2a6f1b69c57878decf13e 1990 * configure.ac: Prepend the maintainer CFLAGS making it possible to 1991 override e.g. the optimization level for debugging. 1992 19932017-05-30 NIIBE Yutaka <gniibe@fsij.org> 1994 1995 Fix memory leak for estream. 1996 + commit 1e7203515be0b030709109e9da621642dfa20312 1997 * src/estream.c (do_list_remove): Free the item. 1998 (do_close): Free the buffer. 1999 20002017-05-17 Justus Winter <justus@g10code.com> 2001 2002 gpgscm: Fix checking for opcode arguments. 2003 + commit d2747ce24d445ae7ef3ec4ed0cca2f30aa833e7c 2004 * tests/gpgscm/scheme.c (Eval_Cycle): Update 'pcd' after dispatching 2005 an instruction. 2006 20072017-05-11 Justus Winter <justus@g10code.com> 2008 2009 tests: Make it possible to run all tests using our infrastructure. 2010 + commit 4bc110e219b13d551c0c6c9987b7602e44715032 2011 * Makefile.am (TESTS_ENVIRONMENT): New variable. 2012 (check-all): New phony target to run all tests. 2013 * tests/gpgme/gpgme-defs.scm (have-gpgme?): New function that tests 2014 whether the GPGME test suite is available instead of exiting the 2015 process. 2016 * tests/gpgscm/init.scm (export): New macro. 2017 * tests/gpgscm/tests.scm (run-tests): New function. 2018 (load-tests): Likewise. 2019 * tests/gpgme/run-tests.scm: Simplify and move the parsing of the list 2020 of tests to 'all-tests.scm'. 2021 * tests/gpgsm/run-tests.scm: Likewise. 2022 * tests/migrations/run-tests.scm: Likewise. 2023 * tests/openpgp/run-tests.scm: Likewise. 2024 * tests/gpgme/Makefile.am: To select the tests to run, use the 2025 variable 'TESTS'. This harmonizes the interface with the automake 2026 test suite. 2027 * tests/gpgsm/Makefile.am: Likewise. 2028 * tests/migrations/Makefile.am: Likewise. 2029 * tests/openpgp/Makefile.am: Likewise. 2030 * tests/openpgp/README: Likewise. 2031 * agent/all-tests.scm: New file. 2032 * common/all-tests.scm: Likewise. 2033 * g10/all-tests.scm: Likewise. 2034 * g13/all-tests.scm: Likewise. 2035 * tests/gpgme/all-tests.scm: Likewise. 2036 * tests/gpgsm/all-tests.scm: Likewise. 2037 * tests/migrations/all-tests.scm: Likewise. 2038 * tests/openpgp/all-tests.scm: Likewise. 2039 * tests/run-tests.scm: Likewise. 2040 2041 tests: Move the makefile parser. 2042 + commit 197404aae66c688d004337c0aefe153ef6b10f87 2043 * tests/gpgme/gpgme-defs.scm (parse-makefile, parse-makefile-expand): 2044 Move... 2045 * tests/gpgscm/makefile.scm: ... here. 2046 * tests/gpgscm/Makefile.am (EXTRA_DIST): Add new file. 2047 2048 gpgscm: Make it possible to set the logfile name. 2049 + commit dd48994b0c99a4099f49ccd437a08ddff39af8a2 2050 * tests/gpgscm/tests.scm (test): Only set the default log filename 2051 when it has not been set before. 2052 20532017-05-04 Justus Winter <justus@g10code.com> 2054 2055 tests: Support tests that are expected to fail. 2056 + commit 212a0febf8bbaf735ae2e65722f39a47a1c5b122 2057 * tests/gpgscm/tests.scm (test-pool): Rework reporting. Filter using 2058 the computed test status instead of the return value. Also print the 2059 new categories 'failed expectedly' and 'passed unexpectedly'. 2060 (test): If a test ends with a bang (!), it is expected to fail. Adapt 2061 status, status-string, and xml accordingly. 2062 20632017-05-03 Justus Winter <justus@g10code.com> 2064 2065 gpgscm: Create and re-use frame objects. 2066 + commit 272b0ad65ec4c6023d4b5a4fb2f003ada432b6e5 2067 * tests/gpgscm/scheme-private.h (struct scheme): New field 2068 'frame_freelist'. 2069 * tests/gpgscm/scheme.c (enum scheme_types): New type 'T_FRAME'. 2070 (type_to_string): Handle new type. 2071 (settype): New macro. 2072 (gc_disable): Make sure there is at least one frame in the free list. 2073 (mark): Handle frame objects. 2074 (finalize_cell): Likewise. 2075 (dump_stack_initialize): Initialize free list. 2076 (dump_stack_free): Simplify. 2077 (frame_length): New variable. 2078 (dump_stack_make_frame): New function. 2079 (frame_slots): Likewise. 2080 (frame_payload): New macro. 2081 (dump_stack_allocate_frame): New function. 2082 (dump_stack_deallocate_frame): Likewise. 2083 (dump_stack_preallocate_frame): Likewise. 2084 (_s_return): Unpack frame object and deallocate it. 2085 (s_save): Wrap state in an frame object. 2086 (dump_stack_mark): Mark the free list. 2087 2088 gpgscm: Merge opexe_0. 2089 + commit df499c6ee5edf0a560138640141a3abef360b4f5 2090 * tests/gpgscm/scheme-private.h (struct scheme): Remove field 'op'. 2091 * tests/gpgscm/scheme.c (opexe_0): Inline into 'Eval_Cycle'. 2092 (_Error_1): Return the opcode to evaluate next. 2093 (Error_1): Do not return, but set the opcode and goto dispatch. 2094 (Error_0): Likewise. 2095 (s_goto): Likewise. 2096 (s_return): Likewise. 2097 (s_return_enable_gc): Likewise. 2098 (s_thread_to): Remove superfluous cast. 2099 (_s_return): Return the opcode to evaluate next. 2100 (scheme_init_custom_alloc): Adapt to removal of field 'op'. 2101 21022017-04-24 Justus Winter <justus@g10code.com> 2103 2104 gpgscm: Refactor cell finalization. 2105 + commit 36e266a5cbb78560d32bc33f18f9041db1ff5080 2106 * tests/gpgscm/scheme.c (finalize_cell): Use switch, return whether 2107 the cell may be freed. 2108 (gc): Update callsite. 2109 2110 gpgscm: Tweak error message display. 2111 + commit e8c896c7f9aabad6e1387f538accb54ac6b2b1cc 2112 * tests/gpgscm/init.scm (throw'): If the first argument to the error 2113 is a string, display it as such. 2114 2115 gpgscm: Fix test. 2116 + commit b67d1a3f36f2b15fb75de613942668b71cad1bd7 2117 * tests/gpgscm/t-child.scm: Use 'string-length' on the string. 2118 2119 gpgscm: Improve syntax checking. 2120 + commit 008894eff46724d60a24879d319b427606fcafd1 2121 * tests/gpgscm/scheme.c (opexe_0): Make sure closure arguments are 2122 symbols. 2123 2124 gpgscm: Emit JUnit-style XML reports. 2125 + commit 5dc43e579ef4340c668fa7e294f5a69fef9d622e 2126 * tests/gpgscm/Makefile.am (EXTRA_DIST): Add new file. 2127 * tests/gpgscm/lib.scm (string-translate): New function. 2128 * tests/gpgscm/main.c (main): Load new file. 2129 * tests/gpgscm/tests.scm (dirname): New function. 2130 (test-pool): Record execution times, emit XML report. 2131 (test): Record execution times, record log file name, emit XML report. 2132 (run-tests-parallel): Write XML report. 2133 (run-tests-sequential): Likewise. 2134 * tests/gpgscm/xml.scm: New file. 2135 * tests/gpgme/Makefile.am (CLEANFILES): Add 'report.xml'. 2136 * tests/gpgsm/Makefile.am: Likewise. 2137 * tests/migrations/Makefile.am: Likewise. 2138 * tests/openpgp/Makefile.am: Likewise. 2139 2140 gpgscm: Make logging less verbose and more useful. 2141 + commit a3e51fab6b30774959dc7d4d3409000fdbe1f7b3 2142 * tests/gpgscm/tests.scm (call-with-io): When being verbose, include 2143 the pid in the output, and avoid duplicating the command arguments. 2144 2145 gpgscm: Make test framework less functional. 2146 + commit aa843dbcd32c65eeac8c7c3cea4efb3ed7a94a0c 2147 * tests/gpgscm/tests.scm (test-pool, tests): Previously, these methods 2148 updated objects by creating new updated copies of the object being 2149 manipulated. This made the code awkward without any benefit, 2150 therefore I change it to just update the object. 2151 2152 gpgscm: Move 'trace' and 'stringify'. 2153 + commit 763bd518b27d4e125fa3dce64417ae2aca2101d4 2154 * tests/gpgscm/tests.scm (trace, stringify): Move... 2155 * tests/gpgscm/lib.scm: ... here. 2156 2157 gpgscm: Avoid fruitless garbage collection cycles. 2158 + commit 8bda9387d5be9193fd0f484fd1272367a7422389 2159 * tests/gpgscm/scheme-private.h (CELL_MINRECOVER): New macro. 2160 * tests/gpgscm/scheme.c (_get_cell): Move the heuristic to get more 2161 cells... 2162 (gc): ... here where every caller benefits from the optimization. 2163 21642017-04-19 NIIBE Yutaka <gniibe@fsij.org> 2165 2166 Minor clean up. 2167 + commit a8d267a7220399f7acf69723fe1d31efd2160319 2168 * src/b64dec.c (_gpgrt_b64dec_proc): Add a comment. 2169 * src/estream.c (_gpgrt_fread, _gpgrt_fwrite): Use &&. 2170 * src/mkheader.c (xstrdup): Use memcpy as we know length. 2171 21722017-04-12 NIIBE Yutaka <gniibe@fsij.org> 2173 2174 gpgscm: Fix test program. 2175 + commit e71c0d39d2fb896df85949a61811e3b19fd050d7 2176 * tests/gpgscm/t-child.c (main): Fix for setmode. 2177 21782017-04-11 Justus Winter <justus@g10code.com> 2179 2180 tests: Fix distcheck. 2181 + commit b03bcee96fc4eb950c6ae38fd8b5af831b281f02 2182 * tests/gpgscm/Makefile.am (EXTRA_DIST): Add 'gnupg.scm'. 2183 2184 tests: Move common functionality. 2185 + commit d9dd8135ec6e1a4b7a66bc385714b8c1beba3e96 2186 * tests/openpgp/defs.scm (with-home-directory, 2187 with-ephemeral-home-directory): Move... 2188 * tests/gpgscm/gnupg.scm: ... to this new file. 2189 * tests/gpgscm/main.c (main): Load the new file. 2190 21912017-04-10 Justus Winter <justus@g10code.com> 2192 2193 gpgscm: Fix opcode dispatch. 2194 + commit afb7060de5c55976d08e0692fbffd0cc108914a0 2195 * tests/gpgscm/scheme.c (opexe_0): Consider 'op', not 'sc->op'. The 2196 former is the opcode we are currently executing. 2197 2198 gpgscm: Mmap script files. 2199 + commit ef41f332cba624e9bca6100ebacd4fffe4e61679 2200 * tests/gpgscm/main.c (load): Try to mmap the script. 2201 * tests/gpgscm/scheme.c (scheme_load_memory): New function, a 2202 generalization of 'scheme_load_string'. 2203 * tests/gpgscm/scheme.h (scheme_load_memory): New prototype. 2204 2205 gpgscm: Refactor checking for opcode arguments. 2206 + commit 6c9de8ff59a9c637de944706533421dc4cf20708 2207 * tests/gpgscm/scheme.c (op_code_info): Fix type, add forward 2208 declaration. 2209 (check_arguments): New function. 2210 (Eval_cycle): Use the new function. 2211 2212 gpgscm: Improve syntax dispatch. 2213 + commit 173531921d133a007d30c32cec00546749d8cfbf 2214 * tests/gpgscm/scheme.c (assign_syntax): Add opcode parameter, store 2215 opcode in the tag. 2216 (syntaxnum): Add sc parameter, retrieve opcode from tag. 2217 (opexe_0): Adapt callsite. 2218 (scheme_init_custom_alloc): Likewise. 2219 2220 gpgscm: Make tags mandatory. 2221 + commit d6c83fbb06abc99de696b3f9a0b1cb962fa05b26 2222 * tests/gpgscm/opdefines.h: Make tags mandatory. 2223 * tests/gpgscm/scheme.c: Likewise. 2224 * tests/gpgscm/scheme.h: Likewise. 2225 2226 gpgscm: Add and use opcode for reversing a list in place. 2227 + commit be78c20cdd93ed295bfee1aef1e9d2e9253b779c 2228 * tests/gpgscm/lib.scm (string-split-pln): Use 'reverse!'. 2229 (string-rtrim): Likewise. 2230 * tests/gpgscm/opdefines.h (reverse!): New opcode. 2231 * tests/gpgscm/scheme.c (opexe_0): Handle new opcode. 2232 2233 gpgscm: Deduplicate code. 2234 + commit 8a2d1706e5d4b3d33ff349838f0c51631e32a2ce 2235 * tests/gpgscm/scheme.c (oblist_add_by_name): Deduplicate. 2236 (new_slot_spec_in_env): Likewise. 2237 2238 gpgscm: Move dispatch table into rodata. 2239 + commit 5aeeb5af96dce901a8b21613e33baed8b9331692 2240 * tests/gpgscm/opdefines.h: Use 0 instead of NULL. 2241 * tests/gpgscm/scheme.c (op_code_info): Use char arrays instead of 2242 pointers, make arity parameters smaller. 2243 (INF_ARG): Adapt. 2244 (_OP_DEF): Likewise. 2245 (dispatch_table): Likewise. 2246 (procname): Likewise. 2247 (Eval_cycle): Likewise. 2248 (scheme_init_custom_alloc): Likewise. 2249 2250 gpgscm: Use more threaded code. 2251 + commit 49c22bd71892f47835d9e03f3bd3122a1f0b8faa 2252 * tests/gpgscm/scheme.c (opexe_0): Use 's_thread_to' instead of 2253 's_goto' wherever possible. 2254 2255 gpgscm: Remove now obsolete dispatcher function from the opcodes. 2256 + commit 6d99d2f287aa40d8add81ce892026dfe05768fd4 2257 * tests/gpgscm/opdefines.h: Remove now obsolete dispatcher function 2258 from the opcodes. 2259 * tests/gpgscm/scheme-private.h (_OP_DEF): Adapt. 2260 * tests/gpgscm/scheme.c (dispatch_func): Remove type declaration. 2261 (op_code_info): Remove 'func'. 2262 (_OP_DEF): Adapt. 2263 (Eval_Cycle): Always call 'opexe_0'. 2264 2265 gpgscm: Merge 'opexe_6'. 2266 + commit c183d8f4c6cdf6b48265f01e4c007895f2626fc5 2267 * tests/gpgscm/scheme.c (opexe_6): Merge into 'opexe_0'. 2268 * tests/gpgscm/opdefines.h: Adapt. 2269 2270 gpgscm: Merge 'opexe_5'. 2271 + commit 72674f169386d68a6d0fc2ba4bc5a065435802a0 2272 * tests/gpgscm/scheme.c (opexe_5): Merge into 'opexe_0'. 2273 * tests/gpgscm/opdefines.h: Adapt. 2274 2275 gpgscm: Merge 'opexe_4'. 2276 + commit 5898ead4a99d3bc9e23859daf2cca9632d92f1f7 2277 * tests/gpgscm/scheme.c (opexe_4): Merge into 'opexe_0'. 2278 * tests/gpgscm/opdefines.h: Adapt. 2279 2280 gpgscm: Merge 'opexe_3'. 2281 + commit b13610ec7bf2bf199eb22f936bc2f2d4ac240fde 2282 * tests/gpgscm/scheme.c (opexe_3): Merge into 'opexe_0'. 2283 * tests/gpgscm/opdefines.h: Adapt. 2284 2285 gpgscm: Merge 'opexe_2'. 2286 + commit 7bc96831c7156fa07cfd55259f309ca4fa676c2e 2287 * tests/gpgscm/scheme.c (opexe_2): Merge into 'opexe_0'. 2288 * tests/gpgscm/opdefines.h: Adapt. 2289 2290 gpgscm: Merge 'opexe_1'. 2291 + commit 19a1be5ac3c9f3e26c453cf2ddc6d88af19e2d43 2292 * tests/gpgscm/scheme.c (opexe_1): Merge into 'opexe_0'. 2293 * tests/gpgscm/opdefines.h: Adapt. 2294 22952017-04-07 Justus Winter <justus@g10code.com> 2296 2297 gpgscm: Allocate small integers in the rodata section. 2298 + commit 7cee693e31fa1196161d5fbe7149a176049735ac 2299 * tests/gpgscm/Makefile.am (gpgscm_SOURCES): Add new file. 2300 * tests/gpgscm/scheme-private.h (struct cell): Move number to the top 2301 of the union so that we can initialize it. 2302 (struct scheme): Remove 'integer_segment'. 2303 * tests/gpgscm/scheme.c (initialize_small_integers): Remove function. 2304 (small_integers): New variable. 2305 (MAX_SMALL_INTEGER): Compute. 2306 (mk_small_integer): Adapt. 2307 (mark): Avoid marking objects already marked. This allows us to run 2308 the algorithm over objects in the rodata section if they are already 2309 marked. 2310 (scheme_init_custom_alloc): Remove initialization. 2311 (scheme_deinit): Remove deallocation. 2312 * tests/gpgscm/small-integers.h: New file. 2313 2314 gpgscm: Make global data constant when possible. 2315 + commit 9fc4e6cbe6d5d3f2dd1c61ded15e2ad42f8f9460 2316 * tests/gpgscm/scheme-private.h (struct scheme): Make 'vptr' const. 2317 * tests/gpgscm/scheme.c (num_zero): Statically initialize and turn 2318 into constant. 2319 (num_one): Likewise. 2320 (charnames): Change type so that it can be stored in rodata. 2321 (is_ascii_name): Adapt slightly. 2322 (assign_proc): Make argument const char *. 2323 (op_code_info): Make some fields const char *. 2324 (tests): Make const. 2325 (dispatch_table): Make const. At least it can be made read-only after 2326 relocation. 2327 (Eval_Cycle): Adapt slightly. 2328 (vtbl): Make const. 2329 2330 gpgscm: Remove arbitrary limit on number of cell segments. 2331 + commit 961f3b3a3001384d5df1d5a9963c5f67f800cd4d 2332 * tests/gpgscm/scheme-private.h (struct scheme): Remove fixed-size 2333 arrays for cell segments, replace them with a pointer to the new 2334 'struct cell_segment' instead. 2335 * tests/gpgscm/scheme.c (struct cell_segment): New definition. 2336 (_alloc_cellseg): Allocate the header within the segment, return a 2337 pointer to the header. 2338 (_dealloc_cellseg): New function. 2339 (alloc_cellseg): Insert the segments into a list. 2340 (_get_cell): Allocate a new segment if less than a quarter of 2341 CELL_SIGSIZE is recovered during garbage collection. 2342 (initialize_small_integers): Adapt callsite. 2343 (gc): Walk the list of segments. 2344 (scheme_init_custom_alloc): Remove initialization of removed field. 2345 (scheme_deinit): Adapt deallocation. 2346 2347 gpgscm: Fix compact vector encoding. 2348 + commit a493ad44b6a67026aeae08d25575fee8c0f137b4 2349 * tests/gpgscm/scheme-private.h (struct cell): Use uintptr_t for 2350 '_flags'. This way, '_flags' has the size of a machine word. 2351 23522017-04-06 Justus Winter <justus@g10code.com> 2353 2354 gpgscm: Avoid mutating integer. 2355 + commit 00de0fd1cebd89330765470bbb6e1e8bf5f3dfc9 2356 * tests/gpgscm/scheme.c (opexe_5): Do not modify the integer in-place 2357 while printing an vector. Integer objects may be shared, so they must 2358 not be mutated. 2359 2360 gpgscm: Initialize unused slots in vectors. 2361 + commit 54ea82c2e7e5700b9644c663142c2d46441a3f4e 2362 * tests/gpgscm/scheme.c (get_vector_object): Initialize unused slots 2363 at the end of vectors. 2364 23652017-04-04 Justus Winter <justus@g10code.com> 2366 2367 gpgscm: Fix copying values. 2368 + commit 52d0423e48dfe4dd51dc0acbf119431701280a70 2369 * tests/gpgscm/scheme.c (copy_value): New function. 2370 (mk_tagged_value): Use new function. 2371 (opexe_4): Likewise for OP_SAVE_FORCED. 2372 2373 gpgscm: Simplify get-output-string operation. 2374 + commit c9244b2eb43e0f06928b709ac35127966e1d24ce 2375 * tests/gpgscm/scheme.c (opexe_4): Simplify 'get-output-string'. 2376 2377 gpgscm: Simplify substring operation. 2378 + commit 6900f118303962262923f9d103b802508d5f469f 2379 * tests/gpgscm/scheme.c (opexe_2): Simplify 'substring'. 2380 23812017-04-03 Justus Winter <justus@g10code.com> 2382 2383 gpgscm: Slightly improve the procedure dispatch. 2384 + commit 9a4283ed6aafc1e43d8f7a5fd9cef6118615f284 2385 * tests/gpgscm/scheme.c (procnum): Procedures always have an integer 2386 number, so we can safely use the cheaper 'ivalue_unchecked'. 2387 23882017-03-23 Justus Winter <justus@g10code.com> 2389 2390 gpgscm: Make test cleanup more robust. 2391 + commit e1780b2f981d3fd48bbf2672b35f2f33152f6c32 2392 * tests/gpgscm/tests.scm (mkdtemp-autoremove): New function that 2393 cleans up at interpreter shutdown. 2394 (run-tests-parallel): Use the new function. 2395 (run-tests-sequential): Likewise. 2396 (make-environment-cache): Execute setup with an temporary working 2397 directory. 2398 23992017-03-21 Justus Winter <justus@g10code.com> 2400 2401 tests,w32: Use GetTempPath to get the path for temporary files. 2402 + commit 8835ee681f5ae92ded982b51f5808935d227b126 2403 * tests/gpgscm/ffi.c (do_get_temp_path): New function. 2404 (ffi_init): Make function available. 2405 * tests/gpgscm/tests.scm (mkdtemp): Use the new function. 2406 2407 tests: Create temporary directories in '/tmp'. 2408 + commit cfc49428a427d1a140424c687cb45ba00117d443 2409 * tests/gpgscm/tests.scm (mkdtemp): Create temporary directories in 2410 '/tmp' on UNIX, or in '%Temp' on Windows. 2411 * tests/migrations/common.scm (run-test): Turn error into a warning. 2412 * tests/openpgp/defs.scm (start-agent): Likewise. 2413 24142017-03-17 Justus Winter <justus@g10code.com> 2415 2416 gpgscm: Simplify hash tables. 2417 + commit 053a3f9a61a2918131b9dec60149b93861c04a51 2418 * tests/gpgscm/scheme.c (oblist_add_by_name): We now always get a 2419 slot. Simplify accordingly. 2420 (oblist_find_by_name): Always return the slot. 2421 (vector_elem_slot): New function. 2422 (new_slot_spec_in_env): We now always get a slot. Remove parameter 2423 'env'. Simplify accordingly. 2424 (find_slot_spec_in_env): Always return a slot. 2425 (new_slot_in_env): Adapt callsite. 2426 (opexe_0): Likewise. 2427 (opexe_1): Likewise. 2428 (scheme_define): Likewise. 2429 2430 gpgscm: Remove framework for immediate values. 2431 + commit a1ed4b6ab25f28114d8ba6f704824a456d4fdc0c 2432 * tests/gpgscm/scheme.c (IMMEDIATE_TAG): Remove macro. 2433 (is_immediate): Likewise. 2434 (set_immediate): Likewise. 2435 (clr_immediate): Likewise. 2436 (enum scheme_types): Set the LSB in every value. 2437 (fill_vector): Adapt. 2438 (vector_elem): Likewise. 2439 (set_vector_elem): Likewise. 2440 (mark): Likewise. 2441 (gc): Test for the LSB to tell typeflags apart from pointers stored in 2442 the same memory location. 2443 24442017-03-09 Justus Winter <justus@g10code.com> 2445 2446 tests: Rework environment setup. 2447 + commit 14fcdcabb25d975f0f91be86b0571694fb533e7a 2448 * tests/gpgscm/tests.scm (test::scm): Add a setup argument. 2449 (test::binary): Likewise. 2450 (run-tests-parallel): Remove setup parameter. 2451 (run-tests-sequential): Likewise. 2452 (make-environment-cache): New function that handles the cache 2453 protocol. 2454 * tests/gpgme/run-tests.scm: Adapt accordingly. 2455 * tests/gpgsm/run-tests.scm: Likewise. 2456 * tests/migrations/run-tests.scm: Likewise. 2457 * tests/openpgp/run-tests.scm: Likewise. 2458 24592017-03-08 Justus Winter <justus@g10code.com> 2460 2461 build: Use macOS' compatibility macros to enable all features. 2462 + commit 5e51b642f747547c737a7abbc37e65b0f630d188 2463 * configure.ac: On macOS, use the compatibility macros to expose every 2464 feature of the libc. This is the equivalent of _GNU_SOURCE on GNU 2465 libc. 2466 24672017-03-07 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> 2468 2469 gpgscm: Use system strlwr if available. 2470 + commit ca3d31ec77612cecc16c376ac7c06ce09541b28e 2471 * tests/gpgscm/scheme.c: Define local strlwr only when HAVE_STRLWR is 2472 not defined in config.h. 2473 * tests/gpgscm/scheme-config.h: Remove hack. 2474 24752017-03-07 NIIBE Yutaka <gniibe@fsij.org> 2476 2477 More change for common. 2478 + commit d372378d28b2504225aae6819d056330e7ac0674 2479 * g10, scd, test, tools: Follow the change of removal of -Icommon. 2480 2481 w32: Conditionalize ISO 2022 definitions. 2482 + commit 1126c4c117a47c8ea8435ac11561d51b13f538dd 2483 * src/w32-iconv.c (iso2022_SI_seq, iso2022_SO_seq) [USE_MLANG_DLL]: 2484 Only for USE_MLANG_DLL. 2485 24862017-03-06 Justus Winter <justus@g10code.com> 2487 2488 tests: Harmonize temporary and socket directory handling. 2489 + commit 490c5d5afeaae66dc061295afbc254e57abd20c8 2490 * tests/gpgscm/tests.scm (mkdtemp): Do not magically obey the 2491 environment variable 'TMP', make sure to always return an absolute 2492 path. 2493 * tests/gpgme/Makefile.am (TMP): Drop variable. 2494 (TESTS_ENVIRONMENT): Drop 'TMP'. 2495 * tests/gpgme/gpgme-defs.scm (create-gpgmehome): Start the agent. Do 2496 not create private key store, the agent does that for us. 2497 * tests/gpgsm/Makefile.am (TMP): Drop variable. 2498 (TESTS_ENVIRONMENT): Drop 'TMP'. 2499 * tests/gpgme/gpgme-defs.scm (create-gpgsmhome): Start the agent. Do 2500 not create private key store, the agent does that for us. 2501 * tests/migrations/Makefile.am (TMP): Drop variable. 2502 (TESTS_ENVIRONMENT): Drop 'TMP'. 2503 * tests/migrations/common.scm (gpgconf): New variable. 2504 (run-test): Create and remove socket directory. 2505 * tests/migrations/extended-pkf.scm (src-tarball): Remove variable. 2506 (setup): Remove function. 2507 (trigger-migration): Likewise. 2508 Use 'run-test' to execute the test. 2509 * tests/migrations/from-classic.scm (src-tarball): Remove variable. 2510 (setup): Remove function. 2511 Use 'run-test' to execute the tests. 2512 * tests/openpgp/Makefile.am (TMP): Drop variable. 2513 (TESTS_ENVIRONMENT): Drop 'TMP'. 2514 * tests/openpgp/README: Do not mention 'TMP'. 2515 * tests/openpgp/defs.scm (with-home-directory): New macro. 2516 (create-legacy-gpghome): Do not create private key store, the agent 2517 does that for us. 2518 (start-agent): Make sure to terminate the right agent with 'atexit'. 2519 2520 gpgscm: Fix creation of temporary directories. 2521 + commit 9e29af900544fe4210a72cae87be78186d03e231 2522 * tests/gpgscm/ffi.c (do_mkdtemp): Use a larger buffer for the 2523 template. 2524 25252017-02-28 Justus Winter <justus@g10code.com> 2526 2527 gpgscm: Improve parsing. 2528 + commit 9467f3c7758864f3c025c14166c9d099bea6fe62 2529 * tests/gpgscm/scheme.c (port_increment_current_line): Avoid creating 2530 the same integer if the delta is zero. This happens a lot during 2531 parsing, and puts pressure on the memory allocator. 2532 2533 gpgscm: Fix calculating the line number. 2534 + commit 08e1cfddc94a6aae79b21d7795accf3e100a1f2f 2535 * tests/gpgscm/scheme.c (opexe_5): Only increment the line number on 2536 newlines. 2537 25382017-02-28 Werner Koch <wk@gnupg.org> 2539 2540 Release 1.27. 2541 + commit c1668f61c58ea6f0439e5193d83b4e2ac622b286 2542 * configure.ac: Bump LT version to C22/A22/R0. 2543 2544 Add support for armv7-unknown-linux-gnueabihf. 2545 + commit 8d45ec8f8f61268a74d9c40b840a8fbd6f805a07 2546 * src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabihf.h: Remove. 2547 * src/syscfg/lock-obj-pub.armv5-unknown-linux-musleabi.h: Remove. 2548 * src/syscfg/lock-obj-pub.armv6-unknown-linux-musleabihf.h: Remove. 2549 * src/Makefile.am (lock_obj_pub): Remove them. 2550 * src/mkheader.c (canon_host_triplet): Add removed as aliases. Addn 2551 alias for armv7-unknown-linux-gnueabihf. 2552 2553 New public header gpgrt.h as alias for gpg-error.h. 2554 + commit 012f1bdc87e9969131c72c5575af0851484a2196 2555 * src/gpg-error.h.in (GPGRT_H): New double include protection. 2556 * src/Makefile.am (nodist_include_HEADERS): Add gpgrt.h. 2557 (BUILT_SOURCES): Ditto. 2558 (CLEANFILES): Ditto. 2559 (gpgrt.h): New rule. 2560 2561 tests: New option --debug for t-poll. 2562 + commit f141fdee4015d36aec2122853ef55f3ae42197da 2563 * tests/t-poll.c (test_poll): Add option. 2564 2565 Improve tracing of estream. 2566 + commit f27e516aabd27afeddecfde197eae1fd21a11395 2567 * src/gpgrt-int.h (trace_errno): Add new parameter. Adjust all users. 2568 * src/init.c (trace_fp, trace_with_errno, trace_missing_lf) 2569 (trace_prefix_done): New vars. 2570 (_gpgrt_internal_trace_begin): Add arg WITH_ERRNO. Open a trace file 2571 on first use. Init new vars. 2572 (print_internal_trace_prefix): New. 2573 * src/estream.c, src/w32-estream.c: Improve tracing. 2574 25752017-02-28 Justus Winter <justus@g10code.com> 2576 2577 gpgscm: Track source locations in every kind of ports. 2578 + commit 9b23e71a6b41cd11b39ab1e1d18c140eaf63c3e7 2579 * tests/gpgscm/scheme-private.h (struct port): Move location 2580 information out of the union. 2581 * tests/gpgscm/scheme.c (mark): All ports need marking now. 2582 (gc): Likewise all ports on the load stack. 2583 (port_clear_location): Adapt accordingly. Also, add an empty function 2584 for !SHOW_ERROR_LINE. 2585 (port_increment_current_line): Likewise. 2586 (port_reset_current_line): Drop function in favor of... 2587 (port_init_location): ... this new function. 2588 (file_push): Simplify. 2589 (file_pop): Likewise. 2590 (port_rep_from_filename): Likewise. 2591 (port_rep_from_file): Likewise. 2592 (port_rep_from_string): Also initialize the location. 2593 (port_rep_from_scratch): Likewise. 2594 (port_close): Simplify and generalize. 2595 (skipspace): Likewise. 2596 (token): Likewise. 2597 (_Error_1): Generalize. 2598 (opexe_5): Likewise. 2599 (scheme_deinit): Simplify and generalize. 2600 (scheme_load_named_file): Likewise. 2601 (scheme_load_string): Also initialize the location. 2602 26032017-02-28 Werner Koch <wk@gnupg.org> 2604 2605 w32: Fix gpgrt_poll for Windows. 2606 + commit 07d5bd918d2185f79c7d61d56ee7f3090b6f5dcd 2607 * src/estream.c (_gpgrt_poll) [W32]: Do not call the syscall clamp. 2608 26092017-02-27 Werner Koch <wk@gnupg.org> 2610 2611 Use the new tracing ramework for estream. 2612 + commit 84aaa84d41f17d6f5e2bb31930e101568df554e2 2613 * src/estream.c: Add trace calls to some functions. 2614 * src/w32-estream.c: Replace existing trace calls by the new 2615 framework. 2616 2617 Add a tracing framework. 2618 + commit a52f12cc1879d171ddf309b5ac461bab06c8b5e2 2619 * src/init.c (trace_save_errno, trace_arg_module) 2620 (trace_arg_file, trace_arg_line): New module vars. 2621 (do_internal_trace): New. 2622 (_gpgrt_internal_trace_printf): New. 2623 (_gpgrt_internal_trace): New. 2624 (_gpgrt_internal_trace_errno): New. 2625 (_gpgrt_internal_trace_end): New. 2626 * src/gpgrt-int.h (trace): New macro. 2627 (trace_errno): New macro. 2628 (trace_start): New macro. 2629 (trace_append): New macro. 2630 (trace_finish): New macro. 2631 26322017-02-26 Werner Koch <wk@gnupg.org> 2633 2634 Rename internal functions of estream. 2635 + commit be49b02a56e8b405eeb0c07c80eb24e71e841b4a 2636 * src/estream.c (_gpgrt_es_init): Rename to _gpgrt_estream_init. 2637 (es_fill): Rename to fill_stream. 2638 (es_fflush): Rename to flush_stream. 2639 (es_deinitialize): Rename to deinit_stream_obj. 2640 (es_create): Rename to create_stream 2641 (es_read_nbf): Rename to do_read_nbf. 2642 (es_read_lbf): Rename to do_read_lbf. 2643 (es_read_fbf): Rename to do_read_fbf. 2644 (es_peek): Rename to peek_stream. 2645 (es_skip): Rename to skip_stream. 2646 (es_print): Rename to do_print_stream. 2647 26482017-02-24 Werner Koch <wk@gnupg.org> 2649 2650 w32: Do not use the syscall clamps in pollable mode. 2651 + commit 915e1bf2ad1b23239b17843755376344e59a3110 2652 * src/estream.c (estream_cookie_w32): Add flag no_syscall_clamp. 2653 (func_w32_create): Add arg no_syscall_clamp. 2654 (func_w32_read): Do not call pre/post_syscall_clamp when flag is set. 2655 (func_w32_write): Ditto. 2656 (func_w32_seek): Ditto. 2657 (do_w32open): Set NO_SYSCALL_CLAMP in pollable mode. 2658 (es_create) [W32]: Make sure that pollable-mode is unly used with the 2659 W32 backend. 2660 26612017-02-23 Werner Koch <wk@gnupg.org> 2662 2663 w32: Replace gpgrt locks in w32-streams by native critical sections. 2664 + commit c9e44c92e08187626e878d826cdedf4cd4e931fe 2665 * src/w32-estream.c (TRACE_ERR): Also print the error number. This is 2666 in particular useful on non-english systems. 2667 (reader_context_s, writer_context_s): Replace the gpgrt mutex by a 2668 native critical section. Change all calls to gpgrt_lock_ fucntions by 2669 the EnterCriticalSection et al. 2670 (_gpgrt_w32_poll): Make CODE unsigned which is what WFMO returns. 2671 Remove the then useless condition. 2672 26732017-02-19 Werner Koch <wk@gnupg.org> 2674 2675 New error code GPG_ERR_INV_NAME. 2676 + commit 3a2ee6df5911728938a2fb56237b08f790841a0c 2677 2678 26792017-02-17 Justus Winter <justus@g10code.com> 2680 2681 gpgscm: Guard use of tagged expressions. 2682 + commit 86082852350810afa548c607241df95f9cac777a 2683 * tests/gpgscm/init.scm (vm-history-print): Check that the tag added 2684 to expressions when parsing source files matches the expected format. 2685 * tests/gpgscm/lib.scm (assert): Likewise. 2686 26872017-02-15 Justus Winter <justus@g10code.com> 2688 2689 tests,build: Fix distcheck. 2690 + commit 52748cd96c70c9da01c35de10dd1627f7897d085 2691 * tests/gpgscm/Makefile.am (EXTRA_DIST): Add 'time.scm'. 2692 2693 tests: Check expiration times of created keys. 2694 + commit b2db15dfe894a27246236ed416c8e2c2fc0e73c4 2695 * tests/gpgscm/ffi.c (do_get_time): New function. 2696 (ffi_init): Expose new function. 2697 * tests/gpgscm/ffi.scm (get-time): Document new function. 2698 * tests/gpgscm/time.scm: New file. 2699 * tests/openpgp/quick-key-manipulation.scm: Use the new facilities to 2700 check the expiration times of created keys. 2701 * tests/openpgp/tofu.scm: Use the new module. 2702 27032017-02-02 NIIBE Yutaka <gniibe@fsij.org> 2704 2705 syscfg: Add a sh3 architecture. 2706 + commit 67e51f9957f875ca854f25f4a9a63aeb831c55c4 2707 * src/syscfg/lock-obj-pub.sh3-unknown-linux-gnu.h: New. 2708 * src/Makefile.am (lock_obj_pub): Add it. 2709 27102017-02-01 NIIBE Yutaka <gniibe@fsij.org> 2711 2712 Add Base64 decoder. 2713 + commit 4bfc2117b70415a5c5d3f0a0ac9086e168350d83 2714 * NEWS: Add interface changes. 2715 * src/Makefile.am (libgpg_error_la_SOURCES): Add b64dec.c. 2716 * src/b64dec.c: New. Taken from gpgme. Prefix function names with 2717 _gpgrt_. Change API a bit, not exposing the structure. 2718 * src/gpg-error.def.in: Export Base64 functions. 2719 * src/gpg-error.vers: Likewise. 2720 * src/visibility.c, src/visibility.h: Likewise. 2721 * src/gpg-error.h.in: Add Base64 struct and functions. 2722 * src/gpgrt-int.h: Add Base64 internal functions. 2723 * tests/Makefile.am (TESTS): Add t-b64dec. 2724 * tests/t-b64dec.c: New. 2725 27262017-01-31 Justus Winter <justus@g10code.com> 2727 2728 gpgscm: Tune the hash tables. 2729 + commit 1c99db04ed62d395c1c88171ef147a580e0bb4ab 2730 * tests/gpgscm/scheme.c (oblist_initial_value): Increase the size of 2731 the hash table based on the number of symbols used after initializing 2732 the interpreter. 2733 (new_frame_in_env): Increase the size of the hash table based on the 2734 number of variables in the global environement. 2735 2736 gpgscm: Optimize environment lookups and insertions. 2737 + commit fa2363d9d903dfc9885f7d2f290fb4d7738bb737 2738 * tests/gpgscm/scheme.c (pointercmp): New function. 2739 (new_slot_spec_in_env): Add and use slot for insertions. 2740 (find_slot_spec_in_env): New variant of 'find_slot_in_env' that 2741 returns the slot on failures. 2742 (find_slot_in_env): Express using the new function. 2743 (new_slot_in_env): Update callsite. 2744 (opexe_0): Optimize lookup-or-insert. 2745 (opexe_1): Likewise. 2746 (scheme_define): Likewise. 2747 2748 gpgscm: Fix build with list environments. 2749 + commit e982432ba66652bc9bc16e334e1d4d184e1b68bd 2750 * tests/gpgscm/scheme.c (new_slot_spec_in_env): Provide preallocation 2751 inforomation if USE_ALIST_ENV. 2752 2753 gpgscm: Optimize symbol lookups and insertions. 2754 + commit d374a1271326e503bd7cabe11cf5fd10a970d9fc 2755 * tests/gpgscm/scheme.c (oblist_find_by_name): Keep the list of 2756 symbols sorted, return the slot where a new symbol must be inserted on 2757 lookup failures. 2758 (oblist_add_by_name): Add the new symbol at the given slot. 2759 (mk_symbol): Adjust callsite. 2760 (gensym): Likewise. 2761 (assign_syntax): Likewise. 2762 2763 gpgscm: Fix build with object list. 2764 + commit 85f6f60197fe56c90b663fb34db4cddf62c28c1b 2765 * tests/gpgscm/scheme.c (oblist_add_by_name): Provide preallocation 2766 information if USE_OBJECT_LIST. 2767 2768 gpgscm: Remove unused functions. 2769 + commit 92e929d4b91cbb5e36d6cb89aabf2211a7185a65 2770 * tests/gpgscm/scheme.c (check_cell_alloced): Remove function. 2771 (check_range_alloced): Likewise. 2772 27732017-01-30 Justus Winter <justus@g10code.com> 2774 2775 gpgscm: Use a compact vector representation. 2776 + commit 5809edef40acf1f8f0e71b69dcb10e1d5464f2a5 2777 * tests/gpgscm/scheme-private.h (struct cell): Add a compact vector 2778 representation. 2779 * tests/gpgscm/scheme.c (vector_length): Use new representation. 2780 (vector_size): New macro. 2781 (get_vector_object): Use the new representation. 2782 (fill_vector): Likewise. 2783 (vector_elem): Likewise. 2784 (set_vector_elem): Likewise. 2785 (mark): Likewise. 2786 (gc): Likewise. Be careful not to confuse immediate values for type 2787 flags. 2788 (finalize_cell): Vectors now require finalization. 2789 2790 gpgscm: Provide framework for immediate values. 2791 + commit e1dc204ac465498436f463d419b9583011026807 2792 * tests/gpgscm/scheme.c (IMMEDIATE_TAG): New macro. 2793 ({is,set,clr}_immediate): Likewise. 2794 (enum scheme_types): Make type tags disjoint from immediate values. 2795 (TYPE_BITS): We need one more bit now. 2796 (ADJ,T_MASKTYPE): Compute values. 2797 2798 gpgscm: Fix setting the line of the first gc reservation. 2799 + commit c587e6a038fc532df064eec7bea2ad1db31238ad 2800 * tests/gpgscm/scheme.c (_gc_disable): Negate guard. 2801 2802 gpgscm: Introduce macro for the vector length. 2803 + commit e2caaa957b56f20cfe09bc6ca5a595b37a860b51 2804 * tests/gpgscm/scheme.c (vector_length): New macro. 2805 (get_vector_object): Use the new macro. 2806 (oblist_add_by_name): Likewise. 2807 (oblist_find_by_name): Likewise. 2808 (oblist_all_symbols): Likewise. 2809 (mk_vector): Likewise. 2810 (mark): Likewise. 2811 (new_slot_spec_in_env): Likewise. 2812 (find_slot_spec_in_env): Likewise. 2813 (opexe_2): Likewise. 2814 (opexe_5): Likewise. 2815 28162017-01-19 Werner Koch <wk@gnupg.org> 2817 2818 estream: Correctly set ERRNO to EOPNOTSUPP. 2819 + commit 55c497904dd0794ca5cfcafe369943736b0d4e62 2820 * src/estream.c (es_flush, es_write_nbf): Fix setting of ERRNO to 2821 EOPNOTSUPP. 2822 28232017-01-17 Werner Koch <wk@gnupg.org> 2824 2825 build: Modernize autogen.sh. 2826 + commit 66275ac5b8db9d83a72b5497eec4e6d9ac3b4e65 2827 * autogen.sh: Update from GnuPG. 2828 * autogen.rc (version_parts): New. 2829 * configure.ac: Change to use autogen.sh --find-version helper. 2830 * Makefile.am (dist-hook): Do not create VERSION 2831 (EXTRA_DIST): Add VERSION. 2832 28332017-01-10 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 2834 2835 doc,configure: Be consistent about preferring --with-libgpg-error-prefix 2836 + commit 19de4cef279272d3969e36dd8cd2fa05a7bf5276 2837 * doc/gpgrt.texi: Say "--with-libgpg-error-prefix" instead of 2838 "--with-gpg-error-prefix". 2839 * src/gpg-error.m4: When warning about library locations, warn with 2840 the preferred "--with-libgpg-error-prefix" name. 2841 28422017-01-03 Werner Koch <wk@gnupg.org> 2843 2844 Fix macro GPGRT_GCC_VERSION. 2845 + commit 704c31992e8716bbe61e6d5751e125a64badeef0 2846 * src/gpg-error.h.in (GPGRT_GCC_VERSION): Fix. 2847 28482017-01-02 Justus Winter <justus@g10code.com> 2849 2850 gpgscm: Fail if too many arguments are given. 2851 + commit 56787d898a6911e62b35c3054a22df1a913c26cf 2852 * tests/gpgscm/scheme.c (opexe_0): Enable check. 2853 * tests/gpgscm/tests.scm (test::report): Remove superfluous argument. 2854 2855 gpgscm: Add 'finally', rework all macros. 2856 + commit 7d95db002aac773e596c551b8fcba2d983244495 2857 * tests/gpgscm/init.scm (finally): New macro. 2858 * tests/gpgscm/tests.scm (letfd): Rewrite. 2859 (with-working-directory): Likewise. 2860 (with-temporary-working-directory): Likewise. 2861 (lettmp): Likewise. 2862 2863 gpgscm: Use boxed values for source locations. 2864 + commit 4165c9303d894179c0da3a1b12316d3df8d4ce82 2865 * tests/gpgscm/scheme-private.h (struct port): Use boxed values for 2866 filename and current line. This allows us to use the same Scheme 2867 object for labeling all expressions in a file. 2868 * tests/gpgscm/scheme.c (file_push): Use boxed type for filename. 2869 (mark): Mark location objects of port objects. 2870 (gc): Mark location objects in the load stack. 2871 (port_clear_location): New function. 2872 (port_reset_current_line): Likewise. 2873 (port_increment_current_line): Likewise. 2874 (file_pop): Adapt accordingly. 2875 (port_rep_from_filename): Likewise. 2876 (port_rep_from_file): Likewise. 2877 (port_close): Likewise. 2878 (skipspace): Likewise. 2879 (token): Likewise. 2880 (_Error_1): Likewise. 2881 (opexe_0): Likewise. 2882 (opexe_5): Likewise. 2883 (scheme_deinit): Likewise. 2884 (scheme_load_file): Likewise. 2885 (scheme_load_named_file): Likewise. 2886 28872016-12-21 Justus Winter <justus@g10code.com> 2888 2889 gpgscm: Guard use of union member. 2890 + commit aa6b3449bf1b42703b4c6466d87f91620743a5d2 2891 * tests/gpgscm/scheme.c (opexe_5): Check that we have a file port 2892 before accessing filename. Fixes a crash on 32-bit architectures. 2893 28942016-12-21 Werner Koch <wk@gnupg.org> 2895 2896 Release 1.26. 2897 + commit 82266defa39901ec9f97533623af5638a35e5a77 2898 * configure.ac: Bump LT version to C21/A21/R0. 2899 29002016-12-20 Justus Winter <justus@g10code.com> 2901 2902 tests: Move argument parser. 2903 + commit 5f16dec938ac6e337c6ff72981285385d75ec455 2904 * tests/gpgme/gpgme-defs.scm (flag): Move... 2905 * tests/gpgscm/tests.scm: ... over here. 2906 29072016-12-19 Justus Winter <justus@g10code.com> 2908 2909 gpgscm: Change associativity of ::. 2910 + commit 3ae0b5d9af063e7af03558be2bf8f32e5bb4e5cd 2911 * tests/gpgscm/scheme.c (mk_atom): Change associativity of the :: 2912 infix-operator. This makes it possible to naturally express accessing 2913 nested structures (e.g. a::b::c). 2914 2915 gpgscm: Display location when assertions fail. 2916 + commit b852ac097f3dfe4e62c3d27e18a22f1b9f704530 2917 * tests/gpgscm/lib.scm (assert): Use location information if 2918 available. 2919 2920 gpgscm: Make exception handling more robust. 2921 + commit 5221e0b2a3bd2dbb4f997e3c2118b176e10e116e 2922 * tests/gpgscm/init.scm (throw'): Check that args is a list. 2923 29242016-12-13 Justus Winter <justus@g10code.com> 2925 2926 gpgscm: Print failed and skipped tests. 2927 + commit e8c5871609dd3ff3b2aa3d21ab5c3651ba683ed7 2928 * tests/gpgscm/tests.scm (test-pool::report): Print failed and skipped 2929 tests at the end. 2930 2931 gpgscm: Generalize the test runner. 2932 + commit b1e67a725d17ff1605ba79d8bb61f37c4a48f0a5 2933 * tests/gpgscm/tests.scm (test::scm) Add explicit name argument. 2934 (test::binary): Likewise. Also, add missing unquote. 2935 * tests/openpgp/run-tests.scm: Adapt accordingly. 2936 2937 gpgscm: Move the test runner to the Scheme library. 2938 + commit 0031a4d4d8a1851f0c32ad1af2f42f59bd016001 2939 * tests/openpgp/run-tests.scm: Move most of the code... 2940 * tests/gpgscm/tests.scm: ... here. 2941 2942 gpgscm: Improve library functions. 2943 + commit f745dcab2b1789c8f64c2be4b5dcc7322212e1d2 2944 * tests/gpgscm/tests.scm (absolute-path?): New function. 2945 (canonical-path): Use the new function. 2946 * tests/gpgscm/lib.scm (string-split-pln): New function. 2947 (string-indexp, string-splitp): Likewise. 2948 (string-splitn): Express using the above function. 2949 (string-ltrim, string-rtrim): Fix corner case. 2950 (list->string-reversed): New function. 2951 (read-line): Fix performance. 2952 29532016-12-13 Werner Koch <wk@gnupg.org> 2954 2955 New error code GPG_ERR_TRY_LATER. 2956 + commit f02a657f0129b30700b2f36956ee37b40cc2da82 2957 2958 29592016-12-12 Werner Koch <wk@gnupg.org> 2960 2961 New error code GPG_ERR_DNS_TIMEOUT. 2962 + commit 90b4dfad438900c7808b8c2995ba984fa3587bb2 2963 2964 2965 New error codes to support libdns. 2966 + commit 56ab574c28586fccd95a08acdc9ee4962ab0db50 2967 2968 29692016-12-08 Justus Winter <justus@g10code.com> 2970 2971 gpgscm: Better error reporting. 2972 + commit 735c66bd2d5672de8cc7573fe9d6af4615b86fe2 2973 * tests/gpgscm/ffi.scm: Move the customized exception handling and 2974 atexit logic... 2975 * tests/gpgscm/init.scm: ... here. 2976 (throw): Record the current history. 2977 (throw'): New function that is history-aware. 2978 (rethrow): New function. 2979 (*error-hook*): Use the new throw'. 2980 * tests/gpgscm/main.c (load): Fix error handling. 2981 (main): Save and use the 'sc->retcode' as exit code. 2982 * tests/gpgscm/repl.scm (repl): Print call history. 2983 * tests/gpgscm/scheme.c (_Error_1): Make a snapshot of the history, 2984 use it to provide a accurate location of the expression causing the 2985 error at runtime, and hand the history trace to the '*error-hook*'. 2986 (opexe_5): Tag all lists at parse time with the current location. 2987 * tests/gpgscm/tests.scm: Update calls to 'throw', use 'rethrow'. 2988 2989 gpgscm: Keep a history of calls for error messages. 2990 + commit 81c95b26e769a1ed4933fdf598a3df42d0416928 2991 * tests/gpgscm/init.scm (vm-history-print): New function. 2992 * tests/gpgscm/opdefines.h: New opcodes 'CALLSTACK_POP', 'APPLY_CODE', 2993 and 'VM_HISTORY'. 2994 * tests/gpgscm/scheme-private.h (struct history): New definition. 2995 (struct scheme): New field 'history'. 2996 * tests/gpgscm/scheme.c (gc): Mark objects in the history. 2997 (history_free): New function. 2998 (history_init): Likewise. 2999 (history_mark): Likewise. 3000 (add_mod): New macro. 3001 (sub_mod): Likewise. 3002 (tailstack_clear): New function. 3003 (callstack_pop): Likewise. 3004 (callstack_push): Likewise. 3005 (tailstack_push): Likewise. 3006 (tailstack_flatten): Likewise. 3007 (callstack_flatten): Likewise. 3008 (history_flatten): Likewise. 3009 (opexe_0): New variable 'callsite', keep track of the expression if it 3010 is a call, implement the new opcodes, record function applications in 3011 the history. 3012 (opexe_6): Implement new opcode. 3013 (scheme_init_custom_alloc): Initialize history. 3014 (scheme_deinit): Free history. 3015 * tests/gpgscm/scheme.h (USE_HISTORY): New macro. 3016 3017 gpgscm: Add flag TAIL_CONTEXT. 3018 + commit 83175b317dccceb149906cda721aa33178797f3e 3019 * tests/gpgscm/scheme.c (S_FLAG_TAIL_CONTEXT): New macro. This flag 3020 indicates that the interpreter is evaluating an expression in a tail 3021 context (see R5RS, section 3.5). 3022 (opexe_0): Clear and set the flag according to the rules layed out in 3023 R5RS, section 3.5. 3024 (opexe_1): Likewise. 3025 3026 gpgscm: Add flags to the interpreter. 3027 + commit 14d9ea4bd43e077fab4c756b513557cad76aacd2 3028 * tests/gpgscm/scheme-private.h (struct scheme): Add field 'flags'. 3029 * tests/gpgscm/scheme.c (S_OP_MASK): New macro. 3030 (S_FLAG_MASK, s_set_flag, s_clear_flag, s_get_flag): Likewise. 3031 (_s_return): Unpack the encoded opcode and flags. 3032 (s_save): Encode the flags along with the opcode. Use normal 3033 integers to encode the result. 3034 (scheme_init_custom_alloc): Initialize 'op' and 'flags'. 3035 3036 gpgscm: Implement tags. 3037 + commit 88753eea0d9b1ea40a46f3b3969d418ba75cccf9 3038 * tests/gpgscm/opdefines.h: Add opcodes to create and retrieve tags. 3039 * tests/gpgscm/scheme.c (T_TAGGED): New macro. 3040 (mk_tagged_value): New function. 3041 (has_tag): Likewise. 3042 (get_tag): Likewise. 3043 (mark): Mark tag. 3044 (opexe_4): Implement new opcodes. 3045 * tests/gpgscm/scheme.h (USE_TAGS): New macro. 3046 3047 gpgscm: Generalize 'for-each-p'. 3048 + commit 94e8811cb2fd0cb56b330a811d13075d54681e38 3049 * tests/gpgscm/tests.scm (for-each-p): Generalize to N lists like 3050 for-each. 3051 (for-each-p'): Likewise. 3052 30532016-12-06 Justus Winter <justus@g10code.com> 3054 3055 tests: Rename 'error' to 'fail'. 3056 + commit 85613efd8d49b39c1310d84484cb1647db83b4d5 3057 * tests/gpgscm/tests.scm (error): Rename to 'fail'. 'error' is a 3058 primitive function (an opcode) of the TinySCHEME vm, and 'error' is 3059 also defined by R6RS. Better avoid redefining that. Fix all call 3060 sites. 3061 * tests/openpgp/4gb-packet.scm: Adapt. 3062 * tests/openpgp/decrypt-multifile.scm: Likewise. 3063 * tests/openpgp/ecc.scm: Likewise. 3064 * tests/openpgp/export.scm: Likewise. 3065 * tests/openpgp/gpgtar.scm: Likewise. 3066 * tests/openpgp/gpgv-forged-keyring.scm: Likewise. 3067 * tests/openpgp/import.scm: Likewise. 3068 * tests/openpgp/issue2015.scm: Likewise. 3069 * tests/openpgp/issue2346.scm: Likewise. 3070 * tests/openpgp/issue2419.scm: Likewise. 3071 * tests/openpgp/key-selection.scm: Likewise. 3072 * tests/openpgp/mds.scm: Likewise. 3073 * tests/openpgp/multisig.scm: Likewise. 3074 * tests/openpgp/setup.scm: Likewise. 3075 * tests/openpgp/signencrypt.scm: Likewise. 3076 * tests/openpgp/ssh-import.scm: Likewise. 3077 * tests/openpgp/tofu.scm: Likewise. 3078 * tests/openpgp/verify.scm: Likewise. 3079 30802016-12-06 Neal H. Walfield <neal@g10code.com> 3081 3082 tests: Change (interactive-shell) to start an interactive shell. 3083 + commit 0d27b63f35c1e3a36631874fd111d3df2a1d51db 3084 * tests/gpgscm/tests.scm (interactive-shell): Start an interactive 3085 shell. 3086 30872016-12-02 Werner Koch <wk@gnupg.org> 3088 3089 Fix NULL segv in new option --desc. 3090 + commit 140a19617c78d5f0e2ac8d7e2c8e7092862ec2fb 3091 * src/gpg-error.c (print_desc): Shortcur for unknown symbols. 3092 3093 New error code GPG_ERR_INV_FLAG. 3094 + commit c761c981b38741421d13bb7102b1ea7625d2d639 3095 3096 3097 New option --desc for gpg-error. 3098 + commit b462d603f5110842489edce9e01e4ea40ac05cba 3099 * doc/errorref.txt: Remove all tabs. 3100 * doc/Makefile.am (install-data-local): New to install errorref.txt. 3101 (uninstall-local): New. 3102 (errorref.txt.x): New. 3103 * src/Makefile.am (gpg_error_CPPFLAGS): Define PKGDATADIR 3104 * src/gpg-error.c (print_desc): New. 3105 (show_usage): New. 3106 (main): Improve option parser. Add new option --desc. Call 3107 print_desc. 3108 31092016-11-29 Justus Winter <justus@g10code.com> 3110 3111 gpgscm: Avoid truncating pointers. 3112 + commit 941c0efdf826717aae88ea448ec60801f74bb476 3113 * tests/gpgscm/scheme.c (_alloc_cellseg): Avoid truncating pointers on 3114 systems where sizeof(unsigned long) < sizeof(void *). 3115 31162016-11-23 Justus Winter <justus@g10code.com> 3117 3118 gpgscm: Make 'reverse' compatible with 'reverse_in_place'. 3119 + commit 7f7869357cae0f75c5976ece12a1d94a659b904a 3120 * tests/gpgscm/scheme.c (reverse): Update prototype, add terminator 3121 argument. 3122 (opexe_4): Update callsite. 3123 3124 gpgscm: Clean sweeped cells. 3125 + commit a078d448415c74ee5169d548a901d27380d933f3 3126 * tests/gpgscm/scheme.c (gc): Zero typeflag and car of free cells. 3127 3128 gpgscm: Fix initialization of 'sink'. 3129 + commit 95db0d64ac0ccab6cf0e6d6ec25251ccb0fab9d3 3130 * tests/gpgscm/scheme.c (scheme_init_custom_alloc): Also initialize 3131 cdr. 3132 31332016-11-22 Justus Winter <justus@g10code.com> 3134 3135 gpgscm: Refactor. 3136 + commit b18458f3dfd53627994783d0f2ad835ae70a05af 3137 * tests/gpgscm/scheme.c (opexe_0): Reduce code duplication. 3138 3139 gpgscm: Fix property lists. 3140 + commit 08f16887de9d6f6dcb0b7a377407dbd4f541fe13 3141 * tests/gpgscm/opdefines.h (put, get): Check arguments. Also rename 3142 to 'set-symbol-property' and 'symbol-property', the names used by 3143 Guile, because put and get are too unspecific. 3144 * tests/gpgscm/scheme.c (hasprop): Only symbols have property lists. 3145 (get_property): New function. 3146 (set_property): Likewise. 3147 (opexe_4): Use the new functions. 3148 3149 gpgscm: Fix installation of error handler. 3150 + commit 185ba177abeaf2f8ad66529a42966362107a2d8b 3151 * tests/gpgscm/ffi.scm: Set '*error-hook*' again so that the 3152 interpreter will use our function. 3153 3154 gpgscm: Use a static pool of cells for small integers. 3155 + commit eca7b9bbee2986157ec6c078c998bd8a25becd8f 3156 * tests/gpgscm/scheme-private.h (struct scheme): New fields for the 3157 static integer cells. 3158 * tests/gpgscm/scheme.c (_alloc_cellseg): New function. 3159 (alloc_cellseg): Use the new function. 3160 (MAX_SMALL_INTEGER): New macro. 3161 (initialize_small_integers): New function. 3162 (mk_small_integer): Likewise. 3163 (mk_integer): Return a small integer if possible. 3164 (_s_return): Do not free 'op' if it is a small integer. 3165 (s_save): Use a small integer to box the opcode. 3166 (scheme_init_custom_alloc): Initialize small integers. 3167 (scheme_deinit): Free chunk of small integers. 3168 * tests/gpgscm/scheme.h (USE_SMALL_INTEGERS): New macro. 3169 31702016-11-17 Justus Winter <justus@g10code.com> 3171 3172 gpgscm: Re-enable the garbage collector in case of errors. 3173 + commit d2a75dc5ae2b172a232dad88639b15b4930b9151 3174 * tests/gpgscm/scheme.c (opexe_0): Enable gc before calling 'Error_1'. 3175 3176 gpgscm: Fix string. 3177 + commit 63cad2c16fdd343be89b576901c8f34de7cb74bf 3178 * tests/gpgscm/scheme.c (type_to_string): Fix string. 3179 31802016-11-17 NIIBE Yutaka <gniibe@fsij.org> 3181 3182 Fix EXEEXT for lock obj creation. 3183 + commit eeef6b8724b43e105ae2beef022fc957eb228bcf 3184 * src/Makefile.am (lock-obj-pub.native.h): Add EXEEXT for 3185 the executable gen-posix-lock-obj. 3186 31872016-11-15 Justus Winter <justus@g10code.com> 3188 3189 gpgscm: Mark cells requiring finalization. 3190 + commit ad10069af6b0d247f27b7dbf891029eb34d264e0 3191 * tests/gpgscm/scheme.c (T_FINALIZE): New macro. 3192 (mk_port): Use the new macro. 3193 (mk_foreign_object): Likewise. 3194 (mk_counted_string): Likewise. 3195 (mk_empty_string): Likewise. 3196 (gc): Only call 'finalize_cell' for cells with the new flag. 3197 3198 gpgscm: Recover more cells. 3199 + commit dd6bd1bf2a767e22bb7c1bd470ce94527a9fae3d 3200 * tests/gpgscm/scheme.c (_s_return): Recover the cell holding the 3201 opcode. 3202 32032016-11-14 Werner Koch <wk@gnupg.org> 3204 3205 Release 1.25. 3206 + commit 6d834f817fdb741ec64dcfbd2166ea044e4e0c3d 3207 * configure.ac: Set LT version to C20/A20/R0. 3208 3209 po: Update German translation. 3210 + commit 9cecc8ccded0759d94b08c9859e7ea843430dd97 3211 3212 3213 Fix typo in two new error descriptions. 3214 + commit 80350f97e9e811b9e77b59b8fc4172043f072f42 3215 3216 32172016-11-14 Justus Winter <justus@g10code.com> 3218 3219 gpgscm: Avoid cell allocation overhead. 3220 + commit dc1d3a79fa3e7944ea6ef02bc968446f9aa6d648 3221 * tests/gpgscm/scheme-private.h (struct scheme): New fields 3222 'inhibit_gc', 'reserved_cells', and 'reserved_lineno'. 3223 * tests/gpgscm/scheme.c (GC_ENABLED): New macro. 3224 (USE_GC_LOCKING): Likewise. 3225 (gc_reservations): Likewise. 3226 (gc_reservation_failure): New function. 3227 (_gc_disable): Likewise. 3228 (gc_disable): New macro. 3229 (gc_enable): Likewise. 3230 (gc_enabled): Likewise. 3231 (gc_consume): Likewise. 3232 (get_cell_x): Consume reserved cell if garbage collection is disabled. 3233 (_get_cell): Assert that gc is enabled. 3234 (get_cell): Only record cell in the list of recently allocated cells 3235 if gc is enabled. 3236 (get_vector_object): Likewise. 3237 (gc): Assert that gc is enabled. 3238 (s_return): Add comment, adjust call to '_s_return'. 3239 (s_return_enable_gc): New macro. 3240 (_s_return): Add flag 'enable_gc' and re-enable gc if set. 3241 (oblist_add_by_name): Use the new facilities to protect the 3242 allocations. 3243 (new_frame_in_env): Likewise. 3244 (new_slot_spec_in_env): Likewise. 3245 (s_save): Likewise. 3246 (opexe_0): Likewise. 3247 (opexe_1): Likewise. 3248 (opexe_2): Likewise. 3249 (opexe_5): Likewise. 3250 (opexe_6): Likewise. 3251 (scheme_init_custom_alloc): Initialize the new fields. 3252 32532016-11-12 Justus Winter <justus@g10code.com> 3254 3255 estream: Support 'es_poll' on Windows. 3256 + commit 40e5ff0a0084c0d9521b401db4f38885bfdae233 3257 * src/Makefile.am (arch_sources): Add new file. 3258 * src/estream.c (O_NONBLOCK): Move to 'gpgrt-int.h'. 3259 (BUFFER_BLOCK_SIZE): Likewise. 3260 (BUFFER_UNREAD_SIZE): Likewise. 3261 (struct notify_list_s, notify_list_t): Likewise. 3262 (struct _gpgrt_stream_internal, estream_internal_t): Likewise. 3263 (X_POLLABLE): New macro. 3264 (parse_mode): Parse keyword 'pollable', emulate O_NONBLOCK using the 3265 same mechanism on Windows. 3266 (_gpgrt_poll): Use the new '_gpgrt_w32_poll' on Windows. 3267 * src/gpgrt-int.h (_gpgrt_functions_w32_pollable): New declaration. 3268 (_gpgrt_w32_pollable_create): New prototype. 3269 (_gpgrt_w32_poll): Likewise. 3270 * src/w32-estream.c: New file. This code is adapted from GPGME. 3271 * tests/t-poll.c (create_pipe): Create pollable streams. 3272 3273 estream: Track the kind of backend used. 3274 + commit e15416d3668ea9dcc6a64cbb98140a99be8a7865 3275 * src/estream.c (struct _gpgrt_stream_internal): Add 'kind'. 3276 (init_stream_obj): New parameter 'kind', initialize field. 3277 (es_create): New parameter 'kind'. Update all callers. 3278 * src/gpgrt-int.h (gpgrt_stream_backend_kind_t): New type. 3279 3280 estream: Rework how the cookie functions are handled. 3281 + commit a0651e910f962a49b0b7f7942512f17a5fe39a7d 3282 * src/estream.c (cookie_ioctl_function_t): Move to 'gpgrt-int.h', 3283 along with the macros for the IOCTL numbers. 3284 (estream_functions_mem): Use the new type and add the ioctl function. 3285 (estream_functions_fd): Likewise. 3286 (estream_functions_w32): Likewise. 3287 (estream_functions_fp): Likewise. 3288 (init_stream_object): Use the new type, and also initialize 3289 'func_ioctl'. 3290 (es_create): Use the new type. 3291 (_gpgrt_fopen): Adapt. 3292 (_gpgrt_mopen): Likewise. 3293 (_gpgrt_fopenmem): Likewise. 3294 (_gpgrt_fopencookie): Likewise. 3295 (_gpgrt_fdopen): Likewise. 3296 (_gpgrt_fpopen): Likewise. 3297 (do_w32open): Likewise. 3298 * src/gpgrt-int.h (struct cookie_io_functions_s): New type. 3299 3300 estream: Rework modestring handling. 3301 + commit 135319b5d1f9a88187687646c762759cfa05a7ec 3302 * src/estream.c (X_SAMETHREAD, X_SYSOPEN): New macros. 3303 (parse_mode): Rework how information flows from here to 'es_create'. 3304 Instead of using an integer flag per mode, use flags. 3305 (init_stream_obj): Adapt accordingly. 3306 (es_create): Likewise. 3307 (_gpgrt_fopen): Likewise. 3308 (_gpgrt_mopen): Likewise. 3309 (_gpgrt_fopenmem): Likewise. 3310 (_gpgrt_fopencookie): Likewise. 3311 (_gpgrt_fdopen): Likewise. 3312 (_gpgrt_fpopen): Likewise. 3313 (do_w32open): Likewise. 3314 (_gpgrt_freopen): Likewise. 3315 33162016-11-12 Werner Koch <wk@gnupg.org> 3317 3318 Add new interface gpgrt_get_syscall_clamp. 3319 + commit b7972767513c8748096ebed78d1e1621bd2bd459 3320 * src/visibility.c (gpgrt_get_syscall_clamp): New. 3321 * src/gpg-error.vers, src/gpg-error.def.in: Add function. 3322 * src/gpg-error.h.in: Ditto. 3323 * src/estream.c (_gpgrt_get_syscall_clamp): New. 3324 33252016-11-11 Werner Koch <wk@gnupg.org> 3326 3327 Use the syscall clamp functions also for lock functions. 3328 + commit 25d463c67821901c8fd6736c815f11e85bbae66f 3329 * src/posix-lock.c (pre_lock_func, post_lock_func): New. 3330 (_gpgrt_lock_set_lock_clamp): New. 3331 (_gpgrt_lock_lock): Use clamp functions. 3332 * src/w32-lock.c (pre_lock_func, post_lock_func): New. 3333 (_gpgrt_lock_set_lock_clamp): New. 3334 (_gpgrt_lock_lock): Use clamp functions. 3335 * src/posix-lock.c (pre_syscall_func, post_syscall_func): New. 3336 (_gpgrt_thread_set_syscall_clamp): New. 3337 (_gpgrt_yield): Use clamp functions. 3338 * src/w32-lock.c (pre_syscall_func, post_syscall_func): New. 3339 (_gpgrt_thread_set_syscall_clamp): New. 3340 (_gpgrt_yield): Use clamp functions. 3341 * src/estream.c: Include lock.h and thread.h. 3342 (do_deinit): Call _gpgrt_lock_set_lock_clamp. 3343 (_gpgrt_set_syscall_clamp): Ditto. 3344 33452016-11-11 Andre Heinecke <aheinecke@intevation.de> 3346 3347 w32: Fix lock c++ narrowing conversion warning. 3348 + commit b1ccab5bf8e1206aae1307ad5d23890be4251c8f 3349 * src/syscfg/lock-obj-pub.mingw32.h (gpgrt_lock_t): Declare priv as 3350 unsigned char. 3351 33522016-11-10 Werner Koch <wk@gnupg.org> 3353 3354 Change description of GPG_ERR_OPEN_KEYRING. 3355 + commit bae57a21cfab25ad11c82dc6e69d82d1f2f7a415 3356 3357 33582016-11-10 Justus Winter <justus@g10code.com> 3359 3360 gpgscm: Recover cells from the list of recently allocated cells. 3361 + commit 1659878b827d0a4e041921e0c3a3555d39a742df 3362 * tests/gpgscm/scheme.c (ok_to_freely_gc): Recover cells. 3363 3364 gpgscm: Recover cells used to maintain interpreter state. 3365 + commit 85388f1ef82bd0a92e94a463acfa157e6f9356f8 3366 * tests/gpgscm/scheme.c (free_cell): New function. 3367 (free_cons): Likewise. 3368 (_s_return): Use the new function to recover cells used to save the 3369 state of the interpreter in 's_save'. This reduces the need to do a 3370 garbage collection considerably. 3371 3372 gpgscm: Reduce opcode dispatch overhead. 3373 + commit f65fb16724712b3d6072f27b47e2658f27398dd4 3374 * tests/gpgscm/scheme.c (s_thread_to): New macro. 3375 (CASE): Likewise. 3376 (opexe_[0-6]): Use 'CASE' instead of 'case' statements, replace 3377 's_goto' with 's_thread_to' where applicable. 3378 3379 gpgscm: Make the compile-hook configurable. 3380 + commit a678b9fdf7d48409a32afab5b487322a7fc11e16 3381 * tests/gpgscm/scheme-private.h (struct scheme): Make field 3382 'COMPILE_HOOK' optional. 3383 * tests/gpgscm/scheme.c (opexe_0): Fix guard. 3384 (scheme_init_custom_alloc): Conditionally initialize 'COMPILE_HOOK'. 3385 * tests/gpgscm/scheme.h (USE_COMPILE_HOOK): Define to 1 by default. 3386 3387 gpgscm: Drop obsolete commented-out code. 3388 + commit f69a754515f43037da8ac8535967cd825b220be4 3389 * tests/gpgscm/scheme.c (opexe_5): Drop obsolete code. 3390 3391 gpgscm: Remove dubious stack implementation. 3392 + commit a6ce303f0c69542999c607309128afd6293e2e1b 3393 * tests/gpgscm/scheme-private.h (struct scheme): Remove related fields. 3394 * tests/gpgscm/scheme.c: Drop all !USE_SCHEME_STACK code. 3395 * tests/gpgscm/scheme.h (USE_SCHEME_STACK): Remove macro. 3396 33972016-11-08 Justus Winter <justus@g10code.com> 3398 3399 gpgscm: Expose seek and associated constants. 3400 + commit 13831e9cd6839e44a8e32c640589edb8bf17ef51 3401 * tests/gpgscm/ffi.c (do_seek): New function. 3402 (ffi_init): Expose 'seek' and 'SEEK_{SET,CUR,END}'. 3403 * tests/gpgscm/lib.scm: Document the new function. 3404 3405 gpgscm: Fix error message. 3406 + commit d5458258299889af97e714c15e6a9b859e1a0545 3407 * tests/gpgscm/ffi.c (do_wait_processes): Fix and improve error 3408 messages. 3409 34102016-11-07 Justus Winter <justus@g10code.com> 3411 3412 gpgscm: Generalize splice to write to multiple sinks. 3413 + commit 1edacbc5a4a0f4dee3ab82c1fda7c7b1c5874761 3414 * tests/gpgscm/ffi.c (ordinal_suffix): New function. 3415 (do_splice): Generalize splice to write to multiple sinks. 3416 * tests/gpgscm/lib.scm (splice): Document this fact. 3417 3418 gpgscm: Drop 'len' argument from splice. 3419 + commit 598aeda60bc3e6d49d935927b5ec33145f7af9db 3420 * tests/gpgscm/ffi.c (do_splice): Drop 'len' argument, no-one uses it. 3421 * tests/gpgscm/lib.scm (splice): Document foreign function. 3422 3423 tests: Move environment creation and teardown into each test. 3424 + commit 1564fc3b2ff52e7e5ad9b01a24e1f399934775b8 3425 * tests/gpgscm/tests.scm (log): New function. 3426 * tests/openpgp/run-tests.scm (run-tests-parallel): Do not run the 3427 startup and teardown scripts. 3428 (run-tests-sequential): Likewise. 3429 * tests/openpgp/setup.scm: Move all functions... 3430 * tests/openpgp/defs.scm: ... here and make them less verbose. 3431 (setup-environment): New function. 3432 (setup-legacy-environment): Likewise. 3433 (start-agent): Make less verbose, run 'stop-agent' at interpreter 3434 exit. 3435 (stop-agent): Make less verbose. 3436 * tests/openpgp/finish.scm: Drop file. 3437 * tests/openpgp/Makefile.am (EXTRA_DIST): Drop removed file. 3438 * tests/openpgp/4gb-packet.scm: Use 'setup-environment' or 3439 'setup-legacy-environment' as appropriate. 3440 * tests/openpgp/armdetach.scm: Likewise. 3441 * tests/openpgp/armdetachm.scm: Likewise. 3442 * tests/openpgp/armencrypt.scm: Likewise. 3443 * tests/openpgp/armencryptp.scm: Likewise. 3444 * tests/openpgp/armor.scm: Likewise. 3445 * tests/openpgp/armsignencrypt.scm: Likewise. 3446 * tests/openpgp/armsigs.scm: Likewise. 3447 * tests/openpgp/clearsig.scm: Likewise. 3448 * tests/openpgp/conventional-mdc.scm: Likewise. 3449 * tests/openpgp/conventional.scm: Likewise. 3450 * tests/openpgp/decrypt-dsa.scm: Likewise. 3451 * tests/openpgp/decrypt.scm: Likewise. 3452 * tests/openpgp/default-key.scm: Likewise. 3453 * tests/openpgp/detach.scm: Likewise. 3454 * tests/openpgp/detachm.scm: Likewise. 3455 * tests/openpgp/ecc.scm: Likewise. 3456 * tests/openpgp/encrypt-dsa.scm: Likewise. 3457 * tests/openpgp/encrypt.scm: Likewise. 3458 * tests/openpgp/encryptp.scm: Likewise. 3459 * tests/openpgp/export.scm: Likewise. 3460 * tests/openpgp/finish.scm: Likewise. 3461 * tests/openpgp/genkey1024.scm: Likewise. 3462 * tests/openpgp/gpgtar.scm: Likewise. 3463 * tests/openpgp/gpgv-forged-keyring.scm: Likewise. 3464 * tests/openpgp/import.scm: Likewise. 3465 * tests/openpgp/issue2015.scm: Likewise. 3466 * tests/openpgp/issue2417.scm: Likewise. 3467 * tests/openpgp/issue2419.scm: Likewise. 3468 * tests/openpgp/key-selection.scm: Likewise. 3469 * tests/openpgp/mds.scm: Likewise. 3470 * tests/openpgp/multisig.scm: Likewise. 3471 * tests/openpgp/quick-key-manipulation.scm: Likewise. 3472 * tests/openpgp/seat.scm: Likewise. 3473 * tests/openpgp/shell.scm: Likewise. 3474 * tests/openpgp/signencrypt-dsa.scm: Likewise. 3475 * tests/openpgp/signencrypt.scm: Likewise. 3476 * tests/openpgp/sigs-dsa.scm: Likewise. 3477 * tests/openpgp/sigs.scm: Likewise. 3478 * tests/openpgp/ssh.scm: Likewise. 3479 * tests/openpgp/tofu.scm: Likewise. 3480 * tests/openpgp/use-exact-key.scm: Likewise. 3481 * tests/openpgp/verify.scm: Likewise. 3482 * tests/openpgp/version.scm: Likewise. 3483 * tests/openpgp/issue2346.scm: Likewise and simplify. 3484 3485 gpgscm,w32: Provide schemish file handling for binary files. 3486 + commit fa82512020f8cd91c68bbf1d24a4f6bffe5385ba 3487 * tests/gpgscm/lib.scm (call-with-binary-input-file): New function. 3488 (call-with-binary-output-file): Likewise. 3489 3490 gpgscm: Add support for pseudo-random numbers. 3491 + commit 70c5f30074ec996f60f62cd09e67167da78c6d8a 3492 * tests/gpgscm/ffi.c (do_getpid): New function. 3493 (do_srandom): Likewise. 3494 (random_scaled): Likewise. 3495 (do_random): Likewise. 3496 (do_make_random_string): Likewise. 3497 (ffi_init): Expose the new functions. 3498 * tests/gpgscm/lib.scm: Document the new functions. 3499 35002016-11-04 Justus Winter <justus@g10code.com> 3501 3502 gpgscm: Fix printing strings containing zero bytes. 3503 + commit fa221a1d5272eb231393a2cc0173635a5098bb89 3504 * tests/gpgscm/scheme.c (atom2str): Fix computing the length of Scheme 3505 strings. Scheme strings can contain zero bytes. 3506 3507 gpgscm: Implement 'atexit'. 3508 + commit 97024a0cd0e1f5262ee60bf40a91f169bcc45a23 3509 * tests/gpgscm/ffi.scm (throw): Run *run-atexit-handlers* when 3510 terminating the interpreter. 3511 (*atexit-handlers*): New variable. 3512 (*run-atexit-handlers*): New function. 3513 (atexit): Likewise. 3514 * tests/gpgscm/main.c (main): Run *run-atexit-handlers* at normal 3515 interpreter shutdown. 3516 35172016-11-03 Justus Winter <justus@g10code.com> 3518 3519 gpgscm,tests: Add new functions to the test environment. 3520 + commit e4a694eb48a098c3a3983767099dcce4e9157d16 3521 * tests/gpgscm/lib.scm (first, last, powerset): New functions. 3522 * tests/gpgscm/tests.scm (interactive-shell): New function. 3523 * tests/openpgp/Makefile.am (EXTRA_DIST): Add new file. 3524 * tests/openpgp/README: Document 'interactive-shell'. 3525 * tests/openpgp/shell.scm: New file. 3526 35272016-11-02 Justus Winter <justus@g10code.com> 3528 3529 gpgscm: Fix inclusion of readline header. 3530 + commit 0ccc6f5ffccec23587d06e32da88fb0acd80f2c6 3531 * tests/gpgscm/ffi.c: Define magic macro to prevent the completion 3532 function from redefined. 3533 35342016-11-02 Werner Koch <wk@gnupg.org> 3535 3536 Add error codes GPG_ERR_TOO_YOUNG and GPG_ERR_TOO_OLD. 3537 + commit 49e32eed4550869644d706352d683ddba5696d4e 3538 3539 35402016-10-20 Justus Winter <justus@g10code.com> 3541 3542 common,w32: Fix setting environment variables on Windows. 3543 + commit e7ba35f207cb06f6d0e085ab3faf68d118606655 3544 * common/sysutils.c (gnupg_setenv): Also update the environment block 3545 maintained by the C runtime. 3546 (gnupg_unsetenv): Likewise. 3547 * tests/gpgscm/ffi.c (do_setenv): Fix error handling. 3548 35492016-10-18 Justus Winter <justus@g10code.com> 3550 3551 estream: Fix modestring parsing. 3552 + commit 0734f4863859257d18ca96f4b9be62be75fcffe1 3553 * src/estream.c (parse_mode): Fix parsing the 'sysopen' flag. 3554 35552016-10-17 Justus Winter <justus@g10code.com> 3556 3557 gpgscm: Initialize nesting stack. 3558 + commit 7a262df038f495d27e2d8ec806ea0d47c925c88b 3559 * tests/gpgscm/scheme.c (scheme_init_custom_alloc): Initialize nesting 3560 stack. 3561 35622016-10-07 Justus Winter <justus@g10code.com> 3563 3564 tests: Improve handling of Windows newlines. 3565 + commit e8db2ea9542eef0bc7b51c9f69109a056269c048 3566 * tests/gpgscm/lib.scm (string-split-newlines): New function. 3567 * tests/openpgp/default-key.scm: Use new function. 3568 * tests/openpgp/defs.scm: Likewise. 3569 * tests/openpgp/export.scm: Likewise. 3570 * tests/openpgp/import.scm: Likewise. 3571 3572 gpgscm: Improve test of low-level functions. 3573 + commit 2e47dcf432bc26cbaa1a6ba6716ab74facd06353 3574 * tests/gpgscm/t-child.c: Print large amounts of data. 3575 * tests/gpgscm/t-child.scm: Test that this works. 3576 3577 gpgscm: Improve path handling. 3578 + commit ff00a2d792091f35380c9541ee88fbd9c0d76c43 3579 * tests/gpgscm/ffi.c (ffi_init): New Scheme variable '*win32*'. 3580 * tests/gpgscm/tests.scm (canonical-path): Correctly handle paths with 3581 drive letter on Windows. Use 'path-join'. 3582 (path-expand): Use 'path-join'. 3583 35842016-10-07 Werner Koch <wk@gnupg.org> 3585 3586 Add error code USER_ID_EXISTS, NAME_EXISTS, and DUP_NAME. 3587 + commit 0c837a82207d0b19f9dabc8870ffb23d6a4ade64 3588 3589 35902016-10-06 Justus Winter <justus@g10code.com> 3591 3592 gpgscm: Update callsite of 'gnupg_spawn_process'. 3593 + commit bbd3be18ca9feac21963cc7d682f5a7d89fd9aba 3594 * tests/gpgscm/ffi.c (do_spawn_process): Adapt to the changes to 3595 'gnupg_spawn_process'. 3596 35972016-10-04 Justus Winter <justus@g10code.com> 3598 3599 tests,w32: Do not expose 'glob' to gpgscm. 3600 + commit 7359d7acb687d572dd0a4e40fd979566efbf4e21 3601 * tests/gpgscm/ffi.c (do_glob): Remove function. 3602 (ffi_init): Likewise. 3603 36042016-09-19 Justus Winter <justus@g10code.com> 3605 3606 tests: Refine the repl function. 3607 + commit a3b6b7643d906264b56d6fa041bcb95e96eb1898 3608 * tests/gpgscm/repl.scm (repl): Add an argument 'environment'. 3609 (interactive-repl): Add an optional argument 'environment'. 3610 3611 tests: Implement interpreter shutdown using exceptions. 3612 + commit ea399aaaf4c9de92d24ab59cdc3586608bf35698 3613 * tests/gpgscm/ffi.c (ffi_init): Rename 'exit' to '_exit'. 3614 * tests/gpgscm/ffi.scm (*interpreter-exit*): New variable. 3615 (throw): New function. 3616 (exit): New function. 3617 3618 tests: Correctly handle exceptions in resource handling macros. 3619 + commit ec34346129c77a7011872812567689aa09d99caa 3620 * tests/gpgscm/tests.scm (letfd): Correctly release resources when an 3621 exception is thrown. 3622 (with-working-directory): Likewise. 3623 (with-temporary-working-directory): Likewise. 3624 (lettmp): Likewise. 3625 3626 tests: Refine exception handling. 3627 + commit 3fd08ed018f837399564896462f64af8ae389eec 3628 * tests/gpgscm/init.scm (catch): Bind all arguments to '*error*' in 3629 the error handler, update and fix comment. 3630 (*error-hook*): Revert to original definition. 3631 * tests/gpgscm/tests.scm (tr:do): Adapt accordingly. 3632 * tests/openpgp/issue2419.scm: Likewise. 3633 3634 tests: Use descriptive temporary file names. 3635 + commit 86f421b7de364138d2d066b267b0f08a62c42a42 3636 * tests/gpgscm/ffi.c (do_get_isotime): New function. 3637 (ffi_init): Add parameter 'scriptname', bind new function and 3638 scriptname. 3639 * tests/gpgscm/ffi.h (ffi_init): Update prototype. 3640 * tests/gpgscm/main.c (main): Hand in the script name. 3641 * tests/gpgscm/tests.scm (mkdtemp): Use current time and script name 3642 for the names of temporary directories. 3643 36442016-09-19 Werner Koch <wk@gnupg.org> 3645 3646 gpgscm: Fix gcrypt version check. 3647 + commit a3cdf6ba9987ec2f4b951c3b2519f6beea147126 3648 * tests/gpgscm/main.c (main): Check against required and not installed 3649 version. 3650 36512016-09-17 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 3652 3653 Fix more spelling. 3654 + commit 42b61e8469179292814fea267ecd7d911396b965 3655 * NEWS, acinclude.m4, agent/command-ssh.c, agent/command.c, 3656 agent/gpg-agent.c, agent/keyformat.txt, agent/protect-tool.c, 3657 common/asshelp.c, common/b64enc.c, common/recsel.c, doc/DETAILS, 3658 doc/HACKING, doc/Notes, doc/TRANSLATE, doc/dirmngr.texi, 3659 doc/faq.org, doc/gpg-agent.texi, doc/gpg.texi, doc/gpgsm.texi, 3660 doc/instguide.texi, g10/armor.c, g10/gpg.c, g10/keyedit.c, 3661 g10/mainproc.c, g10/pkclist.c, g10/tofu.c, g13/sh-cmd.c, 3662 g13/sh-dmcrypt.c, kbx/keybox-init.c, m4/pkg.m4, sm/call-dirmngr.c, 3663 sm/gpgsm.c, tests/Makefile.am, tests/gpgscm/Manual.txt, 3664 tests/gpgscm/scheme.c, tests/openpgp/gpgv-forged-keyring.scm, 3665 tests/openpgp/multisig.test, tests/openpgp/verify.scm, 3666 tests/pkits/README, tools/applygnupgdefaults, 3667 tools/gpg-connect-agent.c, tools/mime-maker.c, tools/mime-parser.c: 3668 minor spelling cleanup. 3669 36702016-09-15 NIIBE Yutaka <gniibe@fsij.org> 3671 3672 tests/gpgscm: Fix use of pointer. 3673 + commit 95f7320a37d3870330a2b1f3493025b4820fa767 3674 * tests/gpgscm/scheme-private.h (struct scheme): Use (void *) for 3675 alloc_seg. 3676 * tests/gpgscm/scheme.c (alloc_cellseg): Use (void *) for cp. Use 3677 (void *) for coercion of address calculation. 3678 36792016-09-06 Justus Winter <justus@g10code.com> 3680 3681 gpgscm: Fix detection of unbalanced parenthesis. 3682 + commit 36405b2d208e5ec4c2c289d99ba4e7e1a29b8321 3683 * tests/gpgscm/main.c (load): Print error message. 3684 * tests/gpgscm/scheme.c (opexe_0): Correctly report nesting level when 3685 loading files. 3686 36872016-09-01 Werner Koch <wk@gnupg.org> 3688 3689 Check the size of the time_t. 3690 + commit bf7eb978597ba07906f0a7490e626c071af1987f 3691 * configure.ac (AC_HEADER_TIME): New. 3692 (AC_CHECK_SIZEOF): Check size of time_t. 3693 3694 Add error WINDOW_TOO_SMALL, WINDOW_TOO_LARGE, and MISSING_ENVVAR. 3695 + commit bc3e817bd7e671975f94bae20cbbf9a91fe3353b 3696 3697 36982016-08-16 Werner Koch <wk@gnupg.org> 3699 3700 New error code GPG_ERR_ENGINE_TOO_OLD. 3701 + commit b2640cb1f7b3b056ea4f8fe4b79d58fcd10ef93b 3702 3703 37042016-08-12 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 3705 3706 Call log_set_prefix() with human-readable labels. 3707 + commit b912b371ffc56b0e657d58e2a891f6bb1affab4b 3708 * agent/preset-passphrase.c, agent/protect-tool.c, dirmngr/dirmngr.c 3709 * dirmngr/t-http.c, g10/gpg.c, g10/gpgv.c, g13/g13-syshelp.c 3710 * g13/g13.c, kbx/kbxutil.c, scd/scdaemon.c, sm/gpgsm.c 3711 * tests/gpgscm/main.c, tools/gpg-check-pattern.c 3712 * tools/gpg-connect-agent.c, tools/gpgconf.c, tools/gpgtar.c 3713 * tools/symcryptrun.c: Invoke log_set_prefix() with 3714 human-readable labels. 3715 37162016-08-10 Justus Winter <justus@g10code.com> 3717 3718 tests: Improve temporary directory handling. 3719 + commit 0b5146376ba4e6ef129ed4a0641591bafa5902f9 3720 * tests/gpgscm/ffi.c (ffi_init): Rename 'mkdtemp'. 3721 * tests/gpgscm/tests.scm (mkdtemp): New function that uses a sensible 3722 location and template if no arguments are given. 3723 (with-temporary-working-directory): Simplify accordingly. 3724 (make-temporary-file): Likewise. 3725 * tests/openpgp/run-tests.scm (run-tests-parallel-isolated): Likewise. 3726 (run-tests-sequential-isolated): Likewise. 3727 3728 gpgscm: Make the name of foreign functions more unique. 3729 + commit c609b6e6b08719b86a64fb186f6eee03d0b01b16 3730 * tests/gpgscm/ffi-private.h (ffi_define_function_name): Add another 3731 underscore. 3732 37332016-07-26 Justus Winter <justus@g10code.com> 3734 3735 gpgscm: Do not shadow common function name in catch macro. 3736 + commit d764c08a9215ab1c90a97fb019aa99ccf3721e02 3737 * tests/gpgscm/init.scm (catch): Do not shadow 'exit'. 3738 3739 gpgscm: Make the verbose setting more useful. 3740 + commit bd958b94ea3cdafa2457fdf0dcf436458fa755f6 3741 * tests/gpgscm/ffi.c (do_get_verbose): New function. 3742 (do_set_verbose): Likewise. 3743 (ffi_init): Turn *verbose* into a function, add *set-verbose!*. 3744 * tests/gpgscm/tests.scm (call): Adapt accordingly. 3745 (call-with-io): Dump output if *verbose* is high. 3746 (pipe-do): Adapt accordingly. 3747 * tests/openpgp/defs.scm: Set verbosity according to environment. 3748 * tests/openpgp/run-tests.scm (test): Adapt accordingly. 3749 37502016-07-22 Justus Winter <justus@g10code.com> 3751 3752 gpgscm: Make function more general. 3753 + commit 593c5ac8553922a7cf8055c6f3d4d3ea6d0f8cb6 3754 * tests/gpgscm/tests.scm (in-srcdir): Accept more path fragments. 3755 37562016-07-21 Justus Winter <justus@g10code.com> 3757 3758 gpgscm: Make assert macro more accurate. 3759 + commit 4f5e0f510d72935ed6bc37f38261efd0ca45e04b 3760 * tests/gpgscm/lib.scm (assert): Print the representation of the 3761 failed expression. 3762 3763 gpgscm: Make error message more useful. 3764 + commit bc5199d51c45e11c5d9cba828b31ced9381bd27c 3765 * tests/gpgscm/scheme.c (opexe_0): Include names of missing function 3766 parameters in the error message. 3767 37682016-07-19 Justus Winter <justus@g10code.com> 3769 3770 tests: Add test for ssh support. 3771 + commit 5851aec15309e9137603bf0e564fd5028ff742c1 3772 * tests/gpgscm/tests.scm (path-expand): New function. 3773 * tests/openpgp/Makefile.am (TESTS): Add new test. 3774 (sample_keys): Add new keys. 3775 (CLEANFILES): Clean ssh socket and control file. 3776 * tests/openpgp/fake-pinentry.c (main): Add a default passphrase. 3777 * tests/openpgp/gpg-agent.conf.tmpl: Enable ssh support. 3778 * tests/openpgp/samplekeys/ssh-dsa.key: New file. 3779 * tests/openpgp/samplekeys/ssh-ecdsa.key: Likewise. 3780 * tests/openpgp/samplekeys/ssh-ed25519.key: Likewise. 3781 * tests/openpgp/samplekeys/ssh-rsa.key: Likewise. 3782 * tests/openpgp/ssh.scm: Likewise. 3783 37842016-07-15 Justus Winter <justus@g10code.com> 3785 3786 gpgscm: Fix linking. 3787 + commit 4932ef5277957153f4d066f17feb47a4db2b923b 3788 * tests/gpgscm/Makefile.am: Add -lintl. 3789 37902016-07-14 Werner Koch <wk@gnupg.org> 3791 3792 gpgscm: Use kludge to avoid improper use of ffi_schemify_name. 3793 + commit 95c04eca273fe9bacbbd9666fd6806e0748792ed 3794 * tests/gpgscm/ffi.c (ffi_schemify_name): Use xstrdup instead of 3795 strdup for now. 3796 3797 Release 1.24. 3798 + commit bb1269c85bb41dbb6391756a65e8bc357d82d6b6 3799 3800 38012016-07-13 Werner Koch <wk@gnupg.org> 3802 3803 build: Update config.{guess,sub} to {2016-05-15,2016-06-20}. 3804 + commit 387eeb5d5b57e4390c4eaf101bb5cf9cf3cbd4ba 3805 * build-aux/config.guess: Update. 3806 * build-aux/config.sub: Update. 3807 38082016-07-12 Yann E. MORIN <yann.morin.1998@free.fr> 3809 3810 Add an option to disable tests. 3811 + commit d57a16c3779eca84dedcf2423b26e41172cd5a96 3812 * configure.ac: add an option to enable/disable building tests 3813 * Makefile.am: conditionally build tests 3814 3815 Fix build without threads. 3816 + commit abcdfa7964da62b92984516608faf8941038b71d 3817 * src/gen-posix-lock-obj.c: properly guard inclusioin of pthread.h 3818 * tests/t-lock.c: likewise 3819 * tests/t-poll.c: likewise 3820 38212016-07-07 Justus Winter <justus@g10code.com> 3822 3823 gpgscm: Capture output of spawned processes. 3824 + commit 912977e668d59baf39464fab7e93b9a617f9706f 3825 * tests/gpgscm/tests.scm (call-check): Capture stdout and stderr, and 3826 return stdout if the child exited successfully, or include stderr in 3827 the error. 3828 * tests/openpgp/version.scm: Demonstrate this by checking the stdout. 3829 38302016-07-05 Justus Winter <justus@g10code.com> 3831 3832 tests: Honor environment variable 'TMP'. 3833 + commit 228b225c412573d73901e3e79b7cab64a05bb26e 3834 This fixes problems with long socket names, e.g. when doing distcheck. 3835 3836 * tests/gpgscm/tests.scm (path-join): New function. 3837 (with-temporary-working-directory): Honor 'TMP'. 3838 (make-temporary-file): Likewise. 3839 * tests/migrations/Makefile.am (TMP): Default to '/tmp'. 3840 (TESTS_ENVIRONMENT): Set 'TMP'. 3841 * tests/openpgp/Makefile.am (TMP): Default to '/tmp'. 3842 (TESTS_ENVIRONMENT): Set 'TMP'. 3843 3844 gpgscm: Improve robustness and compatibility. 3845 + commit 1406aa0fdf349b370cc2a5b87ada557455203dd2 3846 * tests/gpgscm/ffi.c (do_getenv): Avoid gccism. 3847 (do_mkdtemp): Handle errors. 3848 38492016-07-05 Andre Heinecke <aheinecke@intevation.de> 3850 3851 Define EWOULDBLOCK in case it is not defined. 3852 + commit 65e967627b3d60f550c7d302227dcf9f797e437f 3853 * src/estream.c (EWOULDBLOCK): Define fallback. 3854 38552016-07-02 Werner Koch <wk@gnupg.org> 3856 3857 yat2m: Fix table formatting. 3858 + commit 1a53a0ac4cc241a5c6d360d6259dd04afc09264c 3859 * doc/yat2m.c (proc_texi_cmd): Use .TQ for @itemx. Print a .P at the 3860 end of a level 0 table. 3861 38622016-06-30 Justus Winter <justus@g10code.com> 3863 3864 gpgscm: Fix reallocating string ports. 3865 + commit 27d423b785afa3458e102fa3d7c1220ec50a47fe 3866 * tests/gpgscm/scheme.c (realloc_port_string): Use memcpy because 3867 Scheme strings may contain 0s. 3868 3869 gpgscm: Free memory backing string ports. 3870 + commit f103dd1d9dd69eb0a32cf2d91e3a595082f3f41c 3871 * tests/gpgscm/scheme.c (finalize_cell): Free memory backing string 3872 ports. 3873 3874 gpgscm: Use the allocator from libgcrypt. 3875 + commit 9af66b27499646f6386ab902e75056b961192f50 3876 * tests/gpgscm/main.c (main): Use the allocator from libgcrypt. 3877 38782016-06-28 Justus Winter <justus@g10code.com> 3879 3880 gpgscm: Fix memory leaks. 3881 + commit b4e31c551b9205684e812e941bd974cc594cf97f 3882 * tests/gpgscm/ffi-private.h (ffi_schemify_name): Fix prototype. 3883 (ffi_define_function_name): Free schemified name. 3884 (ffi_define_function): Likewise. 3885 (ffi_define_constant): Likewise. 3886 (ffi_define_variable_pointer): Likewise. 3887 * tests/gpgscm/ffi.c (do_wait_processes): Free arrays. 3888 (ffi_schemify_name): Fix type. 3889 * tests/gpgscm/main.c (main): Free 'sc'. 3890 3891 gpgscm: Free file names. 3892 + commit 9368fd55602a1d36f6bf6bc3797a4f2d7a782ded 3893 * tests/gpgscm/scheme.c (scheme_load_named_file): Free file name. 3894 3895 gpgscm: Fix buffer overflow. 3896 + commit 73b24ed0cb0ba3271e887d1044a497e53ca90b62 3897 * tests/gpgscm/scheme.c (store_string): Avoid writing past allocated 3898 buffer. 3899 39002016-06-27 Werner Koch <wk@gnupg.org> 3901 3902 estream: Fix bug es_fclose_snatch if a seek has been used. 3903 + commit 467ccbb6062439eda9dce7cd991934d1a5491713 3904 * src/estream.c (func_mem_ioctl): Set LEN from DATA_LEN. 3905 39062016-06-25 Werner Koch <wk@gnupg.org> 3907 3908 w32: Silence compiler warnings about redefined macros. 3909 + commit 7213299fdb2293b974fc436686626ae0a29290b8 3910 * src/estream.c (S_IRGRP) [W32]: Protect against redefinition. 3911 3912 doc: Update yat2m.c. 3913 + commit 9b5e3d1608922f4aaf9958e022431849d5a58501 3914 * doc/yat2m.c: Update from gnupg. 3915 39162016-06-24 Werner Koch <wk@gnupg.org> 3917 3918 estream: Remove two compiler warning. 3919 + commit 0982a72ecc8e7738ec968b3a6710bdacb0f2da4e 3920 * src/estream.c (func_file_create): Remove dead assignment. 3921 (doreadline): Do not decrement SPACE_LEFT before breaking the loop. 3922 Add an extra block to limit the scope of that variable. 3923 39242016-06-23 Justus Winter <justus@g10code.com> 3925 3926 gpgscm: Handle exceptions in the transformation monad. 3927 + commit 7b6728b7ecf7b0646db2de35625aba3b0cd0bf02 3928 * tests/gpgscm/tests.scm (pipe:do): Raise errors. 3929 (tr:spawn): Catch and return errors. 3930 (tr:call-with-content): Likewise. 3931 (tr:{open,write-to,pipe-do,assert-identity,assert-weak-identity}): 3932 Adapt. 3933 3934 gpgscm: Add types for special objects. 3935 + commit 24df932e5fdda891760b34b7e5fccd5aba62fde8 3936 * tests/gpgscm/scheme.c (enum scheme_types): Add types for boolean, 3937 nil, eof, and the sink object. 3938 (type_to_string): Handle new types. 3939 (scheme_init_custom_alloc): Give special objects a type. 3940 3941 gpgscm: Fix Scheme initialization. 3942 + commit 64ab51521f1a5fabee292554d7403113898f1b28 3943 This potentially causes a crash if the garbage collector marks an eof 3944 object. 3945 3946 * tests/gpgscm/scheme.c (scheme_init_custom_alloc): Initialize 3947 'EOF_OBJ'. 3948 39492016-06-21 Justus Winter <justus@g10code.com> 3950 3951 gpgscm: Add more file handling functions. 3952 + commit 5fee932e0ad2b2f5e876a70bdeef77c38e248a2e 3953 * tests/gpgscm/ffi.c (do_glob): New function. 3954 (ffi_init): Define new function. 3955 * tests/gpgscm/tests.scm (basename-suffix): New function.x 3956 3957 gpgscm: Improve test framework. 3958 + commit d7df61081ec228db17e2bfe2e05820da8cc2d264 3959 * tests/gpgscm/lib.scm (echo): Move... 3960 * tests/gpgscm/tests.scm (echo): ... here. 3961 (info, error, skip): And use echo here. 3962 (file-exists?): New function. 3963 (tr:spawn): Check that source exists and if the sink has been created. 3964 (tr:call-with-content): Hand in optional arguments. 3965 3966 gpgscm: Use native string searching functions. 3967 + commit f4a23bc0fae621ac4b0978de4ea8f976ec6b650f 3968 * tests/gpgscm/ffi-private.h: Handle character arguments. 3969 * tests/gpgscm/ffi.c (do_string_index): New function. 3970 (do_string_rindex): Likewise. 3971 (do_string_contains): Likewise. 3972 (ffi_init): Define new functions. 3973 * tests/gpgscm/ffi.scm (ffi-define): New macro. 3974 * tests/gpgscm/lib.scm (string-index): Use native function, 3975 demonstrate behavior. 3976 (string-rindex): Likewise. 3977 (string-contains?): Likewise. 3978 Demonstrate behavior of various other functions. 3979 (read-all): Rework so that it can handle large files. 3980 3981 gpgscm: Improve error reporting. 3982 + commit 2bc2f95ac823f0a6449bd68dee4fc094db52f2e5 3983 * tests/gpgscm/scheme.c (type_to_string): New function. 3984 (Eval_Cycle): Include actual type in error message. 3985 3986 gpgscm: Make memory allocation failures fatal. 3987 + commit 224c171c856c662d22ba236eaa2128323bde1d08 3988 * tests/gpgscm/scheme.c (Eval_Cycle): Exit if we run out of memory. 3989 39902016-06-17 Werner Koch <wk@gnupg.org> 3991 3992 tests: Make make distcheck work again. 3993 + commit cdd09e054a6bc4716c7847fd0779a091cbca0e8f 3994 * Makefile.am (tests): Remove test code which would led to doubling 3995 calls to for e.g. "make distclean". 3996 * tests/Makefile.am: Typo fixes. 3997 * tests/gpgscm/Makefile.am (EXTRA_DIST): Fix name of License file. 3998 Add repl.scm. 3999 (check): Replace by check-local because check is a standard automake 4000 target. 4001 * tests/openpgp/Makefile.am (TESTS_ENVIRONMENT): Replace gmake0sim by 4002 automake generated macro. 4003 (EXTRA_DIST): Add defs.scm 4004 4005 gpgscm: Silence compiler warnings. 4006 + commit d230bf3ee80cac2fe721afccab9e98b3a9be2e9a 4007 * tests/gpgscm/scheme.c (mk_integer): Rename arg NUM to N. 4008 (fill_vector): Ditto. 4009 (mark): Rename var NUM to N. 4010 (set_slot_in_env): Mark SC as unused. 4011 (is_any): Mark P as unused. 4012 4013 Add license notices for TinySCHEME. 4014 + commit 8b1798f10c2641f79f4d770e88712be8b13dc22f 4015 * tests/gpgscm/COPYING: Rename to ... 4016 * tests/gpgscm/LICENSE.TinySCHEME: this. 4017 * AUTHORS: Add a note about TinySCHEME. 4018 * build-aux/speedo/w32/pkg-copyright.txt: Add TinySCHEME notice. 4019 40202016-06-17 Justus Winter <justus@g10code.com> 4021 4022 tests/gpgscm: Add a TinySCHEME-based test driver. 4023 + commit 5b417d262de048ef221ed77b2f9d2c1a843096bb 4024 * configure.ac: Add new component. 4025 * tests/Makefile.am: Likewise. 4026 * tests/gpgscm/Makefile.am: New file. 4027 * tests/gpgscm/ffi-private.h: Likewise. 4028 * tests/gpgscm/ffi.c: Likewise. 4029 * tests/gpgscm/ffi.h: Likewise. 4030 * tests/gpgscm/ffi.scm: Likewise. 4031 * tests/gpgscm/lib.scm: Likewise. 4032 * tests/gpgscm/main.c: Likewise. 4033 * tests/gpgscm/private.h: Likewise. 4034 * tests/gpgscm/repl.scm: Likewise. 4035 * tests/gpgscm/scheme-config.h: Likewise. 4036 * tests/gpgscm/t-child.c: Likewise. 4037 * tests/gpgscm/t-child.scm: Likewise. 4038 * tests/gpgscm/tests.scm: Likewise. 4039 4040 tests/gpgscm: Foreign objects support for TinySCHEME. 4041 + commit 9fecd60c32aca6b32008310237d0ed524eede3d5 4042 * tests/gpgscm/scheme-private.h (struct cell): Add 'foreign_object'. 4043 (is_foreign_object): New prototype. 4044 (get_foreign_object_{vtable,data}): Likewise. 4045 * tests/gpgscm/scheme.c (enum scheme_types): New type. 4046 (is_foreign_object): New function. 4047 (get_foreign_object_{vtable,data}): Likewise. 4048 (mk_foreign_object): Likewise. 4049 (finalize_cell): Free foreign objects. 4050 (atom2str): Pretty-print foreign objects. 4051 (vtbl): Add new functions. 4052 * tests/gpgscm/scheme.h (struct foreign_object_vtable): New type. 4053 (mk_foreign_object): New prototype. 4054 (struct scheme_interface): Add new functions. 4055 4056 Patch from Thomas Munro, 4057 https://sourceforge.net/p/tinyscheme/patches/13/ 4058 4059 tests/gpgscm: Dynamically allocate string buffer. 4060 + commit ef65b7bb2232343f72d03a0e0521de4ada3dc63b 4061 * tests/gpgscm/scheme-config.h (strbuff{,_size}): Make buffer dynamic. 4062 * tests/gpgscm/scheme.c (expand_strbuff): New function. 4063 (putcharacter): Adapt length test. 4064 (readstrexp): Expand buffer if necessary. 4065 (scheme_init_custom_alloc): Initialize buffer. 4066 (scheme_deinit): Free buffer. 4067 4068 Patch from Thomas Munro, 4069 https://sourceforge.net/p/tinyscheme/patches/11/ 4070 4071 tests/gpgscm: Make exception value available. 4072 + commit c0cf52627d8d68d23bcac60571455ffd1b052106 4073 * tests/gpgscm/init.scm (throw): Hand exception value to the handler. 4074 (catch): And bind it to *error*. 4075 4076 tests/gpgscm: Add package macro. 4077 + commit f6c0f9a420c4401d8d358049f8814799161185fa 4078 * tests/gpgscm/init.scm: Add package macro from manual. 4079 4080 tests/gpgscm: Expose function to open streams as Scheme ports. 4081 + commit 2717b9c172f0a25094ad2e654459dbe9d7180e38 4082 * tests/gpgscm/scheme.c (vtbl): Add 'port_from_file' to the vtable. 4083 * tests/gpgscm/scheme.h (struct scheme_interface): New field 4084 'mk_port_from_file'. 4085 4086 tests/gpgscm: Nicer error message. 4087 + commit 0c601ae085e95745a950a9d75ffdc8be42b3e1b2 4088 * tests/gpgscm/scheme.c (opexe_0): Include the value that we tried to 4089 evaluate as function-like in the error message. 4090 4091 tests/gpgscm: Fix error hook. 4092 + commit 16e4898a735e8f85c4ca6b44adf5a92b1a42d1af 4093 * tests/gpgscm/init.scm (*error-hook*): Fix error hook so that the 4094 whole error message is displayed. 4095 4096 tests/gpgscm: Handle unhandled enumeration values. 4097 + commit fe1c0866bc1b2c685136ea19521ffab2deb25ec3 4098 * tests/gpgscm/scheme.c (opexe_{3,4}): Handle unhandled enumeration 4099 values in the opcode dispatching code. 4100 4101 tests/gpgscm: Verbatim import of latest TinySCHEME. 4102 + commit 864992fdf695996dbac9bb344b1fdd879f735473 4103 Revision 110 from svn://svn.code.sf.net/p/tinyscheme/code/trunk 4104 4105 * tests/gpgscm/COPYING: New file. 4106 * tests/gpgscm/Manual.txt: Likewise. 4107 * tests/gpgscm/init.scm: Likewise. 4108 * tests/gpgscm/opdefines.h: Likewise. 4109 * tests/gpgscm/scheme-private.h: Likewise. 4110 * tests/gpgscm/scheme.c: Likewise. 4111 * tests/gpgscm/scheme.h: Likewise. 4112 41132016-06-15 Werner Koch <wk@gnupg.org> 4114 4115 Release 1.23. 4116 + commit e444cacc74c488063336c196f0c01e98f67cf999 4117 4118 4119 po: Update German translation. 4120 + commit d878afa4b884149dca587131bdf5b6d8f96227fa 4121 4122 41232016-06-15 Jakub Bogusz <qboosh@pld-linux.org> 4124 4125 po: Update Polish translation. 4126 + commit b908104846a71cf8ae3d3323be6bbc6edcef6ee0 4127 4128 41292016-06-15 Werner Koch <wk@gnupg.org> 4130 4131 tests: Fix rare deadlock condition in t-poll. 4132 + commit 7ed150201cc5058650cf9673a4e53720a37841c8 4133 * tests/t-poll.c (launch_thread): Use es_fileno before starting the 4134 thread. 4135 41362016-06-15 NIIBE Yutaka <gniibe@fsij.org> 4137 4138 estream: Fix assertion failure due to es_flush. 4139 + commit 28fd0ab40739e8cb73f208e30f78d8aa7a0a6d19 4140 * src/estream.c (es_writen): Set writing flag even if no data was 4141 written. 4142 41432016-06-15 Werner Koch <wk@gnupg.org> 4144 4145 Adjust memory limit of es_fopenmem to the block size. 4146 + commit baf4bcc0973c8b04bd760aaab0f4232c9354e203 4147 * src/estream.c (func_mem_create): Round up memory limit. 4148 41492016-05-17 Werner Koch <wk@gnupg.org> 4150 4151 Add GPG_ERR_SUBKEYS_EXP_OR_REV. 4152 + commit 1ee822f9ff73a9a302ad0eb298640797d735e62b 4153 4154 41552016-05-07 Werner Koch <wk@gnupg.org> 4156 4157 syscfg: Add a powerpc and a tilgegx architecture. 4158 + commit dfcd58fd3f58e548062b91bd6e20e27cbf4da18d 4159 * src/syscfg/lock-obj-pub.powerpc-unknown-linux-gnuspe.h: New. 4160 * src/syscfg/lock-obj-pub.tilegx-unknown-linux-gnu.h: New. 4161 * src/Makefile.am (lock_obj_pub): Add them. 4162 41632016-04-25 Werner Koch <wk@gnupg.org> 4164 4165 Release 1.22. 4166 + commit 9a05076e90eef504cbc3ef614982f856b9b60540 4167 * configure.ac: Set LT version to C18/A18/R0. 4168 4169 build: Update config.{guess,sub} to 2016-04-02 and 2016-03-30. 4170 + commit 8ae3af15caaaaffaa9dbeab5fd767076891200bb 4171 * build-aux/config.guess: Update. 4172 * build-aux/config.sub: Update. 4173 41742016-04-25 NIIBE Yutaka <gniibe@fsij.org> 4175 4176 Fix for HPPA. 4177 + commit f1104b92249005a31961d1a32c38ba65a0b3ff3a 4178 * configure.ac (HAVE_GCC_ATTRIBUTE_ALIGNED): Revert. 4179 * src/gen-posix-lock-obj.c (USE_16BYTE_ALIGNMENT): Revert. 4180 * src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: Revert. 4181 41822016-04-21 Werner Koch <wk@gnupg.org> 4183 4184 w32: Add iconv functions. 4185 + commit 1cd1ddb4ac2c13223a073f6d77696bcd6253e2ff 4186 * src/w32-add.h (gpgrt_w32_iconv_t): New. 4187 (gpgrt_w32_iconv_open, gpgrt_w32_iconv_close, gpgrt_w32_iconv): New. 4188 ( GPGRT_ENABLE_W32_ICONV_MACROS): New 4189 * src/w32-iconv.c: Change license to LGPLv2.1+. Dispable mlang 4190 feature. Remove external DLL loading. Simplify iconv functions. Use 4191 cleaner context struct pattern. Use gpgrt namespace. 4192 * src/gpg-error.def.in: Add new functions. 4193 41942016-04-05 Werner Koch <wk@gnupg.org> 4195 4196 estream,w32: Temporary fix for gpgrt_poll. 4197 + commit 4354720ab3631dfd2811d881566b10a72c8f2165 4198 * src/estream.c (_gpgrt_poll) [W32]: Do not use FD_ISSET. 4199 42002016-03-29 Werner Koch <wk@gnupg.org> 4201 4202 estream: Prepare for new mode flag "sysopen". 4203 + commit 5d1adaa5fd12f65f49abeb99e5ae7226ec27ba0e 4204 * src/estream.c (parse_mode): Add arg "sysopen". Adjust all callers. 4205 4206 estream: Use simpler names for static functions. 4207 + commit de0618d5c64e02b9b3a568fc859d9edcb4ab35ba 4208 * src/estream.c: Replace all es_func_* to just func_*. 4209 4210 estream: Remove strange macro for better readability. 4211 + commit 217a451d54186283f09af5b3c03933f214ddf1c0 4212 * src/estream.c (SET_UNLESS_NONZERO): Remove macro. 4213 (es_deinitialize): Replace that macro by direct code. 4214 42152016-03-24 Peter Wu <peter@lekensteyn.nl> 4216 4217 Add function gpgrt_annotate_leaked_object. 4218 + commit 52c3606b2384f33ef30ea5ada3f187829de9dcf7 4219 * src/gpg-error.h.in: add gpgrt_annotate_leaked_object to support 4220 marking memory as non-leaked for Clang and GCC. 4221 42222016-03-14 Kylie McClain <somasis@exherbo.org> 4223 4224 syscfg: Add lock-obj-pub files for {armv5, armv6, x86_64}-musl targets. 4225 + commit 140cfd51cee738a55caf9d347981f6f81e1990a4 4226 * src/syscfg/lock-obj-pub.armv5-unknown-linux-musleabi.h: New. 4227 * src/syscfg/lock-obj-pub.armv6-unknown-linux-musleabihf.h New. 4228 * src/syscfg/lock-obj-pub.x86_64-pc-linux-musl.h: New. 4229 * src/Makefile.am (lock_obj_pub): Add files. 4230 42312016-03-04 NIIBE Yutaka <gniibe@fsij.org> 4232 4233 Fix detecting Solaris operating system. 4234 + commit f7a77c5c236ecec846de9be46703026f9b01008f 4235 * src/gen-posix-lock-obj.c (USE_DOUBLE_FOR_ALIGNMENT): Check for 4236 the macro __sun. 4237 4238 For Solaris, add -lrt correctly. 4239 + commit f9fc565129293f47cbfe4da48fcd6099e9ce5508 4240 * configure.ac (LIB_SCHED_YIELD): Not avoiding defining LIB. 4241 42422016-03-01 NIIBE Yutaka <gniibe@fsij.org> 4243 4244 Fix for Solaris. 4245 + commit 34b07146bbb0863436fc9381a84314b18bdfb807 4246 * src/gen-posix-lock-obj.c (USE_DOUBLE_FOR_ALIGNMENT): Check LP64. 4247 42482016-02-26 NIIBE Yutaka <gniibe@fsij.org> 4249 4250 po: Update Japanese translation. 4251 + commit 49655fb6ef39b307787e1b6e00c996f9c7db64f7 4252 4253 4254 Add support for Solaris, fixing HPPA. 4255 + commit 5168b97fb5e2eebdc99b40f96f9b6289647e87d2 4256 * configure.ac (HAVE_GCC_ATTRIBUTE_ALIGNED): Remove. 4257 (LIB_SCHED_YIELD): New. Check sched_yield in -lrt. 4258 * src/gen-posix-lock-obj.c (USE_16BYTE_ALIGNMENT): Remove. 4259 (USE_DOUBLE_FOR_ALIGNMENT, USE_LONG_DOUBLE_FOR_ALIGNMENT): New. 4260 * src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: Update. 4261 42622016-02-08 Werner Koch <wk@gnupg.org> 4263 4264 build: Create an SWDB file during "make distcheck" 4265 + commit 1e6c5a70b3b51f81d2fc1289129f6c3e1920ebcc 4266 * Makefile.am (distcheck-hook): New. 4267 42682016-01-19 Werner Koch <wk@gnupg.org> 4269 4270 Add GPG_ERR_DB_CORRUPTED. 4271 + commit b3bb6e2cc31208a198e74b42ca495c08ebb00fc4 4272 4273 42742016-01-13 Marek Vasut <marex@denx.de> 4275 4276 Add new lock-obj-pub for NIOS2. 4277 + commit 71370060aae7a83f4d6c3b9c924f204a57cc2538 4278 src/syscfg/lock-obj-pub.nios2-unknown-linux-gnu.h: New. 4279 42802015-12-14 NIIBE Yutaka <gniibe@fsij.org> 4281 4282 po: Update Japanese translation. 4283 + commit 1814a9bdc15f00bcf6b13ad16857a4f4922fa1d7 4284 4285 42862015-12-12 Werner Koch <wk@gnupg.org> 4287 4288 Release 1.21. 4289 + commit 425b7687b4f74a22b0aa760262cb8f13ae40dc26 4290 * configure.ac: Set LT version to C17/A17/Ro. 4291 42922015-12-07 Andre Heinecke <aheinecke@intevation.de> 4293 4294 Fix windows 8bit encoding conversion. 4295 + commit 823e858cdf5eb6b9945a46478f9876819c16bcd3 4296 * src/w32-gettext.c (wchar_to_native): Convert to ConsoleOutputCP. 4297 42982015-12-03 Justus Winter <justus@g10code.com> 4299 4300 tests: Fix read past buffer. 4301 + commit 68827cbba2083db40df92de1bc449a3d2d0e81ed 4302 * tests/t-poll.c (test_poll): Fix read past buffer. 4303 43042015-11-19 Justus Winter <justus@g10code.com> 4305 4306 Avoid 'malloc' corner case. 4307 + commit 06af687beaa1f8e72a05bd3a057b73fecb158c3d 4308 * src/init.c (_gpgrt_realloc): Avoid calling 'malloc(0)'. 4309 43102015-10-21 Werner Koch <wk@gnupg.org> 4311 4312 Add error codes NO_NAME, NO_KEY, and SERVER_FAILURE. 4313 + commit a144fa8863846dc3f6d34731741cd63251620837 4314 4315 43162015-10-18 Werner Koch <wk@gnupg.org> 4317 4318 estream: Avoid calling write(fd,NULL,n). 4319 + commit 75172adc3b103bd7ef75575a0c0c9c3b63fa4023 4320 * src/estream.c (es_func_fd_write): Take care of a flush requests. 4321 (es_func_w32_write): Ditto. 4322 (es_func_fp_write): Ditto. 4323 43242015-09-28 Werner Koch <wk@gnupg.org> 4325 4326 estream: Keep track of EPIPE. 4327 + commit c09997bc50f3fffaf76d60d2e571b1d85536571e 4328 * src/estream.c (_gpgrt_stream_internal): Add indicators.hup. 4329 (init_stream_obj): Init it. 4330 (es_fill, es_flush, es_seek): Set that. 4331 (_gpgrt_poll): Set event. 4332 4333 Add GPG_ERR_FALSE and GPG_ERR_TRUE error codes. 4334 + commit d3e9514ff82ff767fc78ce485aef71ba56f3c0d5 4335 4336 43372015-09-25 Werner Koch <wk@gnupg.org> 4338 4339 estream: Add gpgrt_set_nonblock and gpgrt_poll. 4340 + commit 071c2170479869f4c6694ae85d2b113e84482a01 4341 * configure.ac (AC_CHECK_HEADERS): Add sys/select.h and sys/time.h. 4342 * src/estream.c: Include both header if available. 4343 (COOKIE_IOCTL_NONBLOCK): New. 4344 (struct estream_cookie_fd): Add field nonblock. 4345 (func_fd_create): Set nonblock from MODEFLAGS. 4346 (es_func_fd_ioctl): New. 4347 (parse_mode): Add modeflag "nonblock". 4348 (es_fill): Map EWOULDBLOCK to EAGAIN. Do not set error indicator for 4349 EAGAIN. 4350 (es_flush, es_seek, es_write_nbf): Map EWOULDBLOCK to EAGAIN. 4351 (do_fdopen): Call COOKIE_IOCTL_NONBLOCK. 4352 (_gpgrt_set_nonblock): New. 4353 (_gpgrt_get_nonblock): New. 4354 (_gpgrt_poll): New. 4355 4356 * src/gpg-error.h.in (struct _gpgrt_poll_s): New. 4357 (gpgrt_poll_t, es_poll_t): New. 4358 (es_set_nonblock, es_get_nonblock, es_poll): New. 4359 4360 * src/gpg-error.vers, src/gpg-error.def.in: Add gpgrt_set_nonblock, 4361 gpgrt_get_nonblock, and gpgrt_poll. 4362 * src/visibility.c (gpgrt_set_nonblock, gpgrt_get_nonblock): New. 4363 (gpgrt_poll): New. 4364 4365 * tests/t-common.h (DIM): New. 4366 * tests/t-poll.c: New. 4367 * tests/Makefile.am (TESTS): Add t-poll. 4368 (t_poll_LDADD): New. 4369 43702015-09-24 Werner Koch <wk@gnupg.org> 4371 4372 estream: Replace indicator help functions to ease code reading. 4373 + commit 61d832c53b7db5367a5542347e3454c882d0bf28 4374 * src/estream.c (es_set_indicators, es_get_indicator): Remove and 4375 change callers to set/get indicators directly. 4376 43772015-09-17 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4378 4379 Support i[456]86-pc{,-linux,-kfreebsd}-gnu.h. 4380 + commit 9decdd7bd105ff6a0973cc1f6652e0eb0625d640 4381 * src/mkheader (canon_host_triplet): Add new entries. 4382 * src/syscfg/lock-obj-pub.i486-pc-gnu.h: Rename to ... 4383 * src/syscfg/lock-obj-pub.i686-pc-gnu.h: this. 4384 * src/syscfg/lock-obj-pub.i486-pc-kfreebsd-gnu.h: Rename to ... 4385 * src/syscfg/lock-obj-pub.i686-pc-kfreebsd-gnu.h: this. 4386 * src/syscfg/lock-obj-pub.i486-pc-linux-gnu.h: Remove. 4387 * src/Makefile.am (lock_obj_pub): Update. 4388 43892015-08-26 Werner Koch <wk@gnupg.org> 4390 4391 Release 1.20. 4392 + commit 44caed05ec146654f1ce40bba4b25def83c369db 4393 * configure.ac: Set LT version to C16/A16/R0. 4394 4395 Add new version macros. 4396 + commit 030ee30c4ae85f2f41ca77651e4a7d7c9993e284 4397 * src/gpg-error.h.in (GPGRT_VERSION): New. 4398 (GPGRT_VERSION_NUMBER): New. 4399 (GPG_ERROR_VERSION, GPG_ERROR_VERSION_NUMBER): Move to top of file. 4400 4401 Add macro GPGRT_INLINE and avoid -Wundef warnings. 4402 + commit 9cd3f002addf2acae4a7b0f52f8941e517e83d73 4403 * src/gpg-error.h.in (GPG_ERR_INLINE): Use #if defined for possible 4404 undefined macros to avoid warnign with GCC's -Wundef option. 4405 (GPGRT_INLINE): New. 4406 44072015-08-26 Yuri Chornoivan <yurchor@ukr.net> 4408 4409 Update Ukrainian translation. 4410 + commit 17e4f727d9bd8e406bf977af445ef57201d23249 4411 4412 44132015-08-25 Werner Koch <wk@gnupg.org> 4414 4415 Make configure option --disable-build-timestamp the default. 4416 + commit d328c4d72fa6d224117d7332082509c240a4f2fc 4417 * configure.ac (BUILD_TIMESTAMP): Set to "<none>" by default. 4418 4419 w32: Make sure the setmode is called. 4420 + commit 1e8d00260a97e0213559c74f687e478e7479a0ea 4421 * src/estream.c (HAVE_DOSISH_SYSTEM): Define if needed. 4422 44232015-07-27 Werner Koch <wk@gnupg.org> 4424 4425 Add option --lib-version to the gpg-error tool. 4426 + commit d2e4bb4c77167a1ed10f1017a7d06a822bbd5135 4427 * src/gpg-error.c (main): Add new option. 4428 44292015-07-24 Werner Koch <wk@gnupg.org> 4430 4431 Add new public macros for GCC attributes. 4432 + commit 4e790613f66efcfc62d73722d5f1730a37cb8324 4433 * src/gpg-error.h.in (GPGRT_GCC_VERSION): New. 4434 (GPGRT_ATTR_NORETURN, GPGRT_ATTR_PRINTF, GPGRT_ATTR_NR_PRINTF): New. 4435 (GPGRT_ATTR_FORMAT_ARG, GPGRT_ATTR_SENTINEL): New. 4436 (GPGRT_ATTR_USED, GPGRT_ATTR_UNUSED, GPGRT_ATTR_DEPRECATED): New. 4437 (GPGRT_ATTR_PURE, GPGRT_ATTR_MALLOC): New. 4438 (GPGRT_HAVE_MACRO_FUNCTION, GPGRT_HAVE_PRAGMA_GCC_PUSH): New. 4439 (_GPGRT_GCC_A_PRINTF): Replace GPGRT_ATTR_PRINTF. 4440 44412015-06-15 Werner Koch <wk@gnupg.org> 4442 4443 Allow building with --disable-threads. 4444 + commit 13918d05a333255d22aa6718dd467fcb8eaf80c8 4445 * src/posix-lock-obj.h (LOCK_ABI_NOT_AVAILABLE): New. 4446 (LOCK_ABI_VERSION): Define depending on USE_POSIX_THREADS. 4447 (_gpgrt_lock_t) [!USE_POSIX_THREADS]: Do not define the union. 4448 * src/gen-posix-lock-obj.c: Take care of USE_POSIX_THREADS. 4449 * src/posix-lock.c (_gpgrt_lock_init, _gpgrt_lock_lock) 4450 (_gpgrt_lock_trylock, _gpgrt_lock_unlock) 4451 (_gpgrt_lock_destroy): Return success for a no-threads version. 4452 * tests/t-lock.c: Disable tests if threads are not available. 4453 * src/mkheader.c (main): Add NO-THREADS to the printed comment. 4454 * configure.ac: Show NO-TRHEADS in the final summary. 4455 44562015-04-14 NIIBE Yutaka <gniibe@fsij.org> 4457 4458 po: Update Japanese translation. 4459 + commit 4171d61a97d9628532db84b590a9c135f360fa90 4460 4461 44622015-04-10 Werner Koch <wk@gnupg.org> 4463 4464 Release 1.19. 4465 + commit d77c33ae608d67086ea057cca5ddee99a7202f8b 4466 4467 4468 po: Update German translation. 4469 + commit e43045fe63aed0aba6522ebfd6e336b03f250069 4470 4471 4472 w32: Remove compiler warnings. 4473 + commit eaec10f48803ee2232d1c1515fbe8f485c1e84b0 4474 * src/Makefile.am (pre_mkheader_cmds): Avoid make diagnostic about 4475 failed but ignored command. This confuses Emacs' compiler job parser. 4476 * tests/t-lock.c [W32]: Include time.h. 4477 * src/init.c: Reorganize Windows only code. 4478 (wchar_to_utf8, utf8_to_wchar): Remove unused functions. 4479 (_gpg_err_set_errno): Use only one copy for all platforms. 4480 44812015-03-24 Werner Koch <wk@gnupg.org> 4482 4483 Use assert to print diagnosicts before calling abort. 4484 + commit 56feff58d4fab92701ae77a1004af820b85e7f6c 4485 * src/posix-lock.c: Add assert calls. 4486 44872015-03-24 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4488 4489 Avoid breakage with gcc 5. 4490 + commit c01c8f0c4f55d76b037c7f6aa44ad25ede18d38a 4491 * src/Makefile.am: Add -P to the C preprocessor when building 4492 mkerrcodes.h, to avoid a noisy intermediate pipeline. 4493 44942015-03-19 Werner Koch <wk@gnupg.org> 4495 4496 Add option --defines to gpg-error. 4497 + commit 528ee704f8f9d881ba370dcbfa9194d6704f9a2f 4498 * src/gpg-error.c (main): Add option --help and --defines. 4499 4500 Add GPG_ERR_LDAP_* error codes. 4501 + commit dc95f1ea1ab902b9f49de651084f514535e4a3fc 4502 * src/err-codes.h.in: Add error codes. 4503 * doc/ldap2gpgerr.c: New. 4504 45052015-03-16 Werner Koch <wk@gnupg.org> 4506 4507 Remove useless conditions. 4508 + commit b5cb32f979a80904ea58fc7531e43e2be2270573 4509 * src/estream.c (fname_set_internal): Remove useless condition. 4510 * src/mkheader.c (main): Ditto. 4511 45122015-03-06 Werner Koch <wk@gnupg.org> 4513 4514 Add host-triplet aliasing feature to mkheader. 4515 + commit 4441e96801fdc4c900abae8c0aa0b53e2e26e079 4516 * src/Makefile.am (lock_obj_pub): Rename i586-pc-linux-gnu to 4517 i686-pc-linux-gnu. Remove i486-pc-linux-gnu. 4518 * src/mkheader.c (canon_host_triplet): New. 4519 (main): Use it. 4520 4521 w32: Add a manifest to libgpg-error. 4522 + commit 0f814d4c4a285573eef2391c70e21cf8126cafcb 4523 * src/gpg-error.w32-manifest.in: New. 4524 * src/Makefile.am (EXTRA_DIST): Add it. 4525 (versioninfo.lo): Depend on it. 4526 * src/versioninfo.rc.in: Add it. 4527 * configure.ac (AC_CONFIG_FILES): Add it. 4528 (BUILD_VERSION): New. 4529 45302015-02-18 Neal H. Walfield <neal@gnu.org> 4531 4532 Correct URL. 4533 + commit b400d7c65daaf44f227073ddde7d06986afde786 4534 4535 45362015-01-30 Werner Koch <wk@gnupg.org> 4537 4538 w32: Use -static-libgcc to avoid linking to libgcc_s_sjlj-1.dll. 4539 + commit 8487ec25e1c8f73ca7dc31e5d648cb05eede0f14 4540 * src/Makefile.am (extra_ltoptions): New. 4541 (libgpg_error_la_LDFLAGS): Use it. 4542 45432015-01-26 Werner Koch <wk@gnupg.org> 4544 4545 Release 1.18. 4546 + commit f79688532f100599b1e24dde1429a229524601c9 4547 * configure.ac: Set LT version to C14/A14/R0. 4548 4549 po: Update German translation. 4550 + commit 83c0bd462b45ddb75da8c2778ba1fb0c210b53ff 4551 4552 45532015-01-22 Werner Koch <wk@gnupg.org> 4554 4555 Add GPG_ERR_LEGACY_KEY. 4556 + commit 524d5bdee2954337e748428469972957663d497d 4557 4558 45592015-01-05 Werner Koch <wk@gnupg.org> 4560 4561 Avoid false warning about uninitialized var. 4562 + commit 46aaffbe852e334fd1a72affc4a918ceb7dc457b 4563 * src/gpg-error.c (get_err_from_str): Init SAVED_CHAR. 4564 4565 build: Update to gettext 0.19. 4566 + commit abe43b5cbf066086deb735bba37178b34f12a4cb 4567 * po/Makefile.in.in (MSGMERGE): Remove --previous. 4568 * po/Makevars (MSGMERGE_OPTIONS): Add --previous. 4569 4570 build: Require automake 1.14. 4571 + commit 3d32de205211ca91d21941273db306a759ccc3ba 4572 * configure.ac (AM_INIT_AUTOMAKE): Add serial-tests. 4573 * tests/Makefile.am (INCLUDES): Replace by AM_CPPFLAGS. 4574 45752014-12-28 Werner Koch <wk@gnupg.org> 4576 4577 Add GPG_ERR_REQUEST_TOO_SHORT and GPG_ERR_REQUEST_TOO_LONG. 4578 + commit a672a1510456f3f12769938ab95c50ec6904e42e 4579 4580 45812014-12-15 Werner Koch <wk@gnupg.org> 4582 4583 Fix commit 754a987. 4584 + commit bcd9295d5b9c9f46478bff0680f57bd71b4061f8 4585 * Makefile.am (DISTCHECK_CONFIGURE_FLAGS): New. 4586 (AUTOMAKE_OPTIONS): Move options to ... 4587 * configure.ac (AM_INIT_AUTOMAKE): .. here. 4588 (BUILD_DOC): Fix commit 754a987. 4589 4590 Add configure option --disable-doc. 4591 + commit 754a987f6df59e2ba0e69aada65ae4aaf593c148 4592 * Makefile.am (doc) [!BUILD_DOC]: Do not recurse into doc/. 4593 * configure.ac (BUILD_DOC): New am_conditional and new option. 4594 4595 Add GPG_ERR_OBJ_TERM_STATE. 4596 + commit 923c4b174520c401a827d8198ebd2dc83666000f 4597 4598 45992014-12-03 Werner Koch <wk@gnupg.org> 4600 4601 Add GPG_ERR_FORBIDDEN. 4602 + commit 149fe98e1279b065edb06958d9a73a0c013c2db9 4603 4604 46052014-11-26 Мирослав Николић <miroslavnikolic@rocketmail.com> 4606 4607 po: Add Serbian translation. 4608 + commit 210126d38096e764dd3a82da45f8b5f66309ecd5 4609 4610 46112014-10-25 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4612 4613 Add new lock-obj-pub for mips64el-unknown-linux-gnuabi64. 4614 + commit a186f35d05575d6d653e5bebb2dd169d9444af18 4615 * src/syscfg/lock-obj-pub.mips64el-unknown-linux-gnuabi64.h: New. 4616 * src/Makefile.am (lock_obj_pub): Add. 4617 46182014-10-23 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4619 4620 add lock-obj header for or1k-unknown-linux-gnu. 4621 + commit c143fa81462584ad39ea780908266bce3fb9a49e 4622 * src/syscfg/lock-obj-pub.or1k-unknown-linux-gnu.h: new 4623 4624 add lock-obj for new arch triplet for x86. 4625 + commit d85af2fbac956eb2a8630d1c17b53a7a8760d7a4 4626 * src/sysconfig/lock-obj-pub.i586-pc-linux-gnu.h: New. 4627 46282014-10-15 Werner Koch <wk@gnupg.org> 4629 4630 Release 1.17. 4631 + commit 1d9e4c29fc23da64f964ed3337cd18429e1a2964 4632 * configure.ac: Set LT version to C13/A13/R0. 4633 4634 doc: Add a man page for gpg-error-config. 4635 + commit 9d9c25f6d76f1287f193f170ae5534f1ac346db0 4636 * doc/gpgrt.texi: New. Just a start for now. 4637 * doc/gpl.texi, doc/lgpl.texi: New. Take from Libgcrypt. 4638 * doc/yat2m.c: New. Take from GnuPG master. 4639 * doc/Makefile.am: New. 4640 * configure.ac (AC_CONFIG_FILES): Add doc/Makefile. 4641 * Makefile.am (SUBDIRS): Add doc/. 4642 * build-aux/mdate-sh, build-aux/texinfo.tex: New. 4643 4644 Fix to help building native on Windows. 4645 + commit 7285a27a7985c10f6778c67b31dd501e6594cb44 4646 * configure.ac (FORCE_USE_SYSCFG): New am_conditional. 4647 * src/Makefile.am: Use new conditional to decide whether to build the 4648 native lock object header. 4649 46502014-10-03 Werner Koch <wk@gnupg.org> 4651 4652 Change gpgrt_pending{,_unlocked} to macros. 4653 + commit 12b5188bd495e45775c34c8e6263e6be177c03da 4654 * src/gpg-error.h.in (gpgrt_pending): Change to a macro. 4655 (gpgrt_pending_unlocked): Change to a macro. 4656 (_gpgrt_pending, _gpgrt_pending_unlocked): New private functions. 4657 * src/visibility.c, src/visibility.h: Change accordingly. 4658 * src/gpg-error.vers, src/gpg-error.def.in: Ditto. 4659 * src/estream.c (_gpgrt_pending_unlocked): Rename to 4660 _gpgrt__pending_unlocked. 4661 (_gpgrt_pending): Rename to _gpgrt__pending. 4662 46632014-10-02 Werner Koch <wk@gnupg.org> 4664 4665 w32: Make it build again. 4666 + commit e8b04bed1093a9f1d87c150326e79adfeb02e2b4 4667 * src/estream.c (es_func_w32_read): Fix var name. 4668 4669 build: Support SYSROOT based config script finding. 4670 + commit 3ecdcb6ac814e3b63aebbf66729ae6cb67c9f6d2 4671 * src/gpg-error.m4: Add support for SYSROOT and set 4672 gpg_config_script_warn. Use AC_PATH_PROG instead of AC_PATH_TOOL 4673 because the config script is not expected to be installed with a 4674 prefix for its name. 4675 4676 Add GPG_ERR_BOGUS_STRING and an experimental gpgrt_pending. 4677 + commit 74abfcf0c3ba7cd6ce36540c70699fc1719248b3 4678 * src/visibility.c (gpgrt_pending, gpgrt_pending_unlocked): New. 4679 * src/estream.c (_gpgrt_pending, _gpgrt_pending_unlocked): New. 4680 (check_pending): new. 4681 (check_pending_fbf, check_pending_nbf): New. 4682 (es_func_mem_read, es_func_fd_read, es_func_w32_read) 4683 (es_func_fp_read, es_fill): Take care of the special 0 value for SIZE. 4684 46852014-09-29 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4686 4687 GNU calls little-endian powerpc64 powerpc64le, not powerpc64el. 4688 + commit d2757001c5719ca8c8bd6aa2e2e2d9a299fb76c6 4689 * src/Makefile.am (lock_obj_pub): fix powerpc64el to powerpc64le 4690 * src/sysconfig/lock-obj-pub.powerpc64el-unknown-linux-gnu.h : move to 4691 src/sysconfig/lock-obj-pub.powerpc64le-unknown-linux-gnu.h 4692 46932014-09-29 Werner Koch <wk@gnupg.org> 4694 4695 Add error codes for use by a TLS library. 4696 + commit d58fa35e89feddb71feeba8e39a016cd37c4be29 4697 4698 46992014-09-24 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4700 4701 Allow ./configure to explicitly set libgpg-error's build timestamp. 4702 + commit d620005fd1a655d591fccb44639e22ea445e4554 4703 * configure.ac: add --enable-build-timestamp 4704 47052014-09-24 Werner Koch <wk@gnupg.org> 4706 4707 Add new error source GPG_ERR_SOURCE_TLS. 4708 + commit efb2442458c8dd8d5af5a533dc09370b54f5f86f 4709 4710 47112014-09-23 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4712 4713 Add new lock-obj-pub for sparc64-unknown-linux-gnu. 4714 + commit f227618e9e0d01e9dd1afbd91f9a509a532717eb 4715 * src/syscfg/lock-obj-pub.sparc64-unknown-linux-gnu.h: New. 4716 * src/Makefile.am (lock_obj_pub): Add. 4717 4718 Add new lock-obj-pub for powerpc64el-unknown-linux-gnu. 4719 + commit 33e5504fbb5e5e2ff44023c0a22dfb668ff8b10f 4720 * src/syscfg/lock-obj-pub.powerpc64el-unknown-linux-gnu.h: New. 4721 * src/Makefile.am (lock_obj_pub): Add. 4722 47232014-09-18 Werner Koch <wk@gnupg.org> 4724 4725 Release 1.16. 4726 + commit 8f3187fe56cb8e535e3ceff75fdd4e128070af57 4727 * configure.ac: Set LT version to C12/A12/R2. 4728 4729 Add new lock-obj-pub for Apple iOS. 4730 + commit cc4b0caa57a595a3727e51e061c519232f7bdb05 4731 * src/syscfg/lock-obj-pub.aarch64-apple-darwin.h: New. 4732 * src/syscfg/lock-obj-pub.arm-apple-darwin.h: New. 4733 47342014-09-12 Werner Koch <wk@gnupg.org> 4735 4736 Fix es_fclose for streams opened with "samethread". 4737 + commit c307e1f801cd9a25c4a5b9a90073362219d52ee6 4738 * src/estream.c (destroy_stream_lock): New. 4739 (es_create, do_close): Use new wrapper function. 4740 4741 Fix a prototype. 4742 + commit e1882ee8c541020ec590bf096508ca5b6d2ab944 4743 * src/gpgrt-int.h: s/off_t/gpgrt_off_t/. 4744 47452014-09-11 Werner Koch <wk@gnupg.org> 4746 4747 Release 1.15. 4748 + commit 6ebcd696fdbc0485099fba987c0c302cb46dd116 4749 * configure.ac: Set LT version to C12/A12/R1. 4750 4751 Fix build problems with non-gmake (ie. AIX). 4752 + commit 316171204d9a995f8b85431830bbc225ea144b48 4753 * src/Makefile.am: Do not distribute gpg-error.h. 4754 (lock-obj-pub.native.h): Prepend a "./" to match the dependency. 4755 4756 Fix problems with ssize_t and off_t. 4757 + commit 5a4684f3b0db4cd5c13f94b1319c245ef96ce91d 4758 * configure.ac (AC_SYS_LARGEFILE): New. 4759 (AC_CHECK_HEADERS): Check for stdint.h. 4760 (AC_CHECK_SIZEOF): Add for int, long and long long. 4761 (REPLACEMENT_FOR_OFF_T): New ac_define. 4762 * src/mkheader.c (have_stdint_h, have_w32_system, have_w64_system) 4763 (replacement_for_off_type, stdint_h_included): New. 4764 (xfree, xstrdup): New. 4765 (parse_config_h): New. 4766 (write_special): Support "define:gpgrt_off_t", "define:gpgrt_ssize_t", 4767 "api_ssize_t" tags. 4768 (main): Add config.h arg. Call parse_config_h. Fix substitute code. 4769 * src/Makefile.am (gpg-error.h): Pass config.h to mkheader. 4770 4771 * src/gpg-error.h.in: Include definitions for gpgrt_ssize_t and 4772 gpgrt_off_t. Let mkheader insert ssize_t keywords. Chnage all off_t 4773 to gpgrt_off_t. 4774 * src/estream.c: Change all off_t to gpgrt_off_t. Chnage all ssize_t 4775 to gpgrt_ssize_t. 4776 * src/visibility.c (gpgrt_fseeko): Use gpgrt_off_t. 4777 (gpgrt_ftello): Ditto. 4778 (gpgrt_getline): Use gpgrt_ssize_t. 4779 (gpgrt_read_line): Ditto. 4780 4781 Fix compiler warning for w32. 4782 + commit 4138644d74f127c1f4abf7455fe1e21f56d6e07e 4783 * src/syscfg/lock-obj-pub.mingw32.h (GPGRT_LOCK_INITIALIZER): Add 4784 mssing braces. 4785 47862014-09-08 Werner Koch <wk@gnupg.org> 4787 4788 Release 1.14. 4789 + commit 25f312dbb82722d23ad9faed8341923af6d3663c 4790 * configure.ac: Set LT version to C12/A12/R0. 4791 4792 po: Update de.po. 4793 + commit 2ff05feae6c5090081612a7d9a787298f37d46a2 4794 4795 47962014-08-26 Werner Koch <wk@gnupg.org> 4797 4798 Add gpgrt_set_alloc_func. 4799 + commit 7fdca61bcf60e730177889fbbd2f935ba33ae0c3 4800 * src/visibility.c (gpgrt_set_alloc_func): New. 4801 * configure.ac (_ESTREAM_PRINTF_REALLOC): Define. 4802 (_ESTREAM_PRINTF_EXTRA_INCLUDE): Define. 4803 * src/estream.c (mem_alloc, mem_realloc, mem_free): Simplify. 4804 (_gpgrt_free): Remove. 4805 * src/init.c (custom_realloc): New var. 4806 (_gpgrt_set_alloc_func): New. 4807 (_gpgrt_realloc, _gpgrt_malloc, _gpgrt_free): New. 4808 4809 * src/visibility.h (gpg_err_deinit): Mark as visible. 4810 4811 Export missing init functions. 4812 + commit d9d5b61a9f70556e8fc0775f1501380f65ce9502 4813 * src/gpg-error.h.in (gpgrt_init): New macro. 4814 (gpgrt_check_version): New prototype. 4815 * src/init.c (_gpg_err_init): Rename from gpg_err_init. 4816 (_gpg_err_deinit): Rename from gpg_err_deinit. 4817 * src/visibility.c (gpg_err_init): New. 4818 (gpg_err_deinit): New. 4819 (gpgrt_check_version): New. 4820 * src/gpg-error.vers (gpg_err_init, gpg_err_deinit): Add missing 4821 symbols. 4822 (gpgrt_check_version): New. 4823 * src/gpg-error.def.in (gpg_err_init, gpg_err_deinit): Add missing 4824 symbols. 4825 (gpgrt_check_version): New. 4826 * src/gpg-error.c (main): Use gpgrt_init macro. 4827 4828 Include required headers into gpg-error.h. 4829 + commit 320f1b864553f105217ad6b0c70598f9a48c6aaa 4830 * src/gpg-error.h.in: Include stdarg.h. 4831 48322014-08-25 Werner Koch <wk@gnupg.org> 4833 4834 Replace locking code in estream functions. 4835 + commit fc651665010056e6184e8514e5c5436427d7052d 4836 * src/posix-lock.c: Add weak program for pthread_mutex_trylock. 4837 (_gpgrt_lock_trylock): New. 4838 * src/w32-lock.c (_gpgrt_lock_init): Add missing return statement. 4839 (_gpgrt_lock_trylock): New. 4840 * src/visibility.c (gpgrt_set_syscall_clamp): New. 4841 (gpgrt_lock_trylock): New. 4842 (gpgrt_vsnprintf): Fix symbol name. 4843 * src/init.c (DllMain): Mark unused arg. 4844 * src/estream.c: Replace npth mutexes by our own locks. Replace yeild 4845 macro by _gpgrt_yield. 4846 (pre_syscall_func, post_syscall_func): New. 4847 (do_deinit): Clear both new vars. 4848 (es_func_fd_read, es_func_fd_write): Call pre and post syscall 4849 functions instead of the former SYSCALL macros. 4850 (es_func_w32_read, es_func_w32_write): Ditto. 4851 (es_func_fd_seek, es_func_w32_seek, es_func_fp_read) 4852 (es_func_fp_write, es_func_fp_seek, es_func_fp_destroy): Bracket 4853 syscalls with the pre- and post-syscall fucntions. 4854 (do_npth_read, do_npth_write): Remove. 4855 (_gpgrt_es_init): Remove call to mutex init. It is now statically 4856 initialized. 4857 (_gpgrt_set_syscall_clamp): New. 4858 (es_create): Destroy stream lock on error. 4859 (do_close): Destroy stream lock. 4860 4861 Remove GnuPG specific code. 4862 + commit 98781deb0b1787fd7eaabee27ef6a06d37195267 4863 * src/estream.c (es_write_sanitized_utf8_buffer): Remove. 4864 4865 Add test for the estream printf functions. 4866 + commit ce31fe792b5f8adf81710c1bf5986cd10636e16b 4867 * tests/t-printf.c: New. 4868 * configure.ac: Check for vasprintf. 4869 4870 Add gpgrt_snprintf and gpgrt_vsnprintf. 4871 + commit 8a5f2680daa5ea0280ef195efe3050df7bb06e78 4872 4873 4874 Finish inclusion of estream into the API. 4875 + commit e5304d2c8aaaf1682707caa5694316640a18de57 4876 4877 4878 Implement symbol visibility. 4879 + commit 216e7def2118a1774fa7ebeb45b8635b9fe6ba42 4880 * configure.ac: New option --enable-ld-version-script. 4881 (GPGRT_USE_VISIBILITY): New ac_define. 4882 (HAVE_LD_VERSION_SCRIPT): New am_conditional. 4883 * src/gpg-error.vers: New. 4884 * src/gpgrt-int.h: New. 4885 * src/visibility.c, src/visibility.h: New. Lot of changes to symbold 4886 names. 4887 4888 First set of changes to include estream into the API. 4889 + commit 6714d41af5b3f4d447eb0caea0ede38b753397f8 4890 * configure.ac (AH_BOTTOM): Define GPGRT_ENABLE_ES_MACROS. 4891 * src/gpg-error.h.in: include stdio.h. Include most of the estream 4892 functions and rename structures and types. 4893 * src/estream.h: Rewrite. Include only gpg-error.h and local 4894 prototypes. 4895 * src/estream.c: Rename types and macros. 4896 * src/estream-printf.c (_gpgrt_estream_snprintf): Prefix public 4897 functions with _gpgrt_. 4898 4899 Fix some minor estream things. 4900 + commit 8d57ce619aa49862caeee30181fbbd9c76846554 4901 * m4/estream.m4: Check for memrchr. 4902 * src/estream.c (memrchr) [!HAVE_MEMRCHR]: New. 4903 * src/init.c: Include estream.h 4904 (real_init): Init estream. 4905 4906 Add missing redefine macros to cleanup the external symbols. 4907 + commit b84c1ee0d637108a74066e0da50cb132273020e9 4908 4909 4910 Add estream code from GnuPG. 4911 + commit 2b74237d19e44f7173bb052677f0ec35e6ff51b0 4912 * src/estream-printf.c, src/estream-printf.h: New. 4913 * src/estream.c, src/estream.h: New. 4914 * m4/estream.m4: New. 4915 * src/Makefile.am (libgpg_error_la_SOURCES): Add new files. 4916 * configure.ac (AH_BOTTOM): Define estream prefix. 4917 <gcc>: Add useful gcc warning options. 4918 (estream_INIT): Call. 4919 49202014-08-12 Joe Hansen <joedalton2@yahoo.dk> 4921 4922 Update Danish translation. 4923 + commit 1be556e5bb1fb7262a1b5630ac939cfcaadc7100 4924 * po/da.po: Update. 4925 49262014-08-10 Werner Koch <wk@gnupg.org> 4927 4928 tests: Fix compiler warning. 4929 + commit ab5eff46116a9a246ffb2c083bec637d0321d0cb 4930 * tests/t-lock.c: Include header vor getpid. 4931 (revision_thread): Init "i" to avoid compiler warning. 4932 49332014-08-06 NIIBE Yutaka <gniibe@fsij.org> 4934 4935 Update ja.po. 4936 + commit 7b7e08e6f3561724006b63679c2500a62fc73837 4937 4938 49392014-08-05 Werner Koch <wk@gnupg.org> 4940 4941 Use 16 byte alignment for hppa-unknown-linux-gnu. 4942 + commit 3325403c0dd2949bf52efa1b9a5b5cf3191110f9 4943 * configure.ac (HAVE_GCC_ATTRIBUTE_ALIGNED): New. 4944 * src/gen-posix-lock-obj.c (USE_16BYTE_ALIGNMENT): Set for HPPA-Linux. 4945 (main): Enforce alignment if needed. 4946 * src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: Use 16 byte 4947 alignment. 4948 49492014-07-27 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4950 4951 Add new lock-obj-pub.*.h from debian buildds. 4952 + commit 8338a4ba93367974758dc5e195f67e9d171d4086 4953 * src/syscfg/lock-obj-pub.aarch64-unknown-linux-gnu.h: New. 4954 * src/syscfg/lock-obj-pub.alpha-unknown-linux-gnu.h: New. 4955 * src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabi.h: New. 4956 * src/syscfg/lock-obj-pub.arm-unknown-linux-gnueabihf.h: New. 4957 * src/syscfg/lock-obj-pub.hppa-unknown-linux-gnu.h: New. 4958 * src/syscfg/lock-obj-pub.i486-pc-gnu.h: New. 4959 * src/syscfg/lock-obj-pub.i486-pc-kfreebsd-gnu.h: New. 4960 * src/syscfg/lock-obj-pub.i486-pc-linux-gnu.h: New. 4961 * src/syscfg/lock-obj-pub.m68k-unknown-linux-gnu.h: New. 4962 * src/syscfg/lock-obj-pub.mips-unknown-linux-gnu.h: New. 4963 * src/syscfg/lock-obj-pub.mipsel-unknown-linux-gnu.h: New. 4964 * src/syscfg/lock-obj-pub.powerpc-unknown-linux-gnu.h: New. 4965 * src/syscfg/lock-obj-pub.powerpc64-unknown-linux-gnu.h: New. 4966 * src/syscfg/lock-obj-pub.s390x-ibm-linux-gnu.h: New. 4967 * src/syscfg/lock-obj-pub.sh4-unknown-linux-gnu.h: New. 4968 * src/syscfg/lock-obj-pub.sparc-unknown-linux-gnu.h: New. 4969 * src/syscfg/lock-obj-pub.x86_64-pc-kfreebsd-gnu.h: New. 4970 * src/syscfg/lock-obj-pub.x86_64-pc-linux-gnu.h: New. 4971 * src/syscfg/lock-obj-pub.x86_64-pc-linux-gnux32.h: New. 4972 * src/Makefile.am (lock_obj_pub): Add new files. 4973 49742014-06-30 Daniel Kahn Gillmor <dkg@fifthhorseman.net> 4975 4976 Improve logging in a test module. 4977 + commit c7c41582574304974feac8bbd89b1460fbf6c92c 4978 * tests/t-version.c (main): Print program name. 4979 49802014-06-25 Werner Koch <wk@gnupg.org> 4981 4982 Add missing prototype for build tool. 4983 + commit 51f9a8180ecbc24ed092bef5f2aa920a76769dcb 4984 * src/gen-posix-lock-obj.c: Include string.h. 4985 49862014-06-10 Werner Koch <wk@gnupg.org> 4987 4988 New error code GPG_ERR_KEY_DISABLED. 4989 + commit 3fada688c0df6e3140e4fcaf59b9bcfcc7a70bf4 4990 4991 49922014-04-15 Werner Koch <wk@gnupg.org> 4993 4994 Release 1.13. 4995 + commit 1900266b743cabdb39a0d6f8dd00d187a2ad2c97 4996 * configure.ac: Set LT version to C11/A11/R0. 4997 4998 Update pl.po. 4999 + commit db6e26cad81957729adc9549e4c6afe28bc55d76 5000 5001 5002 Add code GPG_ERR_KEY_ON_CARD. 5003 + commit d4b83dbad235973e521eb12b680ee43cfb5cbc9a 5004 5005 50062014-01-29 Werner Koch <wk@gnupg.org> 5007 5008 Fix a syscfg/ file name. 5009 + commit bb5318aa5536fa48ec240c2ff48b9e2e1d9916ef 5010 * src/syscfg/lock-obj.arm-unknown-linux-androideabi.h: Rename to ... 5011 * src/syscfg/lock-obj-pub.arm-unknown-linux-androideabi.h: this. 5012 * src/Makefile.am (lock_obj_pub): Fix file name. 5013 50142014-01-28 Werner Koch <wk@gnupg.org> 5015 5016 Fix the name of the file in the comment of the output. 5017 + commit 6245bf65fc2554c7c103324d451036de08869458 5018 * src/gen-posix-lock-obj.c (main): Chnage comment in created file. 5019 50202014-01-25 Werner Koch <wk@gnupg.org> 5021 5022 Add lock info for arm-unknown-linux-androideabi. 5023 + commit e1aa030d7655743f0c3cdd5f7b26ae1b4665fbc6 5024 * src/syscfg/lock-obj.arm-unknown-linux-androideabi.h: New. Provided 5025 by Hans-Christoph Steiner. 5026 * src/Makefile.am (lock_obj_pub): Add file. 5027 50282014-01-24 Werner Koch <wk@gnupg.org> 5029 5030 tests: Call srand for each thread under Windows. 5031 + commit 8e352780fd0e2fbc8f4c4971aae188d62df24d0a 5032 * tests/t-lock.c (accountant_thread) [W32]: Call srand. 5033 5034 Do not use the threadlib macros for Windows. 5035 + commit 2e4c5963119dc02cac7b8f0dfb46572c43d1ebe7 5036 * configure.ac: Move platform detection before gl_THREADLIB_EARLY. Do 5037 not use gl_THREADLIB for Windows. 5038 5039 Make multi-threading flags available via gpg-error-config. 5040 + commit f209d163a8167caa6910cd367aba923f703ac69e 5041 * m4/threadlib.m4: Set THREADLIB_CPPFLAGS. 5042 * src/gpg-error-config.in: Add option --mt. 5043 * configure.ac: Add support for the --mt option. 5044 * src/gpg-error.m4: Add ac_subst GPG_ERROR_MT_CFLAGS and 5045 GPG_ERROR_MT_LIBS. 5046 5047 Allow using gpgrt_lock_init on an unitialized variable. 5048 + commit 4e8a88e7632b1f1d2b31ae738a159802549882c3 5049 * src/posix-lock.c (gpgrt_lock_init): Detect unitialized lock var. 5050 * src/w32-lock.c (gpgrt_lock_init): Ditto. 5051 50522014-01-17 Werner Koch <wk@gnupg.org> 5053 5054 Move version number first in the Posix lock-obj. 5055 + commit e07538c0ed3c5cb3d870a490a4c12bef4375278a 5056 * src/posix-lock-obj.h (_gpgrt_lock_t): Swap VERS and MTX and put MTX 5057 into a union. 5058 * src/posix-lock.c (gpgrt_lock_lock): Adjust for this change. 5059 * src/gen-posix-lock-obj.c (main): Change output accordingly. 5060 5061 Extend the platform dependent build rules. 5062 + commit d83b12213231443b93de39863b916ada6232035a 5063 * src/mkheader.c (mk_include_name): New. 5064 (include_file): Implement '&' substitution. 5065 (try_include_file): New. 5066 (write_special): Use try_include_file and syscfg/. 5067 (main): Add a new arg. 5068 * configure.ac (CROSS_COMPILING): New am_conditional. 5069 (HOST_TRIPLET_STRING): New ac_define. 5070 * src/gen-posix-lock-obj.c (main): Print the host triplet. 5071 * src/w32-lock-obj-pub.in: Move to ... 5072 * src/syscfg/lock-obj-pub.mingw32.h: here. 5073 * src/Makefile.am (lock_obj_pub): New. 5074 (pre_mkheader_cmds): New. 5075 (gpg-error.h): Run pre_mkheader_cmds. 5076 (parts_of_gpg_error_h, lock-obj-pub.native.h): Do not use when 5077 cross-compiling. 5078 50792014-01-16 Werner Koch <wk@gnupg.org> 5080 5081 Fix linking for last change on non-ELF platforms. 5082 + commit 4f9b13e99bdfed886dadfd1b70a69af3747ebc98 5083 * src/Makefile.am (libgpg_error_la_LIBADD): Add LIBTHREAD. 5084 5085 Add gpgrt_lock_ functions. 5086 + commit ff937c39febe63d52c55590d8e3bd3a460f26651 5087 * src/gpg-error.h.in (GPGRT_LOCK_DEFINE): New. 5088 (gpgrt_lock_init): New. 5089 (gpgrt_lock_lock): New. 5090 (gpgrt_lock_unlock): New. 5091 (gpgrt_lock_destroy): New. 5092 (gpgrt_yield): New. 5093 * src/gpg-error.def.in: Add new functions. 5094 * m4/lock.m4, m4/threadlib.m4: New. Taken from current gnulib. 5095 * configure.ac: Call gl_LOCK. Check size of pthread_mutex_t. Add 5096 LIBTHREAD to GPG_ERROR_CONFIG_LIBS. 5097 * src/err-codes.h.in (GPG_ERR_INV_LOCK_OBJ): New. 5098 * src/gen-posix-lock-obj.c: New. 5099 * src/gen-w32-lock-obj.c: New. 5100 * src/lock.h, src/thread.h: New. 5101 * src/posix-lock-obj.h, src/w32-lock-obj.h: New. 5102 * src/posix-lock.c, src/w32-lock.c: New. 5103 * src/posix-thread.c, src/w32-thread.c: 5104 * src/w32-lock-obj-pub.in: New. 5105 * src/mkheader.c (include_file): Support build time include files. 5106 (write_special): Add keyword "include:lock-obj". 5107 * src/Makefile.am: 5108 (posix-lock-obj-pub.in): New rule. 5109 (noinst_PROGRAMS): Add gen-*-lock-obj helpers. 5110 5111 * tests/t-common.h: New. 5112 * tests/t-lock.c: New. 5113 * tests/Makefile.am (t_lock_LDADD): Add new test. 5114 51152014-01-14 Werner Koch <wk@gnupg.org> 5116 5117 Improve maintainability by rewriting the mkheader helper. 5118 + commit 78a06348fb07f2dce861615cc6d19964818f7334 5119 * src/mkheader.c: New. Based on the mkheader from Libassuan. 5120 * src/mkheader.awk: Remove. 5121 * src/errnos.in: Add trailing linefeed. 5122 * src/gpg-error.h.in: Change meta include directives for use with 5123 mkheader.c. 5124 * src/Makefile.am (EXTRA_DIST): Replace mkheader.awk by mkheader.c 5125 (BUILT_SOURCES): Remove extra-h.in. 5126 (CLEANFILES): Remove extra-h.in. Add mkheader.c. 5127 (parts_of_gpg_error_h): New. 5128 (extra-h.in): Remove rule. 5129 (mkheader): Add rule. 5130 (gpg-error.h): Change rule to use mkheader. 5131 51322014-01-10 Werner Koch <wk@gnupg.org> 5133 5134 po: Update de.po. 5135 + commit c1871fddf85cdddc33c1b35d5f1c8bae76388ee5 5136 5137 5138 Use the generic autogen.sh script. 5139 + commit e3ff40a78e9e95e1296b66f9c0d3df905c8af0d3 5140 * Makefile.am (EXTRA_DIST): Add autogen.rc remove config.rpath. 5141 * autogen.rc: New. 5142 * autogen.sh: Update from current GnuPG. 5143 5144 Move helper scripts to build-aux. 5145 + commit 69c15393d1dac28e08c3b84b1aea286f12327847 5146 * compile, config.guess, config.rpath, config.sub 5147 * depcomp, install-sh, ltmain.sh, missing: Move to build-aux/. 5148 * configure.ac (AC_CONFIG_AUX_DIR): New. 5149 51502013-12-09 Werner Koch <wk@gnupg.org> 5151 5152 Add build support for ppc64le. 5153 + commit 0b192cff772bd416dc85b8140b9eb0d52e4175dd 5154 * config.guess, config.sub: Update to latest version (2013-11-29). 5155 * m4/libtool.m4: Add patches for ppc64le. 5156 51572013-12-09 David 'Digit' Turner <digit@google.com> 5158 5159 Update libtool to support Android. 5160 + commit bf0d67dbfa4161e529781d6dfbfcce7126c3bf22 5161 * m4/libtool.m4: Add "linux*android*" case. Taken from the libtool 5162 repository. 5163 51642013-11-17 Werner Koch <wk@gnupg.org> 5165 5166 Add GPG_ERR_MAC_ALGO. 5167 + commit b70a430d020e8541f66cca38c00355bab7bb1017 5168 5169 51702013-07-15 Werner Koch <wk@gnupg.org> 5171 5172 w32: Fix corrupted string output. 5173 + commit 52e1f2e131b422fdb66abeaf4a8f084689b39bf7 5174 * src/w32-gettext.c (get_string): Pass the nul of the utf-8 string to 5175 the conversion function but keep TRANSLEN without the nul. 5176 51772013-06-24 Werner Koch <wk@gnupg.org> 5178 5179 Release 1.12. 5180 + commit 12243cebd558dcadf8e85eea39b6db5f0b314667 5181 * configure.ac: Set LT version to C10/A10/R0. 5182 5183 Update German translation. 5184 + commit f85ef07dca7c931d63b202d94bfaccba0a30f7f6 5185 5186 51872013-06-17 Werner Koch <wk@gnupg.org> 5188 5189 Add hack to have different names for 64 bit Windows DLLs. 5190 + commit ca46b9a7bccb2eab085fc45722ffca1210f48223 5191 * ltmain.sh: Prefix the SO number for W64 with a "6". 5192 5193 Support building for w64. 5194 + commit 1ca9b0dec0bfee560ce43d9dac6a26557ebe67a1 5195 5196 51972013-05-23 Werner Koch <wk@gnupg.org> 5198 5199 w32: Fix installing of .def file. 5200 + commit db438148df9623528aa7305b6d56edd23db8cbbe 5201 * src/Makefile.am (install-def-file): Create libdir first. 5202 5203 Fix libtool 2.4.2 to correctly detect .def files. 5204 + commit dd05f3790e536dec6ed56087780a1065ca66371e 5205 * ltmain.sh (sed_uncomment_deffile): New. 5206 (orig_export_symbols): Uncomment def file before testing for EXPORTS. 5207 * m4/libtool.m4: Do the same for the generated code. 5208 52092013-04-11 Werner Koch <wk@gnupg.org> 5210 5211 Add GPG_ERR_*CRYPT_CTX* and GPG_ERR_BROKEN_*KEY. 5212 + commit d2e6d96dfd2acc855b244a972269adfcf477cd10 5213 * src/err-codes.h.in (GPG_ERR_NO_CRYPT_CTX): New. 5214 (GPG_ERR_WRONG_CRYPT_CTX, GPG_ERR_BAD_CRYPT_CTX): New. 5215 (GPG_ERR_CRYPT_CTX_CONFLICT): New. 5216 (GPG_ERR_BROKEN_PUBKEY, GPG_ERR_BROKEN_SECKEY): New. 5217 52182013-02-25 Werner Koch <wk@gnupg.org> 5219 5220 Release 1.11. 5221 + commit 3367ff0aa51b6685e37b749b3179643b82d23064 5222 * configure.ac: Set LT version to C9/A9/R0. 5223 5224 * Makefile.am (GITLOG_TO_CHANGELOG): New. 5225 (gen-ChangeLog): Use --tear-off. 5226 * build-aux/gitlog-to-changelog: Remove. 5227 5228 Update helper scripts. 5229 + commit b0ce47b730452bb28d5f46db3857c9efa5f9f51e 5230 * compile, config.guess, config.rpath, config.sub, depcomp, 5231 * install-sh, mkinstalldirs: Update to current versions from gnulib. 5232 52332013-02-23 Werner Koch <wk@gnupg.org> 5234 5235 Add translation to Ukrainian. 5236 + commit 47ff6a21c6d84acebef3ff20d982a6c255a6d282 5237 * po/uk.po: New. 5238 * po/LINGUAS: Add uk.po 5239 5240 Add translation to Esperanto. 5241 + commit 95c63baa0516592ec1a1c045565d6f992cc807eb 5242 * po/eo.po: New. 5243 * po/LINGUAS: Add eo.po. 5244 5245 Add version macros and check function. 5246 + commit e6943de88627c6662fba3fe905c8761dbf0ccfa1 5247 * configure.ac (VERSION_NUMBER): New ac_subst. 5248 (BUILD_FILEVERSION): Build on all platforms 5249 (BUILD_TIMESTAMP): Try to use an ISO string. 5250 * src/Makefile.am (extra-h.in): Add new version numbers. 5251 * src/versioninfo.rc.in: Update copyright year. 5252 * src/version.c: New. 5253 (gpg_error_check_version): New API. 5254 * src/gpg-error.h.in: Add gpg_error_check_version prototype. 5255 * src/gpg-error.def.in: Add gpg_error_check_version 5256 * tests/t-version.c: New. 5257 * tests/Makefile.am (TESTS): Add t-version.c 5258 5259 * src/gpg-error-config.in: s/VERSION/PACKAGE_VERSION/. 5260 52612013-02-22 Werner Koch <wk@gnupg.org> 5262 5263 Fix the alias mechanism for --with-libgpg-error-prefix. 5264 + commit 056cc2d0dfef023fda47ce377d3ee544612526a3 5265 * src/gpg-error.m4: Do not use the no-action branch in AC_ARG_WITH. 5266 52672012-11-16 Werner Koch <wk@gnupg.org> 5268 5269 Switch to the new automagic beta numbering scheme. 5270 + commit 3977201d2a82fcbe0341660e07a3b0d5c790f927 5271 * configure.ac: Change to a git only revision id setup. 5272 (BUILD_FILEVERSION): Use revision id for this. 5273 * src/versioninfo.rc.in (FileVersion): Use LT version. 5274 5275 Update to libtool 2.4.2. 5276 + commit 6971fe55fb76f3c93058ebdef37dc179dff5d651 5277 5278 5279 Add new source id for Libassuan. 5280 + commit d447a2150c235878e2c80afcc99e207755cfd2f9 5281 * src/err-sources.h.in (GPG_ERR_SOURCE_ASSUAN): New. 5282 5283 Improve parsing of the GIT revision number. 5284 + commit b2e4d03c88823151aa30f8a878ad1a30618d1340 5285 * configure.ac (git_revision): Use git rev-parse. 5286 5287 Fix non-portable use of chmod in autogen.sh. 5288 + commit 17c8c16ee2dcb33abb7fdf50c40015f1b9d13689 5289 * autogen.sh: Remove option -c from chmod. 5290 52912012-08-09 Werner Koch <wk@gnupg.org> 5292 5293 Update Italian translation. 5294 + commit 3034b80debc15e6372fbc36a1814b2d273d9e4a7 5295 5296 52972012-08-09 Jordy Provost <jordy.provost@free.fr> 5298 5299 Typo fix. 5300 + commit 9216a742c75432fb2ea0ee1e1818459014e051c5 5301 * src/err-codes.h.in: Unify uppercase. 5302 53032012-08-09 Freek de Kruijf <f.de.kruijf@gmail.com> 5304 5305 Update Dutch translation. 5306 + commit 10373c0d9f4a557ee9af5f1569749b9697a7ae33 5307 * po/nl.po: Update. 5308 53092012-08-09 Petr Pisar <petr.pisar@atlas.cz> 5310 5311 Update Czech translation. 5312 + commit f95162ecc92f338bf244ffdb402ade617d207d7a 5313 * po/cs.po: Update. 5314 53152012-08-09 Joe Hansen <joedalton2@yahoo.dk> 5316 5317 Add Danish translation. 5318 + commit 7adbeeb806d7cd373a159b0acfc9b733a3295356 5319 * po/da.po: New. 5320 * po/LINGUAS: Add da.po. 5321 53222012-08-09 David Prévot <taffit@debian.org> 5323 5324 Update French translation. 5325 + commit 42471f9cbd59d427c9e1a8bf0267835f1395c6b4 5326 * po/fr.po: Update, proofread by Jordy Provost 5327 5328 Keep previous msgids of translated messages. 5329 + commit f7db2dceb8d1da2606d039c04bc84f331f9cfe89 5330 * po/Makefile.in.in: Add --previous option to msgmerge. 5331 53322012-08-07 Werner Koch <wk@gnupg.org> 5333 5334 Add Japanese translation. 5335 + commit 4fef48a0868ca1379d016f41c9d810857c00655f 5336 * po/ja.po: New. 5337 * po/LINGUAS: Add ja.po. 5338 5339 Update German translation. 5340 + commit 2ed3e70f0aeec41ece79d96a8ea6d114addf954d 5341 * po/de.po: Update. 5342 53432012-06-20 Rafaël Carré <funman@videolan.org> 5344 5345 Use CPPFLAGS when generating mkerrcodes.h. 5346 + commit c35dbfdaa2e30e08185e4a468278a29e2c48b500 5347 * src/Makefile.am (mkerrcodes.h): Use CPPFLAGS. 5348 53492011-12-01 Werner Koch <wk@gnupg.org> 5350 5351 Remove non-source file from the repo. 5352 + commit a7eb1bec2b76318bd17d4413d7f44197a241e3bc 5353 * po/remove-potcdate.sed: Remove. 5354 5355 Fix for newer autoconf version. 5356 + commit 5a0d2a5abc0a707c20449b6afd37daa9fd373a18 5357 * Makefile.am (EXTRA_DIST): Fix filename. 5358 * configure.ac (my_full_version): New. 5359 (AC_INIT): Use new macro. Change bug address to the bug tracker URL. 5360 5361 Generate the ChangeLog from commit logs. 5362 + commit 9d75d671d66386ad862db0466c4dd67a246dfe72 5363 * build-aux/gitlog-to-changelog: New script. Taken from gnulib. 5364 * build-aux/git-log-fix: New file. 5365 * build-aux/git-log-footer: New file. 5366 * doc/HACKING: New file. 5367 * ChangeLog: New file. 5368 * Makefile.am (EXTRA_DIST): Add new files. 5369 (gen-ChangeLog): New. 5370 (dist-hook): Run gen-ChangeLog. 5371 5372 Rename all ChangeLog files to ChangeLog-2011. 5373 53742011-12-01 Werner Koch <wk@gnupg.org> 5375 5376 NB: Changes done before December 1st, 2011 are described in 5377 per directory files named ChangeLog-2011. See doc/HACKING for 5378 details. 5379 5380 ----- 5381 Copyright (C) 2011 Free Software Foundation, Inc. 5382 5383 Copying and distribution of this file and/or the original GIT 5384 commit log messages, with or without modification, are 5385 permitted provided the copyright notice and this notice are 5386 preserved. 5387