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