2009-10-16 Marcus Brinkmann <marcus@g10code.com>
[gnupg.git] / common / ChangeLog
blobc6c43ec3f198b76459d9ef1ced8b123a070d195a
1 2009-10-16  Marcus Brinkmann  <marcus@g10code.com>
3         * Makefile.am (libcommon_a_CFLAGS): Use LIBASSUAN_CFLAGS instead
4         of LIBASSUAN_PTH_CFLAGS.
5         
6 2009-10-13  Werner Koch  <wk@g10code.com>
8         * exechelp.c (gnupg_kill_process): New.
10 2009-09-29  Werner Koch  <wk@g10code.com>
12         * exechelp.c (create_inheritable_pipe): Rename to
13         create_inheritable_pipe_w.
14         (create_inheritable_pipe_r): New.
15         (gnupg_create_outbound_pipe): New.
17         * iobuf.h: Include "sysutils.h"
19         * iobuf.c (iobuf_open_fd_or_name): New.
20         (iobuf_get_fname_nonnull): New.
22 2009-09-23  Marcus Brinkmann  <marcus@g10code.de>
24         * asshelp.c (start_new_gpg_agent): Allocate assuan context before
25         starting server.
27 2009-09-03  Werner Koch  <wk@g10code.com>
29         Update from libestream:
30         * estream-printf.c: Include stdint.h only if HAVE_STDINT_H is
31         defined.
32         * estream-printf.c: Remove all test code.  Use macro DEBUG instead
33         of TEST for debugging.
34         * estream-printf.c (pr_float): Make buffer larger for silly high
35         numbers.
37 2009-08-11  David Shaw  <dshaw@jabberwocky.com>
39         * ttyio.h, ttyio.c (tty_enable_completion): Some ifdefs around
40         HAVE_LIBREADLINE to allow building when readline isn't available.
42 2009-08-06  Werner Koch  <wk@g10code.com>
44         * status.h (STATUS_INV_SGNR, STATUS_NO_SGNR): New.
45         * status.c (get_inv_recpsgnr_code): New.
47 2009-07-23  David Shaw  <dshaw@jabberwocky.com>
49         * srv.c (getsrv): Fix type-punning warning.
51 2009-07-23  Werner Koch  <wk@g10code.com>
53         * util.h (GPG_ERR_NOT_ENABLED): New.
54         * audit.h (enum): Add AUDIT_CRL_CHECK.
55         * audit.c (proc_type_verify): Show CRL check result.
57 2009-07-06  Werner Koch  <wk@g10code.com>
59         * get-passphrase.c (struct agentargs): Add SESSION_ENV and remove
60         obsolete args.
61         (gnupg_prepare_get_passphrase): Ditto.
63         * session-env.c, session-env.h: New.
64         * t-session-env.c: New.
65         * Makefile.am (common_sources, module_tests): Add them.
66         * asshelp.h: Include "session-env.h"
67         * asshelp.c (send_one_option): Add arg PUTENV.
68         (send_pinentry_environment): Replace most args by SESSION_ENV and
69         rewrite fucntion.
70         (start_new_gpg_agent): Likewise.
72         * t-exechelp.c (test_close_all_fds): Remove debug code.
74 2009-07-01  Werner Koch  <wk@g10code.com>
76         * sexputil.c (get_pk_algo_from_canon_sexp): New.
78 2009-06-29  Werner Koch  <wk@g10code.com>
80         * estream.c (BUFFER_ROUND_TO_BLOCK): Remove unused macro.
81         (es_func_mem_write): Rewrite reallocation part.
83         * estream.c (es_write_sanitized_utf8_buffer): Typo typo fix.
85 2009-06-25  Werner Koch  <wk@g10code.com>
87         * estream.c (es_write_sanitized_utf8_buffer): Typo fix.
89 2009-06-24  Werner Koch  <wk@g10code.com>
91         * estream.c (es_read_line): In the malloc error case, set
92         MAX_LENGTH to 0 only if requested.
93         * xreadline.c (read_line): Ditto.
94         * estream.c (es_write_sanitized_utf8_buffer): Pass on error from
95         es_fputs.
96         * sexputil.c (get_rsa_pk_from_canon_sexp): Check for error after
97         the loop.  Reported by Fabian Keil.
99 2009-06-22  Werner Koch  <wk@g10code.com>
101         * estream.c (es_pth_read, es_pth_write) [W32]: New.
102         (ESTREAM_SYS_READ, ESTREAM_SYS_WRITE) [HAVE_PTH]: Use them.
104 2009-06-03  Werner Koch  <wk@g10code.com>
106         * estream.c (es_convert_mode): Rewrite and support the "x" flag.
108 2009-05-28  David Shaw  <dshaw@jabberwocky.com>
110         From 1.4:
112         * http.h, http.c (send_request) Pass in a STRLIST for additional
113         headers.  Change all callers.
115 2009-05-27  David Shaw  <dshaw@jabberwocky.com>
117         From 1.4:
119         * http.h, http.c (send_request): Pass in srvtag and make its
120         presence sufficient to turn the feature on.
121         (http_open): From here.
122         (http_document): And here.
124         * srv.c (getsrv): Raise maximum packet size to 2048, as PACKETSZ
125         is too small these days.
127 2009-05-22  Werner Koch  <wk@g10code.com>
129         * ttyio.c (tty_cleanup_after_signal): New.
131 2009-05-19  Werner Koch  <wk@g10code.com>
133         * simple-pwquery.c (agent_open): Use SUN_LEN
134         (JNLIB_NEED_AFLOCAL): Define and include mischelp.h.
136 2009-05-07  Werner Koch  <wk@g10code.com>
138         * sexputil.c (get_rsa_pk_from_canon_sexp): New.
139         * t-sexputil.c (test_make_canon_sexp_from_rsa_pk): Extend the test.
141 2009-04-28  Werner Koch  <wk@g10code.com>
143         * sexputil.c (make_canon_sexp_from_rsa_pk): New.
144         * t-sexputil.c (test_make_canon_sexp_from_rsa_pk): New.
146 2009-04-01  Werner Koch  <wk@g10code.com>
148         * iobuf.c: Port David's changes from 1.4:
149         (fd_cache_invalidate): Pass return code from close back.
150         (direct_open, iobuf_ioctl): Check that eturn value.
151         (fd_cache_synchronize): New.
152         (iobuf_ioctl): Add new sub command 4 (fsync).
154         * iobuf.c (fd_cache_strcmp): New. Taken from 1.4.
155         (fd_cache_invalidate, fd_cache_close, fd_cache_open):  Use it.
157         * exechelp.c (gnupg_spawn_process): Implement new flag bit 6.
158         * sysutils.c (gnupg_allow_set_foregound_window): Allow the use of
159         ASFW_ANY.
161         * membuf.c (put_membuf, get_membuf): Wipe memory on out of core.
163 2009-03-31  Werner Koch  <wk@g10code.com>
165         * percent.c (percent_unescape, percent_plus_unescape): New.
166         (percent_plus_unescape_inplace, percent_unescape_inplace): New.
167         (do_plus_or_plain_unescape, count_unescape, do_unescape): New.
168         (do_unescape_inplace): New.
169         * t-percent.c (test_percent_plus_escape): Test percent_plus_unescape.
171         * get-passphrase.c, get-passphrase.h: New.
172         * Makefile.am (without_pth_sources): New.
174 2009-03-18  Werner Koch  <wk@g10code.com>
176         * exechelp.c: Include sys/resource.h and sys/stat.h.
177         (get_max_open_fds): New.
178         (do_exec): Use it.
179         (get_all_open_fds): New.
180         (close_all_fds): New.
181         (do_exec): Use close_all_fds.
182         * t-exechelp.c: New.
184 2009-03-13  David Shaw  <dshaw@jabberwocky.com>
186         * http.c (do_parse_uri): Properly handle IPv6 literal addresses as
187         per RFC-2732.  Adapted from patch by Phil Pennock.
189 2009-03-12  Werner Koch  <wk@g10code.com>
191         * gettime.c: Include i18n.h.
192         (dump_isotime): New.
194 2009-03-06  Werner Koch  <wk@g10code.com>
196         * sexputil.c (make_canon_sexp): New.
198 2009-03-03  Werner Koch  <wk@g10code.com>
200         * exechelp.c (do_exec): Make sure that /dev/null connected FDs are
201         not closed.
203 2009-01-19  Werner Koch  <wk@g10code.com>
205         * audit.c (writeout_li): Translate a few more result strings.
206         Fixes bug#970.
208         * convert.c (hex2str): Fix optimization to append a nul character.
210 2008-12-05  Werner Koch  <wk@g10code.com>
212         * percent.c, t-percent.c: New.
214         * exechelp.c (gnupg_spawn_process, gnupg_spawn_process_fd) 
215         (gnupg_spawn_process_detached) [W32]: Remove debug output.
217 2008-11-20  Werner Koch  <wk@g10code.com>
219         * audit.c (writeout_li): Translate OKTEXT.
221 2008-11-04  Werner Koch  <wk@g10code.com>
223         * i18n.c (i18n_init) [USE_SIMPLE_GETTEXT]: Adjust for changed
224         w32-gettext.c.
225         * homedir.c (gnupg_localedir): New.
227 2008-10-20  Werner Koch  <wk@g10code.com>
229         * http.c (http_register_tls_callback) [!HTTP_USE_GNUTLS]: Mark
230         unused arg.
231         * localename.c (do_nl_locale_name): Ditto.
232         * audit.c (event2str): Silent gcc warning.
233         * sysutils.c (translate_sys2libc_fd): Mark unused arg.
234         (translate_sys2libc_fd_int): Ditto.
235         * iobuf.c (translate_file_handle): Ditto.
236         * asshelp.c (send_one_option): Ditto.
237         * exechelp.c (gnupg_spawn_process): Ditto.
238         * signal.c (got_usr_signal): Ditto
239         * estream.c (es_func_fd_create) [!W32]: Ditto.
240         (es_func_fp_create) [!W32]: Ditto.
241         (es_write_hexstring): Ditto.
242         (dummy_mutex_call_void, dummy_mutex_call_int) [HAVE_PTH]: New.
243         (ESTREAM_MUTEX_LOCK, ESTREAM_MUTEX_UNLOCK, ESTREAM_MUTEX_TRYLOCK)
244         (ESTREAM_MUTEX_INITIALIZE) [HAVE_PTH]: Use dummy calls so to mark
245         unused arg.
247 2008-10-19  Werner Koch  <wk@g10code.com>
249         * estream-printf.c (estream_vsnprintf): Fix return value.
250         (check_snprintf): Add a new test.
251         (one_test) [W32]: Disable test.
253 2008-10-17  Werner Koch  <wk@g10code.com>
255         * util.h (snprintf) [W32]: Redefine to estream_snprintf.
257 2008-09-03  Werner Koch  <wk@g10code.com>
259         * convert.c (hex2str): New.
260         (hex2str_alloc): New.
261         * t-convert.c (test_hex2str): New.
263 2008-08-19  Werner Koch  <wk@g10code.com>
265         * iobuf.c: Avoid passing a NULL (iobuf_t)->desc to the log
266         function.  Should in general never be NULL, but well.  Reported by
267         M. Heneka.
269 2008-06-26  Werner Koch  <wk@g10code.com>
271         * estream.c (es_write_sanitized): Loose check for control
272         characters to better cope with utf-8.  The range 0x80..0x9f is
273         nowadays not anymore accidently used for control charaters.
275 2008-06-25  Marcus Brinkmann  <marcus@g10code.de>
277         Revert last three changes related to handle translation.
278         * sysutils.c:
279         (FD_TRANSLATE_MAX, fd_translate, fd_translate_len)
280         (translate_table_init, translate_table_lookup): Removed.
281         * iobuf.c (check_special_filename): Do not use
282         translate_table_lookup.
283         * sysutils.h (translate_table_init, translate_table_lookup):
284         Remove prototypes.
286 2008-06-19  Werner Koch  <wk@g10code.com>
288         * sysutils.c: Remove <ctype.h>.
289         (fd_translate_max): Use macro for the size.
290         (translate_table_init): Protect read against EINTR and replace
291         isspace by spacep.
293 2008-06-18  Marcus Brinkmann  <marcus@g10code.de>
295         * sysutils.c (TRANS_MAX): Bump up to 350 to be on the safe side.
297         * sysutils.h (translate_table_init, translate_table_lookup): New
298         prototypes.
299         * sysutils.c: Include <ctype.h>.
300         (FD_TRANSLATE_MAX): New macro.
301         (fd_translate, fd_translate_len): New static variables.
302         (translate_table_init, translate_table_lookup): New functions.
303         (translate_sys2libc_fd_int): Translate file descriptor.
304         * iobuf.c (check_special_filename): Translate handle values from
305         special filenames.
307 2008-06-16  Werner Koch  <wk@g10code.com>
309         * homedir.c (w32_commondir): New.
310         (gnupg_sysconfdir): Use it.
312 2008-06-09  Werner Koch  <wk@g10code.com>
314         * b64dec.c: New.
316 2008-06-05  Werner Koch  <wk@g10code.com>
318         * util.h (gnupg_copy_time): Replace strcpy by memcpy.
320 2008-05-26  Werner Koch  <wk@g10code.com>
322         * asshelp.c (send_one_option, send_pinentry_environment): use
323         xfree and xtrystrdup.
325         * i18n.c (i18n_switchto_utf8) [USE_SIMPLE_GETTEXT]: Return NULL.
327         * homedir.c (gnupg_module_name): Add
328         GNUPG_MODULE_NAME_CONNECT_AGENT and GNUPG_MODULE_NAME_GPGCONF.
330 2008-04-21  Werner Koch  <wk@g10code.com>
332         * http.c (http_wait_response) [W32]: Use DuplicateHandle because
333         it is a socket.
334         (cookie_read) [W32]: Use recv in place of read.
336 2008-04-08  Werner Koch  <wk@g10code.com>
338         * i18n.c (i18n_switchto_utf8, i18n_switchback)
339         [USE_SIMPLE_GETTEXT]: Implement.
341 2008-04-07  Werner Koch  <wk@g10code.com>
343         * b64enc.c (b64enc_start): Detect PGP mode.
344         (b64enc_finish): Write PGP CRC.
345         * util.h (struct b64state): Add field CRC.
346         * t-b64.c: New.
348         * pka.c (get_pka_info): Use xtrymalloc and check result.
350 2008-03-25  Werner Koch  <wk@g10code.com>
352         * localename.c: Strip all W32 code.  Include w32help.h.
353         (gnupg_messages_locale_name) [W32]: Use the gettext_localename.
355 2008-03-17  Werner Koch  <wk@g10code.com>
357         * iobuf.c (IOBUF_BUFFER_SIZE): Actually use this macro.
359         * simple-pwquery.c (agent_send_all_options): Fix last change.
361 2008-03-06  Werner Koch  <wk@g10code.com>
363         * simple-pwquery.c (agent_send_all_options): Add support for
364         XAUTHORITY and PINENTRY_USER_DATA.
366 2008-02-15  Marcus Brinkmann  <marcus@g10code.de>
368         * exechelp.c (gnupg_spawn_process_fd): Add flag DETACHED_PROCESS
369         unconditionally (required for all callers at the moment).
371 2008-02-14  Werner Koch  <wk@g10code.com>
373         * sysutils.c (gnupg_allow_set_foregound_window): New.
374         (WINVER) [W32]: Define.
376 2008-01-31  Werner Koch  <wk@g10code.com>
378         * audit.c (audit_print_result): Make sure that the output is
379         always UTF8.
381 2008-01-27  Werner Koch  <wk@g10code.com>
383         * exechelp.c (gnupg_spawn_process): Add arg FLAGS and changed all
384         callers to pass 0 for it.
386 2007-12-13  Werner Koch  <wk@g10code.com>
388         * sexputil.c (hash_algo_from_sigval): New.
389         * t-sexputil.c: New.
390         * Makefile.am (module_tests): Add it.
392 2007-12-11  Werner Koch  <wk@g10code.com>
394         * asshelp.c (send_pinentry_environment): Allow using of old
395         gpg-agents not capabale of the xauthority and pinentry_user_data
396         options.
398 2007-12-04  Werner Koch  <wk@g10code.com>
400         * Makefile.am (t_helpfile_LDADD, module_maint_tests): New.
401         * t-helpfile.c: New.
402         * helpfile.c: New.
403         * membuf.h (is_membuf_ready, MEMBUF_ZERO): New.
404         * localename.c: New.  Taken from gettext with modifications as done
405         for GpgOL.  Export one new function.
406         * util.h (gnupg_messages_locale_name, gnupg_get_help_string): Added.
408         * sysutils.c (gnupg_reopen_std): New.  Taken from ../g10/gpg.c.
410 2007-11-27  Werner Koch  <wk@g10code.com>
412         * Makefile.am (CLEANFILES): New.
414         * homedir.c (dirmngr_socket_name): Use CSIDL_WINDOWS.
416 2007-11-15  Werner Koch  <wk@g10code.com>
418         * asshelp.c (send_pinentry_environment): Add args XAUTHORITY and
419         PINENTRY_USER_DATA.
420         (start_new_gpg_agent): Ditto.
422 2007-11-07  Werner Koch  <wk@g10code.com>
424         * status.h: New.
425         * errors.h: Remove.
427 2007-11-05  Werner Koch  <wk@g10code.com>
429         * audit.c, audit.h: New. 
430         * Makefile.am: Add rules to build audit-events.h.
431         * exaudit.awk: New.
432         * mkstrtable.awk: New.  Taken from libgpg-error.
434 2007-10-19  Werner Koch  <wk@g10code.com>
436         * i18n.c (i18n_switchto_utf8, i18n_switchback): New.
438 2007-10-01  Werner Koch  <wk@g10code.com>
440         * sysutils.h (FD2INT, INT2FD): New.
442 2007-09-21  Werner Koch  <wk@g10code.com>
444         * homedir.c (default_homedir): Make registry work.  Reported by
445         Marc Mutz.
447 2007-08-29  Werner Koch  <wk@g10code.com>
449         * exechelp.c (gnupg_wait_process): Add arg EXITCODE.  Changed all
450         callers.
451         (gnupg_create_inbound_pipe): New.
452         * util.h (GNUPG_MODULE_NAME_GPGSM, GNUPG_MODULE_NAME_GPG): New.
453         * homedir.c (gnupg_module_name): Add them
454         
455 2007-08-28  Werner Koch  <wk@g10code.com>
457         * gettime.c (check_isotime, add_isotime): New.  Originally written
458         for DirMngr by me.
459         (add_days_to_isotime): New.
460         (date2jd, jd2date, days_per_month, days_per_year): New. Taken from
461         my ancient (1988) code used in Wedit (time2.c).
463 2007-08-27  Werner Koch  <wk@g10code.com>
465         * util.h (GNUPG_MODULE_NAME_CHECK_PATTERN): New.
466         * homedir.c (gnupg_module_name): Add it.
467         * exechelp.c (w32_fd_or_null) [W32]: New.
468         (gnupg_spawn_process_fd): New.
469         (gnupg_wait_process) [W32]: Close the handle after if the process has
470         returned.
472 2007-08-22  Werner Koch  <wk@g10code.com>
474         Updated estream from libestream.
475         
476         * estream.c (mem_malloc, mem_realloc, mem_free): New.  Use them
477         instead of the ES_MEM_foo.
478         * estream.c (estream_cookie_mem): Remove members DONT_FREE,
479         APPEND_ZERO, PTR and SIZE.  Add MEMORY_LIMIT.  Put GROW into a new
480         FLAGS struct.
481         (es_func_mem_create): Remove APPEND_ZERO, DONT_FREE, PTR and
482         SIZE.  Add MEMORY_LIMIT.
483         (es_func_mem_write, es_func_mem_seek, es_func_mem_destroy): Revamp.
484         (es_open_memstream): Change API to just take a memory limit and a
485         mode argument.  Rename to ..
486         (es_fopenmem): .. this.
487         (HAVE_W32_SYSTEM) [_WIN32]: Define if not defined.
488         (tmpfd) [W32]: Implement directly using the W32 API.
489         (es_fgets): Rewrite without using doreadline.
491 2007-08-21  Werner Koch  <wk@g10code.com>
493         * sysutils.c (gnupg_tmpfile): New.
494         * t-sysutils.c: New.
495         * Makefile.am (module_tests): Add t-sysutils.
497 2007-08-20  Werner Koch  <wk@g10code.com>
499         * exechelp.c [W32]: Redefine X_OK to F_OK.
501 2007-08-16  Werner Koch  <wk@g10code.com>
503         * Makefile.am (t_convert_DEPENDENCIES): Remove
504         ($(PROGRAMS)): Remove.
505         (t_common_ldadd): Use libcommon.a and not the macro.
507 2007-08-14  Werner Koch  <wk@g10code.com>
509         * homedir.c (dirmngr_socket_name): New.
511 2007-08-07  Werner Koch  <wk@g10code.com>
513         * tlv.c, tlv.h: Move from ../scd/.
514         * tlv.c (parse_sexp, parse_ber_header): Add ERRSOURCE arg and prefix
515         name with a _.
516         * tlv.h: Use macro to convey ERRSOURCE.
518 2007-08-02  Werner Koch  <wk@g10code.com>
520         * gc-opt-flags.h: New.
522 2007-08-01  Werner Koch  <wk@g10code.com>
524         * estream-printf.c (read_dummy_value): Removed as it is useless now.
525         (read_values): Remove check on !vaargs which is not anymore needed
526         and anyway not portable.  Reported by Peter O'Gorman.
528 2007-07-16  Werner Koch  <wk@g10code.com>
530         * estream.c (es_func_file_create): Clear NO_CLOSE flag.
532 2007-07-12  Werner Koch  <wk@g10code.com>
534         * sysutils.h (gnupg_fd_t): New.
535         * sysutils.c (translate_sys2libc_fd): Use that type instead of int.
536         (translate_sys2libc_fd_int): New.
538 2007-07-09  Werner Koch  <wk@g10code.com>
540         * t-gettime.c (test_isotime2epoch): Use time_t and not u32.
542 2007-07-05  Werner Koch  <wk@g10code.com>
544         * t-gettime.c: New. 
545         * gettime.c (isotime2epoch, epoch2isotime): New.
547 2007-07-04  Werner Koch  <wk@g10code.com>
549         * estream.c (es_init_do): Do not throw an error if pth has already
550         been initialized.
552 2007-06-26  Werner Koch  <wk@g10code.com>
554         * Makefile.am ($(PROGRAMS)): New.
556         * util.h (init_common_subsystems): Moved to ..
557         * init.h: .. New.
558         * util.h: Include init.h.
560         * homedir.c (standard_homedir): New.
561         (default_homedir) [W32]: Reimplemented in terms of
562         standard_homedir.  Fixed memory leak.
564 2007-06-25  Werner Koch  <wk@g10code.com>
566         * iobuf.c: Add more documentation and slighly restructured macro
567         defintion for better readability.
568         (FILEP_OR_FD): Rename to fp_or_fd_t.
569         (CLOSE_CACHE): Rename to close_cache_t.
571         * sysutils.c (translate_sys2libc_fd): New using the code from iobuf.c.
572         * iobuf.c: Include sysutils.h.
573         (iobuf_translate_file_handle): Remove.
574         (translate_file_handle): Use new function.
576         * estream-printf.c [TEST]: Header including fixes. 
577         (do_format): Do not append a trailing Nul.  This avoids spurious
578         Nuls in the es_printf output.
579         (estream_vsnprintf, estream_vasprintf): Take this in account.
581         * estream.h (struct es__stream): Change FLAGS to a bit structure.
582         (ES__FLAG_WRITING): Replace by a bit from FLAGS.  * estream.c
583         (struct estream_internal): Rename FLAGS to MODEFLAGS so that they
584         are not confused with the estream flags.
585         (es_initialize, es_create): Add arg MODEFLAGS so that we can setup
586         the intial writemode.  Changed all callers to pass them.
587         (es_convert_mode): Set O_BINARY.
588         (es_func_fd_create, es_func_fp_create, es_func_file_create) [W32]:
589         Call setmode if requested.
590         
591 2007-06-24  Werner Koch  <wk@g10code.com>
593         * estream.c (do_fpopen, es_fpopen, es_fpopen_nc): New.
594         (es_func_fp_create, es_func_fp_read, es_func_fp_write) 
595         (es_func_fp_seek, es_func_fp_destroy): New.
597 2007-06-22  Werner Koch  <wk@g10code.com>
599         * estream.c (es_fdopen): Factored code out to..
600         (do_fdopen): .. new.
601         (es_fdopen_nc): New.
602         (estream_cookie_fd): Add field NO_CLOSE. 
603         (es_func_fd_create): Add arg NO_CLOSE and changed all callers.
604         (es_func_fd_destroy): Handle the new flag.
606         * homedir.c (gnupg_libexecdir) [W32]: Factor code out to ..
607         (w32_rootdir): .. new.
608         (gnupg_sysconfdir, gnupg_libdir, gnupg_datadir) [W32]: Return
609         name based on w32_rootdir().
611 2007-06-21  Werner Koch  <wk@g10code.com>
613         * membuf.h (get_membuf_len): New.
615         * membuf.c (init_membuf_secure): Really allocate in secure memory.
616         (put_membuf_str): New.
618         * ttyio.c (tty_getf): New.
620         * util.h (ctrl_t): Declare it here.
622         * asshelp.c (start_new_gpg_agent): New.  Based on code from
623         ../sm/call-agent.c
625 2007-06-20  Werner Koch  <wk@g10code.com>
627         * sysutils.c (gnupg_sleep): New.
628         * sysutils.h [W32]: Remove _sleep wrapper.  Changed all callers to
629         use gnupg_sleep.
631         * exechelp.c (build_w32_commandline_copy): New.
632         (build_w32_commandline): Factored some code out to new function
633         and correctly process a PGMNAME with spaces.
634         (gnupg_spawn_process_detached) [W32]: Implement.
636 2007-06-14  Werner Koch  <wk@g10code.com>
638         * simple-pwquery.h (MAP_SPWQ_ERROR_IMPL): New.
639         (SPWQ_NO_PIN_ENTRY): New.
640         * simple-pwquery.c (simple_pw_set_socket): New.
641         (agent_open): Use it if GPG_AGENT_INFO is not set.
642         (simple_pwquery): Extended to allow returning of otehyr error codes.
644         * util.h (GNUPG_MODULE_NAME_AGENT, GNUPG_MODULE_NAME_PINENTRY) 
645         (GNUPG_MODULE_NAME_SCDAEMON, GNUPG_MODULE_NAME_DIRMNGR) 
646         (GNUPG_MODULE_NAME_PROTECT_TOOL): New.
647         * homedir.c (gnupg_module_name): New.
648         (gnupg_bindir): New.
650 2007-06-12  Werner Koch  <wk@g10code.com>
652         * homedir.c (gnupg_sysconfdir): New.
653         (gnupg_libexecdir): New.  Taken from g10/misc.c:get_libexecdir.
654         (gnupg_datadir): New.
655         (gnupg_libdir): New.
657         * http.c (connect_server) [W32]: Do not call init_sockets if
658         HTTP_NO_WSASTARTUP is defined.
660         * init.c: New.
662         * estream.c (es_init_do): Init stream lock here because we can't
663         use a static initialization with W32pth.
665 2007-06-11  Werner Koch  <wk@g10code.com>
667         * Makefile.am (t_common_ldadd): Use libcommonstd macro.
669 2007-06-06  Werner Koch  <wk@g10code.com>
671         * Makefile.am: Include am/cmacros.am.
673         * sysutils.h [W32]: Remove prototypes for the registry access.
674         * w32reg.c:  Move to ../jnlib/w32-reg.c.
676         * i18n.c (i18n_init): New.
678         * simple-gettext.c: Remove.
680         * iobuf.c (iobuf_get_filelength): Rename SIZE to EXSIZE to silent
681         shadowing warning.
683 2007-06-04  Werner Koch  <wk@g10code.com>
685         * http.c [W32]: Include unistd.h also in this case.
686         (write_server) [W32]: Fixed error code.
687         (init_sockets): Fixed syntax error.
688         (cookie_close): Replace close by sock_close macro.
690         * estream.c [w32]: Do not init Mutex.
692         * Makefile.am (common_sources) [USE_SNS_SRV]: Build srv.c only
693         when needed.
695         * ttyio.c (init_ttyfp) [W32]: Do not use TTYFP.
697         * util.h: Include ../jnlib/dynload.h.
699         * dynload.h:  Move to ../jnlib.
701 2007-05-30  Werner Koch  <wk@g10code.com>
703         * estream.c (MEM_FREE, MEM_ALLOC, MEM_REALLOC): Prefix with ES_ as
704         windows.h also has such definitions,
706 2007-05-15  Werner Koch  <wk@g10code.com>
708         * util.h: Do not include gnulib's vasprintf.  Redefine asprintf
709         and vasprintf.
711         * xasprintf.c (xasprintf, xtryasprintf): Use estream_vasprintf.
713         * estream-printf.h, estream-printf.c: New.  Taken from current
714         libestream SVN.
715         * Makefile.am (common_sources): Add them.
717 2007-05-14  Werner Koch  <wk@g10code.com>
719         * sexp-parse.h (smklen): New.
720         * sexputil.c: Include sexp-parse.h.
721         (make_simple_sexp_from_hexstr): Replace sprintf by smklen.
723 2007-05-07  Werner Koch  <wk@g10code.com>
725         * signal.c (got_fatal_signal): Protect SIG from being clobbered by
726         a faulty signal implementaion.  Suggested by James Juran. 
728 2007-04-25  Werner Koch  <wk@g10code.com>
730         * i18n.h (ngettext): New.
731         * simple-gettext.c (ngettext): New.
733 2007-04-20  Werner Koch  <wk@g10code.com>
735         * miscellaneous.c (my_gcry_logger, my_gcry_outofcore_handler):
736         Moved from gpg-agent to here.
737         (my_gcry_fatalerror_handler): new.
738         (setup_libgcrypt_logging): New.
740 2007-03-19  Werner Koch  <wk@g10code.com>
742         * miscellaneous.c (print_hexstring): New.
743         * estream.c (es_fprintf_unlocked): New.
744         (es_write_sanitized): New.
745         (es_write_hexstring): New.
746         (es_write_sanitized_utf8_buffer) [GNUPG_MAJOR_VERSION]: New.
748 2007-03-09  David Shaw  <dshaw@jabberwocky.com>
750         From STABLE-BRANCH-1-4
752         * http.c (do_parse_uri): Remove the hkp port 11371 detection.  We
753         implement hkp in the keyserver handler, and the support here makes
754         it appear like a bad hkp request actually succeeded.
756 2007-01-31  Werner Koch  <wk@g10code.com>
758         * Makefile.am (t_common_ldadd): Add LIBINCONV and LIBINTL.
760 2007-01-25  Werner Koch  <wk@g10code.com>
762         * simple-pwquery.c (simple_pwquery): New arg OPT_CHECK.
764 2006-12-13  David Shaw  <dshaw@jabberwocky.com>
766         * Makefile.am (AM_CPPFLAGS): Include intl/ so we can reference the
767         built-in headers.
769 2006-11-23  Werner Koch  <wk@g10code.com>
771         * http.c: Include i18n.h
773 2006-11-21  Werner Koch  <wk@g10code.com>
775         * estream.c: Remove explicit Pth soft mapping diabling becuase it
776         is now done in config.h.
778 2006-11-15  Werner Koch  <wk@g10code.com>
780         * estream.c: Disabled Pth soft mapping.
781         (my_funopen_hook_ret_t): New.
782         (print_fun_writer): Use it here.
784         * iobuf.c (fd_cache_close): Use %d instead of %p for debug output.
786 2006-11-03  Werner Koch  <wk@g10code.com>
788         * Makefile.am (t_convert_DEPENDENCIES): Add libcommon.  From
789         Gentoo.
791 2006-10-24  Marcus Brinkmann  <marcus@g10code.de>
793         * Makefile.am (libcommon_a_CFLAGS): Add $(LIBASSUAN_CFLAGS).
794         (libsimple_pwquery_a_CFLAGS): New variable.
796 2006-10-20  Werner Koch  <wk@g10code.com>
798         * convert.c (hex2bin): New.
800 2006-10-17  Werner Koch  <wk@g10code.com>
802         * estream.c (struct estream_internal, es_initialize) 
803         (es_deinitialize, print_fun_writer, es_print): New and modified
804         functions to avoid tempfiles for printf style printing. 
806         * Makefile.am (libcommonpth_a_SOURCES): New. We now build a secon
807         version of the library with explicit Pth support.
808         * exechelp.c, estream.c: Make use of WITHOUT_GNU_PTH.
810 2006-10-08  Werner Koch  <wk@g10code.com>
812         * gpgrlhelp.c: Trun all functions into dummies if readline is not
813         available.
815 2006-10-06  Werner Koch  <wk@g10code.com>
817         * Makefile.am (AM_CFLAGS): Use PTH version of libassuan.
819         * util.h (GNUPG_GCC_A_SENTINEL): Defined for gcc >= 4.
821 2006-10-04  David Shaw  <dshaw@jabberwocky.com>
823         * gpgrlhelp.c: readline requires stdio.h.
825 2006-10-04  Werner Koch  <wk@g10code.com>
827         * membuf.c (init_membuf_secure): New.
828         (put_membuf): Make sure that ERRNO is set even if the underlying
829         malloc code does not work properly.
830         (get_membuf): Set ERRNO on error.
831         (get_membuf): Allow to pass LEN as NULL.
833 2006-10-02  Werner Koch  <wk@g10code.com>
835         * iobuf.c (iobuf_unread): Removed.  This code is not required.
836         Also removed the entire unget buffer stuff.
838 2006-09-27  Werner Koch  <wk@g10code.com>
840         * util.h: Do not include strsep.h and strpbrk.h.
841         (isascii): Removed as it is now in jnlib.
843         * iobuf.c (pop_filter, underflow, iobuf_close): Free the unget
844         buffer.
846 2006-09-27  Florian Weimer <fweimer@bfk.de>  (wk)
847         
848         * iobuf.c (iobuf_unread): New.
850 2006-09-22  Werner Koch  <wk@g10code.com>
852         * i18n.h: Changed license to an all permissive one.
854         * ttyio.c (tty_get): We need to use readline too.  Added two more
855         hooks.
857 2006-09-21  Werner Koch  <wk@g10code.com>
859         * ttyio.c (tty_private_set_rl_hooks): New.
860         (tty_enable_completion, tty_disable_completion): Use a hook to
861         enable readline support.  Now always available.
862         (tty_cleanup_rl_after_signal): New.
864         * ttyio.h: Removed readline specific stuff.  Included util.h.
865         * common-defs.h: New.
867 2006-09-15  Werner Koch  <wk@g10code.com>
869         * convert.c: New.
870         (hexcolon2bin): New.
871         (bin2hex, bin2hexcolon, do_binhex): New.
872         * t-convert.c: New
874 2006-09-14  Werner Koch  <wk@g10code.com>
876         * util.h (out_of_core): Use new gpg_error_from_syserror function.
878         * http.c (init_sockets): Changed it to require 2.2 unless it is
879         build within gnupg 1 where we require 1.1 (and not anymore allow
880         for 1.0).
882 2006-09-07  Werner Koch  <wk@g10code.com>
884         * exechelp.c (gnupg_spawn_process): Factor out post fork code to ..
885         (do_exec): .. new function.  Allow passing of -1 for the fds.
886         (gnupg_spawn_process): Terminate gcrypt's secure memory in the child.
887         (gnupg_spawn_process_detached): New.
889 2006-09-06  Werner Koch  <wk@g10code.com>
891         * maperror.c: Removed.
893         * util.h (out_of_core): New.
895 2006-09-04  Werner Koch  <wk@g10code.com>
897         * http.c (http_get_header): New.
898         (capitalize_header_name, store_header): New.
899         (parse_response): Store headers away.
900         (send_request): Return GPG_ERR_NOT_FOUND if connect_server failed.
901         * http.h: New flag HTTP_FLAG_NEED_HEADER.
903 2006-08-21  Werner Koch  <wk@g10code.com>
905         * Makefile.am (libcommon_a_SOURCES): Added keyserver.h
907         * openpgpdefs.h: New.  Stripped from ..g10/packet.h.
909 2006-08-16  Werner Koch  <wk@g10code.com>
911         * keyserver.h: Moved from ../include to here.
913         * http.c: Include srv.h.
915         * srv.c, srv.h: New. Taken from GnuPG 1.4
917 2006-08-14  Werner Koch  <wk@g10code.com>
919         * http.h (struct http_context_s): Moved to implementation.
920         * http.c (http_open): Changed call to return a context.
921         (http_open_document): Ditto.
922         (http_get_read_ptr, http_get_read_ptr, http_get_status_code): New.
923         (do_parse_uri): Replaced strlwr by straight code to ease
924         standalone use of this file.
925         (http_wait_response): Removed arg STATUS_CODE as it is available
926         through an accessor function. Adjusted caller.
927         (http_escape_string): New.
929         * estream.c (es_read_line): Renamed to ..
930         (doreadline): .. this.  Changed all callers.
931         (es_read_line): New.  This is theusual limited getline variabnt as
932         used at several places.  Here taken and adjusted from xreadline.c
933         (es_free): New.
935 2006-08-11  Werner Koch  <wk@g10code.com>
937         * http.c: Major internal changes to optionallly support GNUTLS and
938         ESTREAM.
939         (http_open): Move initialization of the stream ...
940         (send_request): .. here.
941         (http_register_tls_callback): New.
943         * estream.c (es_writen): Try to seek only is a seek function has
944         been registered.
946 2006-08-09  Werner Koch  <wk@g10code.com>
948         * http.c, http.h: New.  Taken from gnupg 1.4.5, merged with
949         changes done for the Dirmngr project (by g10 Code) and cleaned up
950         some stuff.
951         (make_header_line): New. Change all caller to make user of the new
952         * Makefile.am (libcommon_a_SOURCES): Added http.c and http.h.
954 2006-05-23  Werner Koch  <wk@g10code.com>
956         * gettime.c (isotimestamp): New.
958         * ttyio.c (tty_get_ttyname): Posixly correct usage of ctermid.
960         * dns-cert.c: New.  Taken from 1.4.3's util/cert.c.
961         * dns-cert.h: New.
963 2006-05-22  Werner Koch  <wk@g10code.com>
965         * pka.c: New. Taked from 1.4.3.
966         * pka.h: New.
967         * Makefile.am: Added pka.
969 2006-05-19  Werner Koch  <wk@g10code.com>
971         * yesno.c (answer_is_yes_no_default, answer_is_yes_no_quit):
972         Updated from 1.4.3.
973         (answer_is_okay_cancel): new.  From 1.4.3.
975         * miscellaneous.c (match_multistr): New.  Taken from 1.4.3.
977         * ttyio.c (tty_enable_completion, tty_disable_completion): New
978         dummy functions.
979         * ttyio.h: Add prototypes and stubs.
981 2006-04-19  Werner Koch  <wk@g10code.com>
983         * iobuf.c (iobuf_get_fd): New.  Taken from 1.4.3.
984         (iobuf_is_pipe_filename): New.
985         (pop_filter): Made static.
986         (iobuf_skip_rest): New.  Orginal patch by Florian
987         Weimer.  Added new argument PARTIAL.
988         (block_filter): Remove the old gpg indeterminate length mode.
989         (block_filter): Properly handle a partial body stream
990         that ends with a 5-byte length that happens to be zero.
991         (iobuf_set_block_mode, iobuf_in_block_mode): Removed as
992         superfluous.
993         (iobuf_get_filelength): New arg OVERFLOW.
994         (iobuf_get_filelength) [W32]: Use GetFileSizeEx if available
995         * miscellaneous.c (is_file_compressed): Take care of OVERFLOW.
997 2006-04-18  Werner Koch  <wk@g10code.com>
999         * homedir.c (w32_shgetfolderpath): New.  Taken from gpg 1.4.3.
1000         (default_homedir): Use it.
1002 2005-10-08  Marcus Brinkmann  <marcus@g10code.de>
1004         * signal.c (get_signal_name): Check value of HAVE_DECL_SYS_SIGLIST
1005         instead of just if it is defined.
1007 2005-09-28  Marcus Brinkmann  <marcus@g10code.de>
1009         * Makefile.am (AM_CFLAGS): Add $(LIBASSUAN_CFLAGS).
1011 2005-07-04  Marcus Brinkmann  <marcus@g10code.de>
1013         * simple-pwquery.h (simple_pwclear): New prototype.
1014         * simple-pwquery.c (simple_pwclear): New function.
1016 2005-06-15  Werner Koch  <wk@g10code.com>
1018         * miscellaneous.c (make_printable_string): Made P a void*.
1020         * sexputil.c (keygrip_from_canon_sexp, cmp_simple_canon_sexp):
1021         Fixed signed/unsigned pointer mismatch.
1022         (make_simple_sexp_from_hexstr): Ditto.  This is all too ugly; I
1023         wonder why gcc-4's default is to warn about them and forcing us to
1024         use cast the warning away.
1025         * iobuf.c (block_filter): Ditto.
1026         (iobuf_flush): Ditto.
1027         (iobuf_read_line): Ditto.
1028         (iobuf_read): Make BUFFER a void *.
1029         (iobuf_write): Make BUFFER a const void *.
1030         * ttyio.c (tty_print_utf8_string2): Ditto.
1031         * estream.c (estream_cookie_mem): Make MEMORY unsigned char*.
1032         (es_write): Make BUFFER a void *.
1033         (es_writen): Ditto.
1034         (es_func_fd_read, es_func_fd_write, es_func_mem_read) 
1035         (es_func_mem_write): Ditto.
1036         (es_read, es_readn): Ditto.
1037         (es_func_mem_write): Made MEMORY_NEW an unsigned char *.
1038         * estream.h (es_cookie_read_function_t)
1039         (es_cookie_write_function_t): Changed buffer arg to void*.
1041 2005-06-03  Werner Koch  <wk@g10code.com>
1043         * estream.c: Use HAVE_CONFIG_H and not USE_CONFIG_H!
1044         (es_func_fd_read, es_func_fd_write): Protect against EINTR.
1045         
1046 2005-06-01  Werner Koch  <wk@g10code.com>
1048         * Makefile.am (AM_CPPFLAGS): Added.
1050         * util.h: Add some includes for gnulib.
1051         (ttyname, isascii): Define them inline.
1052         * fseeko.c, ftello.c: Removed.
1053         * strsep.c, mkdtemp.c: Removed.
1054         * ttyname.c, isascii.c: Removed.
1056 2005-05-31  Werner Koch  <wk@g10code.com>
1058         * dynload.h: s/__inline__/inline/.
1060 2005-05-13  Werner Koch  <wk@g10code.com>
1062         * signal.c (got_fatal_signal): Print the signal number if we can't
1063         get a name for it.
1064         (get_signal_name): Return NULL if no name is available. Fixed
1065         conditional for sys_siglist to the correct one.
1067 2005-04-17  Werner Koch  <wk@g10code.com>
1069         * sexputil.c (cmp_simple_canon_sexp): New.
1070         (make_simple_sexp_from_hexstr): New.
1072 2005-04-07  Werner Koch  <wk@g10code.com>
1074         * sexputil.c: New.
1076 2005-04-11  Marcus Brinkmann  <marcus@g10code.de>
1078         * simple-pwquery.c (simple_pwquery): Use spwq_secure_free.
1080 2005-03-03  Werner Koch  <wk@g10code.com>
1082         * Makefile.am (AM_CFLAGS): Added PTH_CFLAGS.  Noted by Kazu Yamamoto.
1084 2005-02-25  Werner Koch  <wk@g10code.com>
1086         * xasprintf.c (xtryasprintf): New.
1088 2005-01-26  Moritz Schulte  <moritz@g10code.com>
1090         * Makefile.am (libcommon_a_SOURCES): New source files: estream.c,
1091         estream.h.
1092         * estream.c, estream.h: New files.
1094 2005-01-03  Werner Koch  <wk@g10code.com>
1096         * asshelp.c (send_pinentry_environment): Fixed changed from
1097         2004-12-18; cut+paste error for lc-messages.
1099 2004-12-21  Werner Koch  <wk@g10code.com>
1101         * simple-pwquery.c (agent_open) [W32]: Implement for W32.
1102         (readline) [W32]: Use recv instead of read.
1103         (writen) [W32]: Use send instead of write.
1104         (my_stpcpy): Define a stpcpy replacement so that this file
1105         continues to be self-contained.
1106         (agent_send_all_options) [W32]: Don't call ttyname.
1108 2004-12-21  Marcus Brinkmann  <marcus@g10code.de>
1110         * simple-pwquery.h (simple_query): Add prototype.
1111         * simple-pwquery.c (simple_query): New function.
1113 2004-12-21  Werner Koch  <wk@g10code.com>
1115         * signal.c (got_fatal_signal, got_usr_signal)
1116         (got_fatal_signal) [DOSISH]: Don't build.
1117         * simple-gettext.c: Include sysutils.h 
1119         * homedir.c: New. Use CSIDL_APPDATA for W32 as the default home
1120         directory.
1121         * Makefile.am (libcommon_a_SOURCES): Add it.
1122         (EXTRA_DIST): Removed mkerror and mkerrtok.
1124 2004-12-20  Werner Koch  <wk@g10code.com>
1126         * sysutils.h [W32]: Define sleep.
1127         * util.h: Add prototype for mkdtemp.
1129         * membuf.c (put_membuf): Wipe out buffer after a failed realloc.
1131 2004-12-19  Werner Koch  <wk@g10code.com>
1133         * maperror.c (map_assuan_err_with_source): Oops, args were swapped.
1135 2004-12-18  Werner Koch  <wk@g10code.com>
1137         * maperror.c (map_assuan_err): Renamed to ..
1138         (map_assuan_err_with_source): .. this and add arg SOURCE.c
1139         * asshelp.c (send_pinentry_environment, send_one_option): Add arg
1140         ERRSOURCE.
1142 2004-12-15  Werner Koch  <wk@g10code.com>
1144         * sysutils.h [W32]: Prototypes for registry functions.
1145         * w32reg.c: Include sysutils.h
1147         * simple-pwquery.c [W32]: Dummy code to allow a build.
1149         * exechelp.c [W32]: Implemented for W32 .
1151         * ttyname.c: New.
1153         * asshelp.c (send_one_option): New.
1154         (send_pinentry_environment): Cleaned up and made sure that empty
1155         values are not send.
1157 2004-12-07  Werner Koch  <wk@g10code.com>
1159         * asshelp.c (send_pinentry_environment) [W32]: Do not use ttyname.
1161 2004-12-06  Werner Koch  <wk@g10code.com>
1163         * exechelp.h, exechelp.c: New.  Based on code from ../sm/import.c.
1165 2004-12-03  Werner Koch  <wk@g10code.com>
1167         * strsep.c: Fixed copyright comments.
1169 2004-11-26  Werner Koch  <wk@g10code.com>
1171         * simple-gettext.c: New taken from gnupg 1.3.x
1173         * simple-pwquery.c [_WIN32]: Include winsock2.h.
1174         (agent_open): Disable it until we have our AF_UNIX implementation
1175         ready.
1176         * fseeko.c, ftello.c: Include sys/types for the sake of W32.
1178 2004-11-23  Werner Koch  <wk@g10code.com>
1180         * b64enc.c: Include stdio.h and string.h
1182 2004-08-18  Werner Koch  <wk@g10code.de>
1184         * simple-pwquery.c (simple_pwquery): Handle gpg-error style return
1185         code for canceled.
1187 2004-07-20  Werner Koch  <wk@g10code.de>
1189         * maperror.c: Removed header ksba.h.  Not required anymore.
1191 2004-06-14  Werner Koch  <wk@gnupg.org>
1193         * xreadline.c: New.  Based on the iobuf_read_line function.
1195 2004-05-12  Werner Koch  <wk@gnupg.org>
1197         * util.h (xtrycalloc_secure,xtrymalloc_secure): New.
1199 2004-05-11  Werner Koch  <wk@gnupg.org>
1201         * sysutils.c (disable_core_dumps): Only set the current limit.
1202         (enable_core_dumps): New.
1204 2004-04-13  Werner Koch  <wk@gnupg.org>
1206         * simple-pwquery.c (copy_and_escape): Relaxed quoting.
1208 2004-04-05  Werner Koch  <wk@gnupg.org>
1210         * errors.h (STATUS_NEWSIG): New.
1212 2004-03-11  Werner Koch  <wk@gnupg.org>
1214         * dynload.h [__MINGW32__]: Define RTLD_LAZY.
1216 2004-03-09  Werner Koch  <wk@gnupg.org>
1218         * maperror.c (map_assuan_err): Map the Locale_Problem item.
1220 2004-03-03  Werner Koch  <wk@gnupg.org>
1222         * asshelp.c, asshelp.h: New.
1223         (send_pinentry_environment): New. Code taken from ../sm/call-agent.c.
1225 2004-02-19  Werner Koch  <wk@gnupg.org>
1227         * simple-pwquery.c (agent_open): Don't mangle INFOSTR.
1229 2004-02-17  Werner Koch  <wk@gnupg.org>
1231         * simple-pwquery.c (agent_open): Ignore an empty GPG_AGENT_INFO.
1233         * errors.h: Added STATUS_IMPORT_OK.
1235 2004-02-10  Werner Koch  <wk@gnupg.org>
1237         * b64enc.c: New.  Based on code from ../sm/base64.c.
1239 2004-01-30  Marcus Brinkmann  <marcus@g10code.de>
1241         * Makefile.am (libcommon_a_SOURCES): Add xasprintf.c.
1242         * miscellaneous.c (xasprintf): Moved to ...
1243         * xasprintf (xasprintf): ... here.  New file.
1244         This allows to use xasprintf without sucking in gpg-error.
1246 2004-01-27  Werner Koch  <wk@gnupg.org>
1248         * sexp-parse.h: New; moved from../agent.
1250         * util.h (xtoi_4): New.
1252 2003-12-23  Werner Koch  <wk@gnupg.org>
1254         * maperror.c (map_assuan_err): Prepared for a new error code.
1256 2003-12-17  Werner Koch  <wk@gnupg.org>
1258         * gettime.c (asctimestamp): Add a note on a non-avoidable gcc warning.
1260         * util.h [!HAVE_VASPRINTF]: Add printf format attribute to the
1261         replacement function.
1263         * miscellaneous.c (xasprintf): New.
1265 2003-11-14  Werner Koch  <wk@gnupg.org>
1267         * mkdtemp.c (mkdtemp): Use gcry_create_nonce.
1269         * cryptmiss.c: Removed.
1271 2003-11-13  Werner Koch  <wk@gnupg.org>
1273         * util.h (vasprintf): Also fixed the prototype.
1275         * vasprintf.c (vasprintf): ARGS should not be a pointer.  Fixed
1276         segv on Solaris.  Reported by Andrew J. Schorr.
1278 2003-11-12  Werner Koch  <wk@gnupg.org>
1280         * maperror.c (map_ksba_err, map_gcry_err, map_kbx_err): Removed.
1282 2003-10-31  Werner Koch  <wk@gnupg.org>
1284         * util.h (gnupg_isotime_t): New.
1285         (gnupg_copy_time): New.
1287         * gettime.c (gnupg_get_isotime): New.
1289 2003-09-23  Werner Koch  <wk@gnupg.org>
1291         * iobuf.c (check_special_filename): Replaced is isdigit by digitp
1292         to avoid passing negative values and potential locale problems.
1293         Problem noted by Christian Biere.
1295         * util.h (ascii_isspace): New.
1297 2003-09-18  Werner Koch  <wk@gnupg.org>
1299         * ttyio.c (tty_fprintf): New.
1300         (tty_print_string, tty_print_utf8_string2)
1301         (tty_print_utf8_string): Made P argument const byte*.
1303 2003-08-20  Marcus Brinkmann  <marcus@g10code.de>
1305         * maperror.c (map_ksba_err): Map -1.  Use gpg_err_make to set
1306         the error source.
1308 2003-08-14  Timo Schulz  <twoaday@freakmail.de>
1310         * dynload.h. New. W32 wrapper around the dynload mechanism.
1311         
1312 2003-07-15  Werner Koch  <wk@gnupg.org>
1314         * simple-pwquery.c, simple-pwquery.h:  New; moved from ../agent.  
1315         * Makefile.am (libsimple_pwquery_a_LIBADD): New.
1317 2003-06-25  Werner Koch  <wk@gnupg.org>
1319         * maperror.c (map_to_assuan_status): Directly map 0 to 0.
1321 2003-06-17  Werner Koch  <wk@gnupg.org>
1323         * gettime.c (scan_isodatestr,add_days_to_timestamp,strtimevalue)
1324         (strtimestamp,asctimestamp): New.  Code taken from gnupg 1.3.2
1325         mischelp.c.
1327         * yesno.c: New.  Code taken from gnupg 1.3.2 mischelp.c
1329         * miscellaneous.c: New.
1331         * util.h: Include utf8conf.h
1333 2003-06-16  Werner Koch  <wk@gnupg.org>
1335         * gettime.c (make_timestamp): New.
1337         * ttyio.c: New. Taken from gnupg 1.2.
1338         * ttyio.h: Move from ../include.
1340 2003-06-13  Werner Koch  <wk@gnupg.org>
1342         * util.h (seterr): Removed macro.
1343         (xmalloc_secure,xcalloc_secure): New.
1345 2003-06-11  Werner Koch  <wk@gnupg.org>
1347         * iobuf.c (iobuf_writebyte,iobuf_write): Return error code from
1348         iobuf_flush.
1349         (iobuf_writestr): Ditto.
1351 2003-06-10  Werner Koch  <wk@gnupg.org>
1353         * iobuf.c, iobuf.h: New. Taken from current gnupg 1.3 CVS.  Run
1354         indent on it and adjusted error handling to libgpg-error style.
1355         Replaced IOBUF by iobuf_t. Renamed malloc functions.
1357 2003-06-04  Werner Koch  <wk@gnupg.org>
1359         * errors.h: Removed all error codes.  We keep the status codes for
1360         now.
1361         * Makefile.am: Do not create errors.c anymore; remove it from the
1362         sources.
1364         * maperror.c: Don't include error.h.  Change all error codes to
1365         libgpg-error style.
1366         (map_assuan_err): Changed to new Assuan error code convention.
1367         (map_to_assuan_status): Likewise.
1368         (map_gcry_err,map_kbx_err): Not needed.  For now dummy functions.
1370         * membuf.c, membuf.h: New.  Code taken from ../sm/call-agent.h.
1371         * Makefile.am: Added above.
1373 2003-04-29  Werner Koch  <wk@gnupg.org>
1375         * util.h (fopencokokie): Removed prototype and struct.
1377         * fopencookie.c: Removed.
1379         * maperror.c: Use system assuan.h
1381 2002-10-31  Neal H. Walfield  <neal@g10code.de>
1383         * isascii.c: New file.
1384         * putc_unlocked.c: Likewise.
1386 2002-10-28  Neal H. Walfield  <neal@g10code.de>
1388         * signal.c (caught_fatal_sig): Remove superfluous zero
1389         initializer.
1390         (caught_sigusr1): Likewise.
1392 2002-09-04  Neal H. Walfield  <neal@g10code.de>
1394         * vasprintf.c (vasprintf) [va_copy]: Use va_copy.
1395         [!va_copy && __va_copy]: Use __va_copy.
1396         [!va_copy && !__va_copy]: Only now fall back to using memcpy.
1398 2002-08-21  Werner Koch  <wk@gnupg.org>
1400         * errors.h: Added STATUS_IMPORT_PROBLEM.
1402 2002-08-20  Werner Koch  <wk@gnupg.org>
1404         * vasprintf.c: Hack to handle NULL for %s.
1406 2002-08-09  Werner Koch  <wk@gnupg.org>
1408         * signal.c: New. Taken from GnuPG 1.1.91.
1410 2002-07-23  Werner Koch  <wk@gnupg.org>
1412         * util.h (_IO_cookie_io_functions_t): Fixed typo.  Noted by
1413         Richard Lefebvre.
1415 2002-07-22  Werner Koch  <wk@gnupg.org>
1417         * fseeko.c, ftello.c: New.
1419 2002-06-28  Werner Koch  <wk@gnupg.org>
1421         * maperror.c (map_to_assuan_status): Map more errorcodes to Bad
1422         Certificate.
1424 2002-06-26  Werner Koch  <wk@gnupg.org>
1426         * maperror.c (map_to_assuan_status): Map EOF to No_Data_Available.
1428 2002-06-10  Werner Koch  <wk@gnupg.org>
1430         * errors.h (gnupg_error_token): Add new prototype.
1431         (STATUS_ERROR): New.
1433         * mkerrtok: New.
1434         * Makefile.am: Use it to create the new error token function.
1436 2002-06-04  Werner Koch  <wk@gnupg.org>
1438         * maperror.c (map_to_assuan_status): Map Bad_CA_Certificate.
1440 2002-05-23  Werner Koch  <wk@gnupg.org>
1442         * no-pth.c, Makefile.am: Removed.
1444 2002-05-22  Werner Koch  <wk@gnupg.org>
1446         * mkdtemp.c: Replaced byte by unsigned char because it is no longer
1447         defined in gcrypt.h.
1449 2002-05-21  Werner Koch  <wk@gnupg.org>
1451         * maperror.c (map_gcry_err): Add libgcrypt's new S-expression errors.
1452         (map_ksba_err): Add a few mappings.
1454 2002-05-14  Werner Koch  <wk@gnupg.org>
1456         * gettime.c: New.
1458 2002-05-03  Werner Koch  <wk@gnupg.org>
1460         * errors.h: Added STARUS_EXPSIG and STATUS_EXPKEYSIG.
1462 2002-04-15  Werner Koch  <wk@gnupg.org>
1464         * cryptmiss.c: New.
1466 2002-02-14  Werner Koch  <wk@gnupg.org>
1468         * maperror.c: Add more assuan<->gnupg mappings.
1470 2002-02-12  Werner Koch  <wk@gnupg.org>
1472         * fopencookie.c: Dummy function.
1474         * vasprintf.c: New.  Taken from binutils-2.9.1 and dropped all non
1475         ANSI-C stuff.  Merged with asprintf version.
1477         * no-pth.c: New.
1479 2002-01-23  Werner Koch  <wk@gnupg.org>
1481         * mkdtemp.c: Copied from gnupg-1.0.6c and changed to use libgcrypt.
1483 2002-01-19  Werner Koch  <wk@gnupg.org>
1485         * sysutils.c: New.  This is the misc.c file from gnupg 1.0.6 with
1486         the OpenPGP stuff removed.
1487         * sysutils.h: New.
1488         
1489 2002-01-15  Werner Koch  <wk@gnupg.org>
1491         * maperror.c: Add mapping for Not_Trusted. 
1493 2002-01-11  Werner Koch  <wk@gnupg.org>
1495         * maperror.c (map_assuan_err): Codes for CRL
1497 2002-01-08  Werner Koch  <wk@gnupg.org>
1499         * util.h (spacep): New.
1501 2002-01-02  Werner Koch  <wk@gnupg.org>
1503         * maperror.c (map_to_assuan_status): New.  Merged from ../agent
1504         and ../sm.
1506 2001-12-20  Werner Koch  <wk@gnupg.org>
1508         * maperror.c (map_gcry_err): Add some mappings.
1510 2001-12-18  Werner Koch  <wk@gnupg.org>
1512         * Makefile.am (AM_CPPFLAGS): Include flags for gcrypt and ksba
1514 2001-12-14  Werner Koch  <wk@gnupg.org>
1516         * util.h (digitp, hexdigitp): New ctype like macros.
1517         (atoi_1,atoi_2,atoi_4,xtoi_1,xtoi_2): New.
1518         
1519         
1520  Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007,
1521            2008, 2009 Free Software Foundation, Inc.
1523  This file is free software; as a special exception the author gives
1524  unlimited permission to copy and/or distribute it, with or without
1525  modifications, as long as this notice is preserved.
1527  This file is distributed in the hope that it will be useful, but
1528  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1529  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1530