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