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