About to do a release
[gnupg.git] / common / ChangeLog
1 2007-08-16  Werner Koch  <wk@g10code.com>
2
3         * Makefile.am (t_convert_DEPENDENCIES): Remove
4         ($(PROGRAMS)): Remove.
5         (t_common_ldadd): Use libcommon.a and not the macro.
6
7 2007-08-14  Werner Koch  <wk@g10code.com>
8
9         * homedir.c (dirmngr_socket_name): New.
10
11 2007-08-07  Werner Koch  <wk@g10code.com>
12
13         * tlv.c, tlv.h: Move from ../scd/.
14         * tlv.c (parse_sexp, parse_ber_header): Add ERRSOURCE arg and prefix
15         name with a _.
16         * tlv.h: Use macro to convey ERRSOURCE.
17
18 2007-08-02  Werner Koch  <wk@g10code.com>
19
20         * gc-opt-flags.h: New.
21
22 2007-08-01  Werner Koch  <wk@g10code.com>
23
24         * estream-printf.c (read_dummy_value): Removed as it is useless now.
25         (read_values): Remove check on !vaargs which is not anymore needed
26         and anyway not portable.  Reported by Peter O'Gorman.
27
28 2007-07-16  Werner Koch  <wk@g10code.com>
29
30         * estream.c (es_func_file_create): Clear NO_CLOSE flag.
31
32 2007-07-12  Werner Koch  <wk@g10code.com>
33
34         * sysutils.h (gnupg_fd_t): New.
35         * sysutils.c (translate_sys2libc_fd): Use that type instead of int.
36         (translate_sys2libc_fd_int): New.
37
38 2007-07-09  Werner Koch  <wk@g10code.com>
39
40         * t-gettime.c (test_isotime2epoch): Use time_t and not u32.
41
42 2007-07-05  Werner Koch  <wk@g10code.com>
43
44         * t-gettime.c: New. 
45         * gettime.c (isotime2epoch, epoch2isotime): New.
46
47 2007-07-04  Werner Koch  <wk@g10code.com>
48
49         * estream.c (es_init_do): Do not throw an error if pth has already
50         been initialized.
51
52 2007-06-26  Werner Koch  <wk@g10code.com>
53
54         * Makefile.am ($(PROGRAMS)): New.
55
56         * util.h (init_common_subsystems): Moved to ..
57         * init.h: .. New.
58         * util.h: Include init.h.
59
60         * homedir.c (standard_homedir): New.
61         (default_homedir) [W32]: Reimplemented in terms of
62         standard_homedir.  Fixed memory leak.
63
64 2007-06-25  Werner Koch  <wk@g10code.com>
65
66         * iobuf.c: Add more documentation and slighly restructured macro
67         defintion for better readability.
68         (FILEP_OR_FD): Rename to fp_or_fd_t.
69         (CLOSE_CACHE): Rename to close_cache_t.
70
71         * sysutils.c (translate_sys2libc_fd): New using the code from iobuf.c.
72         * iobuf.c: Include sysutils.h.
73         (iobuf_translate_file_handle): Remove.
74         (translate_file_handle): Use new function.
75
76         * estream-printf.c [TEST]: Header including fixes. 
77         (do_format): Do not append a trailing Nul.  This avoids spurious
78         Nuls in the es_printf output.
79         (estream_vsnprintf, estream_vasprintf): Take this in account.
80
81         * estream.h (struct es__stream): Change FLAGS to a bit structure.
82         (ES__FLAG_WRITING): Replace by a bit from FLAGS.  * estream.c
83         (struct estream_internal): Rename FLAGS to MODEFLAGS so that they
84         are not confused with the estream flags.
85         (es_initialize, es_create): Add arg MODEFLAGS so that we can setup
86         the intial writemode.  Changed all callers to pass them.
87         (es_convert_mode): Set O_BINARY.
88         (es_func_fd_create, es_func_fp_create, es_func_file_create) [W32]:
89         Call setmode if requested.
90         
91 2007-06-24  Werner Koch  <wk@g10code.com>
92
93         * estream.c (do_fpopen, es_fpopen, es_fpopen_nc): New.
94         (es_func_fp_create, es_func_fp_read, es_func_fp_write) 
95         (es_func_fp_seek, es_func_fp_destroy): New.
96
97 2007-06-22  Werner Koch  <wk@g10code.com>
98
99         * estream.c (es_fdopen): Factored code out to..
100         (do_fdopen): .. new.
101         (es_fdopen_nc): New.
102         (estream_cookie_fd): Add field NO_CLOSE. 
103         (es_func_fd_create): Add arg NO_CLOSE and changed all callers.
104         (es_func_fd_destroy): Handle the new flag.
105
106         * homedir.c (gnupg_libexecdir) [W32]: Factor code out to ..
107         (w32_rootdir): .. new.
108         (gnupg_sysconfdir, gnupg_libdir, gnupg_datadir) [W32]: Return
109         name based on w32_rootdir().
110
111 2007-06-21  Werner Koch  <wk@g10code.com>
112
113         * membuf.h (get_membuf_len): New.
114
115         * membuf.c (init_membuf_secure): Really allocate in secure memory.
116         (put_membuf_str): New.
117
118         * ttyio.c (tty_getf): New.
119
120         * util.h (ctrl_t): Declare it here.
121
122         * asshelp.c (start_new_gpg_agent): New.  Based on code from
123         ../sm/call-agent.c
124
125 2007-06-20  Werner Koch  <wk@g10code.com>
126
127         * sysutils.c (gnupg_sleep): New.
128         * sysutils.h [W32]: Remove _sleep wrapper.  Changed all callers to
129         use gnupg_sleep.
130
131         * exechelp.c (build_w32_commandline_copy): New.
132         (build_w32_commandline): Factored some code out to new function
133         and correctly process a PGMNAME with spaces.
134         (gnupg_spawn_process_detached) [W32]: Implement.
135
136 2007-06-14  Werner Koch  <wk@g10code.com>
137
138         * simple-pwquery.h (MAP_SPWQ_ERROR_IMPL): New.
139         (SPWQ_NO_PIN_ENTRY): New.
140         * simple-pwquery.c (simple_pw_set_socket): New.
141         (agent_open): Use it if GPG_AGENT_INFO is not set.
142         (simple_pwquery): Extended to allow returning of otehyr error codes.
143
144         * util.h (GNUPG_MODULE_NAME_AGENT, GNUPG_MODULE_NAME_PINENTRY) 
145         (GNUPG_MODULE_NAME_SCDAEMON, GNUPG_MODULE_NAME_DIRMNGR) 
146         (GNUPG_MODULE_NAME_PROTECT_TOOL): New.
147         * homedir.c (gnupg_module_name): New.
148         (gnupg_bindir): New.
149
150 2007-06-12  Werner Koch  <wk@g10code.com>
151
152         * homedir.c (gnupg_sysconfdir): New.
153         (gnupg_libexecdir): New.  Taken from g10/misc.c:get_libexecdir.
154         (gnupg_datadir): New.
155         (gnupg_libdir): New.
156
157         * http.c (connect_server) [W32]: Do not call init_sockets if
158         HTTP_NO_WSASTARTUP is defined.
159
160         * init.c: New.
161
162         * estream.c (es_init_do): Init stream lock here because we can't
163         use a static initialization with W32pth.
164
165 2007-06-11  Werner Koch  <wk@g10code.com>
166
167         * Makefile.am (t_common_ldadd): Use libcommonstd macro.
168
169 2007-06-06  Werner Koch  <wk@g10code.com>
170
171         * Makefile.am: Include am/cmacros.am.
172
173         * sysutils.h [W32]: Remove prototypes for the registry access.
174         * w32reg.c:  Move to ../jnlib/w32-reg.c.
175
176         * i18n.c (i18n_init): New.
177
178         * simple-gettext.c: Remove.
179
180         * iobuf.c (iobuf_get_filelength): Rename SIZE to EXSIZE to silent
181         shadowing warning.
182
183 2007-06-04  Werner Koch  <wk@g10code.com>
184
185         * http.c [W32]: Include unistd.h also in this case.
186         (write_server) [W32]: Fixed error code.
187         (init_sockets): Fixed syntax error.
188         (cookie_close): Replace close by sock_close macro.
189
190         * estream.c [w32]: Do not init Mutex.
191
192         * Makefile.am (common_sources) [USE_SNS_SRV]: Build srv.c only
193         when needed.
194
195         * ttyio.c (init_ttyfp) [W32]: Do not use TTYFP.
196
197         * util.h: Include ../jnlib/dynload.h.
198
199         * dynload.h:  Move to ../jnlib.
200
201 2007-05-30  Werner Koch  <wk@g10code.com>
202
203         * estream.c (MEM_FREE, MEM_ALLOC, MEM_REALLOC): Prefix with ES_ as
204         windows.h also has such definitions,
205
206 2007-05-15  Werner Koch  <wk@g10code.com>
207
208         * util.h: Do not include gnulib's vasprintf.  Redefine asprintf
209         and vasprintf.
210
211         * xasprintf.c (xasprintf, xtryasprintf): Use estream_vasprintf.
212
213         * estream-printf.h, estream-printf.c: New.  Taken from current
214         libestream SVN.
215         * Makefile.am (common_sources): Add them.
216
217 2007-05-14  Werner Koch  <wk@g10code.com>
218
219         * sexp-parse.h (smklen): New.
220         * sexputil.c: Include sexp-parse.h.
221         (make_simple_sexp_from_hexstr): Replace sprintf by smklen.
222
223 2007-05-07  Werner Koch  <wk@g10code.com>
224
225         * signal.c (got_fatal_signal): Protect SIG from being clobbered by
226         a faulty signal implementaion.  Suggested by James Juran. 
227
228 2007-04-25  Werner Koch  <wk@g10code.com>
229
230         * i18n.h (ngettext): New.
231         * simple-gettext.c (ngettext): New.
232
233 2007-04-20  Werner Koch  <wk@g10code.com>
234
235         * miscellaneous.c (my_gcry_logger, my_gcry_outofcore_handler):
236         Moved from gpg-agent to here.
237         (my_gcry_fatalerror_handler): new.
238         (setup_libgcrypt_logging): New.
239
240 2007-03-19  Werner Koch  <wk@g10code.com>
241
242         * miscellaneous.c (print_hexstring): New.
243         * estream.c (es_fprintf_unlocked): New.
244         (es_write_sanitized): New.
245         (es_write_hexstring): New.
246         (es_write_sanitized_utf8_buffer) [GNUPG_MAJOR_VERSION]: New.
247
248 2007-03-09  David Shaw  <dshaw@jabberwocky.com>
249
250         From STABLE-BRANCH-1-4
251
252         * http.c (do_parse_uri): Remove the hkp port 11371 detection.  We
253         implement hkp in the keyserver handler, and the support here makes
254         it appear like a bad hkp request actually succeeded.
255
256 2007-01-31  Werner Koch  <wk@g10code.com>
257
258         * Makefile.am (t_common_ldadd): Add LIBINCONV and LIBINTL.
259
260 2007-01-25  Werner Koch  <wk@g10code.com>
261
262         * simple-pwquery.c (simple_pwquery): New arg OPT_CHECK.
263
264 2006-12-13  David Shaw  <dshaw@jabberwocky.com>
265
266         * Makefile.am (AM_CPPFLAGS): Include intl/ so we can reference the
267         built-in headers.
268
269 2006-11-23  Werner Koch  <wk@g10code.com>
270
271         * http.c: Include i18n.h
272
273 2006-11-21  Werner Koch  <wk@g10code.com>
274
275         * estream.c: Remove explicit Pth soft mapping diabling becuase it
276         is now done in config.h.
277
278 2006-11-15  Werner Koch  <wk@g10code.com>
279
280         * estream.c: Disabled Pth soft mapping.
281         (my_funopen_hook_ret_t): New.
282         (print_fun_writer): Use it here.
283
284         * iobuf.c (fd_cache_close): Use %d instead of %p for debug output.
285
286 2006-11-03  Werner Koch  <wk@g10code.com>
287
288         * Makefile.am (t_convert_DEPENDENCIES): Add libcommon.  From
289         Gentoo.
290
291 2006-10-24  Marcus Brinkmann  <marcus@g10code.de>
292
293         * Makefile.am (libcommon_a_CFLAGS): Add $(LIBASSUAN_CFLAGS).
294         (libsimple_pwquery_a_CFLAGS): New variable.
295
296 2006-10-20  Werner Koch  <wk@g10code.com>
297
298         * convert.c (hex2bin): New.
299
300 2006-10-17  Werner Koch  <wk@g10code.com>
301
302         * estream.c (struct estream_internal, es_initialize) 
303         (es_deinitialize, print_fun_writer, es_print): New and modified
304         functions to avoid tempfiles for printf style printing. 
305
306         * Makefile.am (libcommonpth_a_SOURCES): New. We now build a secon
307         version of the library with explicit Pth support.
308         * exechelp.c, estream.c: Make use of WITHOUT_GNU_PTH.
309
310 2006-10-08  Werner Koch  <wk@g10code.com>
311
312         * gpgrlhelp.c: Trun all functions into dummies if readline is not
313         available.
314
315 2006-10-06  Werner Koch  <wk@g10code.com>
316
317         * Makefile.am (AM_CFLAGS): Use PTH version of libassuan.
318
319         * util.h (GNUPG_GCC_A_SENTINEL): Defined for gcc >= 4.
320
321 2006-10-04  David Shaw  <dshaw@jabberwocky.com>
322
323         * gpgrlhelp.c: readline requires stdio.h.
324
325 2006-10-04  Werner Koch  <wk@g10code.com>
326
327         * membuf.c (init_membuf_secure): New.
328         (put_membuf): Make sure that ERRNO is set even if the underlying
329         malloc code does not work properly.
330         (get_membuf): Set ERRNO on error.
331         (get_membuf): Allow to pass LEN as NULL.
332
333 2006-10-02  Werner Koch  <wk@g10code.com>
334
335         * iobuf.c (iobuf_unread): Removed.  This code is not required.
336         Also removed the entire unget buffer stuff.
337
338 2006-09-27  Werner Koch  <wk@g10code.com>
339
340         * util.h: Do not include strsep.h and strpbrk.h.
341         (isascii): Removed as it is now in jnlib.
342
343         * iobuf.c (pop_filter, underflow, iobuf_close): Free the unget
344         buffer.
345
346 2006-09-27  Florian Weimer <fweimer@bfk.de>  (wk)
347         
348         * iobuf.c (iobuf_unread): New.
349
350 2006-09-22  Werner Koch  <wk@g10code.com>
351
352         * i18n.h: Changed license to an all permissive one.
353
354         * ttyio.c (tty_get): We need to use readline too.  Added two more
355         hooks.
356
357 2006-09-21  Werner Koch  <wk@g10code.com>
358
359         * ttyio.c (tty_private_set_rl_hooks): New.
360         (tty_enable_completion, tty_disable_completion): Use a hook to
361         enable readline support.  Now always available.
362         (tty_cleanup_rl_after_signal): New.
363
364         * ttyio.h: Removed readline specific stuff.  Included util.h.
365         * common-defs.h: New.
366
367 2006-09-15  Werner Koch  <wk@g10code.com>
368
369         * convert.c: New.
370         (hexcolon2bin): New.
371         (bin2hex, bin2hexcolon, do_binhex): New.
372         * t-convert.c: New
373
374 2006-09-14  Werner Koch  <wk@g10code.com>
375
376         * util.h (out_of_core): Use new gpg_error_from_syserror function.
377
378         * http.c (init_sockets): Changed it to require 2.2 unless it is
379         build within gnupg 1 where we require 1.1 (and not anymore allow
380         for 1.0).
381
382 2006-09-07  Werner Koch  <wk@g10code.com>
383
384         * exechelp.c (gnupg_spawn_process): Factor out post fork code to ..
385         (do_exec): .. new function.  Allow passing of -1 for the fds.
386         (gnupg_spawn_process): Terminate gcrypt's secure memory in the child.
387         (gnupg_spawn_process_detached): New.
388
389 2006-09-06  Werner Koch  <wk@g10code.com>
390
391         * maperror.c: Removed.
392
393         * util.h (out_of_core): New.
394
395 2006-09-04  Werner Koch  <wk@g10code.com>
396
397         * http.c (http_get_header): New.
398         (capitalize_header_name, store_header): New.
399         (parse_response): Store headers away.
400         (send_request): Return GPG_ERR_NOT_FOUND if connect_server failed.
401         * http.h: New flag HTTP_FLAG_NEED_HEADER.
402
403 2006-08-21  Werner Koch  <wk@g10code.com>
404
405         * Makefile.am (libcommon_a_SOURCES): Added keyserver.h
406
407         * openpgpdefs.h: New.  Stripped from ..g10/packet.h.
408
409 2006-08-16  Werner Koch  <wk@g10code.com>
410
411         * keyserver.h: Moved from ../include to here.
412
413         * http.c: Include srv.h.
414
415         * srv.c, srv.h: New. Taken from GnuPG 1.4
416
417 2006-08-14  Werner Koch  <wk@g10code.com>
418
419         * http.h (struct http_context_s): Moved to implementation.
420         * http.c (http_open): Changed call to return a context.
421         (http_open_document): Ditto.
422         (http_get_read_ptr, http_get_read_ptr, http_get_status_code): New.
423         (do_parse_uri): Replaced strlwr by straight code to ease
424         standalone use of this file.
425         (http_wait_response): Removed arg STATUS_CODE as it is available
426         through an accessor function. Adjusted caller.
427         (http_escape_string): New.
428
429         * estream.c (es_read_line): Renamed to ..
430         (doreadline): .. this.  Changed all callers.
431         (es_read_line): New.  This is theusual limited getline variabnt as
432         used at several places.  Here taken and adjusted from xreadline.c
433         (es_free): New.
434
435 2006-08-11  Werner Koch  <wk@g10code.com>
436
437         * http.c: Major internal changes to optionallly support GNUTLS and
438         ESTREAM.
439         (http_open): Move initialization of the stream ...
440         (send_request): .. here.
441         (http_register_tls_callback): New.
442
443         * estream.c (es_writen): Try to seek only is a seek function has
444         been registered.
445
446 2006-08-09  Werner Koch  <wk@g10code.com>
447
448         * http.c, http.h: New.  Taken from gnupg 1.4.5, merged with
449         changes done for the Dirmngr project (by g10 Code) and cleaned up
450         some stuff.
451         (make_header_line): New. Change all caller to make user of the new
452         * Makefile.am (libcommon_a_SOURCES): Added http.c and http.h.
453
454 2006-05-23  Werner Koch  <wk@g10code.com>
455
456         * gettime.c (isotimestamp): New.
457
458         * ttyio.c (tty_get_ttyname): Posixly correct usage of ctermid.
459
460         * dns-cert.c: New.  Taken from 1.4.3's util/cert.c.
461         * dns-cert.h: New.
462
463 2006-05-22  Werner Koch  <wk@g10code.com>
464
465         * pka.c: New. Taked from 1.4.3.
466         * pka.h: New.
467         * Makefile.am: Added pka.
468
469 2006-05-19  Werner Koch  <wk@g10code.com>
470
471         * yesno.c (answer_is_yes_no_default, answer_is_yes_no_quit):
472         Updated from 1.4.3.
473         (answer_is_okay_cancel): new.  From 1.4.3.
474
475         * miscellaneous.c (match_multistr): New.  Taken from 1.4.3.
476
477         * ttyio.c (tty_enable_completion, tty_disable_completion): New
478         dummy functions.
479         * ttyio.h: Add prototypes and stubs.
480
481 2006-04-19  Werner Koch  <wk@g10code.com>
482
483         * iobuf.c (iobuf_get_fd): New.  Taken from 1.4.3.
484         (iobuf_is_pipe_filename): New.
485         (pop_filter): Made static.
486         (iobuf_skip_rest): New.  Orginal patch by Florian
487         Weimer.  Added new argument PARTIAL.
488         (block_filter): Remove the old gpg indeterminate length mode.
489         (block_filter): Properly handle a partial body stream
490         that ends with a 5-byte length that happens to be zero.
491         (iobuf_set_block_mode, iobuf_in_block_mode): Removed as
492         superfluous.
493         (iobuf_get_filelength): New arg OVERFLOW.
494         (iobuf_get_filelength) [W32]: Use GetFileSizeEx if available
495         * miscellaneous.c (is_file_compressed): Take care of OVERFLOW.
496
497 2006-04-18  Werner Koch  <wk@g10code.com>
498
499         * homedir.c (w32_shgetfolderpath): New.  Taken from gpg 1.4.3.
500         (default_homedir): Use it.
501
502 2005-10-08  Marcus Brinkmann  <marcus@g10code.de>
503
504         * signal.c (get_signal_name): Check value of HAVE_DECL_SYS_SIGLIST
505         instead of just if it is defined.
506
507 2005-09-28  Marcus Brinkmann  <marcus@g10code.de>
508
509         * Makefile.am (AM_CFLAGS): Add $(LIBASSUAN_CFLAGS).
510
511 2005-07-04  Marcus Brinkmann  <marcus@g10code.de>
512
513         * simple-pwquery.h (simple_pwclear): New prototype.
514         * simple-pwquery.c (simple_pwclear): New function.
515
516 2005-06-15  Werner Koch  <wk@g10code.com>
517
518         * miscellaneous.c (make_printable_string): Made P a void*.
519
520         * sexputil.c (keygrip_from_canon_sexp, cmp_simple_canon_sexp):
521         Fixed signed/unsigned pointer mismatch.
522         (make_simple_sexp_from_hexstr): Ditto.  This is all too ugly; I
523         wonder why gcc-4's default is to warn about them and forcing us to
524         use cast the warning away.
525         * iobuf.c (block_filter): Ditto.
526         (iobuf_flush): Ditto.
527         (iobuf_read_line): Ditto.
528         (iobuf_read): Make BUFFER a void *.
529         (iobuf_write): Make BUFFER a const void *.
530         * ttyio.c (tty_print_utf8_string2): Ditto.
531         * estream.c (estream_cookie_mem): Make MEMORY unsigned char*.
532         (es_write): Make BUFFER a void *.
533         (es_writen): Ditto.
534         (es_func_fd_read, es_func_fd_write, es_func_mem_read) 
535         (es_func_mem_write): Ditto.
536         (es_read, es_readn): Ditto.
537         (es_func_mem_write): Made MEMORY_NEW an unsigned char *.
538         * estream.h (es_cookie_read_function_t)
539         (es_cookie_write_function_t): Changed buffer arg to void*.
540
541 2005-06-03  Werner Koch  <wk@g10code.com>
542
543         * estream.c: Use HAVE_CONFIG_H and not USE_CONFIG_H!
544         (es_func_fd_read, es_func_fd_write): Protect against EINTR.
545         
546 2005-06-01  Werner Koch  <wk@g10code.com>
547
548         * Makefile.am (AM_CPPFLAGS): Added.
549
550         * util.h: Add some includes for gnulib.
551         (ttyname, isascii): Define them inline.
552         * fseeko.c, ftello.c: Removed.
553         * strsep.c, mkdtemp.c: Removed.
554         * ttyname.c, isascii.c: Removed.
555
556 2005-05-31  Werner Koch  <wk@g10code.com>
557
558         * dynload.h: s/__inline__/inline/.
559
560 2005-05-13  Werner Koch  <wk@g10code.com>
561
562         * signal.c (got_fatal_signal): Print the signal number if we can't
563         get a name for it.
564         (get_signal_name): Return NULL if no name is available. Fixed
565         conditional for sys_siglist to the correct one.
566
567 2005-04-17  Werner Koch  <wk@g10code.com>
568
569         * sexputil.c (cmp_simple_canon_sexp): New.
570         (make_simple_sexp_from_hexstr): New.
571
572 2005-04-07  Werner Koch  <wk@g10code.com>
573
574         * sexputil.c: New.
575
576 2005-04-11  Marcus Brinkmann  <marcus@g10code.de>
577
578         * simple-pwquery.c (simple_pwquery): Use spwq_secure_free.
579
580 2005-03-03  Werner Koch  <wk@g10code.com>
581
582         * Makefile.am (AM_CFLAGS): Added PTH_CFLAGS.  Noted by Kazu Yamamoto.
583
584 2005-02-25  Werner Koch  <wk@g10code.com>
585
586         * xasprintf.c (xtryasprintf): New.
587
588 2005-01-26  Moritz Schulte  <moritz@g10code.com>
589
590         * Makefile.am (libcommon_a_SOURCES): New source files: estream.c,
591         estream.h.
592         * estream.c, estream.h: New files.
593
594 2005-01-03  Werner Koch  <wk@g10code.com>
595
596         * asshelp.c (send_pinentry_environment): Fixed changed from
597         2004-12-18; cut+paste error for lc-messages.
598
599 2004-12-21  Werner Koch  <wk@g10code.com>
600
601         * simple-pwquery.c (agent_open) [W32]: Implement for W32.
602         (readline) [W32]: Use recv instead of read.
603         (writen) [W32]: Use send instead of write.
604         (my_stpcpy): Define a stpcpy replacement so that this file
605         continues to be self-contained.
606         (agent_send_all_options) [W32]: Don't call ttyname.
607
608 2004-12-21  Marcus Brinkmann  <marcus@g10code.de>
609
610         * simple-pwquery.h (simple_query): Add prototype.
611         * simple-pwquery.c (simple_query): New function.
612
613 2004-12-21  Werner Koch  <wk@g10code.com>
614
615         * signal.c (got_fatal_signal, got_usr_signal)
616         (got_fatal_signal) [DOSISH]: Don't build.
617         * simple-gettext.c: Include sysutils.h 
618
619         * homedir.c: New. Use CSIDL_APPDATA for W32 as the default home
620         directory.
621         * Makefile.am (libcommon_a_SOURCES): Add it.
622         (EXTRA_DIST): Removed mkerror and mkerrtok.
623
624 2004-12-20  Werner Koch  <wk@g10code.com>
625
626         * sysutils.h [W32]: Define sleep.
627         * util.h: Add prototype for mkdtemp.
628
629         * membuf.c (put_membuf): Wipe out buffer after a failed realloc.
630
631 2004-12-19  Werner Koch  <wk@g10code.com>
632
633         * maperror.c (map_assuan_err_with_source): Oops, args were swapped.
634
635 2004-12-18  Werner Koch  <wk@g10code.com>
636
637         * maperror.c (map_assuan_err): Renamed to ..
638         (map_assuan_err_with_source): .. this and add arg SOURCE.c
639         * asshelp.c (send_pinentry_environment, send_one_option): Add arg
640         ERRSOURCE.
641
642 2004-12-15  Werner Koch  <wk@g10code.com>
643
644         * sysutils.h [W32]: Prototypes for registry functions.
645         * w32reg.c: Include sysutils.h
646
647         * simple-pwquery.c [W32]: Dummy code to allow a build.
648
649         * exechelp.c [W32]: Implemented for W32 .
650
651         * ttyname.c: New.
652
653         * asshelp.c (send_one_option): New.
654         (send_pinentry_environment): Cleaned up and made sure that empty
655         values are not send.
656
657 2004-12-07  Werner Koch  <wk@g10code.com>
658
659         * asshelp.c (send_pinentry_environment) [W32]: Do not use ttyname.
660
661 2004-12-06  Werner Koch  <wk@g10code.com>
662
663         * exechelp.h, exechelp.c: New.  Based on code from ../sm/import.c.
664
665 2004-12-03  Werner Koch  <wk@g10code.com>
666
667         * strsep.c: Fixed copyright comments.
668
669 2004-11-26  Werner Koch  <wk@g10code.com>
670
671         * simple-gettext.c: New taken from gnupg 1.3.x
672
673         * simple-pwquery.c [_WIN32]: Include winsock2.h.
674         (agent_open): Disable it until we have our AF_UNIX implementation
675         ready.
676         * fseeko.c, ftello.c: Include sys/types for the sake of W32.
677
678 2004-11-23  Werner Koch  <wk@g10code.com>
679
680         * b64enc.c: Include stdio.h and string.h
681
682 2004-08-18  Werner Koch  <wk@g10code.de>
683
684         * simple-pwquery.c (simple_pwquery): Handle gpg-error style return
685         code for canceled.
686
687 2004-07-20  Werner Koch  <wk@g10code.de>
688
689         * maperror.c: Removed header ksba.h.  Not required anymore.
690
691 2004-06-14  Werner Koch  <wk@gnupg.org>
692
693         * xreadline.c: New.  Based on the iobuf_read_line function.
694
695 2004-05-12  Werner Koch  <wk@gnupg.org>
696
697         * util.h (xtrycalloc_secure,xtrymalloc_secure): New.
698
699 2004-05-11  Werner Koch  <wk@gnupg.org>
700
701         * sysutils.c (disable_core_dumps): Only set the current limit.
702         (enable_core_dumps): New.
703
704 2004-04-13  Werner Koch  <wk@gnupg.org>
705
706         * simple-pwquery.c (copy_and_escape): Relaxed quoting.
707
708 2004-04-05  Werner Koch  <wk@gnupg.org>
709
710         * errors.h (STATUS_NEWSIG): New.
711
712 2004-03-11  Werner Koch  <wk@gnupg.org>
713
714         * dynload.h [__MINGW32__]: Define RTLD_LAZY.
715
716 2004-03-09  Werner Koch  <wk@gnupg.org>
717
718         * maperror.c (map_assuan_err): Map the Locale_Problem item.
719
720 2004-03-03  Werner Koch  <wk@gnupg.org>
721
722         * asshelp.c, asshelp.h: New.
723         (send_pinentry_environment): New. Code taken from ../sm/call-agent.c.
724
725 2004-02-19  Werner Koch  <wk@gnupg.org>
726
727         * simple-pwquery.c (agent_open): Don't mangle INFOSTR.
728
729 2004-02-17  Werner Koch  <wk@gnupg.org>
730
731         * simple-pwquery.c (agent_open): Ignore an empty GPG_AGENT_INFO.
732
733         * errors.h: Added STATUS_IMPORT_OK.
734
735 2004-02-10  Werner Koch  <wk@gnupg.org>
736
737         * b64enc.c: New.  Based on code from ../sm/base64.c.
738
739 2004-01-30  Marcus Brinkmann  <marcus@g10code.de>
740
741         * Makefile.am (libcommon_a_SOURCES): Add xasprintf.c.
742         * miscellaneous.c (xasprintf): Moved to ...
743         * xasprintf (xasprintf): ... here.  New file.
744         This allows to use xasprintf without sucking in gpg-error.
745
746 2004-01-27  Werner Koch  <wk@gnupg.org>
747
748         * sexp-parse.h: New; moved from../agent.
749
750         * util.h (xtoi_4): New.
751
752 2003-12-23  Werner Koch  <wk@gnupg.org>
753
754         * maperror.c (map_assuan_err): Prepared for a new error code.
755
756 2003-12-17  Werner Koch  <wk@gnupg.org>
757
758         * gettime.c (asctimestamp): Add a note on a non-avoidable gcc warning.
759
760         * util.h [!HAVE_VASPRINTF]: Add printf format attribute to the
761         replacement function.
762
763         * miscellaneous.c (xasprintf): New.
764
765 2003-11-14  Werner Koch  <wk@gnupg.org>
766
767         * mkdtemp.c (mkdtemp): Use gcry_create_nonce.
768
769         * cryptmiss.c: Removed.
770
771 2003-11-13  Werner Koch  <wk@gnupg.org>
772
773         * util.h (vasprintf): Also fixed the prototype.
774
775         * vasprintf.c (vasprintf): ARGS should not be a pointer.  Fixed
776         segv on Solaris.  Reported by Andrew J. Schorr.
777
778 2003-11-12  Werner Koch  <wk@gnupg.org>
779
780         * maperror.c (map_ksba_err, map_gcry_err, map_kbx_err): Removed.
781
782 2003-10-31  Werner Koch  <wk@gnupg.org>
783
784         * util.h (gnupg_isotime_t): New.
785         (gnupg_copy_time): New.
786
787         * gettime.c (gnupg_get_isotime): New.
788
789 2003-09-23  Werner Koch  <wk@gnupg.org>
790
791         * iobuf.c (check_special_filename): Replaced is isdigit by digitp
792         to avoid passing negative values and potential locale problems.
793         Problem noted by Christian Biere.
794
795         * util.h (ascii_isspace): New.
796
797 2003-09-18  Werner Koch  <wk@gnupg.org>
798
799         * ttyio.c (tty_fprintf): New.
800         (tty_print_string, tty_print_utf8_string2)
801         (tty_print_utf8_string): Made P argument const byte*.
802
803 2003-08-20  Marcus Brinkmann  <marcus@g10code.de>
804
805         * maperror.c (map_ksba_err): Map -1.  Use gpg_err_make to set
806         the error source.
807
808 2003-08-14  Timo Schulz  <twoaday@freakmail.de>
809
810         * dynload.h. New. W32 wrapper around the dynload mechanism.
811         
812 2003-07-15  Werner Koch  <wk@gnupg.org>
813
814         * simple-pwquery.c, simple-pwquery.h:  New; moved from ../agent.  
815         * Makefile.am (libsimple_pwquery_a_LIBADD): New.
816
817 2003-06-25  Werner Koch  <wk@gnupg.org>
818
819         * maperror.c (map_to_assuan_status): Directly map 0 to 0.
820
821 2003-06-17  Werner Koch  <wk@gnupg.org>
822
823         * gettime.c (scan_isodatestr,add_days_to_timestamp,strtimevalue)
824         (strtimestamp,asctimestamp): New.  Code taken from gnupg 1.3.2
825         mischelp.c.
826
827         * yesno.c: New.  Code taken from gnupg 1.3.2 mischelp.c
828
829         * miscellaneous.c: New.
830
831         * util.h: Include utf8conf.h
832
833 2003-06-16  Werner Koch  <wk@gnupg.org>
834
835         * gettime.c (make_timestamp): New.
836
837         * ttyio.c: New. Taken from gnupg 1.2.
838         * ttyio.h: Move from ../include.
839
840 2003-06-13  Werner Koch  <wk@gnupg.org>
841
842         * util.h (seterr): Removed macro.
843         (xmalloc_secure,xcalloc_secure): New.
844
845 2003-06-11  Werner Koch  <wk@gnupg.org>
846
847         * iobuf.c (iobuf_writebyte,iobuf_write): Return error code from
848         iobuf_flush.
849         (iobuf_writestr): Ditto.
850
851 2003-06-10  Werner Koch  <wk@gnupg.org>
852
853         * iobuf.c, iobuf.h: New. Taken from current gnupg 1.3 CVS.  Run
854         indent on it and adjusted error handling to libgpg-error style.
855         Replaced IOBUF by iobuf_t. Renamed malloc functions.
856
857 2003-06-04  Werner Koch  <wk@gnupg.org>
858
859         * errors.h: Removed all error codes.  We keep the status codes for
860         now.
861         * Makefile.am: Do not create errors.c anymore; remove it from the
862         sources.
863
864         * maperror.c: Don't include error.h.  Change all error codes to
865         libgpg-error style.
866         (map_assuan_err): Changed to new Assuan error code convention.
867         (map_to_assuan_status): Likewise.
868         (map_gcry_err,map_kbx_err): Not needed.  For now dummy functions.
869
870         * membuf.c, membuf.h: New.  Code taken from ../sm/call-agent.h.
871         * Makefile.am: Added above.
872
873 2003-04-29  Werner Koch  <wk@gnupg.org>
874
875         * util.h (fopencokokie): Removed prototype and struct.
876
877         * fopencookie.c: Removed.
878
879         * maperror.c: Use system assuan.h
880
881 2002-10-31  Neal H. Walfield  <neal@g10code.de>
882
883         * isascii.c: New file.
884         * putc_unlocked.c: Likewise.
885
886 2002-10-28  Neal H. Walfield  <neal@g10code.de>
887
888         * signal.c (caught_fatal_sig): Remove superfluous zero
889         initializer.
890         (caught_sigusr1): Likewise.
891
892 2002-09-04  Neal H. Walfield  <neal@g10code.de>
893
894         * vasprintf.c (vasprintf) [va_copy]: Use va_copy.
895         [!va_copy && __va_copy]: Use __va_copy.
896         [!va_copy && !__va_copy]: Only now fall back to using memcpy.
897
898 2002-08-21  Werner Koch  <wk@gnupg.org>
899
900         * errors.h: Added STATUS_IMPORT_PROBLEM.
901
902 2002-08-20  Werner Koch  <wk@gnupg.org>
903
904         * vasprintf.c: Hack to handle NULL for %s.
905
906 2002-08-09  Werner Koch  <wk@gnupg.org>
907
908         * signal.c: New. Taken from GnuPG 1.1.91.
909
910 2002-07-23  Werner Koch  <wk@gnupg.org>
911
912         * util.h (_IO_cookie_io_functions_t): Fixed typo.  Noted by
913         Richard Lefebvre.
914
915 2002-07-22  Werner Koch  <wk@gnupg.org>
916
917         * fseeko.c, ftello.c: New.
918
919 2002-06-28  Werner Koch  <wk@gnupg.org>
920
921         * maperror.c (map_to_assuan_status): Map more errorcodes to Bad
922         Certificate.
923
924 2002-06-26  Werner Koch  <wk@gnupg.org>
925
926         * maperror.c (map_to_assuan_status): Map EOF to No_Data_Available.
927
928 2002-06-10  Werner Koch  <wk@gnupg.org>
929
930         * errors.h (gnupg_error_token): Add new prototype.
931         (STATUS_ERROR): New.
932
933         * mkerrtok: New.
934         * Makefile.am: Use it to create the new error token function.
935
936 2002-06-04  Werner Koch  <wk@gnupg.org>
937
938         * maperror.c (map_to_assuan_status): Map Bad_CA_Certificate.
939
940 2002-05-23  Werner Koch  <wk@gnupg.org>
941
942         * no-pth.c, Makefile.am: Removed.
943
944 2002-05-22  Werner Koch  <wk@gnupg.org>
945
946         * mkdtemp.c: Replaced byte by unsigned char because it is no longer
947         defined in gcrypt.h.
948
949 2002-05-21  Werner Koch  <wk@gnupg.org>
950
951         * maperror.c (map_gcry_err): Add libgcrypt's new S-expression errors.
952         (map_ksba_err): Add a few mappings.
953
954 2002-05-14  Werner Koch  <wk@gnupg.org>
955
956         * gettime.c: New.
957
958 2002-05-03  Werner Koch  <wk@gnupg.org>
959
960         * errors.h: Added STARUS_EXPSIG and STATUS_EXPKEYSIG.
961
962 2002-04-15  Werner Koch  <wk@gnupg.org>
963
964         * cryptmiss.c: New.
965
966 2002-02-14  Werner Koch  <wk@gnupg.org>
967
968         * maperror.c: Add more assuan<->gnupg mappings.
969
970 2002-02-12  Werner Koch  <wk@gnupg.org>
971
972         * fopencookie.c: Dummy function.
973
974         * vasprintf.c: New.  Taken from binutils-2.9.1 and dropped all non
975         ANSI-C stuff.  Merged with asprintf version.
976
977         * no-pth.c: New.
978
979 2002-01-23  Werner Koch  <wk@gnupg.org>
980
981         * mkdtemp.c: Copied from gnupg-1.0.6c and changed to use libgcrypt.
982
983 2002-01-19  Werner Koch  <wk@gnupg.org>
984
985         * sysutils.c: New.  This is the misc.c file from gnupg 1.0.6 with
986         the OpenPGP stuff removed.
987         * sysutils.h: New.
988         
989 2002-01-15  Werner Koch  <wk@gnupg.org>
990
991         * maperror.c: Add mapping for Not_Trusted. 
992
993 2002-01-11  Werner Koch  <wk@gnupg.org>
994
995         * maperror.c (map_assuan_err): Codes for CRL
996
997 2002-01-08  Werner Koch  <wk@gnupg.org>
998
999         * util.h (spacep): New.
1000
1001 2002-01-02  Werner Koch  <wk@gnupg.org>
1002
1003         * maperror.c (map_to_assuan_status): New.  Merged from ../agent
1004         and ../sm.
1005
1006 2001-12-20  Werner Koch  <wk@gnupg.org>
1007
1008         * maperror.c (map_gcry_err): Add some mappings.
1009
1010 2001-12-18  Werner Koch  <wk@gnupg.org>
1011
1012         * Makefile.am (AM_CPPFLAGS): Include flags for gcrypt and ksba
1013
1014 2001-12-14  Werner Koch  <wk@gnupg.org>
1015
1016         * util.h (digitp, hexdigitp): New ctype like macros.
1017         (atoi_1,atoi_2,atoi_4,xtoi_1,xtoi_2): New.
1018         
1019         
1020  Copyright 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
1021
1022  This file is free software; as a special exception the author gives
1023  unlimited permission to copy and/or distribute it, with or without
1024  modifications, as long as this notice is preserved.
1025
1026  This file is distributed in the hope that it will be useful, but
1027  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1028  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1029                 
1030