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