70a95c75800d9646ba080845d74aaa1a1963130c
[gnupg.git] / util / ChangeLog
1 2007-04-16  David Shaw  <dshaw@jabberwocky.com>
2
3         * secmem.c (init_pool): Use sysconf() if available to determine
4         page size.
5
6 2007-04-15  David Shaw  <dshaw@jabberwocky.com>
7
8         * argparse.c (default_strusage): Copyright 2007.
9
10         * cert.c, srv.c, pka.c: Need arpa/inet.h for ntohs().
11
12 2007-02-26  Werner Koch  <wk@g10code.com>
13
14         * simple-gettext.c (set_gettext_file): Make use of the envvar
15         LANGUAGE to allow overriding of the registry setting.
16
17 2007-02-12  Werner Koch  <wk@g10code.com>
18
19         * secmem.c (ptr_into_pool_p): New.
20         (m_is_secure): Implement in terms of above.  Also check that the
21         pool has been initialized.
22
23 2007-02-10  David Shaw  <dshaw@jabberwocky.com>
24
25         * http.c (do_parse_uri): Remove the hkp port 11371 detection.  We
26         implement hkp in the keyserver handler, and the support here makes
27         it appear like a bad hkp request actually succeeded.
28
29 2007-01-31  David Shaw  <dshaw@jabberwocky.com>
30
31         * ttyio.c (do_get): Assume that anything read from the user
32         without echoing to the screen is sensitive and put it in secure
33         memory.  Suggested by Benjamin Bennett.
34
35 2006-12-14  Werner Koch  <wk@g10code.com>
36
37         * http.c (http_wait_response): No more shutdown.  Fixes bug#739.
38
39 2006-10-02  David Shaw  <dshaw@jabberwocky.com>
40
41         * strsep.c (strsep): It's strsep, not strsep2 from testing.  (If I
42         had a dollar for every time I've done that...)
43
44 2006-09-28  David Shaw  <dshaw@jabberwocky.com>
45
46         * strgutil.c (strsep): Move to strsep.c for AC_REPLACE_FUNCS.
47
48         * Makefile.am: Build libcompat.a for keyserver helpers.  libutil.a
49         always contains everything in libcompat.a, so we only need to link
50         to one or the other.
51
52         * miscutil.c: Move hextobyte to new file compat.c.
53
54 2006-07-31  Werner Koch  <wk@g10code.com>
55
56         * iobuf.c (iobuf_ioctl, fd_cache_invalidate): Allow closing all
57         open files.
58
59 2006-07-29  Marcus Brinkmann  <marcus@g10code.de>
60
61         * secmem.c (init_pool): Close FD after establishing the mapping.
62
63 2006-07-20  David Shaw  <dshaw@jabberwocky.com>
64
65         * http.c (send_request): A zero-length proxy is the same as no
66         proxy at all.  Suggested by J. Scott Berg.
67
68 2006-04-17  David Shaw  <dshaw@jabberwocky.com>
69
70         * miscutil.c (make_printable_string): Fix bug where some control
71         characters lose part of their ASCII representation.
72
73 2006-04-11  David Shaw  <dshaw@jabberwocky.com>
74
75         * memory.c (realloc): Revert m_guard fix and stick an #error in
76         there to inform people not to use it.
77
78 2006-04-11  Werner Koch  <wk@g10code.com>
79
80         * iobuf.c (IOBUF_BUFFER_SIZE): New to replace hardwired 8192.
81
82 2006-04-06  David Shaw  <dshaw@jabberwocky.com>
83
84         * memory.c (realloc): Fix compile problem with --enable-m-guard.
85
86 2006-03-30  David Shaw  <dshaw@jabberwocky.com>
87
88         * cert.c (main): Fix test program build warning on OSX.
89
90 2006-03-16  David Shaw  <dshaw@jabberwocky.com>
91
92         * cert.c (get_cert): Handle the fixed IPGP type with fingerprint.
93
94 2006-03-08  David Shaw  <dshaw@jabberwocky.com>
95
96         * argparse.c (default_strusage): Update copyright year to 2006.
97
98 2006-02-19  David Shaw  <dshaw@jabberwocky.com>
99
100         * http.c (send_request): A zero length proxy is the same as no
101         proxy.
102
103 2006-02-14  Werner Koch  <wk@gnupg.org>
104
105         * errors.c (g10_errstr): Add NO_DATA.
106
107 2006-01-26  David Shaw  <dshaw@jabberwocky.com>
108
109         * cert.c (get_cert): Disable IPGP types for now until the format
110         questions in the draft are settled.
111
112         * srv.c (getsrv): Error on oversize SRV responses.
113
114 2005-12-24  David Shaw  <dshaw@jabberwocky.com>
115
116         * cert.c (get_cert): Properly chase down CNAMEs pointing to CERTs.
117
118 2005-12-23  David Shaw  <dshaw@jabberwocky.com>
119
120         * cert.c, Makefile.am: New code to do DNS CERT queries.
121
122 2005-12-22  David Shaw  <dshaw@jabberwocky.com>
123
124         * srv.c, Makefile.am: Only build srv.c if we need to.
125
126 2005-12-10  Ryan Lortie  <desrt@desrt.ca> (dshaw)
127
128         * ttyio.c (tty_enable_completion, tty_disable_completion): Add
129         checks for no_terminal so we don't try to open("/dev/tty") when
130         invoked with --no-tty.
131
132 2005-12-06  David Shaw  <dshaw@jabberwocky.com>
133
134         * Makefile.am: Some cleanup so we don't build files that are
135         completely ifdeffed out.  This causes a warning on Sun's cc.  Do
136         the internal regex code as well for consistency.
137
138         * mkdtemp.c (mkdtemp): Fix warning.
139
140         * secmem.c, assuan-buffer.c, dotlock.c: Fix a few warnings from
141         printf-ing %p where the arg wasn't void *.
142
143 2005-11-02  David Shaw  <dshaw@jabberwocky.com>
144
145         * util.c [!HAVE_DECL_GETPAGESIZE]: Prototype getpagesize() if
146         unistd.h doesn't have it (for MinGW).
147
148 2005-09-22  Werner Koch  <wk@g10code.com>
149
150         * iobuf.c (iobuf_get_filelength): New arg OVERFLOW.
151         (iobuf_get_filelength) [W32]:  Use GetFileSizeEx if available.
152         * fileutil.c (is_file_compressed): Take care of the OVERFLOW
153
154 2005-08-31  David Shaw  <dshaw@jabberwocky.com>
155
156         * fileutil.c (untilde): New.  Expand ~/foo and ~username/foo
157         filenames into full paths using $HOME if possible, or
158         getpwuid/getpwnam if necessary.
159         (make_filename): Use it here.
160
161 2005-07-28  Werner Koch  <wk@g10code.com>
162
163         * pka.c: New.
164         (parse_txt_record): Changed from v=1 to v=pka1.
165
166         * Makefile.am (pka-test): new.
167
168 2005-07-27  Werner Koch  <wk@g10code.com>
169
170         * memory.c (FNAMEX, FNAMEXM): New macros to cope with the now used
171         names xmalloc style names.
172
173 2005-07-18  Werner Koch  <wk@g10code.com>
174
175         * ttyio.c (do_get): Move printing of the prompt after disabling
176         echo.  Suggested by Scott Worley.
177
178 2005-06-23  David Shaw  <dshaw@jabberwocky.com>
179
180         * http.c (make_radix64_string): Add '=' padding as per standard.
181         (send_request, http_open, http_open_document): Clean up auth code.
182         Can now support different auth for a proxy and the file being
183         requested via that proxy.  Unescape auth strings.
184
185 2005-06-22  David Shaw  <dshaw@jabberwocky.com>
186
187         * memrchr.c (memrchr): Not all compilers allow initializing based
188         on a variable that is also being initialized.  Noted by Nelson
189         H. F. Beebe.
190
191 2005-06-21  David Shaw  <dshaw@jabberwocky.com>
192
193         * http.c (send_request, http_open, http_open_document): Pass in
194         auth and proxyauth that can override the in-url auth.
195
196         * http.c (send_request): Need == after the radix64-encoded basic
197         auth string.
198
199 2005-06-08  David Shaw  <dshaw@jabberwocky.com>
200
201         * dotlock.c [HAVE_DOSISH_SYSTEM]: Fix unused function warnings on
202         mingw32.  Noted by Joe Vender.
203
204 2005-05-31  Werner Koch  <wk@g10code.com>
205
206         * regcomp.c (MB_CUR_MAX) [_WIN32]: Define it only if not defined.
207
208 2005-05-29  David Shaw  <dshaw@jabberwocky.com>
209
210         * strgutil.c (set_native_charset) [_WIN32]: Add alias for codepage
211         CP65001 to utf-8.
212
213 2005-05-19  Werner Koch  <wk@g10code.com>
214
215         * membuf.c: New.  Taken from gnupg 1.9.
216
217 2005-05-05  David Shaw  <dshaw@jabberwocky.com>
218
219         * miscutil.c (add_days_to_timestamp): Remove as unused.
220
221 2005-04-12  David Shaw  <dshaw@jabberwocky.com>
222
223         * assuan-client.c: Fix warning on OSX.
224
225         * memrchr.c: New replacement function.
226
227         * assuan-buffer.c: Use it here.
228
229 2005-04-04  Werner Koch  <wk@g10code.com>
230
231         * memory.c (xcalloc, xcalloc_secure): New wrappers.
232
233         * assuan-client.c (assuan_transact): Factored all code out to ..
234         (assuan_transact2): .. new.  Add arg OKAY_CB.  Wipe the memory
235         processed though that callback.
236
237 2005-03-31  Werner Koch  <wk@g10code.com>
238
239         * isascii.c: New.  This is an autoconf replacement function.
240
241         * Makefile.am (assuan_source): New.  Only used when agent support
242         has been requested.
243         * assuan-buffer.c, assuan-client.c, assuan-defs.h,
244         * assuan-errors.c, assuan-logging.c, assuan-socket-connect.c,
245         * assuan-socket.c, assuan-util.c, assuan-connect.c: New.  Taken
246         from libassuan 0.6.9 and adjusted for our limited use of Assuan.
247
248 2005-03-18  David Shaw  <dshaw@jabberwocky.com>
249
250         * ttyio.c (tty_enable_completion, tty_disable_completion): Enable
251         and disable readline completion.
252         (init_ttyfp): Completion is disabled by default.
253
254 2005-03-14  Werner Koch  <wk@g10code.com>
255
256         * miscutil.c (isotimestamp): New.
257
258 2005-03-10  Werner Koch  <wk@g10code.com>
259
260         * secmem.c (secmem_realloc): Take control information into account
261         when checking whether a resize is needed.
262
263 2005-03-08  Werner Koch  <wk@g10code.com>
264
265         * miscutil.c (asctimestamp) [W32]: Don't use %Z.
266
267 2005-02-03  Werner Koch  <wk@g10code.com>
268
269         * w32reg.c (read_w32_registry_string): Fallback to HKLM also for a
270         missing name.
271
272         * http.c (connect_server): Define ERR outside of the !W32 block.
273
274 2005-02-01  David Shaw  <dshaw@jabberwocky.com>
275
276         * http.c (connect_server): Fix fd leak when connecting to a
277         round-robin server set that has some down servers.  Noted by Phil
278         Pennock.
279
280 2005-01-20  Werner Koch  <wk@g10code.com>
281
282         * simple-gettext.c (set_gettext_file): Use MO files depending on
283         the installation directory.  Add new arg REGKEY.
284         
285 2005-01-18  Werner Koch  <wk@g10code.com>
286
287         * argparse.c (default_strusage): Changed default copyright year to
288         2005.
289
290         * strgutil.c (handle_iconv_error): Print error messages only once.
291         (native_to_utf8, utf8_to_native): Ditto.
292
293 2005-01-11  Werner Koch  <wk@g10code.com>
294
295         * strgutil.c (set_native_charset) [W32]: Use the alias table from
296         libiconv 1.9.2. 
297
298 2005-01-13  David Shaw  <dshaw@jabberwocky.com>
299
300         * http.c (connect_server): Use INADDR_NONE instead of
301         SOCKET_ERROR.  Noted by Timo.
302
303 2005-01-06  Werner Koch  <wk@g10code.com>
304
305         * strgutil.c (set_native_charset): Assume that ASCII,
306         ANSI_X3.4-1968 and 646 are actually meant as Latin-1.  If
307         nl_langinfo is not available get the charset from environment
308         variables. For W32 use GetACP as error fallback.  Removed Latin-15
309         to Latin-1 aliasing.
310
311 2004-12-28  David Shaw  <dshaw@jabberwocky.com>
312
313         * srv.h: Better implementation for the SRV check.  We don't need
314         to actually check all the header files individually since the SRV
315         test compile uses them together.
316
317 2004-12-20  Werner Koch  <wk@g10code.com>
318
319         * strgutil.c (handle_iconv_error): Turn diagnostics into warnings
320         so that gpg does not return with failure.
321         (native_to_utf8, utf8_to_native): Ditto.
322
323 2004-12-16  Werner Koch  <wk@g10code.com>
324
325         * iobuf.c (fd_cache_strcmp) [W32]: Casting is a Bad Thing. Cast to
326         an unsigned char pointer and to an unsigned integer.
327
328 2004-12-18  David Shaw  <dshaw@jabberwocky.com>
329
330         * ttyio.c: Use only HAVE_LIBREADLINE to detect readline
331         availability.
332
333 2004-12-16  David Shaw  <dshaw@jabberwocky.com>
334
335         * srv.h: Don't include arpa/nameser.h unless we have it.  Include
336         "types.h" for u16.
337
338         * secmem.c (secmem_init): Return a flag to indicate whether we got
339         the lock.
340
341 2004-12-06  Werner Koch  <wk@g10code.com>
342
343         * iobuf.c (fd_cache_strcmp): New. Use whenever we compare
344         filenames for the fd_cache. This is needed because the backslash
345         is an alias for a slash under W32. Reported by Tobias Winkler.
346
347 2004-12-03  David Shaw  <dshaw@jabberwocky.com>
348
349         * http.c (send_request): Include the port if non-80 in the Host:
350         header.  Noted by Jason Harris.
351
352 2004-11-03  Timo Schulz  <twoaday@g10code.com>
353         
354         * strgutil.c (w32_strerror): New.
355         * ttyio.c (init_ttyfp, tty_printf, do_get): Use it here.
356         * iobuf.c (fd_cache_open, file_filter): Likewise.
357         (iobuf_seek, translate_file_handle): Likewise.
358         
359 2004-11-02  Werner Koch  <wk@g10code.com>
360
361         * strgutil.c (load_libiconv): Use log_info to avoid failures when
362         iconv.dll is not installed.
363
364 2004-10-31  Werner Koch  <wk@g10code.com>
365
366         * simple-gettext.c (get_string): Removed debugging hack.
367
368 2004-10-27  Werner Koch  <wk@g10code.com>
369
370         * simple-gettext.c: Removed windows.h.
371         (get_string): On the fly translation from utf-8 to active
372         character set.
373
374         * strgutil.c (load_libiconv) [_WIN32]: new.
375         (set_native_charset) [_WIN32]: Call it here and autodetect the
376         used code page.
377         (native_to_utf8, utf8_to_native): Reverted arguments for
378         iconv_open.
379         (handle_iconv_error): Made this function match iconv_open argumnet
380         ordering.
381         (utf8_to_native): Disable all quoting for DELIM == -1.
382
383 2004-10-26  Werner Koch  <wk@g10code.com>
384
385         * strgutil.c (mem2str): Translated comment to English.
386         (handle_iconv_error) [USE_GNUPG_ICONV]: New.
387         (set_native_charset) [USE_GNUPG_ICONV]: Added iconv based
388         conversion checks.
389         (native_to_utf8, utf8_to_native): Added iconv based conversion.
390
391 2004-10-21  Werner Koch  <wk@g10code.com>
392
393         * vasprintf.c: Removed. It was used only at one place and I don't
394         want to get into build problems in 1.4. 
395
396 2004-10-18  David Shaw  <dshaw@jabberwocky.com>
397
398         * http.c (connect_server, send_request): Use the URI scheme as the
399         SRV tag rather than hard-coding _hkp.
400
401 2004-10-16  David Shaw  <dshaw@jabberwocky.com>
402
403         * http.c (connect_server): [_WIN32] actually fill in the sin_addr
404         so we aren't always talking to localhost.  Add some general sanity
405         checking of parameters learned from gethostbyname().
406
407 2004-10-15  Werner Koch  <wk@g10code.com>
408
409         * vasprintf.c: New.  Taken from gnupg 1.9.
410
411 2004-10-14  Werner Koch  <wk@g10code.com>
412
413         * iobuf.c (iobuf_get_fd): Removed double check on directfp and
414         cats it to FILEP becuase directfp is actually a void *.  Notes by
415         Stefan.
416
417 2004-10-13  Werner Koch  <wk@g10code.com>
418
419         * logger.c (g10_log_error_f, g10_log_fatal_f, g10_log_info_f)
420         (g10_log_debug_f, print_prefix_f): Removed.
421
422         * iobuf.c (iobuf_is_pipe_filename): New.
423         (iobuf_get_fd): New.
424
425         * fileutil.c (is_file_compressed): Use it here.
426
427 2004-09-30  David Shaw  <dshaw@jabberwocky.com>
428
429         * iobuf.c (pop_filter): Make static.
430
431         * dotlock.c (destroy_dotlock): New.  Remove the handle from the
432         list of locks.
433         (release_dotlock): Don't act if we don't have any locks at all.
434         From Werner on stable branch.
435
436 2004-09-10  David Shaw  <dshaw@jabberwocky.com>
437
438         * http.c (make_radix64_string, do_parse_uri, send_request): Add
439         basic auth for proxies and direct requests.  Suggested by Florent
440         Thoumie.
441
442         * http.c (main): Fix test code for http-test.
443
444 2004-09-09  Werner Koch  <wk@g10code.com>
445
446         * errors.c (g10_errstr): New error codes G10ERR_NO_CARD,
447         G10ERR_CANCELED.
448
449         * ttyio.c (tty_get): Add readline support.
450
451         * iobuf.c (iobuf_skip_rest): New.  Orginal patch by Florian
452         Weimer.  Added new argument PARTIAL.
453
454 2004-08-19  David Shaw  <dshaw@jabberwocky.com>
455
456         * http.c (insert_escapes): Fix encoding problem for non-URI-safe
457         characters.  Noted by Vladimir Novak.
458
459 2004-05-21  David Shaw  <dshaw@jabberwocky.com>
460
461         * timegm.c: New replacement function.  Removes the need for
462         setenv.c and unsetenv.c.
463
464         * setenv.c: Removed.
465
466         * unsetenv.c: Removed.
467
468 2004-03-04  David Shaw  <dshaw@jabberwocky.com>
469
470         * iobuf.c (block_filter): Remove the old gpg indeterminate length
471         mode.
472         (iobuf_set_block_mode, iobuf_in_block_mode): Removed as
473         superfluous.
474
475 2004-03-01  David Shaw  <dshaw@jabberwocky.com>
476
477         * iobuf.c (block_filter): Properly handle a partial body stream
478         that ends with a 5-byte length that happens to be zero.
479
480 2004-02-28  David Shaw  <dshaw@jabberwocky.com>
481
482         * unsetenv.c: Fixed debugging typo.
483
484 2004-02-24  Werner Koch  <wk@gnupg.org>
485
486         * secmem.c (lock_pool) [_AIX]: Also set errno.
487
488 2004-02-21  David Shaw  <dshaw@jabberwocky.com>
489
490         * miscutil.c (hextobyte): Moved here from g10/misc.c so I can use
491         it in the keyserver helpers.
492
493 2004-02-20  David Shaw  <dshaw@jabberwocky.com>
494
495         * mkdtemp.c: New (moved from g10/), setenv.c: New, unsetenv.c:
496         New.
497
498         * Makefile.am: Include @LIBOBJS@ for replacement functions.
499
500 2004-01-15  David Shaw  <dshaw@jabberwocky.com>
501
502         * argparse.c (default_strusage): Update copyright date.
503         (initialize): Avoid a number of -Wformat-nonliteral warnings.
504         These aren't actual problems, but the warnings bothered me.
505
506         * miscutil.c (print_string2): New variation on print_string that
507         allows two delimiters.
508         (print_string): Call print_string2 to do work.
509
510 2003-12-29  David Shaw  <dshaw@jabberwocky.com>
511
512         * g10u.c: Dead code.  Remove.
513
514         * Makefile.am: Don't compile g10u.c.
515
516         * iobuf.c (block_filter): Properly handle a partial body stream
517         that ends with a 5-byte length.
518
519 2003-12-28  David Shaw  <dshaw@jabberwocky.com>
520
521         * http.c (send_request, http_open_document, http_open): Pass the
522         http proxy from outside rather than pulling it from the
523         evironment.
524
525 2003-12-28  Stefan Bellon  <sbellon@sbellon.de>
526
527         * riscos.c [__riscos__]: Better filetype handling (use a
528         different SWI) and removal of unnecessary function.
529
530         * memory.c (out_of_core) [__riscos__]: Produce stack backtrace on
531         RISC OS if out_of_core() is called and M_GUARD is compiled in.
532
533 2003-12-06  David Shaw  <dshaw@jabberwocky.com>
534
535         * http.c (send_request): Add a Host: header for virtual hosts.
536
537 2003-12-04  David Shaw  <dshaw@jabberwocky.com>
538
539         * miscutil.c (answer_is_yes_no_default, answer_is_yes_no_quit):
540         Don't use alternate strings when not needed so we don't have to
541         re-translate them. Hopefully the comment will be enough to
542         indicate multiple match strings.
543
544 2003-11-20  David Shaw  <dshaw@jabberwocky.com>
545
546         * miscutil.c (match_multistr): New.  Match against each segment in
547         a string with tokens separated by |.
548         (answer_is_yes_no_default, answer_is_yes_no_quit,
549         answer_is_okay_cancel): Use it here to enable alternate
550         translations.
551
552 2003-11-01  David Shaw  <dshaw@jabberwocky.com>
553
554         * http.c (connect_server): Differentiate between generic "can't
555         connect" errors and the more specific "host not found". Suggested
556         by Samuel Tardieu.
557
558 2003-10-29  Werner Koch  <wk@gnupg.org>
559
560         * miscutil.c (answer_is_okay_cancel): New.
561
562 2003-10-25  Werner Koch  <wk@gnupg.org>
563
564         * Makefile.am: Replaced INTLLIBS by LIBINTL.
565
566 2003-10-23  Werner Koch  <wk@gnupg.org>
567
568         * secmem.c (lock_pool) [_AIX]: Don't use plock.
569
570 2003-10-12  David Shaw  <dshaw@jabberwocky.com>
571
572         * srv.c: OSX 10.2.8/Darwin 6.8 seems to have some #include
573         ordering issues?  Move sys/types.h up higher to work around.
574
575 2003-10-08  Werner Koch  <wk@gnupg.org>
576
577         * ttyio.c (tty_print_string, tty_print_utf8_string2)
578         (tty_print_utf8_string): Made string arg const.
579
580 2003-09-28  Timo Schulz  <twoaday@freakmail.de>
581
582         * strgutil.c [WIN32] (asprintf): New.
583         
584 2003-09-28  Werner Koch  <wk@gnupg.org>
585
586         * ttyio.c (tty_fprintf): New.
587
588 2003-09-21  Timo Schulz  <twoaday@freakmail.de>
589
590         * http.c [WIN32]: Define MB_CUR_MAX.
591         (connect_server): use unsigned long since W32 does not have in_addr_t.
592         
593 2003-08-28  David Shaw  <dshaw@jabberwocky.com>
594
595         * dotlock.c, http.c, iobuf.c, simple-gettext.c, srv.c, srv.h,
596         strgutil.c, ttyio.c, w32reg.c: s/__MINGW32__/_WIN32/ to help
597         building on native Windows compilers.  Requested by Brian Gladman.
598         From Werner on stable branch.
599         
600         * http.c (connect_server): Oops - forgot to freeaddrinfo().
601
602 2003-08-24  David Shaw  <dshaw@jabberwocky.com>
603
604         * http.c (connect_server): Try and use getaddrinfo if it is
605         available.  Try for IPv6 via getaddrinfo() or a IPv6-ized
606         gethostbyname().  Suggested by Jun-ichiro itojun Hagino.
607
608 2003-07-10  David Shaw  <dshaw@jabberwocky.com> (from Werner on stable branch)
609
610         * iobuf.c (check_special_filename): Replaced is isdigit by digitp
611         to avoid passing negative values and potential locale problems.
612         Problem noted by Christian Biere.
613         * strgutil.c (strlwr,strcasecmp,strncasecmp): Make sure we don't
614         pass a negative value.
615         * miscutil.c (scan_isodatestr): Ditto.
616
617 2003-05-30  David Shaw  <dshaw@jabberwocky.com>
618
619         * srv.h, srv.c: Include windows.h with MINGW32.
620
621 2003-05-24  David Shaw  <dshaw@jabberwocky.com>
622
623         * argparse.c, dotlock.c, fileutil.c, iobuf.c, miscutil.c,
624         simple-gettext.c, errors.c, http.c, memory.c, secmem.c, ttyio.c:
625         Edit all preprocessor instructions to remove whitespace before the
626         '#'.  This is not required by C89, but there are some compilers
627         out there that don't like it.
628
629 2003-05-21  Werner Koch  <wk@gnupg.org>
630
631         * fileutil.c (is_file_compressed): Fixed checking for "-" filename.
632
633 2003-04-13  David Shaw  <dshaw@jabberwocky.com>
634
635         * srv.c (main): Test against wwwkeys.pgp.net.
636
637         * srv.h: Grr. The RH7.3 Linux man page defines the fourth arg of
638         dn_expand as unsigned char*, but it is really char* according to
639         resolv.h.
640
641 2003-03-23  David Shaw  <dshaw@jabberwocky.com>
642
643         * argparse.c (default_strusage): Change copyright date.
644
645 2003-03-14  David Shaw  <dshaw@jabberwocky.com>
646
647         * srv.h, srv.c (getsrv): Use unsigned char rather than char.
648         Noted by Stefan Bellon.
649
650 2003-03-11  David Shaw  <dshaw@jabberwocky.com>
651
652         * http.c (connect_server): Use DNS SRV to get a server list.  Fail
653         over to A records if necessary.
654
655         * Makefile.am, srv.h, srv.c: New DNS SRV handling code.
656
657 2003-02-22  David Shaw  <dshaw@jabberwocky.com>
658
659         * ttyio.c (tty_print_utf8_string, tty_print_utf8_string2): Use 0
660         to indicate a string with no maximum size.  This prevents early
661         truncation of strings that contain control chars which are
662         expanded into \xXX form.
663
664 2002-12-26  David Shaw  <dshaw@jabberwocky.com>
665
666         * iobuf.c (iobuf_flush): Only print debug info if debugging is on.
667
668 2002-11-13  David Shaw  <dshaw@jabberwocky.com>
669
670         * secmem.c (lock_pool) [__CYGWIN__]: Don't print secmem warning.
671         From Werner on stable branch.
672
673 2002-11-09  Werner Koch  <wk@gnupg.org>
674
675         * ttyio.c (TERMDEVICE): Removed.
676         (tty_get_ttyname): New.
677         (init_ttyfp): Use it here instead of the TERMDEVICE macro.
678
679 2002-11-06  David Shaw  <dshaw@jabberwocky.com>
680
681         * w32reg.c (read_w32_registry_string): Fixed expanding of the
682         environment buffer; didn't worked at all.  Reported by Thijmen
683         Klok.  From Werner on stable branch.
684
685         * secmem.c (secmem_free, secmem_term): Use wipememory2() instead
686         of memset() to overwrite secure memory
687
688         * iobuf.c (direct_open): Handle mode 'b' if O_BINARY is available.
689         From Werner on stable branch.
690
691         * fileutil.c: Comment from stable branch.
692
693 2002-10-31  Stefan Bellon  <sbellon@sbellon.de>
694
695         * riscos.c (riscos_load_module, riscos_check_regexp): New.
696         (riscos_set_filetype_by_mimetype, riscos_dump_fdlist)
697         (riscos_fdopenfile, riscos_close_fds, riscos_renamefile)
698         (riscos_gstrans, riscos_list_openfiles, riscos_not_implemented):
699         Renamed functions to contain riscos prefix.
700         * dotlock.c [__riscos__]: Renames due to changes in riscos.c.
701         * fileutil.c [__riscos__]: Likewise.
702
703 2002-10-29  Stefan Bellon  <sbellon@sbellon.de>
704
705         * fileutil.c: Removed unnecessary left-over includes for RISC OS.
706         (make_filename): Tidied up RISC OS stuff.
707         (compare_filenames) [__riscos__]: Compare with ascii_strcasecmp().
708         (make_basename) [__riscos__]: Branch to own RISC OS routine from
709         here.
710
711         * riscos.c (riscos_make_basename): New.
712
713 2002-10-28  Stefan Bellon  <sbellon@sbellon.de>
714
715         * fileutil.c (make_basename) [__riscos__]: Cut off RISC OS' filing
716         systems from filepath.
717
718         * riscos.c (riscos_get_filetype_from_string, riscos_get_filetype):
719         Added.
720         (riscos_set_filetype_by_number): Made public.
721
722 2002-10-19  David Shaw  <dshaw@jabberwocky.com>
723
724         * Makefile.am, regcomp.c, regex.c, regex_internal.c,
725         regex_internal.h, regexec.c: Add new regex files from glibc 2.3.1.
726
727 2002-10-17  David Shaw  <dshaw@jabberwocky.com>
728
729         * http.c (connect_server): Try all A records for names with
730         multiple addresses until one answers for both MINGW32 and not
731         MINGW32.
732
733 2002-10-10  David Shaw  <dshaw@jabberwocky.com>
734
735         * http.c (connect_server): Properly handle a single A record that
736         fails connect().
737
738 2002-10-03  David Shaw  <dshaw@jabberwocky.com>
739
740         * logger.c (g10_log_warning, log_set_strict): Add new log_warning
741         logger command which can be switched between log_info and
742         log_error via log_set_strict.
743
744 2002-09-24  David Shaw  <dshaw@jabberwocky.com>
745
746         * http.c (connect_server): Try all A records for names with
747         multiple addresses until one answers (not MINGW32).
748
749 2002-09-16  Werner Koch  <wk@gnupg.org>
750
751         * w32reg.c (read_w32_registry_string): Fallback to HLM.
752
753 2002-09-12  Stefan Bellon  <sbellon@sbellon.de>
754
755         * fileutil.c (make_filename): Removed variable for RISC OS to
756         avoid compiler warning.
757
758         * secmem.c: Removed static variable for RISC OS to avoid
759         compiler warning.
760
761 2002-09-11  Werner Koch  <wk@gnupg.org>
762
763         * simple-gettext.c: Disable charset mappings.  We do it now when
764         installing the files.
765
766 2002-09-09  Werner Koch  <wk@gnupg.org>
767
768         * w32reg.c (read_w32_registry_string): Handle REG_EXPAND_SZ.
769         Suggested by Ryan Malayter.
770
771         * strgutil.c (ascii_strcasecmp): Replaced by code from gnulib.
772         (ascii_strncasecmp): New.
773
774 2002-09-02  Werner Koch  <wk@gnupg.org>
775
776         * simple-gettext.c (set_gettext_file): Make sure that we only use
777         backslashes.
778
779         * strgutil.c (set_native_charset): Allow NULL as argument to use
780         nl_langinfo for selection.  Mapped latin-15 to latin-1.
781
782 2002-08-30  Werner Koch  <wk@gnupg.org>
783
784         * iobuf.c (block_filter): Removed the assert, so that one can pass
785         the first character of a message and use the block filter for
786         non partial length encoded packets.
787
788 2002-08-06  Stefan Bellon  <sbellon@sbellon.de>
789
790         * ttyio.c [__riscos__]: Moved low-level RISC OS stuff to riscos.c.
791         * riscos.c: Use new SWI calling mechanism of UnixLib.
792
793 2002-08-03  Stefan Bellon  <sbellon@sbellon.de>
794
795         * secmem.c (init_pool, secmem_term): Changed #if to #ifdef in
796         order to avoid warning with RISC OS' Norcroft C.
797
798 2002-07-25  David Shaw  <dshaw@jabberwocky.com>
799
800         * secmem.c: "Warning" -> "WARNING"
801
802 2002-07-05  Werner Koch  <wk@gnupg.org>
803
804         * argparse.c (initialize): We better exit after a read error so
805         that we don't run into an endless loop when reading a directory.
806         Noted by Andrew Suffield.
807
808 2002-07-01  David Shaw  <dshaw@jabberwocky.com>
809
810         * argparse.c (optfile_parse): Fix variable typo - 'p2' should be
811         'p' :)
812
813 2002-06-29  Werner Koch  <wk@gnupg.org>
814
815         * argparse.c (optfile_parse): Renamed an auto I to P2 to avoid
816         shadowing warning.
817
818 2002-06-21  Stefan Bellon  <sbellon@sbellon.de>
819
820         * riscos.c (riscos_global_defaults): New.
821
822 2002-06-20  Stefan Bellon  <sbellon@sbellon.de>
823
824         * riscos.c (riscos_set_filetype_by_number, riscos_set_filetype):
825         New. Set RISC OS filetype according to MIME type.
826
827 2002-06-14  David Shaw  <dshaw@jabberwocky.com>
828
829         * strgutil.c (pop_strlist): New function to pop the head off of a
830         strlist.
831
832 2002-06-05  Timo Schulz  <ts@winpt.org>
833
834         * fileutil.c (is_file_compressed): Corrected the magic values
835         for bzip2 and gzip. Noted by David.
836         
837 2002-05-22  Werner Koch  <wk@gnupg.org>
838
839         * fileutil.c (compare_filenames): Replaced stricmp by strcasecmp.
840         * miscutil.c (answer_is_yes_no_quit,answer_is_yes_no_default): Ditto.
841
842         * strgutil.c (strncasecmp): New.
843         (memicmp): Removed.
844
845 2002-05-10  Stefan Bellon  <sbellon@sbellon.de>
846
847         * memory.c (add_entry) [M_DEBUG]: Added some missing EXTRA_ALIGN.
848         (free_entry) [M_DEBUG]: Free secure memory via secmem_free.
849         (alloc_secure): Malloc at least 1 byte.
850         (realloc) [M_GUARD]: Added missing FNAMEARG to function call.
851
852         * logger.c (g10_log_bug0) [__riscos__]: Make use of first
853         g10_log_bug0 function for later Norcroft compiler.
854
855         * riscos.c: Added stdlib.h include.
856
857 2002-05-04  Werner Koch  <wk@gnupg.org>
858
859         * http.c (write_server) [__MINGW32__]: Replaced WriteFile by send
860         because sockets don't work with WriteFile under NT anymore.
861
862 2002-05-03  David Shaw  <dshaw@jabberwocky.com>
863
864         * argparse.c (optfile_parse): Remove quotes only if they totally
865         enclose the string, and do not occur within the string.  This
866         makes specifying a program under Win32 easier when you need quotes
867         around part of a string, but not around the whole string.
868         
869 2002-05-02  Werner Koch  <wk@gnupg.org>
870
871         * memory.c (alloc): Malloc at least 1 byte.  Noted by Winona Brown. 
872
873 2002-04-23  David Shaw  <dshaw@jabberwocky.com>
874
875         * miscutil.c: New function answer_is_yes_no_default() to give a
876         default answer.
877
878 2002-04-22  Stefan Bellon  <sbellon@sbellon.de>
879
880         * riscos.c (riscos_open, riscos_fopen, riscos_fstat, set_filetype):
881         Removed as they're not needed anymore.
882
883         * iobuf.c (direct_open) [__riscos__]: Don't allow opening of
884         directories.
885
886 2002-04-08  Werner Koch  <wk@gnupg.org>
887
888         Fixed filename of last entry.
889
890 2002-03-29  David Shaw  <dshaw@jabberwocky.com>
891
892         * miscutil.c (print_string, utf8_to_native): If a delimiter is
893         used, then quote the backslash character as well.  Problem noted
894         by Rainer Perske.
895
896 2002-03-15  Werner Koch  <wk@gnupg.org>
897
898         * argparse.c (optfile_parse): Fixed missing argument handling.
899
900 2002-02-28  Timo Schulz  <ts@winpt.org>
901
902         * http.c (write_server): Convert integer to a HANDLE for W32.
903         
904 2002-01-27  David Shaw  <dshaw@jabberwocky.com>
905
906         * iobuf.c (iobuf_fdopen, iobuf_sockopen): Do not cache fdopened
907         fds on close.
908
909 2002-01-08  Werner Koch  <wk@gnupg.org>
910
911         * secmem.c (print_warn): Print a pointer to the FAQ.
912
913 2002-01-05  Werner Koch  <wk@gnupg.org>
914
915         * argparse.c (default_strusage): Set default copyright date to 2002.
916
917 2002-01-02  Stefan Bellon  <sbellon@sbellon.de>
918
919         * iobuf.c [__riscos__]: Updated include file name.
920
921         * fileutil.c [__riscos__]: Ditto.
922
923         * ttyio.d [__riscos__]: Ditto.
924
925         * riscos.c [__riscos__]: Ditto. Added debugging code and
926         unified error messages.
927
928 2001-12-27  David Shaw  <dshaw@jabberwocky.com>
929
930         * errors.c (g10_errstr): Added G10ERR_KEYSERVER
931
932 2001-12-27  Werner Koch  <wk@gnupg.org>
933
934         * simple-gettext.c [MINGW32]: Fixed last changed.
935
936 2001-12-22  Stefan Bellon  <sbellon@sbellon.de>
937
938         * memory.c (realloc): Fixed realloc not working when M_GUARD is
939         defined and first parameter is NULL.
940
941 2001-12-22  Timo Schulz <ts@winpt.org>
942
943         * fileutil.c (is_file_compressed): New.
944
945 2001-12-19  Werner Koch  <wk@gnupg.org>
946
947         * simple-gettext.c, w32reg.c [CYGWIN32]: Allow to use this file
948
949 2001-10-11  Werner Koch  <wk@gnupg.org>
950
951         * http.c (do_parse_uri): Changed initialization of the port number
952         so that it does also work with x-hkp.  By David Shaw.
953
954 2001-09-19  Werner Koch  <wk@gnupg.org>
955
956         * w32reg.c (get_root_key): New.
957         (read_w32_registry_string): Use it here.
958         (write_w32_registry_string): New.  Contributed by Timo.
959
960         * iobuf.c (iobuf_ioctl): New command to disable fd
961         caching. Implemented no_cache flag where needed.
962         (iobuf_sockopen): Always set no_cache flag.
963
964         * strgutil.c (utf8_to_native): Add a delim arg and changed all
965         callers. Make sure that quoting is done when translation is
966         disabled.
967         * miscutil.c (print_utf8_string2): New.
968
969 2001-09-17  Werner Koch  <wk@gnupg.org>
970
971         * miscutil.c (print_string): Use explicit ranges and not iscntrl().  
972         (make_printable_string): Ditto.
973
974 2001-09-07  Werner Koch  <wk@gnupg.org>
975
976         * strgutil.c (strsep): New, taken from glibc 2.2.1.
977
978 2001-09-03  Werner Koch  <wk@gnupg.org>
979
980         * miscutil.c (strtimestamp,asctimestamp): Avoid trigraphs.
981
982 2001-08-21  Stefan Bellon  <sbellon@sbellon.de>
983
984         * riscos.c [__riscos__] (close_fds): Fixed possible endless loop.
985
986 2001-08-20  Werner Koch  <wk@gnupg.org>
987
988         Applied patches from Stefan Bellon <sbellon@sbellon.de> to support
989         RISC OS.  Nearly all of these patches are identified by the
990         __riscos__ macro.
991         * secmem.c [__riscos__]: Disabled secure memory stuff.
992         * dotlock.c, ttyio.c [__riscos__]: Adapted for RISC OS
993         * fileutil.c, iobuf.c: Adapted for RISC OS;  mainly replaced
994         hardcoded path separators with EXTSEP_S like macros. 
995         * http.c (send_request): Use macros for the env-var name.
996         * logger.c [__riscos__]: Do an fflush at the end of each log
997         function. 
998         * memory.c [__riscos__]: Minor patches
999         * riscos.c (set_filetype): New.
1000
1001         * secmem.c (lock_pool): Under HPUX mlock is broken but we might
1002         have plock, so we use this to lock the entire process.  By Albert
1003         Chin.
1004         
1005 2001-07-03  Werner Koch  <wk@gnupg.org>
1006
1007         * strgutil.c (utf8_to_native): Fixed printing of invalid utf-8
1008         characters.  Thomas Roessler reported that the escaping didn't work
1009         correct.
1010
1011 2001-06-12  Werner Koch  <wk@gnupg.org>
1012
1013         * strgutil.c (ascii_memistr,ascii_isupper,ascii_islower,
1014         ascii_toupper,ascii_tolower, ascii_strcasecmp, ascii_memcasecmp): New.
1015         (set_native_charset): Use ascii_strcasecmp()
1016         * fileutil.c (compare_filenames): Ditto
1017         * miscutil.c (answer_is_yes): Ditto.
1018         (answer_is_yes_no_quit): Ditto.
1019
1020 2001-06-06  Werner Koch  <wk@gnupg.org>
1021
1022         * strgutil.c (vasprintf) [__MINGW32__]: New. Taken from libiberty.
1023         * ttyio.c (tty_printf) [__MINGW32__]:  Replaced the sprintf with
1024         the new vasprintf. 
1025
1026 2001-06-05  Werner Koch  <wk@gnupg.org>
1027
1028         * dotlock.c (make_dotlock): Typo fixes. 
1029
1030 2001-05-25  Werner Koch  <wk@gnupg.org>
1031
1032         * ttyio.c (do_get): Fixed a serious format string bug.  Thanks to
1033         fish stiqz.
1034
1035 2001-05-23  Werner Koch  <wk@gnupg.org>
1036
1037         * secmem.c (EPERM): Try to work around a Slackware problem.
1038
1039 2001-05-05  Werner Koch  <wk@gnupg.org>
1040
1041         * http.c (http_start_data): Flush before writing.
1042         (http_wait_response): No need to flush here.
1043
1044 2001-04-27  Werner Koch  <wk@gnupg.org>
1045
1046         * memory.c (out_of_core): Print an explanation on reasons why
1047         secret memory can get exhausted.
1048
1049 2001-04-23  Werner Koch  <wk@gnupg.org>
1050
1051         * http.c (http_wait_response): Implement new flag to inhibit the
1052         TCP shutdown.
1053
1054 2001-04-20  Werner Koch  <wk@gnupg.org>
1055
1056         * http.c (http_start_data): Use write_server and not the iobuf
1057         stuff.  I wonder why we are at all using write_server - shouldn't
1058         it be handled by iobuf?
1059
1060         * strgutil.c (set_native_charset): Allow utf-8 by introducing the
1061         new no_translation variable.
1062         (native_to_utf8): Handle no_translation.
1063         (utf8_to_native): Ditto.
1064
1065 2001-04-19  Werner Koch  <wk@gnupg.org>
1066
1067         * miscutil.c (asctimestamp): Handle negative times.  We must do
1068         this because Windoze segvs on negative times passed to gmtime().
1069         (strtimestamp): Ditto.
1070
1071 2001-04-14  Werner Koch  <wk@gnupg.org>
1072
1073         * strgutil.c (utf8_to_native): Fixed a segv.  Thanks to Keith Clayton.
1074
1075 2001-04-13  Werner Koch  <wk@gnupg.org>
1076
1077         * iobuf.c (iobuf_fopen): Removed because it is not used and
1078         furthermore mode is ignored for an fname of "-".  Suggested by
1079         Florian Weimer.
1080
1081 2001-04-02  Werner Koch  <wk@gnupg.org>
1082
1083         * iobuf.c (translate_file_handle): New. Use this function
1084         everywhere in this file.
1085         (iobuf_translate_file_handle): Always use the osfhandle stuff here
1086         because callers don't know the implementation details of iobuf and
1087         they expect that the handles are translated. 
1088
1089 2001-03-29  Werner Koch  <wk@gnupg.org>
1090
1091         * miscutil.c (answer_is_yes): An empty string does now return no.
1092         (answer_is_yes_no_quit): Likewise.
1093
1094         * iobuf.c (iobuf_close): Burn the buffers.
1095
1096 2001-03-26  Werner Koch  <wk@gnupg.org>
1097
1098         * ttyio.c: Define TERMDEVICE depending on OS.
1099
1100         * http.c (http_start_data): send a CRLF and not just a LF.
1101         Pointed out by Steven Murdoch.
1102
1103 2001-03-13  Werner Koch  <wk@gnupg.org>
1104
1105         * iobuf.c (iobuf_sockopen): New.
1106         (sock_filter) [__MINGW32__]: New.
1107         (iobuf_ioctl): New.
1108         (file_filter): Implemented keep_open mode.
1109         * http.c (http_open, http_wait_response): Replaced iobuf_fdopen by
1110         iobuf_sockopen and use an iobuf_ioctl to avoid the dup().
1111         (deinit_sockets, init_sockets) [__MINGW32__]: New.
1112         (connect_server, write_server): Add code to work with W32 sockets.
1113
1114 2001-03-12  Werner Koch  <wk@gnupg.org>
1115
1116         * strgutil.c (check_trailing_chars,check_trailing_ws): New.
1117
1118 2001-03-08  Werner Koch  <wk@gnupg.org>
1119
1120         * argparse.c (default_strusage): Changed year of printed copyright
1121         to 2001.
1122
1123         * iobuf.c (fd_cache_invalidate, fd_cache_close, fd_cache_open): New. 
1124         (direct_open): Invalidate the fd_cache for read access.
1125         (file_filter): Cache the close here.
1126         (iobuf_open): Use new my_fopen_ro macro to try the cache first.
1127
1128 2001-03-07  Werner Koch  <wk@gnupg.org>
1129
1130         * iobuf.c: Made the old stdio file handling cpp conditional
1131         controlled by FILE_FILTER_USES_STDIO and added a new
1132         open/read/close based one.  We don't need the stdio buffering
1133         becuase we are doing our own buffering anyway.  And it is a
1134         prerequesite to allow the use of ReadFile et al for W32 which in
1135         turn is needed to make the http stuff work there. The new W32
1136         stuff has also been implemented. Minor changes to all open functions.
1137         (direct_open): New.
1138         (file_filter): Core of the new read/write handling.
1139         (iobuf_get_filelength): Use W32 API function here. But it is
1140         currently limited to 2GB files.
1141         (iobuf_seek): Ditto.
1142
1143 2001-03-01  Werner Koch  <wk@gnupg.org>
1144
1145         * errors.c (g10_errstr): New codes UNU_SECKEY and UNU_PUBKEY.
1146
1147 2000-12-28  Werner Koch  <wk@gnupg.org>
1148
1149         * dotlock.c: Made all_lockfiles volatile.
1150         (remove_lockfiles): Made public.
1151
1152 2000-11-30  Werner Koch  <wk@gnupg.org>
1153
1154         * iobuf.c (iobuf_translate_file_handle): New.
1155         (iobuf_open, iobuf_create): Use it for special filenames
1156
1157 2000-11-11  Paul Eggert  <eggert@twinsun.com>
1158
1159         * iobuf.c (iobuf_get_filelength): Now returns off_t, not u32.
1160         Remove kludges to worry about large files; the callers check
1161         for files that are too large, and they should already be doing
1162         the right thing in an implementation-independent way.
1163         (fopen, fstat): Remove macros.
1164
1165         * iobuf.c (iobuf_set_limit, iobuf_tell, iobuf_seek): 
1166         Use off_t, not ulong, for file offsets.
1167         (<limits.h>): Include if needed.
1168         (LONG_MAX, LONG_MIN): Define a substitute if needed.
1169         (fseeko): Define a substitute if needed.
1170
1171         * iobuf.c (iobuf_seek):  Do not use %lu to report file
1172
1173 2000-11-09  Werner Koch  <wk@gnupg.org>
1174
1175         * iobuf.c (iobuf_enable_special_filenames): New.
1176         (check_special_filename): New.
1177         (iobuf_open): check for special filenames.
1178         (iobuf_create): Ditto.
1179
1180 2000-10-23  Werner Koch  <wk@gnupg.org>
1181
1182         * secmem.c (lock_pool): Don't print warning for Windows.
1183
1184 2000-10-16  Werner Koch  <wk@gnupg.org>
1185
1186         * secmem.c (lock_pool): Fixed error checking for Linux.
1187         By James Troup.
1188
1189 Thu Sep 14 14:20:38 CEST 2000  Werner Koch  <wk@openit.de>
1190
1191         * miscutil.c (answer_is_yes_no_quit): Swapped order of yes/no test
1192         so that no is returned for an empty input. By David Champion.
1193
1194 Wed Sep  6 17:55:47 CEST 2000  Werner Koch  <wk@openit.de>
1195
1196         * iobuf.c: Use fopen64 insead of fopen when available.
1197         (iobuf_get_filelength): Use fstat64 when available but return
1198         2^32-1 if the file is larger than this value.
1199
1200 Wed Sep  6 14:59:09 CEST 2000  Werner Koch  <wk@openit.de>
1201
1202         * secmem.c (secmem_realloc): check for failed secmem_malloc.  By
1203         Matt Kraai.
1204
1205         * strgutil.c (utf8_to_native): Fixed null ptr problem.  By
1206         Giampaolo Tomassoni.
1207
1208 Thu Jul 27 10:02:38 CEST 2000  Werner Koch  <wk@openit.de>
1209
1210   * iobuf.c: Use setmode() at several places to set stdin and stdout
1211   to binary mode for MSDOS based systems
1212
1213   * iobuf.c (underflow): Initialize dummy_len to keep memory checker happy.
1214
1215 Fri Jun  9 10:09:52 CEST 2000  Werner Koch  <wk@openit.de>
1216
1217   * ttyio.c: Simulate termios with termios.  By Dave Dykstra.
1218
1219 Thu Jun  8 20:22:00 CEST 2000  Werner Koch  <wk@openit.de>
1220
1221   * secmem.c (lock_pool,secmem_init): Additional check for dropped privs.
1222
1223 Tue May 30 16:37:55 CEST 2000  Werner Koch  <wk@openit.de>
1224
1225   * iobuf.c (iobuf_cancel): Fix for MSDOS.
1226
1227 Fri Apr 14 19:37:08 CEST 2000  Werner Koch  <wk@openit.de>
1228
1229         * dotlock.c (disable_dotlock): New.  Implmented this in the module.
1230
1231 2000-03-09 14:04:22  Werner Koch  (wk@habibti.openit.de)
1232
1233         * argparse.c (default_strusage): Changed year of default copyright.
1234
1235 Tue Mar  7 18:45:31 CET 2000  Werner Koch  <wk@gnupg.de>
1236
1237         * secmem.c (lock_pool): No more warning for QNX. By Sam Roberts.
1238
1239 2000-03-02 15:51:04  Werner Koch  (wk@habibti.gnupg.de)
1240
1241         * ttyio.c (tty_print_utf8_string): Oops.
1242
1243 Thu Mar  2 15:37:46 CET 2000  Werner Koch  <wk@gnupg.de>
1244
1245         * ttyio.c (tty_print_utf8_string2): New to allow a max output size.
1246
1247 Wed Feb 23 10:07:57 CET 2000  Werner Koch  <wk@gnupg.de>
1248
1249         * miscutil.c (asctimestamp): Fix for possible buffer overflow by
1250         large system returned date format string.
1251
1252 Fri Dec 31 14:08:15 CET 1999  Werner Koch  <wk@gnupg.de>
1253
1254         * logger.c (log_inc_errorcount): New.
1255
1256 Sat Dec  4 12:30:28 CET 1999  Werner Koch  <wk@gnupg.de>
1257
1258         * iobuf.c (iobuf_cancel): Broadcast the new Cancel mesaage to all
1259         filters.
1260
1261 Mon Nov 22 11:14:53 CET 1999  Werner Koch  <wk@gnupg.de>
1262
1263         * strgutil.c (strcasecmp): New.
1264
1265         * secmem.c (pool_is_mmapped): Made volatile.
1266
1267 Sat Oct  9 20:34:41 CEST 1999  Werner Koch  <wk@gnupg.de>
1268
1269         * Makefile.am:  Removed libtool.
1270
1271 Fri Oct  8 20:32:01 CEST 1999  Werner Koch  <wk@gnupg.de>
1272
1273         * w32reg.c: New.
1274         * simple-gettext.c: Use the Registry to locate the mo file.
1275
1276         * http.c (send_request): Add support for proxys; suggested by
1277         Walter Hofmann.
1278         (http_open_document): Pass flags to http_open.
1279
1280 Fri Sep 17 12:56:42 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1281
1282
1283         * secmem.c (lock_pool): Check for ENOSYS return my mlock() on
1284         old SCOs.
1285
1286         * ttyio.c (do_get): Replaced #if __MINGW32__ by #ifdef becuase
1287         gcc 2.95.1 assigns a floating point value (0.2) to this macro,
1288         which in turn can't be used in an expression.
1289
1290 Wed Sep 15 16:22:17 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1291
1292
1293         * simple-gettext.c: New.
1294
1295 Wed Sep  1 15:30:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1296
1297
1298         * argparse.c (arg_parse): Add standard options to the dump-options
1299         output.
1300
1301 Tue Aug 31 17:20:44 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1302
1303
1304         * strgutil (utf8_to_native): Implemented.
1305         (check_utf8_string): Removed.
1306
1307         * miscutil.c (make_printable_string): Fixed possible buffer overflow.
1308         (print_utf8_string): New.
1309
1310         * ttyio.c (tty_print_utf8_string): New.
1311
1312 Mon Aug 30 20:38:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1313
1314
1315         * secmem.c (pool_okay): declared volatile.
1316
1317         * miscutil.c (answer_is_yes): Always check for plain "yes".
1318         (answer_is_yes_no_quit): Likewise.
1319
1320         * dotlock.c (create_dotlock): Fixed segv during cleanup.
1321
1322 Mon Jul 12 14:55:34 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1323
1324
1325         * argparse.c (initialize): Init ret_xxx.
1326         (optfile_parse): Remove quotes from arguments.
1327
1328 Wed Jul  7 13:08:40 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1329
1330
1331         * memory.c (membug): Use if either M_DEBUG or M_GUARD is used.
1332
1333         * miscutil.c (scan_isodatestr): New.
1334
1335         * logger.c (g10_log_mpidump): Moved to ../mpi/mpicoder.c
1336         (g10_log_print_prefix): Renamed from print_prefix and made global.
1337
1338         * Makefile.am: Support for libtool.
1339
1340 Thu Jul  1 12:47:31 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1341
1342
1343         * miscutil.c (make_printable_string): New.
1344
1345         * strgutil.c (add_to_strlist2,append_to_strlist2): New.
1346
1347 Tue Jun 29 21:44:25 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1348
1349
1350         * secmem.c (USE_CAPABILITIES): Capabilities support (Remi).
1351
1352 Sat Jun 26 12:15:59 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1353
1354
1355         * dotlock.c (create_dotlock): s/uts/utsbuf/ cause there an Amdahl
1356         system with the name UTS (Dave Dykstra).
1357
1358         * secmem.c (DEFAULT_POOLSIZE): Doubled the size.
1359
1360 Fri Jun 18 00:18:02 CEST 1999 Michael Roth <mroth@nessie.de>
1361
1362         * iobuf.c: file_filter() Detection of EOF on terminals
1363           improved/fixed (see Bug #21).
1364
1365 Mon Jun 14 21:18:54 CEST 1999 Michael Roth <mroth@nessie.de>
1366
1367         * ttyio.c: tty_no_terminal() new.
1368
1369 Sat Jun  5 15:30:33 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1370
1371         * strgutil.c (set_native_charset): Support Latin-2
1372
1373 Tue Jun  1 16:01:46 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1374
1375         * iobuf.c (iobuf_get_real_fname): Made global and now keep a
1376         copy of the name in the iobuf struct.
1377
1378 Mon May 31 19:41:10 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1379
1380         * iobuf.c (file_filter,block_filter): Speed patches (Rémi).
1381
1382 Thu May 27 09:40:55 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1383
1384         * miscutil.c (answer_is_yes_no_quit): New.
1385
1386 Sun May 23 14:20:22 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1387
1388         * dotlock.c: Tweaked to make it compile under mingw32
1389         * http.c: Disabled for mingw32.
1390
1391 Sat May 22 22:47:26 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1392
1393         * logger.c (log_set_logfile): New.
1394
1395 Thu May 20 14:04:08 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1396
1397         * memory.c (membug): Nanu, there was a const instead of a static.
1398
1399         * strgutil.c (trim_trailing_chars): New.
1400
1401 Mon May 17 21:54:43 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1402
1403         * logger.c (g10_log_hexdump): Made 2nd arg a const.
1404
1405 Wed Apr 28 13:03:03 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1406
1407         * miscutil.c (asctimestamp): Use nl_langinfo (Gaël Quéri).
1408
1409 Sun Apr 18 10:11:28 CEST 1999  Werner Koch  <wk@isil.d.shuttle.de>
1410
1411         * argparse.c (store_alias): Disabled becuase it is not used.
1412
1413         * ttyio.c (tty_batchmode): New
1414
1415 Sat Mar 20 11:44:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1416
1417         * http.c: Swapped to includes.
1418
1419 Tue Mar  2 16:44:57 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1420
1421         * strgutil.c (get_native_charset): New.
1422
1423 Fri Feb 26 17:55:41 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1424
1425         * secmem.c (memblock_struct): Force align (Rémi Guyomarch)
1426
1427 Wed Feb 24 11:07:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1428
1429         * iobuf.c (block_filter): Fixed the oscillating partial packet chunks.
1430
1431 Fri Feb 19 15:49:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1432
1433         * iobuf.c (iobuf_push_filter2): New to allow transer of context
1434         ownership to the iobuf. Released the context where needed.
1435
1436 Tue Feb 16 14:10:02 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1437
1438         * strgutil.c (add_to_strglist): Clear the new flags field
1439         (append_to_strglist): Ditto.
1440
1441         * dotlock.c (read_lockfile): terminate pidstr (Michael).
1442
1443 Wed Feb 10 17:15:39 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1444
1445         * dotlock.c (remove_lockfiles): Add cleanup function.
1446         (make_dotlock): Add deadlock check.
1447
1448         * secmem.c (secmem_malloc): Changed error message.
1449
1450 Wed Jan 20 21:40:21 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1451
1452         * http.c (http_wait_response): Moved the shutdown behind the dup
1453
1454 Wed Jan 20 18:59:49 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1455
1456         * http.c (send_request): Removed double LF
1457
1458 Tue Jan 19 19:34:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1459
1460         * * iobuf.c (iobuf_push_filter): Allow filters for temp streams
1461
1462         (iobuf_write_temp): Ditto.
1463         (iobuf_flush_temp): New.
1464         (iobuf_unget_and_close_temp): Removed.
1465
1466         * http.c (close_http_document): Renamed to http_close().
1467         (open_http_document): Renamed to http_open_document().
1468         (http_open): New.
1469         (http_start_data): New.
1470         (http_wait_response): New.
1471
1472
1473 Sun Jan 17 11:04:33 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1474
1475         * strgutil.c (trim_trailing_ws): New.
1476
1477 Sat Jan 16 12:03:27 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1478
1479         * http.c (connect_server): Fixed stupid bug.
1480
1481 Sat Jan 16 09:27:30 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1482
1483         * http.c: New
1484
1485
1486 Wed Jan 13 14:10:15 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1487
1488         * iobuf.c (iobuf_fdopen): New.
1489
1490 Sat Jan  9 16:02:23 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1491
1492         * secmem.c (lock_pool): add another check that setuid() worked.
1493         (secmem_init): Ditto.
1494
1495 Thu Jan  7 18:00:58 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1496
1497         * iobuf.c (iobuf_clear_eof): Removed.
1498         (underflow): Changed the eof handling.
1499         (iobuf_pop_filter): Made static and renamed to pop_filter.
1500
1501         * iobuf.c (iobuf_read_line): New.
1502
1503 Sun Jan  3 15:28:44 CET 1999  Werner Koch  <wk@isil.d.shuttle.de>
1504
1505         * dotlock.c (make_dotlock): print another informal message.
1506
1507         (make_dotlock): Removed the cpp checks.
1508
1509
1510 Tue Dec 29 14:41:47 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1511
1512         * secmem.c: Moved unistd.h out of the #ifdef
1513
1514         * dotlock.c (make_dotlock): Sun has no SYS_NMLN
1515
1516         * iobuf.c (iobuf_unget_and_close_temp): Reset .start
1517
1518 Sat Dec 12 18:40:32 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1519
1520         * argparse.c (arg_pars): fixed opts[i] with negative index.
1521
1522 Fri Nov 27 21:37:41 CET 1998  Werner Koch  <wk@isil.d.shuttle.de>
1523
1524         * dotlock.c: Implemented
1525
1526 Wed Nov 25 11:30:07 1998  Werner Koch  (wk@isil.d.shuttle.de)
1527
1528         * iobuf.c (iobuf_pop_filter): Fixed sigsegv after error.
1529
1530 Thu Nov 19 07:09:55 1998  Werner Koch  <werner.koch@guug.de>
1531
1532         * miscutil.c (strtimevalue): New.
1533
1534 Tue Nov 10 10:01:53 1998  Werner Koch  (wk@isil.d.shuttle.de)
1535
1536         * strgutil.c (set_native_charset): New.
1537         (native_to_utf8): Now handles koi8-r.
1538
1539 Tue Nov  3 16:17:56 1998  Werner Koch  (wk@isil.d.shuttle.de)
1540
1541         * strgutil.c (native_to_utf8): New.
1542         (utf8_to_native): New, but only as a stub.
1543
1544         * argparse.c (optfile_parse): Trimmed spaces from args.
1545
1546
1547 Wed Oct 28 08:01:49 1998  me,,,  (wk@tobold)
1548
1549         * argparse.c (find_long_option): New.
1550         (arg_parse): option=value is now allowed. Add a new internal
1551         option "--dump-options".
1552
1553 Thu Oct 22 16:25:49 1998  Michael Roth  (mroth@nessie.de)
1554
1555         * fileutil.c (make_basename): New.
1556         (make_dirname): New.
1557
1558 Wed Oct 21 12:20:29 1998  Werner Koch  (wk@isil.d.shuttle.de)
1559
1560         * util.c (iobuf_flush): autoincreasing of a temp. iobuf
1561         (iobuf_temp_with_content): New.
1562
1563 Tue Oct 13 12:40:13 1998  Werner Koch  (wk@isil.d.shuttle.de)
1564
1565         * util.c (.nofast): set this variable
1566
1567 Wed Oct  7 19:27:50 1998  Werner Koch  (wk@isil.d.shuttle.de)
1568
1569         * memory.c (m_print_stats): New.
1570
1571 Tue Oct  6 09:53:56 1998  Werner Koch  (wk@isil.d.shuttle.de)
1572
1573         * strgutil.c (memicmp): Add HAVE_MEMICMP.
1574
1575 Mon Sep 21 19:45:01 1998  Werner Koch  (wk@(none))
1576
1577         * secmem.c: New flags to allow suspend/resume of warnings.
1578
1579 Fri Sep 18 16:25:47 1998  Werner Koch  (wk@(none))
1580
1581         * secmem.c (lock_pool): Kludge for broken mlock on HPUX 10.20
1582
1583 Tue Sep 15 17:52:21 1998  Werner Koch  (wk@(none))
1584
1585         * miscutil.c (asctimestamp): New.
1586
1587 Mon Sep 14 09:38:18 1998  Werner Koch  (wk@(none))
1588
1589         * secmem.c (init_pool): Now mmaps /dev/zero if we do not have MAP_ANON.
1590
1591 Wed Sep  9 13:52:28 1998  Werner Koch  (wk@(none))
1592
1593         * ttyio.c (do_get): Ctrl-D is now a valid but special character
1594
1595 Mon Sep  7 13:52:41 1998  Werner Koch  (wk@(none))
1596
1597         * iobuf.c (get_real_fname): New and changed file_filter datastructures
1598         and their initialization.
1599
1600 Tue Aug 11 15:12:35 1998  Werner Koch  (wk@(none))
1601
1602         * miscutil.c (answer_is_yes): i18ned
1603
1604 Sat Aug  8 18:35:00 1998  Werner Koch  (wk@(none))
1605
1606         * ttyio.c (cleanup): New.
1607
1608 Mon Aug  3 17:06:00 1998  Werner Koch  (wk@(none))
1609
1610         * secmem.c (MAP_ANON): Add a macro test
1611
1612 Wed Jul 29 14:53:34 1998  Werner Koch  (wk@(none))
1613
1614         * ttyio.c (tty_get_answer_is_yes): New.
1615
1616 Tue Jul 21 10:35:48 1998  Werner Koch  (wk@(none))
1617
1618         * argparse.c: New option flag to distinguish options and commands.
1619
1620 Sat Jul 18 19:49:30 1998  Werner Koch  (wk@(none))
1621
1622         * argparse.c (arg_parse): Added -? as alias for -h
1623
1624 Thu Jul  9 14:47:20 1998  Werner Koch  (wk@isil.d.shuttle.de)
1625
1626         * secmem.c (secmem_init): Drops setuid if called with 0.
1627
1628 Tue Jul  7 11:49:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
1629
1630         * logger.c (log_set_filename): New.
1631
1632 Mon Jul  6 09:03:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
1633
1634         * strgutil.c (append_to_strlist): New.
1635
1636 Thu Jul  2 15:55:44 1998  Werner Koch  (wk@isil.d.shuttle.de)
1637
1638         * iobuf.c (block_filter): Add writing of OP partial length headers.
1639
1640 Fri Jun 26 10:38:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
1641
1642         * ttyio.c (do_get): all iso8859-1 characters are now allowed.
1643
1644 Thu Jun 25 15:57:21 1998  Werner Koch  (wk@isil.d.shuttle.de)
1645
1646         * secmem.c (lock_pool): Removed left over test code.
1647
1648 Wed Jun 10 07:39:41 1998  Werner Koch,mobil,,,  (wk@tobold)
1649
1650         * fileutil.c (compare_filenames): New.
1651
1652         * argparse.c (arg_parse): New flag bit 6 to ignore --version
1653
1654 Thu May 14 16:45:13 1998  Werner Koch  (wk@isil.d.shuttle.de)
1655
1656         * argparse.c (show_help): Add some formatting stuff
1657
1658 Fri May  8 17:06:49 1998  Werner Koch  (wk@isil.d.shuttle.de)
1659
1660         * errors.c (strerror): New if !HAVE_STRERROR
1661
1662 Mon May  4 19:48:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1663
1664         * iobuf.c (iobuf_read): Code is now faster.
1665         * (iobuf_write): ditto.
1666
1667 Mon Apr 27 11:01:32 1998  Werner Koch  (wk@isil.d.shuttle.de)
1668
1669         * strgutil.c (memicmp): New.
1670
1671 Thu Mar 19 11:29:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1672
1673         * strgutil.c (memistr): Add const to return and first arg.
1674
1675 Sat Mar  7 11:54:35 1998  Werner Koch  (wk@isil.d.shuttle.de)
1676
1677         * miscutil.c (print_string): New arg delim; changed all callers.
1678
1679 Thu Mar  5 12:19:30 1998  Werner Koch  (wk@isil.d.shuttle.de)
1680
1681         * errors.c: New strings.
1682
1683 Thu Mar  5 12:06:31 1998  Werner Koch  (wk@isil.d.shuttle.de)
1684
1685         * iobuf.c (iobuf_open): A name of "-" now opens stdin.
1686         * fileutil.c (print_fname_stdout, print_fname_stdin): New.
1687
1688 Fri Feb 27 10:20:03 1998  Werner Koch  (wk@isil.d.shuttle.de)
1689
1690         * memory.c (m_is_secure): Removed.
1691         * secmem.c (m_is_secure): Moved to here.
1692
1693         * secmem.c (secmem_realloc): New.
1694         * memory.c (M_GUARD,EXTRA_ALIGN): New (all functions).
1695
1696 Thu Feb 26 14:36:51 1998  Werner Koch  (wk@isil.d.shuttle.de)
1697
1698         * secmem.c (lock_pool): No error if EAGAIN is returned instead
1699         of EPERM.
1700
1701 Fri Feb 20 17:43:05 1998  Werner Koch  (wk@isil.d.shuttle.de)
1702
1703         * ttyio.c [MINGW32]: Add support for mingw32.
1704
1705 Tue Feb 17 19:43:44 1998  Werner Koch  (wk@isil.d.shuttle.de)
1706
1707         * memory.c (dump_table_at_exit): New.
1708
1709 Mon Feb 16 10:07:28 1998  Werner Koch  (wk@isil.d.shuttle.de)
1710
1711         * argparse.c (show_version, show_help, default_strusage): Changed
1712         according to GNU standards.
1713
1714 Mon Feb 16 08:58:25 1998  Werner Koch  (wk@isil.d.shuttle.de)
1715
1716         * iobuf.c (iobuf_peek): New
1717
1718 Fri Feb 13 19:34:59 1998  Werner Koch  (wk@isil.d.shuttle.de)
1719
1720         * iobuf.c (iobuf_seek): Set counters to new offset.
1721
1722 Fri Feb 13 17:13:04 1998  Werner Koch  (wk@isil.d.shuttle.de)
1723
1724         * logger.c (log_set_name, log_get_name): New.
1725         (print_prefix, pgm_name): New, changed all function to make use it.
1726         (log_mpidump): Removed the "DBG" prefix.
1727         (log_hexdump): Ditto.
1728
1729         * logger.c (printstr): Removed.
1730
1731 Fri Feb 13 15:14:13 1998  Werner Koch  (wk@isil.d.shuttle.de)
1732
1733         * argparse.c (show_help): New '\v' kludge.
1734
1735
1736
1737  Copyright 1998, 1999, 2000, 2001, 2002, 2003, 2004,
1738            2005 Free Software Foundation, Inc.
1739
1740  This file is free software; as a special exception the author gives
1741  unlimited permission to copy and/or distribute it, with or without
1742  modifications, as long as this notice is preserved.
1743
1744  This file is distributed in the hope that it will be useful, but
1745  WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
1746  implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1747
1748