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