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