Refactor new code.
[gnupg.git] / jnlib / ChangeLog
1 2009-08-26  Werner Koch  <wk@g10code.com>
2
3         * stringhelp.c (do_make_filename): Factor some code out to ..
4         (get_pwdir): .. new.
5
6 2009-08-26  Werner Koch  <wk@g10code.com>
7
8         * stringhelp.c [HAVE_PWD_H]: Include pwd.h.
9         (do_make_filename): New.
10         (make_filename, make_filename_try): Implement using the new
11         function.
12         * t-stringhelp.c (test_make_filename_try): New.
13         * t-support.c (gcry_strdup): Fix.
14
15         * stringhelp.h (make_filename, make_filename_try): Add sentinel
16         attribute.
17
18 2009-08-25  Werner Koch  <wk@g10code.com>
19
20         * stringhelp.c: Include errno.h.
21         (do_strconcat): New.
22         (strconcat, xstrconcat): New.
23         * types.h (GNUPG_GCC_A_SENTINEL): New.
24         * t-stringhelp.c (test_strconcat, test_xstrconcat): New.
25         (main): Run them.
26
27 2009-07-07  Werner Koch  <wk@g10code.com>
28
29         * stringhelp.c (make_filename_try): Use jnlib_malloc.
30
31         * dotlock.c (read_lockfile): Replace jnlib_xmalloc by jnlib_malloc.
32
33 2009-06-04  Werner Koch  <wk@g10code.com>
34
35         * mischelp.h: Include SUN_LEN etc also for W32.
36
37 2009-05-19  Werner Koch  <wk@g10code.com>
38
39         * mischelp.h: Define PF_LOCAL, AF_LOCAL and SUN_LEN if requested.
40         * logging.c (fun_writer): Use SUN_LEN to fix a Mac OS X freeze.
41
42 2009-03-25  Werner Koch  <wk@g10code.com>
43
44         * logging.c (fun_closer): Never close fd 2.
45         (set_file_fd): Close logstream early.
46
47 2009-02-25  Werner Koch  <wk@g10code.com>
48
49         * logging.c (get_tid_callback): New.
50         (do_logv): Use it.
51         (log_set_get_tid_callback): New.
52
53 2009-01-22  Werner Koch  <wk@g10code.com>
54
55         * t-support.c (gpg_err_code_from_errno) 
56         (gpg_err_code_from_syserror): New.
57
58 2008-11-20  Werner Koch  <wk@g10code.com>
59
60         * argparse.c (arg_parse): Fix last change.
61
62 2008-11-11  Werner Koch  <wk@g10code.com>
63
64         * argparse.h: Add a bunch of macros and constants.
65         * argparse.c: Use the new macros.  Re-indent the code.  Change
66         license back to LGPL 2.1.
67
68 2008-11-04  Werner Koch  <wk@g10code.com>
69
70         * w32-gettext.c: Merged with code from libgpg-error and rewrote
71         most parts.
72
73         * Makefile.am (AM_CFLAGS): Add -DJNLIB_IN_JNLIB.
74
75 2008-10-29  Werner Koch  <wk@g10code.com>
76
77         * stringhelp.c (make_filename): Implement using macros. Factor some
78         code out to ..
79         (change_slashes): New.
80         (make_filename_try): New.
81
82         * w32-gettext.c (gettext): Return if no domain is loaded.
83         Reported by Tom Pegios.
84
85 2008-10-28  Werner Koch  <wk@g10code.com>
86
87         * w32-gettext.c (gettext): Try the binary search if the string was
88         not found in the hash table.
89
90 2008-10-20  Werner Koch  <wk@g10code.com>
91
92         * w32-afunix.c (_w32_sock_connect): Mark ADDRLEN as unused.
93
94         * dotlock.c (release_dotlock): Do not mix declaration and code.
95
96         * stringhelp.c (make_basename): Silent gcc warning about unused arg.
97         * argparse.c (store_alias): Ditto.
98         (find_long_option): 
99
100 2008-10-15  Werner Koch  <wk@g10code.com>
101
102         * logging.c (do_logv) [W32]: Flush the log stream.
103
104 2008-09-29  Werner Koch  <wk@g10code.com>
105
106         * argparse.c (ARGERR_): Use constants for error values.
107         (optfile_parse): Prettify.  Replace xmalloc and xrealloc by malloc
108         and realloc.
109         * libjnlib-config.h (jnlib_strdup, jnlib_realloc): New.
110
111 2008-06-26  Werner Koch  <wk@g10code.com>
112
113         * stringhelp.c (print_sanitized_buffer2): Loose check for control
114         characters to better cope with utf-8.  The range 0x80..0x9f is
115         nowadays not anymore accidently used for control charaters.
116
117 2008-06-13  Werner Koch  <wk@g10code.com>
118
119         * dotlock.c: Reformat code and implement locking for W32.
120         (create_dotlock): Use snprintf.
121
122 2008-06-11  Werner Koch  <wk@g10code.com>
123
124         * utf8conv.c: Remove useless variable ACTIVE_CHARSET.  Suggested
125         by Petr Uzel.
126
127 2008-05-26  Werner Koch  <wk@g10code.com>
128
129         * argparse.c (usage): Make sure to print a trailing LF for usage(1).
130
131 2008-04-08  Werner Koch  <wk@g10code.com>
132
133         * w32-gettext.c (gettext_select_utf8): New.
134         (get_string): Support switching encodings.
135         (load_domain): Allocate space for DATA_NATIVE.
136
137 2008-03-25  Werner Koch  <wk@g10code.com>
138
139         * w32-gettext.c (_nl_locale_name): New.  Taken from
140         ../common/localename and GNU gettext's localename.c.
141         (set_gettext_file): Rewritten.
142         (gettext_localename): New.
143
144 2008-03-17  Werner Koch  <wk@g10code.com>
145
146         * logging.c (my_funopen_hook_size_t): New.
147         (fun_writer): Use it to cope with fopencookie/funopen differences.
148         * dotlock.c (read_lockfile): Initialize PID.  Reported by St├ęphane
149         Corth├ęsy.
150
151 2008-02-22  Werner Koch  <wk@g10code.com>
152
153         * argparse.c (strusage): Set copyright year to 2008.
154
155 2007-11-19  Werner Koch  <wk@g10code.com>
156
157         * stringhelp.c (percent_escape): Factor code out to
158         (do_percent_escape): .. new.
159         (try_percent_escape): New.
160
161 2007-10-01  Werner Koch  <wk@g10code.com>
162
163         * w32-afunix.c: Only keep the client related code.
164         (read_port_and_nonce): New.  Taken from Assuan.
165         (_w32_sock_connect): Rewritten.
166
167 2007-08-29  Werner Koch  <wk@g10code.com>
168
169         * argparse.c (initialize): Make strings translatable and remove
170         extra LF.
171
172 2007-08-24  Werner Koch  <wk@g10code.com>
173
174         * mischelp.c (same_file_p): New.
175         (libjnlib_dummy_mischelp_func): Remove as we now always have one
176         function.
177
178 2007-08-09  Werner Koch  <wk@g10code.com>
179
180         * argparse.c (show_help): Expand the @EMAIL@ macro in the package
181         bug reporting address.
182
183 2007-08-02  Werner Koch  <wk@g10code.com>
184
185         * t-stringhelp.c (test_compare_filenames): New.
186
187         * stringhelp.c (compare_filenames) [HAVE_DRIVE_LETTERS]: Fixed
188         comparison to take slash and backslash in account.
189         (make_filename): Avoid mixing / and \.
190
191 2007-07-04  Werner Koch  <wk@g10code.com>
192
193         * utf8conv.c (load_libiconv): Remove URL from translatble string.
194
195         Switched JNLIB from LGPLv2.1 to LGPLv3.
196
197 2007-07-01  Werner Koch  <wk@g10code.com>
198
199         * argparse.c (strusage): Use id 10 for the license string;
200         default to GPL3+.  Change long note to version 3 or later.
201         (show_version): Print the license info.
202
203 2007-06-19  Werner Koch  <wk@g10code.com>
204
205         * Makefile.am: Add support for regression tests.
206         * t-support.h, t-support.c: New.
207         * t-stringhelp.c: New.
208
209         * stringhelp.c (percent_escape): Add arg EXTRA to make it a more
210         general function.  Changed all callers.
211
212 2007-06-18  Werner Koch  <wk@g10code.com>
213
214         * w32-afunix.c (_w32_sock_bind): Changed to properly detect an
215         already used socket.
216
217 2007-06-18  Marcus Brinkmann  <marcus@g10code.de>
218
219         * stringhelp.h (percent_escape): New prototype.
220         * stringhelp.c (percent_escape): New function.
221
222 2007-06-11  Werner Koch  <wk@g10code.com>
223
224         * utf8conv.c (jnlib_iconv_open, jnlib_iconv, jnlib_iconv_close): New.
225
226 2007-06-06  Werner Koch  <wk@g10code.com>
227
228         * w32help.h: New.
229         * w32-gettext.c: New.  Taken from gnupg 1.4, added ngettext,
230         changed to use jnlib malloc functions and put under the LGPL.
231         * w32-reg.c: New.  Taken from../common/w32reg.c and changed to
232         LGPL.  Changed API to use the jnlib malloc functions.
233         * Makefile.am (libjnlib_a_SOURCES) [!W32]: Do not build the w32
234         specific modules.
235
236         * dotlock.c: Include stringhelp.h for stpcpy prototype.
237
238 2007-06-04  Werner Koch  <wk@g10code.com>
239
240         * dynload.h: New.  Taken from ../common and changed to LGPL.
241
242         * utf8conv.c (load_libiconv): New.  Taken from GnuPG 1.4
243
244 2007-05-30  Werner Koch  <wk@g10code.com>
245
246         * w32-pth.h, w32-pth.c: Remove.
247
248 2007-04-25  Werner Koch  <wk@g10code.com>
249
250         * argparse.c (long_opt_strlen): Fixed for utf-8.
251
252 2007-03-07  Werner Koch  <wk@g10code.com>
253
254         * argparse.c (strusage): Set copyright year to 2007.
255
256 2007-01-25  Werner Koch  <wk@g10code.com>
257
258         * stringhelp.c (utf8_charcount): New.
259
260 2006-11-29  Werner Koch  <wk@g10code.com>
261
262         * utf8conv.c (set_native_charset) [HAVE_W32_SYSTEM]: Fixed typo in
263         macro name.
264
265 2006-11-15  Werner Koch  <wk@g10code.com>
266
267         * logging.c (my_funopen_hook_ret_t): New.
268         (fun_writer): Use it.
269
270 2006-10-19  Werner Koch  <wk@g10code.com>
271
272         * stringhelp.c (memrchr) [!HAVE_MEMRCHR]: Provide a replacement.
273
274 2006-09-27  Werner Koch  <wk@g10code.com>
275
276         * mischelp.c: New.
277         (timegm): Copied from gnupg 1.4, changed from GPL to LGPL.  Fixed
278         a memory leak.
279
280         * stringhelp.h (isascii): New.
281
282         * stringhelp.c (strsep): New. Copied from gnupg 1.4.5
283         util/strgutil.c.
284
285         * strlist.h (STRLIST): Removed deprecated typedef. 
286
287         * types.h: Made cpp commands work with old compilers.  Also shows
288         up nicer with Emacs' font locking.
289
290         * w32-afunix.c (_w32_sock_connect): Set ERRNO for an invalid port.
291
292         Changed license from GPL to LGPL.  Note that all code has either
293         been written by me, David, employees of g10 Code or taken from
294         glibc.
295         
296         * libjnlib-config.h, stringhelp.c, stringhelp.h:
297         * strlist.c, strlist.h, utf8conv.c, utf8conv.h:
298         * argparse.c, argparse.h, logging.c, logging.h:
299         * dotlock.c, dotlock.h, types.h, mischelp.h:
300         * xmalloc.c, xmalloc.h, w32-pth.c, w32-pth.h:
301         * w32-afunix.c, w32-afunix.h: Tagged them to be long to jnlib
302         which is a part of GnuPG but also used by other projetcs. 
303
304 2006-09-22  Werner Koch  <wk@g10code.com>
305
306         * utf8conv.c: Reworked to match the gnupg 1.4.5 code.  This now
307         requires iconv support but this is reasonable for all modern
308         systems.
309
310 2006-08-29  Werner Koch  <wk@g10code.com>
311
312         * logging.c (do_logv): Emit a missing LF for fatal errors.
313
314 2006-06-28  Werner Koch  <wk@g10code.com>
315
316         * dotlock.c (make_dotlock, release_dotlock, read_lockfile)
317         (maybe_deadlock, destroy_dotlock, create_dotlock): Re-indented.
318         (create_dotlock): Repalces some log_fatal by log_error as it was
319         not intended that they should terminate.  Write the nodename to
320         the locking file. Code cleanups.
321         (read_lockfile): Reworked to read the node name.
322         (make_dotlock): Test for identical node name and delete lock stale
323         file.
324         (release_dotlock): Likewise.
325
326 2006-05-23  Werner Koch  <wk@g10code.com>
327
328         * libjnlib-config.h (JNLIB_NEED_UTF8CONV): Fixed typo in name.
329
330         * dotlock.c (release_dotlock): Don't act if we don't have any
331         locks at all.
332         (destroy_dotlock): New.  From 1.4.3.
333         (dotlock_remove_lockfiles): Make use of destroy function.
334
335 2006-05-19  Werner Koch  <wk@g10code.com>
336
337         * strlist.c (append_to_strlist2): Enabled.
338
339         * stringhelp.c (print_sanitized_buffer2): New.  Changed the rules
340         to match the behaviour of print_string2 from gnupg 1.4.3.
341         (print_sanitized_buffer): Use the new function.
342         (print_sanitized_string2): New.
343         (hextobyte): New.  Taken from gpg 1.4.3.
344
345 2006-04-28  Werner Koch  <wk@g10code.com>
346
347         * stringhelp.c (print_sanitized_buffer): Fix bug where the count
348         got wrong for the \xNN representation.
349         (sanitize_buffer): Fix bug where some control characters lose part
350         of their \xNN representation.
351
352 2006-04-20  Werner Koch  <wk@g10code.com>
353
354         * stringhelp.c (make_basename): New arg INPUTPATH for future
355         riscos compatibility.
356
357 2006-04-18  Werner Koch  <wk@g10code.com>
358
359         * libjnlib-config.h (JNLIB_NEED_UTF8CONF): Defined.
360         * strlist.c (add_to_strlist2) [JNLIB_NEED_UTF8CONV]: Enabled.
361
362 2005-06-15  Werner Koch  <wk@g10code.com>
363
364         * stringhelp.c (sanitize_buffer): Make P a void*.
365         (ascii_memistr, memistr): Ditto.
366         (ascii_memcasecmp): Ditto.
367         * logging.c (writen): Use void * for arg BUFFER.
368         * stringhelp.c (memistr): Fixed unsigned/signed pointer conflict.
369         (ascii_memistr): Ditto.
370         (ascii_memcasemem): Ditto.
371         * utf8conv.c (utf8_to_native): Ditto.
372         (utf8_to_native): Ditto.
373         * argparse.c (show_version): Removed non-required cast.
374
375 2005-01-19  Werner Koch  <wk@g10code.com>
376
377         * logging.c (fun_writer): Don't fallback to stderr. Print to
378         stderr only if connected to a tty.
379
380 2004-12-20  Werner Koch  <wk@g10code.com>
381
382         * w32-pth.c (do_pth_event_free): The events are hold in a ring
383         buffer.  Adjust for that.
384         (do_pth_event_body): Ditto.
385         (pth_event_isolate): Ditto.
386         (do_pth_wait): Ditto.
387         (_pth_event_count): Renamed to ..
388         (event_count): .. and adjusted as above.
389         (pth_init): Define 3 debug levels and change all debug calls to
390         make use of them.  This makes the moule now silent.
391
392 2004-12-19  Werner Koch  <wk@g10code.com>
393
394         * w32-pth.c (pth_init): Enable debugging depending on env var.
395         (pth_self): New.
396         (pth_mutex_release, pth_mutex_acquire): Implemented directly using
397         the W32 API.
398
399 2004-12-18  Werner Koch  <wk@g10code.com>
400
401         * w32-pth.c (pth_init): Reverse return values.  Use TRUE and FALSE
402         constants.
403         (pth_kill, pth_mutex_acquire, pth_attr_set, pth_join, pth_cancel):
404         Ditto.
405
406 2004-12-15  Werner Koch  <wk@g10code.com>
407
408         * logging.c [W32]: Don't include unavailable headers.
409
410 2004-12-14  Werner Koch  <wk@g10code.com>
411
412         * w32-pth.c (_pth_strerror): Renamed to ...
413         (w32_strerror): .. this. And let callers provide a buffer.
414         (spawn_helper_thread): Removed HD arg and hardwire the stack size
415         to 32k.
416         (do_pth_wait): Removed use of ATTR; not needed for the helper
417         threads.
418         (helper_thread): Renamed to ..
419         (launch_thread): .. this.  Release handle if not joinable.
420         (struct pth_priv_hd_s): Renamed to ...
421         (struct thread_info_s): .. this.  Add member JOINABLE and TH.
422
423 2004-12-14  Timo Schulz  <twoaday@g10code.com>
424
425         * w32-pth.c (pth_kill): Just release the crit section if
426         pth_init was really called. And set all handles to NULL.
427         (_pth_strerror): New.
428         (do_pth_wait): Before we enter the loop we check if there
429         are too much events in the ring.
430         
431 2004-12-14  Werner Koch  <wk@g10code.com>
432
433         * w32-pth.h (pth_event_occured): Removed macro. 
434         * w32-pth.c: Fixed license statement; its under the LGPL.
435         (enter_pth, leave_pth): Use them to bracket almost all public
436         functions.
437
438 2004-12-13  Timo Schulz  <twoaday@g10code.com>
439
440         * w32-pth.c (enter_pth, leave_pth): New.
441         (pth_init): Initialize global mutex section.
442         (pth_kill): Release global mutex section.
443         (helper_thread): New.
444         (pth_spawn): Make sure only one thread is running.
445         
446 2004-12-13  Werner Koch  <wk@g10code.com>
447
448         * stringhelp.c (w32_strerror) [W32]: New.
449
450         * w32-pth.c, w32-pth.h: Added real code written by Timo Schulz.
451         Not finished, though.
452
453 2004-12-07  Werner Koch  <wk@g10code.com>
454
455         * w32-pth.c, w32-pth.h: New.
456
457 2004-11-26  Werner Koch  <wk@g10code.com>
458
459         * logging.c [_WIN32]: Don't include socket headers.
460
461 2004-11-30  Timo Schulz  <ts@g10code.com>
462
463         * w32-afunix.c: New. AF_UNIX emulation for W32.
464         * w32-afunix.h: Likewise.
465         
466 2004-11-22  Werner Koch  <wk@g10code.com>
467
468         * logging.c (log_test_fd): Add test on LOGSTREAM.  Reported by
469         Barry Schwartz.
470
471 2004-11-18  Werner Koch  <wk@g10code.com>
472
473         * logging.c: Explicitly include sys/stat.h for the S_I* constants.
474
475 2004-10-21  Werner Koch  <wk@g10code.com>
476
477         * logging.c (do_logv): Use set_log_stream to setup a default.
478         (log_set_file): Factored code out to ..
479         (set_file_fd): .. New function to allow using a file descriptor.
480         (log_set_fd): Make use of new fucntion.
481         (fun_writer): Reworked.
482
483 2004-08-18  Werner Koch  <wk@g10code.de>
484
485         * stringhelp.c (print_sanitized_utf8_string): Actually implement
486         it.
487
488 2004-06-21  Werner Koch  <wk@g10code.com>
489
490         * logging.c (log_set_file): Do not close an old logstream if it
491         used to be stderr or stdout.
492
493 2004-05-05  Werner Koch  <wk@gnupg.org>
494
495         * logging.c (log_set_file): Oops, don't close if LOGSTREAM is NULL.
496
497 2004-04-30  Werner Koch  <wk@gnupg.org>
498
499         * logging.c (log_set_file): Make sure the log stream will be
500         closed even if the stderr fileno will be assigned to a new socket.
501
502 2004-04-16  Werner Koch  <wk@gnupg.org>
503
504         * logging.h (JNLIB_LOG_WITH_PREFIX): Add constants for the flag
505         values.
506         * logging.c (log_set_prefix): New flag DETACHED.
507         (fun_writer): Take care of this flag.
508         (log_test_fd): New.
509
510 2004-02-18  Werner Koch  <wk@gnupg.org>
511
512         * stringhelp.c (print_sanitized_buffer): Don't care about
513         non-ASCII characaters.
514         (sanitize_buffer): Ditto.
515
516 2004-02-12  Werner Koch  <wk@gnupg.org>
517
518         * Makefile.am: Replaced INCLUDES by AM_CPPFLAGS.
519
520 2004-01-05  Werner Koch  <wk@gnupg.org>
521
522         * argparse.c (strusage): Changed default copyright year to 2004.
523
524 2003-12-17  Werner Koch  <wk@gnupg.org>
525
526         * argparse.c (initialize): Replaced use of non-literal format
527         args.  Suggested by Florian Weimer.
528
529 2003-12-16  Werner Koch  <wk@gnupg.org>
530
531         * logging.c (writen, fun_writer, fun_closer): New.
532         (log_set_file): Add feature to log to a socket.
533         (log_set_file, do_logv): Force printing with prefix and pid.
534
535 2003-11-13  Werner Koch  <wk@gnupg.org>
536
537         * strlist.c (strlist_copy): New.
538
539         * dotlock.c: Define DIRSEP_C et al. if not defined.
540
541 2003-11-06  Werner Koch  <wk@gnupg.org>
542
543         * strlist.h (strlist_t): New. STRLIST is now deprecated.
544
545 2003-06-18  Werner Koch  <wk@gnupg.org>
546
547         * strlist.c (strlist_pop): New.
548
549         * dotlock.c (dotlock_remove_lockfiles): Prefixed with dotlock_ and
550         made global.
551
552 2003-06-17  Werner Koch  <wk@gnupg.org>
553
554         * stringhelp.c (length_sans_trailing_chars)
555         (length_sans_trailing_ws): New.
556
557         * logging.c (log_inc_errorcount): New.
558
559         * stringhelp.c (print_sanitized_utf8_buffer): Implement utf8
560         conversion.
561         (sanitize_buffer): New. Based on gnupg 1.3.2 make_printable_string.
562
563         * dotlock.c: Updated to match the version from 1.3.2
564         * utf8conv.c: New.  Code taken from strgutil.c of gnupg 1.3.2.
565         * utf8conv.h: New.
566
567 2003-06-16  Werner Koch  <wk@gnupg.org>
568
569         * logging.c (do_logv): Hack to optionally suppress a leading space.
570
571         * stringhelp.c (ascii_strncasecmp): New.  Taken from gnupg 1.3.
572         (ascii_memistr): New. Taken from gnupg 1.3
573
574 2003-06-13  Werner Koch  <wk@gnupg.org>
575
576         * mischelp.h (wipememory2,wipememory): New. Taken from GnuPG 1.3.2. 
577
578 2002-06-04  Werner Koch  <wk@gnupg.org>
579
580         * stringhelp.c (print_sanitized_utf8_string): New.  No real
581         implementation for now.
582         (print_sanitized_utf8_buffer): Ditto.
583
584 2002-04-04  Werner Koch  <wk@gnupg.org>
585
586         * logging.c (log_get_prefix): New.
587
588 2002-03-15  Werner Koch  <wk@gnupg.org>
589
590         * argparse.c (optfile_parse): Fixed missing argument handling.
591
592 2002-02-25  Werner Koch  <wk@gnupg.org>
593
594         * stringhelp.c (ascii_memcasemem): New.
595
596 2002-02-14  Werner Koch  <wk@gnupg.org>
597
598         * Makefile.am (INCLUDES): Add cflags for libgcrypt.
599
600 2002-02-07  Werner Koch  <wk@gnupg.org>
601
602         * logging.c (log_set_fd): New.
603
604         * stringhelp.c (print_sanitized_buffer): New.
605         (print_sanitized_string): New.
606
607 2002-01-24  Werner Koch  <wk@gnupg.org>
608
609         * argparse.c (strusage): Set default copyright notice year to 2002.
610
611         Fixed the copyright notice of this file, as it has always been
612         part of GnuPG and therefore belongs to the FSF.
613
614 2001-11-01  Marcus Brinkmann  <marcus@g10code.de>
615
616         * logging.c (log_printf): Do not initialize ARG_PTR with 0, we
617         don't know the correct type.  Instead, run va_start and va_end
618         unconditionally.
619         Reported by Jose Carlos Garcia Sogo <jsogo@debian.org>.
620
621 2002-01-19  Werner Koch  <wk@gnupg.org>
622
623         * logging.c (log_get_stream): New.
624
625 2001-12-05  Werner Koch  <wk@gnupg.org>
626
627         * logging.c (log_set_prefix): New.
628         (do_logv): Include prefix and pid only if enabled. Print time only
629         when explicitly enabled.
630         (log_logv): New.  
631         * logging.h: Include log_logv() only when requested.
632
633 2001-11-06  Werner Koch  <wk@gnupg.org>
634
635         * strlist.c, strlist.h: New. Taken from pgnupg/util/strgutil.c
636
637 2001-08-30  Werner Koch  <wk@gnupg.org>
638
639         * logging.c (log_printf): Don't pass NULL instead of arg_ptr.
640
641 2001-07-19  Werner Koch  <wk@gnupg.org>
642
643         * stringhelp.c (ascii_memistr,ascii_isupper,ascii_islower,
644         ascii_toupper,ascii_tolower, ascii_strcasecmp, ascii_memcasecmp): New.
645
646 2000-07-26 10:02:51  Werner Koch  (wk@habibti.openit.de)
647
648         * stringhelp.c.: Add stdarg.h
649         * argparse.h: s/ulong/unsigned long/ although this should be defined
650         by types.h.
651
652 2000-06-28 19:40:23  Werner Koch  (wk@habibti.openit.de)
653
654         * Makefile.am: Replaced second logging.c by .h
655
656 2000-05-24 08:58:15  Werner Koch  (wk@habibti.openit.de)
657
658         * logging.c (log_get_errorcount): New.
659
660 2000-05-24 08:44:47  Werner Koch  (wk@habibti.openit.de)
661
662         * stringhelp.c: Added a few filename related helper functions.
663
664 2000-05-11 18:04:43  Werner Koch  (wk@habibti.openit.de)
665
666         * xmalloc.c (xstrcat2): Replaced stpcpy to quickly address W32
667         problems.
668
669 2000-05-02 19:43:38  Werner Koch  (wk@habibti.openit.de)
670
671         * xmalloc.c (xstrcat2): New.
672
673 Mon Jan 24 13:04:28 CET 2000  Werner Koch  <wk@gnupg.de>
674
675         * README: New.
676         * Makefile.am: new.
677         * argparse.c, argparse.h, logging.c, logging.h:
678         * mischelp.h, stringhelp.c, stringhelp.h, xmalloc.c:
679         * xmalloc.h, dotlock.c: Moved from ../util to here.
680         * dotlock.h: New.
681         * libjnlib-config.h: New.
682
683         * logging.c (log_set_file): New.
684         (log_printf): New.
685         (do_logv): Add kludge to insert LFs.
686
687
688      ***********************************************************
689      * Please note that JNLIB is maintained as part of GnuPG.  *
690      * You may find it source-copied in other packages.        *
691      ***********************************************************        
692         
693  Copyright 2000, 2001, 2002, 2003, 2004,
694            2005, 2006, 2007, 2008 Free Software Foundation, Inc.
695
696  This file is free software; as a special exception the author gives
697  unlimited permission to copy and/or distribute it, with or without
698  modifications, as long as this notice is preserved.
699
700  This file is distributed in the hope that it will be useful, but
701  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
702  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.