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