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