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