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