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