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