mirror of
git://git.gnupg.org/gnupg.git
synced 2024-11-04 20:38:50 +01:00
116bef5e04
Werner on stable branch.
1081 lines
32 KiB
Plaintext
1081 lines
32 KiB
Plaintext
2002-11-13 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* secmem.c (lock_pool) [__CYGWIN__]: Don't print secmem warning.
|
||
From Werner on stable branch.
|
||
|
||
2002-11-09 Werner Koch <wk@gnupg.org>
|
||
|
||
* ttyio.c (TERMDEVICE): Removed.
|
||
(tty_get_ttyname): New.
|
||
(init_ttyfp): Use it here instead of the TERMDEVICE macro.
|
||
|
||
2002-11-06 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* w32reg.c (read_w32_registry_string): Fixed expanding of the
|
||
environment buffer; didn't worked at all. Reported by Thijmen
|
||
Klok. From Werner on stable branch.
|
||
|
||
* secmem.c (secmem_free, secmem_term): Use wipememory2() instead
|
||
of memset() to overwrite secure memory
|
||
|
||
* iobuf.c (direct_open): Handle mode 'b' if O_BINARY is available.
|
||
From Werner on stable branch.
|
||
|
||
* fileutil.c: Comment from stable branch.
|
||
|
||
2002-10-31 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* riscos.c (riscos_load_module, riscos_check_regexp): New.
|
||
(riscos_set_filetype_by_mimetype, riscos_dump_fdlist)
|
||
(riscos_fdopenfile, riscos_close_fds, riscos_renamefile)
|
||
(riscos_gstrans, riscos_list_openfiles, riscos_not_implemented):
|
||
Renamed functions to contain riscos prefix.
|
||
* dotlock.c [__riscos__]: Renames due to changes in riscos.c.
|
||
* fileutil.c [__riscos__]: Likewise.
|
||
|
||
2002-10-29 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* fileutil.c: Removed unnecessary left-over includes for RISC OS.
|
||
(make_filename): Tidied up RISC OS stuff.
|
||
(compare_filenames) [__riscos__]: Compare with ascii_strcasecmp().
|
||
(make_basename) [__riscos__]: Branch to own RISC OS routine from
|
||
here.
|
||
|
||
* riscos.c (riscos_make_basename): New.
|
||
|
||
2002-10-28 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* fileutil.c (make_basename) [__riscos__]: Cut off RISC OS' filing
|
||
systems from filepath.
|
||
|
||
* riscos.c (riscos_get_filetype_from_string, riscos_get_filetype):
|
||
Added.
|
||
(riscos_set_filetype_by_number): Made public.
|
||
|
||
2002-10-19 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* Makefile.am, regcomp.c, regex.c, regex_internal.c,
|
||
regex_internal.h, regexec.c: Add new regex files from glibc 2.3.1.
|
||
|
||
2002-10-17 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* http.c (connect_server): Try all A records for names with
|
||
multiple addresses until one answers for both MINGW32 and not
|
||
MINGW32.
|
||
|
||
2002-10-10 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* http.c (connect_server): Properly handle a single A record that
|
||
fails connect().
|
||
|
||
2002-10-03 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* logger.c (g10_log_warning, log_set_strict): Add new log_warning
|
||
logger command which can be switched between log_info and
|
||
log_error via log_set_strict.
|
||
|
||
2002-09-24 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* http.c (connect_server): Try all A records for names with
|
||
multiple addresses until one answers (not MINGW32).
|
||
|
||
2002-09-16 Werner Koch <wk@gnupg.org>
|
||
|
||
* w32reg.c (read_w32_registry_string): Fallback to HLM.
|
||
|
||
2002-09-12 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* fileutil.c (make_filename): Removed variable for RISC OS to
|
||
avoid compiler warning.
|
||
|
||
* secmem.c: Removed static variable for RISC OS to avoid
|
||
compiler warning.
|
||
|
||
2002-09-11 Werner Koch <wk@gnupg.org>
|
||
|
||
* simple-gettext.c: Disable charset mappings. We do it now when
|
||
installing the files.
|
||
|
||
2002-09-09 Werner Koch <wk@gnupg.org>
|
||
|
||
* w32reg.c (read_w32_registry_string): Handle REG_EXPAND_SZ.
|
||
Suggested by Ryan Malayter.
|
||
|
||
* strgutil.c (ascii_strcasecmp): Replaced by code from gnulib.
|
||
(ascii_strncasecmp): New.
|
||
|
||
2002-09-02 Werner Koch <wk@gnupg.org>
|
||
|
||
* simple-gettext.c (set_gettext_file): Make sure that we only use
|
||
backslashes.
|
||
|
||
* strgutil.c (set_native_charset): Allow NULL as argument to use
|
||
nl_langinfo for selection. Mapped latin-15 to latin-1.
|
||
|
||
2002-08-30 Werner Koch <wk@gnupg.org>
|
||
|
||
* iobuf.c (block_filter): Removed the assert, so that one can pass
|
||
the first character of a message and use the block filter for
|
||
non partial length encoded packets.
|
||
|
||
2002-08-06 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* ttyio.c [__riscos__]: Moved low-level RISC OS stuff to riscos.c.
|
||
* riscos.c: Use new SWI calling mechanism of UnixLib.
|
||
|
||
2002-08-03 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* secmem.c (init_pool, secmem_term): Changed #if to #ifdef in
|
||
order to avoid warning with RISC OS' Norcroft C.
|
||
|
||
2002-07-25 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* secmem.c: "Warning" -> "WARNING"
|
||
|
||
2002-07-05 Werner Koch <wk@gnupg.org>
|
||
|
||
* argparse.c (initialize): We better exit after a read error so
|
||
that we don't run into an endless loop when reading a directory.
|
||
Noted by Andrew Suffield.
|
||
|
||
2002-07-01 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* argparse.c (optfile_parse): Fix variable typo - 'p2' should be
|
||
'p' :)
|
||
|
||
2002-06-29 Werner Koch <wk@gnupg.org>
|
||
|
||
* argparse.c (optfile_parse): Renamed an auto I to P2 to avoid
|
||
shadowing warning.
|
||
|
||
2002-06-21 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* riscos.c (riscos_global_defaults): New.
|
||
|
||
2002-06-20 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* riscos.c (riscos_set_filetype_by_number, riscos_set_filetype):
|
||
New. Set RISC OS filetype according to MIME type.
|
||
|
||
2002-06-14 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* strgutil.c (pop_strlist): New function to pop the head off of a
|
||
strlist.
|
||
|
||
2002-06-05 Timo Schulz <ts@winpt.org>
|
||
|
||
* fileutil.c (is_file_compressed): Corrected the magic values
|
||
for bzip2 and gzip. Noted by David.
|
||
|
||
2002-05-22 Werner Koch <wk@gnupg.org>
|
||
|
||
* fileutil.c (compare_filenames): Replaced stricmp by strcasecmp.
|
||
* miscutil.c (answer_is_yes_no_quit,answer_is_yes_no_default): Ditto.
|
||
|
||
* strgutil.c (strncasecmp): New.
|
||
(memicmp): Removed.
|
||
|
||
2002-05-10 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* memory.c (add_entry) [M_DEBUG]: Added some missing EXTRA_ALIGN.
|
||
(free_entry) [M_DEBUG]: Free secure memory via secmem_free.
|
||
(alloc_secure): Malloc at least 1 byte.
|
||
(realloc) [M_GUARD]: Added missing FNAMEARG to function call.
|
||
|
||
* logger.c (g10_log_bug0) [__riscos__]: Make use of first
|
||
g10_log_bug0 function for later Norcroft compiler.
|
||
|
||
* riscos.c: Added stdlib.h include.
|
||
|
||
2002-05-04 Werner Koch <wk@gnupg.org>
|
||
|
||
* http.c (write_server) [__MINGW32__]: Replaced WriteFile by send
|
||
because sockets don't work with WriteFile under NT anymore.
|
||
|
||
2002-05-03 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* argparse.c (optfile_parse): Remove quotes only if they totally
|
||
enclose the string, and do not occur within the string. This
|
||
makes specifying a program under Win32 easier when you need quotes
|
||
around part of a string, but not around the whole string.
|
||
|
||
2002-05-02 Werner Koch <wk@gnupg.org>
|
||
|
||
* memory.c (alloc): Malloc at least 1 byte. Noted by Winona Brown.
|
||
|
||
2002-04-23 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* miscutil.c: New function answer_is_yes_no_default() to give a
|
||
default answer.
|
||
|
||
2002-04-22 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* riscos.c (riscos_open, riscos_fopen, riscos_fstat, set_filetype):
|
||
Removed as they're not needed anymore.
|
||
|
||
* iobuf.c (direct_open) [__riscos__]: Don't allow opening of
|
||
directories.
|
||
|
||
2002-04-08 Werner Koch <wk@gnupg.org>
|
||
|
||
Fixed filename of last entry.
|
||
|
||
2002-03-29 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* miscutil.c (print_string, utf8_to_native): If a delimiter is
|
||
used, then quote the backslash character as well. Problem noted
|
||
by Rainer Perske.
|
||
|
||
2002-03-15 Werner Koch <wk@gnupg.org>
|
||
|
||
* argparse.c (optfile_parse): Fixed missing argument handling.
|
||
|
||
2002-02-28 Timo Schulz <ts@winpt.org>
|
||
|
||
* http.c (write_server): Convert integer to a HANDLE for W32.
|
||
|
||
2002-01-27 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* iobuf.c (iobuf_fdopen, iobuf_sockopen): Do not cache fdopened
|
||
fds on close.
|
||
|
||
2002-01-08 Werner Koch <wk@gnupg.org>
|
||
|
||
* secmem.c (print_warn): Print a pointer to the FAQ.
|
||
|
||
2002-01-05 Werner Koch <wk@gnupg.org>
|
||
|
||
* argparse.c (default_strusage): Set default copyright date to 2002.
|
||
|
||
2002-01-02 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* iobuf.c [__riscos__]: Updated include file name.
|
||
|
||
* fileutil.c [__riscos__]: Ditto.
|
||
|
||
* ttyio.d [__riscos__]: Ditto.
|
||
|
||
* riscos.c [__riscos__]: Ditto. Added debugging code and
|
||
unified error messages.
|
||
|
||
2001-12-27 David Shaw <dshaw@jabberwocky.com>
|
||
|
||
* errors.c (g10_errstr): Added G10ERR_KEYSERVER
|
||
|
||
2001-12-27 Werner Koch <wk@gnupg.org>
|
||
|
||
* simple-gettext.c [MINGW32]: Fixed last changed.
|
||
|
||
2001-12-22 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* memory.c (realloc): Fixed realloc not working when M_GUARD is
|
||
defined and first parameter is NULL.
|
||
|
||
2001-12-22 Timo Schulz <ts@winpt.org>
|
||
|
||
* fileutil.c (is_file_compressed): New.
|
||
|
||
2001-12-19 Werner Koch <wk@gnupg.org>
|
||
|
||
* simple-gettext.c, w32reg.c [CYGWIN32]: Allow to use this file
|
||
|
||
2001-10-11 Werner Koch <wk@gnupg.org>
|
||
|
||
* http.c (do_parse_uri): Changed initialization of the port number
|
||
so that it does also work with x-hkp. By David Shaw.
|
||
|
||
2001-09-19 Werner Koch <wk@gnupg.org>
|
||
|
||
* w32reg.c (get_root_key): New.
|
||
(read_w32_registry_string): Use it here.
|
||
(write_w32_registry_string): New. Contributed by Timo.
|
||
|
||
* iobuf.c (iobuf_ioctl): New command to disable fd
|
||
caching. Implemented no_cache flag where needed.
|
||
(iobuf_sockopen): Always set no_cache flag.
|
||
|
||
* strgutil.c (utf8_to_native): Add a delim arg and changed all
|
||
callers. Make sure that quoting is done when translation is
|
||
disabled.
|
||
* miscutil.c (print_utf8_string2): New.
|
||
|
||
2001-09-17 Werner Koch <wk@gnupg.org>
|
||
|
||
* miscutil.c (print_string): Use explicit ranges and not iscntrl().
|
||
(make_printable_string): Ditto.
|
||
|
||
2001-09-07 Werner Koch <wk@gnupg.org>
|
||
|
||
* strgutil.c (strsep): New, taken from glibc 2.2.1.
|
||
|
||
2001-09-03 Werner Koch <wk@gnupg.org>
|
||
|
||
* miscutil.c (strtimestamp,asctimestamp): Avoid trigraphs.
|
||
|
||
2001-08-21 Stefan Bellon <sbellon@sbellon.de>
|
||
|
||
* riscos.c [__riscos__] (close_fds): Fixed possible endless loop.
|
||
|
||
2001-08-20 Werner Koch <wk@gnupg.org>
|
||
|
||
Applied patches from Stefan Bellon <sbellon@sbellon.de> to support
|
||
RISC OS. Nearly all of these patches are identified by the
|
||
__riscos__ macro.
|
||
* secmem.c [__riscos__]: Disabled secure memory stuff.
|
||
* dotlock.c, ttyio.c [__riscos__]: Adapted for RISC OS
|
||
* fileutil.c, iobuf.c: Adapted for RISC OS; mainly replaced
|
||
hardcoded path separators with EXTSEP_S like macros.
|
||
* http.c (send_request): Use macros for the env-var name.
|
||
* logger.c [__riscos__]: Do an fflush at the end of each log
|
||
function.
|
||
* memory.c [__riscos__]: Minor patches
|
||
* riscos.c (set_filetype): New.
|
||
|
||
* secmem.c (lock_pool): Under HPUX mlock is broken but we might
|
||
have plock, so we use this to lock the entire process. By Albert
|
||
Chin.
|
||
|
||
2001-07-03 Werner Koch <wk@gnupg.org>
|
||
|
||
* strgutil.c (utf8_to_native): Fixed printing of invalid utf-8
|
||
characters. Thomas Roessler reported that the escaping didn't work
|
||
correct.
|
||
|
||
2001-06-12 Werner Koch <wk@gnupg.org>
|
||
|
||
* strgutil.c (ascii_memistr,ascii_isupper,ascii_islower,
|
||
ascii_toupper,ascii_tolower, ascii_strcasecmp, ascii_memcasecmp): New.
|
||
(set_native_charset): Use ascii_strcasecmp()
|
||
* fileutil.c (compare_filenames): Ditto
|
||
* miscutil.c (answer_is_yes): Ditto.
|
||
(answer_is_yes_no_quit): Ditto.
|
||
|
||
2001-06-06 Werner Koch <wk@gnupg.org>
|
||
|
||
* strgutil.c (vasprintf) [__MINGW32__]: New. Taken from libiberty.
|
||
* ttyio.c (tty_printf) [__MINGW32__]: Replaced the sprintf with
|
||
the new vasprintf.
|
||
|
||
2001-06-05 Werner Koch <wk@gnupg.org>
|
||
|
||
* dotlock.c (make_dotlock): Typo fixes.
|
||
|
||
2001-05-25 Werner Koch <wk@gnupg.org>
|
||
|
||
* ttyio.c (do_get): Fixed a serious format string bug. Thanks to
|
||
fish stiqz.
|
||
|
||
2001-05-23 Werner Koch <wk@gnupg.org>
|
||
|
||
* secmem.c (EPERM): Try to work around a Slackware problem.
|
||
|
||
2001-05-05 Werner Koch <wk@gnupg.org>
|
||
|
||
* http.c (http_start_data): Flush before writing.
|
||
(http_wait_response): No need to flush here.
|
||
|
||
2001-04-27 Werner Koch <wk@gnupg.org>
|
||
|
||
* memory.c (out_of_core): Print an explanation on reasons why
|
||
secret memory can get exhausted.
|
||
|
||
2001-04-23 Werner Koch <wk@gnupg.org>
|
||
|
||
* http.c (http_wait_response): Implement new flag to inhibit the
|
||
TCP shutdown.
|
||
|
||
2001-04-20 Werner Koch <wk@gnupg.org>
|
||
|
||
* http.c (http_start_data): Use write_server and not the iobuf
|
||
stuff. I wonder why we are at all using write_server - shouldn't
|
||
it be handled by iobuf?
|
||
|
||
* strgutil.c (set_native_charset): Allow utf-8 by introducing the
|
||
new no_translation variable.
|
||
(native_to_utf8): Handle no_translation.
|
||
(utf8_to_native): Ditto.
|
||
|
||
2001-04-19 Werner Koch <wk@gnupg.org>
|
||
|
||
* miscutil.c (asctimestamp): Handle negative times. We must do
|
||
this because Windoze segvs on negative times passed to gmtime().
|
||
(strtimestamp): Ditto.
|
||
|
||
2001-04-14 Werner Koch <wk@gnupg.org>
|
||
|
||
* strgutil.c (utf8_to_native): Fixed a segv. Thanks to Keith Clayton.
|
||
|
||
2001-04-13 Werner Koch <wk@gnupg.org>
|
||
|
||
* iobuf.c (iobuf_fopen): Removed because it is not used and
|
||
furthermore mode is ignored for an fname of "-". Suggested by
|
||
Florian Weimer.
|
||
|
||
2001-04-02 Werner Koch <wk@gnupg.org>
|
||
|
||
* iobuf.c (translate_file_handle): New. Use this function
|
||
everywhere in this file.
|
||
(iobuf_translate_file_handle): Always use the osfhandle stuff here
|
||
because callers don't know the implementation details of iobuf and
|
||
they expect that the handles are translated.
|
||
|
||
2001-03-29 Werner Koch <wk@gnupg.org>
|
||
|
||
* miscutil.c (answer_is_yes): An empty string does now return no.
|
||
(answer_is_yes_no_quit): Likewise.
|
||
|
||
* iobuf.c (iobuf_close): Burn the buffers.
|
||
|
||
2001-03-26 Werner Koch <wk@gnupg.org>
|
||
|
||
* ttyio.c: Define TERMDEVICE depending on OS.
|
||
|
||
* http.c (http_start_data): send a CRLF and not just a LF.
|
||
Pointed out by Steven Murdoch.
|
||
|
||
2001-03-13 Werner Koch <wk@gnupg.org>
|
||
|
||
* iobuf.c (iobuf_sockopen): New.
|
||
(sock_filter) [__MINGW32__]: New.
|
||
(iobuf_ioctl): New.
|
||
(file_filter): Implemented keep_open mode.
|
||
* http.c (http_open, http_wait_response): Replaced iobuf_fdopen by
|
||
iobuf_sockopen and use an iobuf_ioctl to avoid the dup().
|
||
(deinit_sockets, init_sockets) [__MINGW32__]: New.
|
||
(connect_server, write_server): Add code to work with W32 sockets.
|
||
|
||
2001-03-12 Werner Koch <wk@gnupg.org>
|
||
|
||
* strgutil.c (check_trailing_chars,check_trailing_ws): New.
|
||
|
||
2001-03-08 Werner Koch <wk@gnupg.org>
|
||
|
||
* argparse.c (default_strusage): Changed year of printed copyright
|
||
to 2001.
|
||
|
||
* iobuf.c (fd_cache_invalidate, fd_cache_close, fd_cache_open): New.
|
||
(direct_open): Invalidate the fd_cache for read access.
|
||
(file_filter): Cache the close here.
|
||
(iobuf_open): Use new my_fopen_ro macro to try the cache first.
|
||
|
||
2001-03-07 Werner Koch <wk@gnupg.org>
|
||
|
||
* iobuf.c: Made the old stdio file handling cpp conditional
|
||
controlled by FILE_FILTER_USES_STDIO and added a new
|
||
open/read/close based one. We don't need the stdio buffering
|
||
becuase we are doing our own buffering anyway. And it is a
|
||
prerequesite to allow the use of ReadFile et al for W32 which in
|
||
turn is needed to make the http stuff work there. The new W32
|
||
stuff has also been implemented. Minor changes to all open functions.
|
||
(direct_open): New.
|
||
(file_filter): Core of the new read/write handling.
|
||
(iobuf_get_filelength): Use W32 API function here. But it is
|
||
currently limited to 2GB files.
|
||
(iobuf_seek): Ditto.
|
||
|
||
2001-03-01 Werner Koch <wk@gnupg.org>
|
||
|
||
* errors.c (g10_errstr): New codes UNU_SECKEY and UNU_PUBKEY.
|
||
|
||
2000-12-28 Werner Koch <wk@gnupg.org>
|
||
|
||
* dotlock.c: Made all_lockfiles volatile.
|
||
(remove_lockfiles): Made public.
|
||
|
||
2000-11-30 Werner Koch <wk@gnupg.org>
|
||
|
||
* iobuf.c (iobuf_translate_file_handle): New.
|
||
(iobuf_open, iobuf_create): Use it for special filenames
|
||
|
||
2000-11-11 Paul Eggert <eggert@twinsun.com>
|
||
|
||
* iobuf.c (iobuf_get_filelength): Now returns off_t, not u32.
|
||
Remove kludges to worry about large files; the callers check
|
||
for files that are too large, and they should already be doing
|
||
the right thing in an implementation-independent way.
|
||
(fopen, fstat): Remove macros.
|
||
|
||
* iobuf.c (iobuf_set_limit, iobuf_tell, iobuf_seek):
|
||
Use off_t, not ulong, for file offsets.
|
||
(<limits.h>): Include if needed.
|
||
(LONG_MAX, LONG_MIN): Define a substitute if needed.
|
||
(fseeko): Define a substitute if needed.
|
||
|
||
* iobuf.c (iobuf_seek): Do not use %lu to report file
|
||
|
||
2000-11-09 Werner Koch <wk@gnupg.org>
|
||
|
||
* iobuf.c (iobuf_enable_special_filenames): New.
|
||
(check_special_filename): New.
|
||
(iobuf_open): check for special filenames.
|
||
(iobuf_create): Ditto.
|
||
|
||
2000-10-23 Werner Koch <wk@gnupg.org>
|
||
|
||
* secmem.c (lock_pool): Don't print warning for Windows.
|
||
|
||
2000-10-16 Werner Koch <wk@gnupg.org>
|
||
|
||
* secmem.c (lock_pool): Fixed error checking for Linux.
|
||
By James Troup.
|
||
|
||
Thu Sep 14 14:20:38 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* miscutil.c (answer_is_yes_no_quit): Swapped order of yes/no test
|
||
so that no is returned for an empty input. By David Champion.
|
||
|
||
Wed Sep 6 17:55:47 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* iobuf.c: Use fopen64 insead of fopen when available.
|
||
(iobuf_get_filelength): Use fstat64 when available but return
|
||
2^32-1 if the file is larger than this value.
|
||
|
||
Wed Sep 6 14:59:09 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* secmem.c (secmem_realloc): check for failed secmem_malloc. By
|
||
Matt Kraai.
|
||
|
||
* strgutil.c (utf8_to_native): Fixed null ptr problem. By
|
||
Giampaolo Tomassoni.
|
||
|
||
Thu Jul 27 10:02:38 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* iobuf.c: Use setmode() at several places to set stdin and stdout
|
||
to binary mode for MSDOS based systems
|
||
|
||
* iobuf.c (underflow): Initialize dummy_len to keep memory checker happy.
|
||
|
||
Fri Jun 9 10:09:52 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* ttyio.c: Simulate termios with termios. By Dave Dykstra.
|
||
|
||
Thu Jun 8 20:22:00 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* secmem.c (lock_pool,secmem_init): Additional check for dropped privs.
|
||
|
||
Tue May 30 16:37:55 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* iobuf.c (iobuf_cancel): Fix for MSDOS.
|
||
|
||
Fri Apr 14 19:37:08 CEST 2000 Werner Koch <wk@openit.de>
|
||
|
||
* dotlock.c (disable_dotlock): New. Implmented this in the module.
|
||
|
||
2000-03-09 14:04:22 Werner Koch (wk@habibti.openit.de)
|
||
|
||
* argparse.c (default_strusage): Changed year of default copyright.
|
||
|
||
Tue Mar 7 18:45:31 CET 2000 Werner Koch <wk@gnupg.de>
|
||
|
||
* secmem.c (lock_pool): No more warning for QNX. By Sam Roberts.
|
||
|
||
2000-03-02 15:51:04 Werner Koch (wk@habibti.gnupg.de)
|
||
|
||
* ttyio.c (tty_print_utf8_string): Oops.
|
||
|
||
Thu Mar 2 15:37:46 CET 2000 Werner Koch <wk@gnupg.de>
|
||
|
||
* ttyio.c (tty_print_utf8_string2): New to allow a max output size.
|
||
|
||
Wed Feb 23 10:07:57 CET 2000 Werner Koch <wk@gnupg.de>
|
||
|
||
* miscutil.c (asctimestamp): Fix for possible buffer overflow by
|
||
large system returned date format string.
|
||
|
||
Fri Dec 31 14:08:15 CET 1999 Werner Koch <wk@gnupg.de>
|
||
|
||
* logger.c (log_inc_errorcount): New.
|
||
|
||
Sat Dec 4 12:30:28 CET 1999 Werner Koch <wk@gnupg.de>
|
||
|
||
* iobuf.c (iobuf_cancel): Broadcast the new Cancel mesaage to all
|
||
filters.
|
||
|
||
Mon Nov 22 11:14:53 CET 1999 Werner Koch <wk@gnupg.de>
|
||
|
||
* strgutil.c (strcasecmp): New.
|
||
|
||
* secmem.c (pool_is_mmapped): Made volatile.
|
||
|
||
Sat Oct 9 20:34:41 CEST 1999 Werner Koch <wk@gnupg.de>
|
||
|
||
* Makefile.am: Removed libtool.
|
||
|
||
Fri Oct 8 20:32:01 CEST 1999 Werner Koch <wk@gnupg.de>
|
||
|
||
* w32reg.c: New.
|
||
* simple-gettext.c: Use the Registry to locate the mo file.
|
||
|
||
* http.c (send_request): Add support for proxys; suggested by
|
||
Walter Hofmann.
|
||
(http_open_document): Pass flags to http_open.
|
||
|
||
Fri Sep 17 12:56:42 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* secmem.c (lock_pool): Check for ENOSYS return my mlock() on
|
||
old SCOs.
|
||
|
||
* ttyio.c (do_get): Replaced #if __MINGW32__ by #ifdef becuase
|
||
gcc 2.95.1 assigns a floating point value (0.2) to this macro,
|
||
which in turn can't be used in an expression.
|
||
|
||
Wed Sep 15 16:22:17 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* simple-gettext.c: New.
|
||
|
||
Wed Sep 1 15:30:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* argparse.c (arg_parse): Add standard options to the dump-options
|
||
output.
|
||
|
||
Tue Aug 31 17:20:44 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* strgutil (utf8_to_native): Implemented.
|
||
(check_utf8_string): Removed.
|
||
|
||
* miscutil.c (make_printable_string): Fixed possible buffer overflow.
|
||
(print_utf8_string): New.
|
||
|
||
* ttyio.c (tty_print_utf8_string): New.
|
||
|
||
Mon Aug 30 20:38:33 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* secmem.c (pool_okay): declared volatile.
|
||
|
||
* miscutil.c (answer_is_yes): Always check for plain "yes".
|
||
(answer_is_yes_no_quit): Likewise.
|
||
|
||
* dotlock.c (create_dotlock): Fixed segv during cleanup.
|
||
|
||
Mon Jul 12 14:55:34 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* argparse.c (initialize): Init ret_xxx.
|
||
(optfile_parse): Remove quotes from arguments.
|
||
|
||
Wed Jul 7 13:08:40 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* memory.c (membug): Use if either M_DEBUG or M_GUARD is used.
|
||
|
||
* miscutil.c (scan_isodatestr): New.
|
||
|
||
* logger.c (g10_log_mpidump): Moved to ../mpi/mpicoder.c
|
||
(g10_log_print_prefix): Renamed from print_prefix and made global.
|
||
|
||
* Makefile.am: Support for libtool.
|
||
|
||
Thu Jul 1 12:47:31 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* miscutil.c (make_printable_string): New.
|
||
|
||
* strgutil.c (add_to_strlist2,append_to_strlist2): New.
|
||
|
||
Tue Jun 29 21:44:25 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* secmem.c (USE_CAPABILITIES): Capabilities support (Remi).
|
||
|
||
Sat Jun 26 12:15:59 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
|
||
* dotlock.c (create_dotlock): s/uts/utsbuf/ cause there an Amdahl
|
||
system with the name UTS (Dave Dykstra).
|
||
|
||
* secmem.c (DEFAULT_POOLSIZE): Doubled the size.
|
||
|
||
Fri Jun 18 00:18:02 CEST 1999 Michael Roth <mroth@nessie.de>
|
||
|
||
* iobuf.c: file_filter() Detection of EOF on terminals
|
||
improved/fixed (see Bug #21).
|
||
|
||
Mon Jun 14 21:18:54 CEST 1999 Michael Roth <mroth@nessie.de>
|
||
|
||
* ttyio.c: tty_no_terminal() new.
|
||
|
||
Sat Jun 5 15:30:33 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* strgutil.c (set_native_charset): Support Latin-2
|
||
|
||
Tue Jun 1 16:01:46 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* iobuf.c (iobuf_get_real_fname): Made global and now keep a
|
||
copy of the name in the iobuf struct.
|
||
|
||
Mon May 31 19:41:10 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* iobuf.c (file_filter,block_filter): Speed patches (R<>mi).
|
||
|
||
Thu May 27 09:40:55 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* miscutil.c (answer_is_yes_no_quit): New.
|
||
|
||
Sun May 23 14:20:22 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* dotlock.c: Tweaked to make it compile under mingw32
|
||
* http.c: Disabled for mingw32.
|
||
|
||
Sat May 22 22:47:26 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* logger.c (log_set_logfile): New.
|
||
|
||
Thu May 20 14:04:08 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* memory.c (membug): Nanu, there was a const instead of a static.
|
||
|
||
* strgutil.c (trim_trailing_chars): New.
|
||
|
||
Mon May 17 21:54:43 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* logger.c (g10_log_hexdump): Made 2nd arg a const.
|
||
|
||
Wed Apr 28 13:03:03 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* miscutil.c (asctimestamp): Use nl_langinfo (Ga<47>l Qu<51>ri).
|
||
|
||
Sun Apr 18 10:11:28 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* argparse.c (store_alias): Disabled becuase it is not used.
|
||
|
||
* ttyio.c (tty_batchmode): New
|
||
|
||
Sat Mar 20 11:44:21 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* http.c: Swapped to includes.
|
||
|
||
Tue Mar 2 16:44:57 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* strgutil.c (get_native_charset): New.
|
||
|
||
Fri Feb 26 17:55:41 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* secmem.c (memblock_struct): Force align (R<>mi Guyomarch)
|
||
|
||
Wed Feb 24 11:07:27 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* iobuf.c (block_filter): Fixed the oscillating partial packet chunks.
|
||
|
||
Fri Feb 19 15:49:15 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* iobuf.c (iobuf_push_filter2): New to allow transer of context
|
||
ownership to the iobuf. Released the context where needed.
|
||
|
||
Tue Feb 16 14:10:02 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* strgutil.c (add_to_strglist): Clear the new flags field
|
||
(append_to_strglist): Ditto.
|
||
|
||
* dotlock.c (read_lockfile): terminate pidstr (Michael).
|
||
|
||
Wed Feb 10 17:15:39 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* dotlock.c (remove_lockfiles): Add cleanup function.
|
||
(make_dotlock): Add deadlock check.
|
||
|
||
* secmem.c (secmem_malloc): Changed error message.
|
||
|
||
Wed Jan 20 21:40:21 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* http.c (http_wait_response): Moved the shutdown behind the dup
|
||
|
||
Wed Jan 20 18:59:49 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* http.c (send_request): Removed double LF
|
||
|
||
Tue Jan 19 19:34:58 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* * iobuf.c (iobuf_push_filter): Allow filters for temp streams
|
||
|
||
(iobuf_write_temp): Ditto.
|
||
(iobuf_flush_temp): New.
|
||
(iobuf_unget_and_close_temp): Removed.
|
||
|
||
* http.c (close_http_document): Renamed to http_close().
|
||
(open_http_document): Renamed to http_open_document().
|
||
(http_open): New.
|
||
(http_start_data): New.
|
||
(http_wait_response): New.
|
||
|
||
|
||
Sun Jan 17 11:04:33 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* strgutil.c (trim_trailing_ws): New.
|
||
|
||
Sat Jan 16 12:03:27 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* http.c (connect_server): Fixed stupid bug.
|
||
|
||
Sat Jan 16 09:27:30 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* http.c: New
|
||
|
||
|
||
Wed Jan 13 14:10:15 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* iobuf.c (iobuf_fdopen): New.
|
||
|
||
Sat Jan 9 16:02:23 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* secmem.c (lock_pool): add another check that setuid() worked.
|
||
(secmem_init): Ditto.
|
||
|
||
Thu Jan 7 18:00:58 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* iobuf.c (iobuf_clear_eof): Removed.
|
||
(underflow): Changed the eof handling.
|
||
(iobuf_pop_filter): Made static and renamed to pop_filter.
|
||
|
||
* iobuf.c (iobuf_read_line): New.
|
||
|
||
Sun Jan 3 15:28:44 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* dotlock.c (make_dotlock): print another informal message.
|
||
|
||
(make_dotlock): Removed the cpp checks.
|
||
|
||
|
||
Tue Dec 29 14:41:47 CET 1998 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* secmem.c: Moved unistd.h out of the #ifdef
|
||
|
||
* dotlock.c (make_dotlock): Sun has no SYS_NMLN
|
||
|
||
* iobuf.c (iobuf_unget_and_close_temp): Reset .start
|
||
|
||
Sat Dec 12 18:40:32 CET 1998 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* argparse.c (arg_pars): fixed opts[i] with negative index.
|
||
|
||
Fri Nov 27 21:37:41 CET 1998 Werner Koch <wk@isil.d.shuttle.de>
|
||
|
||
* dotlock.c: Implemented
|
||
|
||
Wed Nov 25 11:30:07 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* iobuf.c (iobuf_pop_filter): Fixed sigsegv after error.
|
||
|
||
Thu Nov 19 07:09:55 1998 Werner Koch <werner.koch@guug.de>
|
||
|
||
* miscutil.c (strtimevalue): New.
|
||
|
||
Tue Nov 10 10:01:53 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* strgutil.c (set_native_charset): New.
|
||
(native_to_utf8): Now handles koi8-r.
|
||
|
||
Tue Nov 3 16:17:56 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* strgutil.c (native_to_utf8): New.
|
||
(utf8_to_native): New, but only as a stub.
|
||
|
||
* argparse.c (optfile_parse): Trimmed spaces from args.
|
||
|
||
|
||
Wed Oct 28 08:01:49 1998 me,,, (wk@tobold)
|
||
|
||
* argparse.c (find_long_option): New.
|
||
(arg_parse): option=value is now allowed. Add a new internal
|
||
option "--dump-options".
|
||
|
||
Thu Oct 22 16:25:49 1998 Michael Roth (mroth@nessie.de)
|
||
|
||
* fileutil.c (make_basename): New.
|
||
(make_dirname): New.
|
||
|
||
Wed Oct 21 12:20:29 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* util.c (iobuf_flush): autoincreasing of a temp. iobuf
|
||
(iobuf_temp_with_content): New.
|
||
|
||
Tue Oct 13 12:40:13 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* util.c (.nofast): set this variable
|
||
|
||
Wed Oct 7 19:27:50 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* memory.c (m_print_stats): New.
|
||
|
||
Tue Oct 6 09:53:56 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* strgutil.c (memicmp): Add HAVE_MEMICMP.
|
||
|
||
Mon Sep 21 19:45:01 1998 Werner Koch (wk@(none))
|
||
|
||
* secmem.c: New flags to allow suspend/resume of warnings.
|
||
|
||
Fri Sep 18 16:25:47 1998 Werner Koch (wk@(none))
|
||
|
||
* secmem.c (lock_pool): Kludge for broken mlock on HPUX 10.20
|
||
|
||
Tue Sep 15 17:52:21 1998 Werner Koch (wk@(none))
|
||
|
||
* miscutil.c (asctimestamp): New.
|
||
|
||
Mon Sep 14 09:38:18 1998 Werner Koch (wk@(none))
|
||
|
||
* secmem.c (init_pool): Now mmaps /dev/zero if we do not have MAP_ANON.
|
||
|
||
Wed Sep 9 13:52:28 1998 Werner Koch (wk@(none))
|
||
|
||
* ttyio.c (do_get): Ctrl-D is now a valid but special character
|
||
|
||
Mon Sep 7 13:52:41 1998 Werner Koch (wk@(none))
|
||
|
||
* iobuf.c (get_real_fname): New and changed file_filter datastructures
|
||
and their initialization.
|
||
|
||
Tue Aug 11 15:12:35 1998 Werner Koch (wk@(none))
|
||
|
||
* miscutil.c (answer_is_yes): i18ned
|
||
|
||
Sat Aug 8 18:35:00 1998 Werner Koch (wk@(none))
|
||
|
||
* ttyio.c (cleanup): New.
|
||
|
||
Mon Aug 3 17:06:00 1998 Werner Koch (wk@(none))
|
||
|
||
* secmem.c (MAP_ANON): Add a macro test
|
||
|
||
Wed Jul 29 14:53:34 1998 Werner Koch (wk@(none))
|
||
|
||
* ttyio.c (tty_get_answer_is_yes): New.
|
||
|
||
Tue Jul 21 10:35:48 1998 Werner Koch (wk@(none))
|
||
|
||
* argparse.c: New option flag to distinguish options and commands.
|
||
|
||
Sat Jul 18 19:49:30 1998 Werner Koch (wk@(none))
|
||
|
||
* argparse.c (arg_parse): Added -? as alias for -h
|
||
|
||
Thu Jul 9 14:47:20 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* secmem.c (secmem_init): Drops setuid if called with 0.
|
||
|
||
Tue Jul 7 11:49:25 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* logger.c (log_set_filename): New.
|
||
|
||
Mon Jul 6 09:03:49 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* strgutil.c (append_to_strlist): New.
|
||
|
||
Thu Jul 2 15:55:44 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* iobuf.c (block_filter): Add writing of OP partial length headers.
|
||
|
||
Fri Jun 26 10:38:35 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* ttyio.c (do_get): all iso8859-1 characters are now allowed.
|
||
|
||
Thu Jun 25 15:57:21 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* secmem.c (lock_pool): Removed left over test code.
|
||
|
||
Wed Jun 10 07:39:41 1998 Werner Koch,mobil,,, (wk@tobold)
|
||
|
||
* fileutil.c (compare_filenames): New.
|
||
|
||
* argparse.c (arg_parse): New flag bit 6 to ignore --version
|
||
|
||
Thu May 14 16:45:13 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* argparse.c (show_help): Add some formatting stuff
|
||
|
||
Fri May 8 17:06:49 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* errors.c (strerror): New if !HAVE_STRERROR
|
||
|
||
Mon May 4 19:48:03 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* iobuf.c (iobuf_read): Code is now faster.
|
||
* (iobuf_write): ditto.
|
||
|
||
Mon Apr 27 11:01:32 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* strgutil.c (memicmp): New.
|
||
|
||
Thu Mar 19 11:29:03 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* strgutil.c (memistr): Add const to return and first arg.
|
||
|
||
Sat Mar 7 11:54:35 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* miscutil.c (print_string): New arg delim; changed all callers.
|
||
|
||
Thu Mar 5 12:19:30 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* errors.c: New strings.
|
||
|
||
Thu Mar 5 12:06:31 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* iobuf.c (iobuf_open): A name of "-" now opens stdin.
|
||
* fileutil.c (print_fname_stdout, print_fname_stdin): New.
|
||
|
||
Fri Feb 27 10:20:03 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* memory.c (m_is_secure): Removed.
|
||
* secmem.c (m_is_secure): Moved to here.
|
||
|
||
* secmem.c (secmem_realloc): New.
|
||
* memory.c (M_GUARD,EXTRA_ALIGN): New (all functions).
|
||
|
||
Thu Feb 26 14:36:51 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* secmem.c (lock_pool): No error if EAGAIN is returned instead
|
||
of EPERM.
|
||
|
||
Fri Feb 20 17:43:05 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* ttyio.c [MINGW32]: Add support for mingw32.
|
||
|
||
Tue Feb 17 19:43:44 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* memory.c (dump_table_at_exit): New.
|
||
|
||
Mon Feb 16 10:07:28 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* argparse.c (show_version, show_help, default_strusage): Changed
|
||
according to GNU standards.
|
||
|
||
Mon Feb 16 08:58:25 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* iobuf.c (iobuf_peek): New
|
||
|
||
Fri Feb 13 19:34:59 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* iobuf.c (iobuf_seek): Set counters to new offset.
|
||
|
||
Fri Feb 13 17:13:04 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* logger.c (log_set_name, log_get_name): New.
|
||
(print_prefix, pgm_name): New, changed all function to make use it.
|
||
(log_mpidump): Removed the "DBG" prefix.
|
||
(log_hexdump): Ditto.
|
||
|
||
* logger.c (printstr): Removed.
|
||
|
||
Fri Feb 13 15:14:13 1998 Werner Koch (wk@isil.d.shuttle.de)
|
||
|
||
* argparse.c (show_help): New '\v' kludge.
|
||
|
||
|
||
|
||
Copyright 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||
|
||
This file is free software; as a special exception the author gives
|
||
unlimited permission to copy and/or distribute it, with or without
|
||
modifications, as long as this notice is preserved.
|
||
|
||
This file is distributed in the hope that it will be useful, but
|
||
WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
|
||
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||
|
||
|