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