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