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