about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--CHANGES92
-rw-r--r--LYMessages_en.h6
-rw-r--r--WWW/Library/Implementation/HTAnchor.c27
-rw-r--r--WWW/Library/Implementation/HTFile.c40
-rw-r--r--WWW/Library/Implementation/HTMIME.c2
-rw-r--r--WWW/Library/Implementation/HTPlain.c2
-rw-r--r--WWW/Library/Implementation/HTString.c54
-rw-r--r--WWW/Library/Implementation/HTString.h6
-rw-r--r--WWW/Library/Implementation/HTTCP.c22
-rw-r--r--WWW/Library/Implementation/HTUtils.h21
-rw-r--r--WWW/Library/Implementation/LYexit.h1
-rw-r--r--WWW/Library/Implementation/SGML.c6
-rw-r--r--WWW/Library/Implementation/UCDefs.h2
-rw-r--r--WWW/Library/Implementation/tcp.h2
-rw-r--r--aclocal.m461
-rwxr-xr-xconfig.guess2
-rw-r--r--config.hin23
-rwxr-xr-xconfigure919
-rw-r--r--configure.in4
-rw-r--r--lynx.cfg20
-rw-r--r--lynx_help/keystrokes/edit_help.html2
-rw-r--r--makefile.in2
-rw-r--r--po/it.po2
-rw-r--r--po/lynx.pot244
-rw-r--r--po/makefile.inn6
-rw-r--r--po/readme18
-rw-r--r--src/DefaultStyle.c160
-rw-r--r--src/GridText.c114
-rw-r--r--src/HTFWriter.c12
-rw-r--r--src/HTInit.c11
-rw-r--r--src/HTML.c46
-rw-r--r--src/LYBookmark.c94
-rw-r--r--src/LYCharSets.c52
-rw-r--r--src/LYClean.c2
-rw-r--r--src/LYCookie.c8
-rw-r--r--src/LYCurses.c13
-rw-r--r--src/LYDownload.c1
-rw-r--r--src/LYEditmap.c124
-rw-r--r--src/LYGlobalDefs.h7
-rw-r--r--src/LYHistory.c2
-rw-r--r--src/LYKeymap.c52
-rw-r--r--src/LYKeymap.h7
-rw-r--r--src/LYMail.c21
-rw-r--r--src/LYMain.c14
-rw-r--r--src/LYPrint.c2
-rw-r--r--src/LYReadCFG.c18
-rw-r--r--src/LYShowInfo.c7
-rw-r--r--src/LYStrings.c2
-rw-r--r--src/LYStrings.h2
-rw-r--r--src/LYUtils.c35
-rw-r--r--src/UCdomap.c16
-rw-r--r--src/chrtrans/README.format7
-rw-r--r--src/chrtrans/cp1250_uni.tbl2
-rw-r--r--src/chrtrans/cp1251_uni.tbl2
-rw-r--r--src/chrtrans/cp1252_uni.tbl2
-rw-r--r--src/chrtrans/cp1253_uni.tbl2
-rw-r--r--src/chrtrans/cp1255_uni.tbl2
-rw-r--r--src/chrtrans/cp1256_uni.tbl2
-rw-r--r--src/chrtrans/cp1257_uni.tbl2
-rw-r--r--userdefs.h12
60 files changed, 1537 insertions, 904 deletions
diff --git a/CHANGES b/CHANGES
index fbfd943e..845d9e9f 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,6 +1,74 @@
 Changes since Lynx 2.8.1 release
 ================================================================================
 
+1998-11-21 (2.8.2dev.5)
+* modify HTLoadFile() to make compressed files work with OS/2 EMX and
+  LYSystem() to convert forward slashes in pathnames to backslashes, also for
+  EMX (patches by Ilya Zakharevich).
+* documentation nits (aprostrophes) in lynx.cfg and userdefs.h - LV
+* fix inconsistent newlines in po/it.po (report by Irving_Wolfe@Wolfe.net) - TD
+* modify config.guess, added Intergraph 2430 CLIX machines (reported by Alex
+  Matulich <matuli_a@marlin.navsea.navy.mil>) - TD
+* minor fix in LYCharSets.c according to recent changes in UCDefs.h introduced
+  by IBM OS/2 codepage number - LP
+* modify configure script to work with --enable-nls built into a subdirectory
+  of the source tree (reported by PG) - TD
+* disable regeneration of intl/po2tbl.sed and po/POTFILES if --disable-nls
+  configure option is specified - TD
+* add configure test for stdarg.h vs varargs.h - TD
+* fixes to work with SunOS K&R compiler - TD
+* don't trim trailing and leading spaces from unformatted text lines in some
+  cases (split_line in GridText.c).  Prevents corruption of some uuencoded
+  files when they are displayed and then 'P'rinted (although 'D'ownload should
+  be used instead) - KW
+* some changes in HText_appendCharacter (GridText.c).  Splitting of long SOURCE
+  lines now works with color styles - KW
+* workaround for multiple anchors in the same (invalid) HTML document with the
+  same NAME and different destinations (HTAnchor.c) - KW
+* check for 'z'ap while constructing local directory listings (non-VMS only, in
+  HTFile.c) - KW
+* added a couple outofmem checks (HTAnchor.c).  Minor TRACE message change in
+  GridText.c for -tlog / USE_TRACE_LOG disabled - KW
+* when adding bookmark entries, don't accept a title string which appears to
+  consist only of blank characters (LYBookmark.c).  When rendering a bookmark
+  file, use hiddenlinks=merge counting, so that numbers after entries with
+  empty titles don't get out of whack (GridText.c).  This should prevent 'R'
+  from removing the wrong bookmark entry - KW
+* prevent generation of some unnecessary temp files when constructing mailcap
+  file test commands (HTInit.c) - KW
+* include LYLeaks.h in UCdomap.c for memory leak detection - KW
+* fixed various memory leaks (UCdomap.c, LYShowInfo.c, LYReadCFG.c, LYMain.c,
+  LYDownload.c, LYBookmark.c, HTML.c, DefaultStyle.c) - KW
+* escape '&' and '<' in HTML generated to display current lynx.cfg option
+  values (LYReadCFG.c) - KW
+* revert logic in split_line.  Emphasis highlighting that should extend over
+  several lines was being lost at line breaks (GridText.c).  (IsSpecialAttrChar
+  probably shouldn't return true for LY_SOFT_NEWLINE since in most places it
+  tests whether to skip a character position, but as long as this special char
+  is only used in SOURCE mode it cannot mess up any anchor positions so it
+  should be ok.  - KW
+* correct character counting in SOURCE display continuation lines.  A
+  highlighted search target would be shown shifted left by one character
+  position because the LY_SOFT_NEWLINE special was displayed as '+' but not
+  counted (GridText.c) - KW
+* prevent generation of invalid/unparseable comments if
+  UCSaveBookmarksInUnicode is in effect, other minor changes in
+  LYBookmark.c - KW
+* correction for color styles in HText_appendCharacter (GridText.c).  At some
+  point a memmove was replaced by a for loop, but source and destination were
+  reversed and the counter was wrong - KW
+* modify HTSprintf/HTSprintf0 to use a more generic approach to varargs by
+  using only va_alist in the parameter list - TD
+* correct html expression in LYShowInfo.c of dev.3 which did not allow the temp
+  file with the lynx.cfg settings to be accessed from the Configuration
+  Definitions page (patch by Ismael Cordeiro).
+* correct "Exiting" message format in cleanup_sig(), which had unexpanded %d
+  (reported by BJP) - TD
+* add to config.hin the definitions set by AM_GNU_GETTEXT macro (PG pointed
+  out that this also sets 'inline', needed for GNU gettext) - TD
+* modify MakeNewTitle() to check for null pointer, fixing core dump with
+  verbose images when value[src_type] is null (reported by John Bley
+  <jbb6@acpub.duke.edu> for 2.8.1rel.2) - TD
 1998-11-18 (2.8.2dev.4)
 * change default for configure option of NLS (gettext) to disabled until we
   finish porting it to implementations other than GNU gettext.  Also,
@@ -15,15 +83,15 @@ Changes since Lynx 2.8.1 release
   function, which is described as "delete next character", but was in fact
   performing identically to ^D (LYE_DELC) "delete current character".  Added a
   function called LYE_DELEL, which does the expected thing, and deletes
-  from the current cursor position, to the EOL. 
+  from the current cursor position, to the EOL.
   New bindings:
-    ^B = LYE_BACK   cursor backwards 
-    ^F = LYE_FORW   cursor forwards 
-    ^K = LYE_DELEOL delete to end-of-line 
-    ^T = LYE_DELNW  delete next word 
-    ^X = LYE_DELPW  delete previous word 
+    ^B = LYE_BACK   cursor backwards
+    ^F = LYE_FORW   cursor forwards
+    ^K = LYE_DELEOL delete to end-of-line
+    ^T = LYE_DELNW  delete next word
+    ^X = LYE_DELPW  delete previous word
     ^^ = LYE_UPPER  upper case line (not active when kbd-layout binding is)
-    ^_ = LYE_LOWER  lower case line 
+    ^_ = LYE_LOWER  lower case line
   (Kim DeVaughn <kimdv@best.com>).
 * modify to show address to submit to on the statusline when in advanced user
   mode.  Also fixes one small typo in LYMainLoop.c.  (suggested by
@@ -35,14 +103,14 @@ Changes since Lynx 2.8.1 release
 * change some character constants from '\hex' and '\octal' form to decimal,
   to pursuade compilers that upper-128 compares are legal - TD
 * ifdef'd KEYBOARD_LAYOUT with EXP_KEYBOARD_LAYOUT, add configure option
-  --enable-kbd-layout.  Note that control/Y is used as a process suspend
-  character on some platforms (VMS and Solaris) - TD
+  --enable-kbd-layout - TD
 * implement EXP_CHARTRANS_AUTOSWITCH for OS/2 EMX (Sergey Svishchev).
 * add 'a' response when printing a file to allow append rather than overwrite
   (Sergey Svishchev).
 * add KEYBOARD_LAYOUT to lynx.cfg, to support character-translation on input,
   add missing line editing style selection to Options form.  This is enabled
-  and disabled by the line edit control/Y (Sergey Svishchev <svs@ropnet.ru>).
+  and disabled by the line edit control/uparrow (Sergey Svishchev
+  <svs@ropnet.ru>).
 * use exit_immediately() to reduce some signal-function clutter - LP
 * correct dependency in src/makefile.in for cfg_defs.h (Masashi Fujita
   <objectx@bandit.co.jp>)
@@ -51,8 +119,8 @@ Changes since Lynx 2.8.1 release
 * misc documentation updates for the gettext/internationalization - LP
 * rename po/makefile.in.in to po/makefile.inn, and modify distclean rule to
   remove the remaining generated files - TD
-* add preliminary changes from: pg@sweng.stortek.com to support port to OS/390,
-  some ifdef'd with __MVS__, some with EBCDIC and NOT_ASCII.
++ add preliminary changes from PG (pg@sweng.stortek.com) to support port to
+  OS/390, some ifdef'd with __MVS__, some with EBCDIC and NOT_ASCII.
 * modify LYCookies.c to accept cookies with no value, in case the site resets a
   cookie by nulling out the value (reported by Larry Virden) - BJP
 * modify cookie parsing to ignore comment lines beginning with a '#' (reported
diff --git a/LYMessages_en.h b/LYMessages_en.h
index 8251157b..dc9ebc60 100644
--- a/LYMessages_en.h
+++ b/LYMessages_en.h
@@ -69,12 +69,18 @@
  gettext("(Radio Button)   Use right-arrow or <return> to toggle.")
 #define FORM_LINK_RADIO_UNM_MSG \
  gettext("UNMODIFIABLE form radio button.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_SUBMIT_PREFIX \
+ gettext("Submit ('x' for no cache) to ")
+#define FORM_LINK_RESUBMIT_PREFIX \
+ gettext("Submit to ")
 #define FORM_LINK_SUBMIT_MESSAGE \
  gettext("(Form submit button) Use right-arrow or <return> to submit ('x' for no cache).")
 #define FORM_LINK_RESUBMIT_MESSAGE \
  gettext("(Form submit button) Use right-arrow or <return> to submit.")
 #define FORM_LINK_SUBMIT_DIS_MSG \
  gettext("DISABLED form submit button.  Use UP or DOWN arrows or tab to move off.")
+#define FORM_LINK_SUBMIT_MAILTO_PREFIX \
+ gettext("Submit mailto form to ")
 #define FORM_LINK_SUBMIT_MAILTO_MSG \
  gettext("(mailto form submit button) Use right-arrow or <return> to submit.")
 #define FORM_LINK_SUBMIT_MAILTO_DIS_MSG \
diff --git a/WWW/Library/Implementation/HTAnchor.c b/WWW/Library/Implementation/HTAnchor.c
index ec332eb3..a141213c 100644
--- a/WWW/Library/Implementation/HTAnchor.c
+++ b/WWW/Library/Implementation/HTAnchor.c
@@ -68,6 +68,8 @@ PRIVATE HTParentAnchor * HTParentAnchor_new NOARGS
 {
     HTParentAnchor *newAnchor =
        (HTParentAnchor *)calloc(1, sizeof(HTParentAnchor));  /* zero-filled */
+    if (newAnchor == NULL)
+	outofmem(__FILE__, "HTParentAnchor_new");
     newAnchor->parent = newAnchor;
     newAnchor->bookmark = NULL; 	/* Bookmark filename. - FM */
     newAnchor->isISMAPScript = FALSE;	/* Lynx appends ?0,0 if TRUE. - FM */
@@ -194,6 +196,8 @@ PUBLIC HTChildAnchor * HTAnchor_findChild ARGS2(
     }
 
     child = HTChildAnchor_new();
+    if (child == NULL)
+	outofmem(__FILE__, "HTChildAnchor_new");
     CTRACE(tfp, "new Anchor %p named `%s' is child of %p\n",
 		(void *)child,
 		tag ? tag : (CONST char *)"",
@@ -245,6 +249,29 @@ PUBLIC HTChildAnchor * HTAnchor_findChildAndLink ARGS4(
 	parsed_doc.safe = FALSE;
 	dest = HTAnchor_findAddress(&parsed_doc);
 
+#define DUPLICATE_ANCHOR_NAME_WORKAROUND
+
+#ifdef DUPLICATE_ANCHOR_NAME_WORKAROUND
+	if (tag && *tag) {
+	    HTAnchor *testdest1;
+	    int nlinks;
+	    testdest1 = child->mainLink.dest;
+	    if (testdest1) {
+		nlinks = 1 + HTList_count(child->links);
+		CTRACE(tfp,
+		       "*** Duplicate ChildAnchor %p named `%s' with %d links",
+		       child, tag, nlinks);
+		if (dest == testdest1 && ltype == child->mainLink.type) {
+		    CTRACE(tfp,", same dest %p and type, keeping it\n",
+			   testdest1);
+		} else {
+		    CTRACE(tfp,", different dest %p, creating unnamed child\n",
+			   testdest1);
+		    child = HTAnchor_findChild(parent, 0);
+		}
+	    }
+	}
+#endif
 	HTAnchor_link((HTAnchor *)child, dest, ltype);
 	FREE(parsed_doc.address);
 	FREE(relative_to);
diff --git a/WWW/Library/Implementation/HTFile.c b/WWW/Library/Implementation/HTFile.c
index 70811025..3e030de0 100644
--- a/WWW/Library/Implementation/HTFile.c
+++ b/WWW/Library/Implementation/HTFile.c
@@ -105,6 +105,8 @@ typedef struct _HTSuffix {
 #define MAYBE_END(e) if (HTML_dtd.tags[e].contents != SGML_EMPTY) \
 			(*target->isa->end_element)(target, e, 0)
 #define FREE_TARGET (*target->isa->_free)(target)
+#define ABORT_TARGET (*targetClass._abort)(target, NULL);
+
 struct _HTStructured {
 	CONST HTStructuredClass *	isa;
 	/* ... */
@@ -1985,6 +1987,7 @@ PUBLIC int HTLoadFile ARGS4(
 		{
 		    HTBTree * bt = HTBTree_new((HTComparer)strcmp);
 
+		    status = HT_LOADED;	/* assume we don't get interrupted */
 		    while ((dirbuf = readdir(dp)) != NULL) {
 			/*
 			**  While there are directory entries to be read...
@@ -2075,6 +2078,11 @@ PUBLIC int HTLoadFile ARGS4(
 			while (next_element != NULL) {
 			    char *entry, *file_extra;
 
+			    if (HTCheckForInterrupt()) {
+				_HTProgress ("Data transfer interrupted.");
+				status = HT_PARTIAL_CONTENT;
+				break;
+			    }
 			    StrAllocCopy(tmpfilename,localname);
 			    if (strcmp(localname, "/"))
 				/*
@@ -2172,14 +2180,16 @@ PUBLIC int HTLoadFile ARGS4(
 				/* pick up the next element of the list;
 				 if none, return NULL*/
 			}
-			if (state == 'I') {
-			    START(HTML_P);
-			    PUTS(gettext("Empty Directory"));
-			}
+			if (status == HT_LOADED) {
+			    if (state == 'I') {
+				START(HTML_P);
+				PUTS("Empty Directory");
+			    }
 #ifndef LONG_LIST
-			else
-			    END(HTML_DIR);
+			    else
+				END(HTML_DIR);
 #endif /* !LONG_LIST */
+			}
 		    }
 			/* end while directory entries left to read */
 		    closedir(dp);
@@ -2188,12 +2198,16 @@ PUBLIC int HTLoadFile ARGS4(
 		    FREE(tail);
 		    HTBTreeAndObject_free(bt);
 
-		    if (HTDirReadme == HT_DIR_README_BOTTOM)
-			  do_readme(target, localname);
-		    FREE_TARGET;
+		    if (status == HT_LOADED) {
+			if (HTDirReadme == HT_DIR_README_BOTTOM)
+			    do_readme(target, localname);
+			FREE_TARGET;
+		    } else {
+			ABORT_TARGET;
+		    }
 		    FREE(localname);
 		    FREE(nodename);
-		    return HT_LOADED;	/* document loaded */
+		    return status;	/* document loaded, maybe partial */
 		}
 
 	    } /* end if localname is directory */
@@ -2204,7 +2218,13 @@ PUBLIC int HTLoadFile ARGS4(
 */
 #endif /* HAVE_READDIR */
 	{
+#  ifdef __EMX__
+	    int len = strlen(localname);
+	    int bin = ((len > 3) && !strcasecomp(localname + len - 3, ".gz"));
+	    FILE * fp = fopen(localname, (bin ? "rb" : "r"));
+#  else	/* !( defined __EMX__ ) */
 	    FILE * fp = fopen(localname, "r");
+#  endif
 
 	    CTRACE (tfp, "HTLoadFile: Opening `%s' gives %p\n",
 				 localname, (void*)fp);
diff --git a/WWW/Library/Implementation/HTMIME.c b/WWW/Library/Implementation/HTMIME.c
index 6e64fb1d..a7417f78 100644
--- a/WWW/Library/Implementation/HTMIME.c
+++ b/WWW/Library/Implementation/HTMIME.c
@@ -1843,7 +1843,7 @@ PUBLIC HTStream* HTNetMIME ARGS3(
 #ifdef ESC
 #undef ESC
 #endif /* ESC */
-#include "LYCharVals.h"  /* S/390 -- gil -- 0163 */
+#include <LYCharVals.h>  /* S/390 -- gil -- 0163 */
 #define ESC	CH_ESC
 
 PRIVATE char HTmm64[] =
diff --git a/WWW/Library/Implementation/HTPlain.c b/WWW/Library/Implementation/HTPlain.c
index 832aa360..a07ede9d 100644
--- a/WWW/Library/Implementation/HTPlain.c
+++ b/WWW/Library/Implementation/HTPlain.c
@@ -147,7 +147,7 @@ PRIVATE void HTPlain_put_character ARGS2(
     } else if (TOASCII((unsigned char)c) >= 127 && TOASCII((unsigned char)c) < 161 &&
 	       HTPassHighCtrlRaw) {
 	HText_appendCharacter(me->text, c);
-    } else if ((unsigned char)c == CH_NBSP) {  /* S/390 -- gil -- 0341 */
+    } else if ((unsigned char)c == CH_NBSP) { /* S/390 -- gil -- 0341 */
 	HText_appendCharacter(me->text, ' ');
     } else if ((unsigned char)c == CH_SHY) {
 	return;
diff --git a/WWW/Library/Implementation/HTString.c b/WWW/Library/Implementation/HTString.c
index b3b0115f..00cefcd7 100644
--- a/WWW/Library/Implementation/HTString.c
+++ b/WWW/Library/Implementation/HTString.c
@@ -359,9 +359,9 @@ PRIVATE char *HTAlloc ARGS2(char *, ptr, size_t, length)
  */
 typedef enum { Flags, Width, Prec, Type, Format } PRINTF;
 
-#define VA_INTGR(type) ival = va_arg(ap, type)
-#define VA_FLOAT(type) fval = va_arg(ap, type)
-#define VA_POINT(type) pval = (void *)va_arg(ap, type)
+#define VA_INTGR(type) ival = va_arg((*ap), type)
+#define VA_FLOAT(type) fval = va_arg((*ap), type)
+#define VA_POINT(type) pval = (void *)va_arg((*ap), type)
 
 #define NUM_WIDTH 10	/* allow for width substituted for "*" in "%*s" */
 #define GROW_EXPR(n) (((n) * 3) / 2)
@@ -371,13 +371,14 @@ PRIVATE char * StrAllocVsprintf ARGS4(
 	char **,	pstr,
 	size_t,		dst_len,
 	CONST char *,	fmt,
-	va_list,	ap)
+	va_list *,	ap)
 {
     size_t tmp_len = GROW_SIZE;
     size_t have, need;
     char *tmp_ptr = 0;
     char *fmt_ptr;
     char *dst_ptr = *pstr;
+    CONST char *format = fmt;
 
     if (fmt == 0 || *fmt == '\0')
 	return 0;
@@ -466,9 +467,11 @@ PRIVATE char * StrAllocVsprintf ARGS4(
 		    case 'E': /* FALLTHRU */
 		    case 'g': /* FALLTHRU */
 		    case 'G': /* FALLTHRU */
+#if 0	/* we don't need this, it doesn't work on SunOS 4.x */
 			if (type == 'L')
 			    VA_FLOAT(long double);
 			else
+#endif
 			    VA_FLOAT(double);
 			used = 'f';
 			break;
@@ -495,6 +498,8 @@ PRIVATE char * StrAllocVsprintf ARGS4(
 			used = 0;
 			break;
 		    default:
+			CTRACE(tfp, "unknown format character '%c' in %s\n",
+			            *fmt, format);
 			break;
 		    }
 		} else if (*fmt == '.') {
@@ -540,22 +545,30 @@ PRIVATE char * StrAllocVsprintf ARGS4(
  * for its arguments.  Unlike sprintf, this always concatenates to the destination
  * buffer.
  */
-#if USE_STDARG_H
+#if ANSI_VARARGS
 PUBLIC char * HTSprintf (char ** pstr, CONST char * fmt, ...)
 #else
-PUBLIC char * HTSprintf (pstr, fmt, va_alist)
-    char **		pstr;
-    CONST char *	fmt;
+PUBLIC char * HTSprintf (va_alist)
     va_dcl
 #endif
 {
+    char *result = 0;
+    size_t inuse = 0;
     va_list ap;
 
     LYva_start(ap,fmt);
-    StrAllocVsprintf(pstr, (pstr && *pstr) ? strlen(*pstr) : 0, fmt, ap);
+    {
+#if !ANSI_VARARGS
+	char **		pstr = va_arg(ap, char **);
+	CONST char *	fmt  = va_arg(ap, CONST char *);
+#endif
+	if (pstr != 0 && *pstr != 0)
+	    inuse = strlen(*pstr);
+	result = StrAllocVsprintf(pstr, inuse, fmt, &ap);
+    }
     va_end(ap);
 
-    return (*pstr);
+    return (result);
 }
 
 /*
@@ -563,22 +576,27 @@ PUBLIC char * HTSprintf (pstr, fmt, va_alist)
  * needed for its arguments.  Like sprintf, this always resets the destination
  * buffer.
  */
-#if USE_STDARG_H
+#if ANSI_VARARGS
 PUBLIC char * HTSprintf0 (char ** pstr, CONST char * fmt, ...)
 #else
-PUBLIC char * HTSprintf0 (pstr, fmt, va_alist)
-    char **		pstr;
-    CONST char *	fmt;
+PUBLIC char * HTSprintf0 (va_alist)
     va_dcl
 #endif
 {
+    char *result = 0;
     va_list ap;
 
     LYva_start(ap,fmt);
-    if (pstr != 0 && *pstr != 0)
-     	*pstr = 0;
-    StrAllocVsprintf(pstr, 0, fmt, ap);
+    {
+#if !ANSI_VARARGS
+	char **		pstr = va_arg(ap, char **);
+	CONST char *	fmt  = va_arg(ap, CONST char *);
+#endif
+	if (pstr != 0)
+	    *pstr = 0;
+	result = StrAllocVsprintf(pstr, 0, fmt, &ap);
+    }
     va_end(ap);
 
-    return (*pstr);
+    return (result);
 }
diff --git a/WWW/Library/Implementation/HTString.h b/WWW/Library/Implementation/HTString.h
index 85ca5d7f..6b039896 100644
--- a/WWW/Library/Implementation/HTString.h
+++ b/WWW/Library/Implementation/HTString.h
@@ -53,14 +53,14 @@ extern char * HTNextField PARAMS ((char** pstr));
 extern char * HTNextTok PARAMS((char ** pstr,
 		      CONST char * delims, CONST char * bracks, char * found));
 
-#if USE_STDARG_H
+#if ANSI_VARARGS
 extern char * HTSprintf PARAMS((char ** pstr, CONST char * fmt, ...))
 			GCC_PRINTFLIKE(2,3);
 extern char * HTSprintf0 PARAMS((char ** pstr, CONST char * fmt, ...))
 			 GCC_PRINTFLIKE(2,3);
 #else
-extern char * HTSprintf PARAMS((char ** pstr, CONST char * fmt, va_alist));
-extern char * HTSprintf0 PARAMS((char ** pstr, CONST char * fmt, va_alist));
+extern char * HTSprintf () GCC_PRINTFLIKE(2,3);
+extern char * HTSprintf0 () GCC_PRINTFLIKE(2,3);
 #endif
 
 #endif /* HTSTRING_H */
diff --git a/WWW/Library/Implementation/HTTCP.c b/WWW/Library/Implementation/HTTCP.c
index 3dd09f07..6abde5f5 100644
--- a/WWW/Library/Implementation/HTTCP.c
+++ b/WWW/Library/Implementation/HTTCP.c
@@ -454,6 +454,7 @@ PUBLIC int HTParseInet ARGS2(
 	    struct timeval timeout;
 	    int dns_patience = 30; /* how many seconds will we wait for DNS? */
 	    int child_exited = 0;
+	    int ok_to_select_stdin = -1;
 
 	    /*
 	    **  Reap any children that have terminated since last time
@@ -526,19 +527,32 @@ PUBLIC int HTParseInet ARGS2(
 		*/
 		cycle++;
 
-		timeout.tv_sec = 1;
-		timeout.tv_usec = 0;
 		FD_ZERO(&readfds);
-		FD_SET(pfd[0], &readfds);
 #ifndef USE_SLANG
 		/*
 		**  This allows us to abort immediately, not after 1-second
 		**  timeout, when user hits abort key.  Can't do this when
 		**  using SLANG (or at least I don't know how), so SLANG
 		**  users must live with up-to-1s timeout.  -BL
+		**
+		**  Whoops -- we need to make sure stdin is actually
+		**  selectable!  /dev/null isn't, on some systems, which
+		**  makes some useful Lynx invocations fail.  -BL
 		*/
-		FD_SET(0, &readfds);    /* stdin -BL */
+		if (ok_to_select_stdin == -1) {
+		    timeout.tv_sec = 0;
+		    timeout.tv_usec = 0;
+		    FD_SET(0, &readfds);    /* stdin -BL */
+		    selret = select(1, &readfds, NULL, NULL, &timeout);
+		    if (selret >= 0) ok_to_select_stdin = 1;
+		    else ok_to_select_stdin = 0;
+		    FD_ZERO(&readfds);
+		}
+		if (ok_to_select_stdin) FD_SET(0, &readfds);
 #endif /* USE_SLANG */
+		timeout.tv_sec = 1;
+		timeout.tv_usec = 0;
+		FD_SET(pfd[0], &readfds);
 
 		/*
 		**  Return when data received, interrupted, or failed.
diff --git a/WWW/Library/Implementation/HTUtils.h b/WWW/Library/Implementation/HTUtils.h
index 29417483..d72c48ae 100644
--- a/WWW/Library/Implementation/HTUtils.h
+++ b/WWW/Library/Implementation/HTUtils.h
@@ -32,6 +32,11 @@
 #define NO_FILIO_H
 #endif
 
+#if defined(__STDC__) || defined(VMS)
+#define ANSI_VARARGS
+#define HAVE_STDARGS_H
+#endif
+
 /* FIXME: these will be removed after completing auto-configure script */
 
 /* Accommodate pre-autoconf Makefile */
@@ -318,19 +323,19 @@ Sucess (>=0) and failure (<0) codes
 #define HT_BAD_EOF      -12             /* Premature EOF */
 
 #ifndef va_arg
-#if defined(__STDC__) || defined(VMS)
-#include <stdarg.h>
-#else
-#include <varargs.h>
-#endif
+# if HAVE_STDARG_H
+#  include <stdarg.h>
+# else
+#  if HAVE_VARARGS_H
+#   include <varargs.h>
+#  endif
+# endif
 #endif
 
-#if defined(__STDC__) || defined(VMS)
+#if ANSI_VARARGS
 #define LYva_start(ap,format) va_start(ap,format)
-#define USE_STDARG_H 1
 #else
 #define LYva_start(ap,format) va_start(ap)
-#define USE_STDARG_H 0
 #endif
 
 /*
diff --git a/WWW/Library/Implementation/LYexit.h b/WWW/Library/Implementation/LYexit.h
index f53561a4..62907a64 100644
--- a/WWW/Library/Implementation/LYexit.h
+++ b/WWW/Library/Implementation/LYexit.h
@@ -47,6 +47,7 @@
 /*
  *	Function declarations
  */
+extern void exit_immediately PARAMS((int status));  /* in LYMain.c */
 extern void LYexit PARAMS((int status));
 #ifdef __STDC__
 extern int LYatexit(void (*function)(void));
diff --git a/WWW/Library/Implementation/SGML.c b/WWW/Library/Implementation/SGML.c
index aa99eafe..53005d65 100644
--- a/WWW/Library/Implementation/SGML.c
+++ b/WWW/Library/Implementation/SGML.c
@@ -398,7 +398,7 @@ PRIVATE void handle_entity ARGS2(
 	char,		term)
 {
     UCode_t code;
-    long uck;
+    long uck = -1;
     CONST char *p;
     CONST char *s = context->string->data;
 
@@ -481,7 +481,7 @@ PRIVATE void handle_entity ARGS2(
     /*
     **	If entity string not found, display as text.
     */
-    CTRACE(tfp, "SGML: Unknown entity '%s' %d %d\n", s, code, uck); /* S/390 -- gil -- 0695 */
+    CTRACE(tfp, "SGML: Unknown entity '%s' %ld %ld\n", s, (long)code, uck); /* S/390 -- gil -- 0695 */
     PUTC('&');
     for (p = s; *p; p++) {
 	PUTC(*p);
@@ -3325,7 +3325,7 @@ PUBLIC void JISx0201TO0208_SJIS ARGS3(
 {
     unsigned char SJCODE[2];
 
-    JISx0201TO0208_EUC('\216', I, OHI, OLO);
+    JISx0201TO0208_EUC(216, I, OHI, OLO);
     JIS_TO_SJIS1(*OHI&0x7F, *OLO&0x7F, SJCODE);
     *OHI = SJCODE[0];
     *OLO = SJCODE[1];
diff --git a/WWW/Library/Implementation/UCDefs.h b/WWW/Library/Implementation/UCDefs.h
index 1e213abc..0cfb383f 100644
--- a/WWW/Library/Implementation/UCDefs.h
+++ b/WWW/Library/Implementation/UCDefs.h
@@ -9,7 +9,7 @@ typedef struct _LYUCcharset {
     int UChndl;
     CONST char * MIMEname;
     int enc;
-    int codepage;
+    int codepage;	/* IBM specific number */
 
     /* parameters below are not used by chartrans mechanism, */
     /* they describe some relationships against built-in Latin1 charset...*/
diff --git a/WWW/Library/Implementation/tcp.h b/WWW/Library/Implementation/tcp.h
index 7fe9a22b..79c42c73 100644
--- a/WWW/Library/Implementation/tcp.h
+++ b/WWW/Library/Implementation/tcp.h
@@ -134,7 +134,7 @@ extern unsigned char IBM1047[];
 #else  /* EBCDIC */
 
 #if '0' != 48
-#error Host character set is not ASCII.
+ error Host character set is not ASCII.
 #endif
 
 #define TOASCII(c) (c)
diff --git a/aclocal.m4 b/aclocal.m4
index f05d4201..44322519 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -72,18 +72,20 @@ __argz_count __argz_stringify __argz_next])
    dnl Determine which catalog format we have (if any is needed)
    dnl For now we know about two different formats:
    dnl   Linux libc-5 and the normal X/Open format
-   test -d intl || mkdir intl
-   if test "$CATOBJEXT" = ".cat"; then
-     AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
-
-     dnl Transform the SED scripts while copying because some dumb SEDs
-     dnl cannot handle comments.
-     sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
+   if test "$USE_NLS" = "yes"; then
+     test -d intl || mkdir intl
+     if test "$CATOBJEXT" = ".cat"; then
+       AC_CHECK_HEADER(linux/version.h, msgformat=linux, msgformat=xopen)
+
+       dnl Transform the SED scripts while copying because some dumb SEDs
+       dnl cannot handle comments.
+       sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
+     fi
+     dnl po2tbl.sed is always needed.
+     rm -f intl/po2tbl.sed
+     sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
+       $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
    fi
-   dnl po2tbl.sed is always needed.
-   rm -f intl/po2tbl.sed
-   sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
-     $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
 
    dnl In the intl/makefile.in we have a special dependency which only
    dnl makes sense for gettext.  We comment this out for non-gettext
@@ -117,7 +119,6 @@ __argz_count __argz_stringify __argz_next])
 
    dnl Generate list of files to be processed by xgettext which will
    dnl be included in po/makefile.
-   test -d po || mkdir po
    if test "x$srcdir" != "x."; then
      if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
        posrcprefix="$srcdir/"
@@ -127,11 +128,13 @@ __argz_count __argz_stringify __argz_next])
    else
      posrcprefix="../"
    fi
-   rm -f po/POTFILES
-   sed -e "/^#/d" -e "/^\$/d" -e "s,.*,	$posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
-	< $srcdir/po/POTFILES.in > po/POTFILES
-  ])
-
+   if test "$USE_NLS" = "yes"; then
+     test -d po || mkdir po
+     rm -f po/POTFILES
+     sed -e "/^#/d" -e "/^\$/d" -e "s,.*,	$posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
+	  < $srcdir/po/POTFILES.in > po/POTFILES
+   fi
+])dnl
 dnl ---------------------------------------------------------------------------
 dnl
 dnl Check whether LC_MESSAGES is available in <locale.h>.
@@ -2020,6 +2023,30 @@ test $cf_cv_have_utmp != no && AC_DEFINE(HAVE_UTMP)
 test $cf_cv_have_utmp = utmpx && AC_DEFINE(UTMPX_FOR_UTMP)
 ])
 dnl ---------------------------------------------------------------------------
+dnl Check for ANSI stdarg.h vs varargs.h.  Note that some systems include
+dnl <varargs.h> within <stdarg.h>.
+AC_DEFUN([CF_VARARGS],
+[
+AC_CHECK_HEADERS(stdarg.h varargs.h)
+AC_MSG_CHECKING(for standard varargs)
+AC_CACHE_VAL(cf_cv_ansi_varargs,[
+	AC_TRY_COMPILE([
+#if HAVE_STDARG_H
+#include <stdarg.h>
+#else
+#if HAVE_VARARGS_H
+#include <varargs.h>
+#endif
+#endif
+		],
+		[return 0;} int foo(char *fmt,...){va_list args;va_start(args,fmt);va_end(args)],
+		[cf_cv_ansi_varargs=yes],
+		[cf_cv_ansi_varargs=no])
+	])
+AC_MSG_RESULT($cf_cv_ansi_varargs)
+test $cf_cv_ansi_varargs = yes && AC_DEFINE(ANSI_VARARGS)
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl Use AC_VERBOSE w/o the warnings
 AC_DEFUN([CF_VERBOSE],
 [test -n "$verbose" && echo "	$1" 1>&AC_FD_MSG
diff --git a/config.guess b/config.guess
index 08e8641e..6cd1ff28 100755
--- a/config.guess
+++ b/config.guess
@@ -225,7 +225,7 @@ EOF
     VAX*:ULTRIX*:*:*)
 	echo vax-dec-ultrix${UNAME_RELEASE}
 	exit 0 ;;
-    2020:CLIX:*:*)
+    2020:CLIX:*:* | 2430:CLIX:*:*)
 	echo clipper-intergraph-clix${UNAME_RELEASE}
 	exit 0 ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
diff --git a/config.hin b/config.hin
index 7699eb67..db636add 100644
--- a/config.hin
+++ b/config.hin
@@ -3,6 +3,7 @@
 #define LYNX_CFG_H 1
 
 #undef ALT_CHAR_SET		/* CF_ALT_CHAR_SET */
+#undef ANSI_VARARGS		/* CF_VARARGS */
 #undef ARCHIVE_ONLY		/* CF_ARG_DISABLE(dired-archive) */
 #undef CHMOD_PATH		/* CF_PATH_PROG(chmod) */
 #undef COLOR_CURSES		/* defined by CF_COLOR_CURSES */
@@ -30,11 +31,14 @@
 #undef GCC_UNUSED		/* CF_GCC_ATTRIBUTES */
 #undef GETGROUPS_T		/* AC_TYPE_GETGROUPS */
 #undef GZIP_PATH		/* CF_PATH_PROG(gzip) */
+#undef HAVE_ALLOCA		/* defined by AM_GNU_GETTEXT */
+#undef HAVE_ALLOCA_H		/* defined by AM_GNU_GETTEXT */
+#undef HAVE_ARGZ_H		/* defined by AM_GNU_GETTEXT */
 #undef HAVE_CATGETS		/* defined if you want to use non-GNU catgets */
 #undef HAVE_CBREAK
 #undef HAVE_CURSESX_H
 #undef HAVE_CUSERID
-#undef HAVE_DCGETTEXT
+#undef HAVE_DCGETTEXT		/* defined by AM_GNU_GETTEXT */
 #undef HAVE_DEFINE_KEY
 #undef HAVE_DIRENT_H		/* defined by AC_HEADER_DIRENT */
 #undef HAVE_FCNTL_H		/* have <fcntl.h> */
@@ -49,12 +53,21 @@
 #undef HAVE_LIMITS_H
 #undef HAVE_LOCALE_H
 #undef HAVE_LSTAT		/* defined by CF_FUNC_LSTAT */
+#undef HAVE_MALLOC_H		/* defined by AM_GNU_GETTEXT */
+#undef HAVE_MMAP		/* defined by AM_GNU_GETTEXT */
+#undef HAVE_MUNMAP		/* defined by AM_GNU_GETTEXT */
 #undef HAVE_NCURSES_H		/* defined if we include <ncurses.h> */
+#undef HAVE_NL_TYPES_H		/* defined by AM_GNU_GETTEXT */
 #undef HAVE_PUTENV
 #undef HAVE_READDIR
+#undef HAVE_SETENV		/* defined by AM_GNU_GETTEXT */
 #undef HAVE_SETLOCALE
 #undef HAVE_SIZECHANGE		/* defined by CF_SIZECHANGE */
+#undef HAVE_STDARG_H		/* CF_VARARGS */
 #undef HAVE_STDLIB_H
+#undef HAVE_STPCPY		/* defined by AM_GNU_GETTEXT */
+#undef HAVE_STRCASECMP		/* defined by AM_GNU_GETTEXT */
+#undef HAVE_STRCHR		/* defined by AM_GNU_GETTEXT */
 #undef HAVE_STRERROR
 #undef HAVE_STRING_H
 #undef HAVE_SYS_DIR_H		/* defined by AC_HEADER_DIRENT */
@@ -62,6 +75,7 @@
 #undef HAVE_SYS_FILIO_H		/* have <sys/filio.h> */
 #undef HAVE_SYS_IOCTL_H		/* have <sys/ioctl.h> */
 #undef HAVE_SYS_NDIR_H		/* defined by AC_HEADER_DIRENT */
+#undef HAVE_SYS_PARAM_H		/* defined by AM_GNU_GETTEXT */
 #undef HAVE_SYS_WAIT_H		/* have <sys/wait.h> */
 #undef HAVE_TERMIOS_H		/* have <termios.h> */
 #undef HAVE_TERMIO_H		/* have <termio.h> */
@@ -70,8 +84,13 @@
 #undef HAVE_UNISTD_H		/* have <unistd.h> */
 #undef HAVE_USE_DEFAULT_COLORS	/* ncurses extension */
 #undef HAVE_UTMP
+#undef HAVE_VALUES_H		/* defined by AM_GNU_GETTEXT */
+#undef HAVE_VARARGS_H		/* CF_VARARGS */
 #undef HAVE_WAITPID
 #undef HAVE_WBORDER
+#undef HAVE___ARGZ_COUNT	/* defined by AM_GNU_GETTEXT */
+#undef HAVE___ARGZ_NEXT		/* defined by AM_GNU_GETTEXT */
+#undef HAVE___ARGZ_STRINGIFY	/* defined by AM_GNU_GETTEXT */
 #undef IGNORE_CTRL_C		/* FIXME: make tests? */
 #undef INSTALL_ARGS		/* CF_PATH_PROG(install) */
 #undef INSTALL_PATH		/* CF_PATH_PROG(install) */
@@ -137,7 +156,9 @@
 #undef ZIP_PATH			/* CF_PATH_PROG(zip) */
 #undef _ALL_SOURCE		/* AC_AIX */
 #undef const			/* defined by AC_C_CONST */
+#undef inline			/* defined by AC_C_INLINE */
 #undef mode_t			/* defined by AC_TYPE_MODE_T */
+#undef off_t			/* defined by AC_TYPE_OFF_T */
 #undef pid_t			/* defined by AC_TYPE_PID_T */
 #undef uid_t			/* defined by AC_TYPE_UID_T */
 #undef vfork			/* defined by AC_FUNC_FORK */
diff --git a/configure b/configure
index aa5f85ce..b1d6343e 100755
--- a/configure
+++ b/configure
@@ -3142,21 +3142,22 @@ echo "configure:3122: checking for catalogs to be installed" >&5
    fi
    
 
-            test -d intl || mkdir intl
-   if test "$CATOBJEXT" = ".cat"; then
-     ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
+            if test "$USE_NLS" = "yes"; then
+     test -d intl || mkdir intl
+     if test "$CATOBJEXT" = ".cat"; then
+       ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6
-echo "configure:3150: checking for linux/version.h" >&5
+echo "configure:3151: checking for linux/version.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3155 "configure"
+#line 3156 "configure"
 #include "confdefs.h"
 #include <linux/version.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3160: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3161: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3179,11 +3180,12 @@ msgformat=xopen
 fi
 
 
-               sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
+                     sed -e '/^#/d' $srcdir/intl/$msgformat-msg.sed > intl/po2msg.sed
+     fi
+          rm -f intl/po2tbl.sed
+     sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
+       $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
    fi
-      rm -f intl/po2tbl.sed
-   sed -e '/^#.*[^\\]$/d' -e '/^#$/d' \
-     $srcdir/intl/po2tbl.sed.in > intl/po2tbl.sed
 
             if test "$PACKAGE" = "gettext"; then
      GT_NO="#NO#"
@@ -3207,8 +3209,7 @@ fi
       l=
    
 
-         test -d po || mkdir po
-   if test "x$srcdir" != "x."; then
+         if test "x$srcdir" != "x."; then
      if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
        posrcprefix="$srcdir/"
      else
@@ -3217,10 +3218,13 @@ fi
    else
      posrcprefix="../"
    fi
-   rm -f po/POTFILES
-   sed -e "/^#/d" -e "/^\$/d" -e "s,.*,	$posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
-	< $srcdir/po/POTFILES.in > po/POTFILES
-  
+   if test "$USE_NLS" = "yes"; then
+     test -d po || mkdir po
+     rm -f po/POTFILES
+     sed -e "/^#/d" -e "/^\$/d" -e "s,.*,	$posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
+	  < $srcdir/po/POTFILES.in > po/POTFILES
+   fi
+
 
 INTLDIR_MAKE=
 MSG_DIR_MAKE=
@@ -3232,17 +3236,17 @@ elif test "$USE_NLS" = yes ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:3236: checking for $ac_hdr" >&5
+echo "configure:3240: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3241 "configure"
+#line 3245 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3246: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3250: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3299,7 +3303,7 @@ EOF
 fi
 
 echo $ac_n "checking if you want full utility pathnames""... $ac_c" 1>&6
-echo "configure:3303: checking if you want full utility pathnames" >&5
+echo "configure:3307: checking if you want full utility pathnames" >&5
 
 # Check whether --enable-full-paths or --disable-full-paths was given.
 if test "${enable_full_paths+set}" = set; then
@@ -3320,7 +3324,7 @@ echo "$ac_t""$with_full_paths" 1>&6
 
 
 echo $ac_n "checking for system mailer""... $ac_c" 1>&6
-echo "configure:3324: checking for system mailer" >&5
+echo "configure:3328: checking for system mailer" >&5
 if eval "test \"`echo '$''{'cf_cv_SYSTEM_MAIL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3347,7 +3351,7 @@ EOF
 
 
 echo $ac_n "checking system mail flags""... $ac_c" 1>&6
-echo "configure:3351: checking system mail flags" >&5
+echo "configure:3355: checking system mail flags" >&5
 if eval "test \"`echo '$''{'cf_cv_system_mail_flags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3375,7 +3379,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "chmod", so it can be a program name with args.
 set dummy chmod; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3379: checking for $ac_word" >&5
+echo "configure:3383: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_CHMOD'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3406,7 +3410,7 @@ fi
 
 else
 	echo $ac_n "checking for chmod""... $ac_c" 1>&6
-echo "configure:3410: checking for chmod" >&5
+echo "configure:3414: checking for chmod" >&5
 	echo "$ac_t""$CHMOD" 1>&6
 fi
 
@@ -3448,7 +3452,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "compress", so it can be a program name with args.
 set dummy compress; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3452: checking for $ac_word" >&5
+echo "configure:3456: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3479,7 +3483,7 @@ fi
 
 else
 	echo $ac_n "checking for compress""... $ac_c" 1>&6
-echo "configure:3483: checking for compress" >&5
+echo "configure:3487: checking for compress" >&5
 	echo "$ac_t""$COMPRESS" 1>&6
 fi
 
@@ -3521,7 +3525,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "cp", so it can be a program name with args.
 set dummy cp; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3525: checking for $ac_word" >&5
+echo "configure:3529: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_COPY'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3552,7 +3556,7 @@ fi
 
 else
 	echo $ac_n "checking for cp""... $ac_c" 1>&6
-echo "configure:3556: checking for cp" >&5
+echo "configure:3560: checking for cp" >&5
 	echo "$ac_t""$COPY" 1>&6
 fi
 
@@ -3594,7 +3598,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gzip", so it can be a program name with args.
 set dummy gzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3598: checking for $ac_word" >&5
+echo "configure:3602: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3625,7 +3629,7 @@ fi
 
 else
 	echo $ac_n "checking for gzip""... $ac_c" 1>&6
-echo "configure:3629: checking for gzip" >&5
+echo "configure:3633: checking for gzip" >&5
 	echo "$ac_t""$GZIP" 1>&6
 fi
 
@@ -3667,7 +3671,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mkdir", so it can be a program name with args.
 set dummy mkdir; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3671: checking for $ac_word" >&5
+echo "configure:3675: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MKDIR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3698,7 +3702,7 @@ fi
 
 else
 	echo $ac_n "checking for mkdir""... $ac_c" 1>&6
-echo "configure:3702: checking for mkdir" >&5
+echo "configure:3706: checking for mkdir" >&5
 	echo "$ac_t""$MKDIR" 1>&6
 fi
 
@@ -3740,7 +3744,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "mv", so it can be a program name with args.
 set dummy mv; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3744: checking for $ac_word" >&5
+echo "configure:3748: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MV'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3771,7 +3775,7 @@ fi
 
 else
 	echo $ac_n "checking for mv""... $ac_c" 1>&6
-echo "configure:3775: checking for mv" >&5
+echo "configure:3779: checking for mv" >&5
 	echo "$ac_t""$MV" 1>&6
 fi
 
@@ -3813,7 +3817,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "rm", so it can be a program name with args.
 set dummy rm; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3817: checking for $ac_word" >&5
+echo "configure:3821: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_RM'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3844,7 +3848,7 @@ fi
 
 else
 	echo $ac_n "checking for rm""... $ac_c" 1>&6
-echo "configure:3848: checking for rm" >&5
+echo "configure:3852: checking for rm" >&5
 	echo "$ac_t""$RM" 1>&6
 fi
 
@@ -3886,7 +3890,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "tar", so it can be a program name with args.
 set dummy tar; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3890: checking for $ac_word" >&5
+echo "configure:3894: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TAR'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3917,7 +3921,7 @@ fi
 
 else
 	echo $ac_n "checking for tar""... $ac_c" 1>&6
-echo "configure:3921: checking for tar" >&5
+echo "configure:3925: checking for tar" >&5
 	echo "$ac_t""$TAR" 1>&6
 fi
 
@@ -3959,7 +3963,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "touch", so it can be a program name with args.
 set dummy touch; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3963: checking for $ac_word" >&5
+echo "configure:3967: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_TOUCH'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3990,7 +3994,7 @@ fi
 
 else
 	echo $ac_n "checking for touch""... $ac_c" 1>&6
-echo "configure:3994: checking for touch" >&5
+echo "configure:3998: checking for touch" >&5
 	echo "$ac_t""$TOUCH" 1>&6
 fi
 
@@ -4032,7 +4036,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "gunzip", so it can be a program name with args.
 set dummy gunzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4036: checking for $ac_word" >&5
+echo "configure:4040: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNCOMPRESS'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4063,7 +4067,7 @@ fi
 
 else
 	echo $ac_n "checking for gunzip""... $ac_c" 1>&6
-echo "configure:4067: checking for gunzip" >&5
+echo "configure:4071: checking for gunzip" >&5
 	echo "$ac_t""$UNCOMPRESS" 1>&6
 fi
 
@@ -4105,7 +4109,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "unzip", so it can be a program name with args.
 set dummy unzip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4109: checking for $ac_word" >&5
+echo "configure:4113: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UNZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4136,7 +4140,7 @@ fi
 
 else
 	echo $ac_n "checking for unzip""... $ac_c" 1>&6
-echo "configure:4140: checking for unzip" >&5
+echo "configure:4144: checking for unzip" >&5
 	echo "$ac_t""$UNZIP" 1>&6
 fi
 
@@ -4178,7 +4182,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "uudecode", so it can be a program name with args.
 set dummy uudecode; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4182: checking for $ac_word" >&5
+echo "configure:4186: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_UUDECODE'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4209,7 +4213,7 @@ fi
 
 else
 	echo $ac_n "checking for uudecode""... $ac_c" 1>&6
-echo "configure:4213: checking for uudecode" >&5
+echo "configure:4217: checking for uudecode" >&5
 	echo "$ac_t""$UUDECODE" 1>&6
 fi
 
@@ -4251,7 +4255,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zcat", so it can be a program name with args.
 set dummy zcat; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4255: checking for $ac_word" >&5
+echo "configure:4259: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZCAT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4282,7 +4286,7 @@ fi
 
 else
 	echo $ac_n "checking for zcat""... $ac_c" 1>&6
-echo "configure:4286: checking for zcat" >&5
+echo "configure:4290: checking for zcat" >&5
 	echo "$ac_t""$ZCAT" 1>&6
 fi
 
@@ -4324,7 +4328,7 @@ if test "$with_full_paths" = yes ; then
 	# Extract the first word of "zip", so it can be a program name with args.
 set dummy zip; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4328: checking for $ac_word" >&5
+echo "configure:4332: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_ZIP'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4355,7 +4359,7 @@ fi
 
 else
 	echo $ac_n "checking for zip""... $ac_c" 1>&6
-echo "configure:4359: checking for zip" >&5
+echo "configure:4363: checking for zip" >&5
 	echo "$ac_t""$ZIP" 1>&6
 fi
 
@@ -4416,7 +4420,7 @@ EOF
 if test -z "$GCC" ; then
 	
 echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
-echo "configure:4420: checking for ${CC-cc} option to accept ANSI C" >&5
+echo "configure:4424: checking for ${CC-cc} option to accept ANSI C" >&5
 if eval "test \"`echo '$''{'cf_cv_ansi_cc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4440,7 +4444,7 @@ for cf_arg in "-DCC_HAS_PROTOS" \
 do
 	CFLAGS="$cf_save_CFLAGS $cf_arg"
 	cat > conftest.$ac_ext <<EOF
-#line 4444 "configure"
+#line 4448 "configure"
 #include "confdefs.h"
 
 #ifndef CC_HAS_PROTOS
@@ -4456,7 +4460,7 @@ int main() {
 	struct s2 {int (*f) (double a);};
 ; return 0; }
 EOF
-if { (eval echo configure:4460: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4464: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ansi_cc="$cf_arg"; break
 else
@@ -4484,12 +4488,12 @@ fi
 
 fi
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:4488: checking for working const" >&5
+echo "configure:4492: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4493 "configure"
+#line 4497 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -4538,7 +4542,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:4542: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4546: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -4580,7 +4584,7 @@ clix*)
 	# contributed by Alex Matulich (matuli_a@marlin.navsea.navy.mil) also
 	# references -lmalloc and -lbsd.
 	echo $ac_n "checking for strcmp in -lc_s""... $ac_c" 1>&6
-echo "configure:4584: checking for strcmp in -lc_s" >&5
+echo "configure:4588: checking for strcmp in -lc_s" >&5
 ac_lib_var=`echo c_s'_'strcmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4588,7 +4592,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4592 "configure"
+#line 4596 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4599,7 +4603,7 @@ int main() {
 strcmp()
 ; return 0; }
 EOF
-if { (eval echo configure:4603: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4607: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4688,7 +4692,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:4692: checking for $ac_word" >&5
+echo "configure:4696: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4732,17 +4736,17 @@ sony-newsos*)
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:4736: checking for $ac_hdr" >&5
+echo "configure:4740: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4741 "configure"
+#line 4745 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4746: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4750: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4786,17 +4790,17 @@ ultrix*)
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:4790: checking for $ac_hdr" >&5
+echo "configure:4794: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4795 "configure"
+#line 4799 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4800: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4804: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4834,16 +4838,16 @@ if test -n "$TRY_CFLAGS" ; then
 	cf_save_CFLAGS="$CFLAGS"
 	CFLAGS="$CFLAGS $TRY_CFLAGS"
 	echo $ac_n "checking if we should use compile options $TRY_CFLAGS""... $ac_c" 1>&6
-echo "configure:4838: checking if we should use compile options $TRY_CFLAGS" >&5
+echo "configure:4842: checking if we should use compile options $TRY_CFLAGS" >&5
 	cat > conftest.$ac_ext <<EOF
-#line 4840 "configure"
+#line 4844 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 FILE *fp = stdin
 ; return 0; }
 EOF
-if { (eval echo configure:4847: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4851: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -4861,7 +4865,7 @@ fi
 ### Look for network libraries first, since some functions (such as gethostname)
 ### are used in a lot of places.
 echo $ac_n "checking if you want socks library""... $ac_c" 1>&6
-echo "configure:4865: checking if you want socks library" >&5
+echo "configure:4869: checking if you want socks library" >&5
 if eval "test \"`echo '$''{'cf_cv_use_libsocks'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4881,7 +4885,7 @@ fi
 echo "$ac_t""$cf_cv_use_libsocks" 1>&6
 
 echo $ac_n "checking if you want socks5 library""... $ac_c" 1>&6
-echo "configure:4885: checking if you want socks5 library" >&5
+echo "configure:4889: checking if you want socks5 library" >&5
 if eval "test \"`echo '$''{'cf_cv_use_libsocks5'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4947,7 +4951,7 @@ cat >> confdefs.h <<\EOF
 EOF
 
 cat > conftest.$ac_ext <<EOF
-#line 4951 "configure"
+#line 4955 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -4956,7 +4960,7 @@ int main() {
 	accept((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:4960: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:4964: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   :
 else
   echo "configure: failed program was:" >&5
@@ -4986,9 +4990,9 @@ cat >> confdefs.h <<\EOF
 EOF
 
 echo $ac_n "checking if the socks library uses socks4 prefix""... $ac_c" 1>&6
-echo "configure:4990: checking if the socks library uses socks4 prefix" >&5
+echo "configure:4994: checking if the socks library uses socks4 prefix" >&5
 cat > conftest.$ac_ext <<EOF
-#line 4992 "configure"
+#line 4996 "configure"
 #include "confdefs.h"
 
 #include <socks.h>
@@ -4997,7 +5001,7 @@ int main() {
 	Rinit((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:5001: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5005: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cat >> confdefs.h <<\EOF
 #define USE_SOCKS4_PREFIX 1
@@ -5009,14 +5013,14 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 5013 "configure"
+#line 5017 "configure"
 #include "confdefs.h"
 #include <socks.h>
 int main() {
 SOCKSinit((char *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:5020: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5024: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_use_socks4=no
 else
@@ -5085,7 +5089,7 @@ else
 	
 cf_test_netlibs=no
 echo $ac_n "checking for network libraries""... $ac_c" 1>&6
-echo "configure:5089: checking for network libraries" >&5
+echo "configure:5093: checking for network libraries" >&5
 if eval "test \"`echo '$''{'cf_cv_netlibs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5096,12 +5100,12 @@ cf_test_netlibs=yes
 for ac_func in gethostname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5100: checking for $ac_func" >&5
+echo "configure:5104: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5105 "configure"
+#line 5109 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -5124,7 +5128,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5128: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5132: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -5147,7 +5151,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostname in -lnsl""... $ac_c" 1>&6
-echo "configure:5151: checking for gethostname in -lnsl" >&5
+echo "configure:5155: checking for gethostname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5155,7 +5159,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5159 "configure"
+#line 5163 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5166,7 +5170,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:5170: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5174: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5199,7 +5203,7 @@ else
 	
 		
 echo $ac_n "checking for gethostname in -lsocket""... $ac_c" 1>&6
-echo "configure:5203: checking for gethostname in -lsocket" >&5
+echo "configure:5207: checking for gethostname in -lsocket" >&5
 ac_lib_var=`echo socket'_'gethostname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5207,7 +5211,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5211 "configure"
+#line 5215 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5218,7 +5222,7 @@ int main() {
 gethostname()
 ; return 0; }
 EOF
-if { (eval echo configure:5222: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5262,21 +5266,21 @@ done
 # FIXME:  sequent needs this library (i.e., -lsocket -linet -lnsl), but
 # I don't know the entrypoints - 97/7/22 TD
 echo $ac_n "checking for -linet""... $ac_c" 1>&6
-echo "configure:5266: checking for -linet" >&5
+echo "configure:5270: checking for -linet" >&5
 if eval "test \"`echo '$''{'ac_cv_lib_inet'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LIBS="$LIBS"
 LIBS="-linet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5273 "configure"
+#line 5277 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:5280: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5284: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_lib_inet=yes
 else
@@ -5299,12 +5303,12 @@ if test "$ac_cv_func_lsocket" != no ; then
 for ac_func in socket
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5303: checking for $ac_func" >&5
+echo "configure:5307: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5308 "configure"
+#line 5312 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -5327,7 +5331,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5331: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5335: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -5350,7 +5354,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
-echo "configure:5354: checking for socket in -lsocket" >&5
+echo "configure:5358: checking for socket in -lsocket" >&5
 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5358,7 +5362,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5362 "configure"
+#line 5366 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5369,7 +5373,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:5373: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5402,7 +5406,7 @@ else
 	
 		
 echo $ac_n "checking for socket in -lbsd""... $ac_c" 1>&6
-echo "configure:5406: checking for socket in -lbsd" >&5
+echo "configure:5410: checking for socket in -lbsd" >&5
 ac_lib_var=`echo bsd'_'socket | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5410,7 +5414,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbsd $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5414 "configure"
+#line 5418 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5421,7 +5425,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:5425: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5429: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5466,12 +5470,12 @@ fi
 for ac_func in gethostbyname
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5470: checking for $ac_func" >&5
+echo "configure:5474: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5475 "configure"
+#line 5479 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -5494,7 +5498,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5498: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5502: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -5517,7 +5521,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:5521: checking for gethostbyname in -lnsl" >&5
+echo "configure:5525: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5525,7 +5529,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5529 "configure"
+#line 5533 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5536,7 +5540,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:5540: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5544: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5577,12 +5581,12 @@ done
 for ac_func in strcasecmp
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:5581: checking for $ac_func" >&5
+echo "configure:5585: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5586 "configure"
+#line 5590 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -5605,7 +5609,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5609: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5613: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -5628,7 +5632,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for strcasecmp in -lresolv""... $ac_c" 1>&6
-echo "configure:5632: checking for strcasecmp in -lresolv" >&5
+echo "configure:5636: checking for strcasecmp in -lresolv" >&5
 ac_lib_var=`echo resolv'_'strcasecmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5636,7 +5640,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lresolv $cf_cv_netlibs $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5640 "configure"
+#line 5644 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5647,7 +5651,7 @@ int main() {
 strcasecmp()
 ; return 0; }
 EOF
-if { (eval echo configure:5651: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5655: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5693,7 +5697,7 @@ test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&6
 fi
 
 echo $ac_n "checking for screen type""... $ac_c" 1>&6
-echo "configure:5697: checking for screen type" >&5
+echo "configure:5701: checking for screen type" >&5
 if eval "test \"`echo '$''{'cf_cv_screen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5728,12 +5732,12 @@ case $cf_cv_screen in
 curses)
 	
 echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:5732: checking for initscr" >&5
+echo "configure:5736: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5737 "configure"
+#line 5741 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -5756,7 +5760,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5764: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -5777,7 +5781,7 @@ else
 case $host_os in #(vi
 freebsd*) #(vi
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:5781: checking for tgoto in -lmytinfo" >&5
+echo "configure:5785: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5785,7 +5789,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5789 "configure"
+#line 5793 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5796,7 +5800,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:5800: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5819,7 +5823,7 @@ fi
 	;;
 hpux10.*)
 	echo $ac_n "checking for initscr in -lcur_colr""... $ac_c" 1>&6
-echo "configure:5823: checking for initscr in -lcur_colr" >&5
+echo "configure:5827: checking for initscr in -lcur_colr" >&5
 ac_lib_var=`echo cur_colr'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5827,7 +5831,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcur_colr  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5831 "configure"
+#line 5835 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5838,7 +5842,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:5842: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5846: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5862,7 +5866,7 @@ else
   echo "$ac_t""no" 1>&6
 
 	echo $ac_n "checking for initscr in -lHcurses""... $ac_c" 1>&6
-echo "configure:5866: checking for initscr in -lHcurses" >&5
+echo "configure:5870: checking for initscr in -lHcurses" >&5
 ac_lib_var=`echo Hcurses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5870,7 +5874,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lHcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5874 "configure"
+#line 5878 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5881,7 +5885,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:5885: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5889: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5927,12 +5931,12 @@ if test ".$ac_cv_func_initscr" != .yes ; then
 	# Check for library containing tgoto.  Do this before curses library
 	# because it may be needed to link the test-case for initscr.
 	echo $ac_n "checking for tgoto""... $ac_c" 1>&6
-echo "configure:5931: checking for tgoto" >&5
+echo "configure:5935: checking for tgoto" >&5
 if eval "test \"`echo '$''{'ac_cv_func_tgoto'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5936 "configure"
+#line 5940 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char tgoto(); below.  */
@@ -5955,7 +5959,7 @@ tgoto();
 
 ; return 0; }
 EOF
-if { (eval echo configure:5959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:5963: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_tgoto=yes"
 else
@@ -5976,7 +5980,7 @@ else
 		for cf_term_lib in termcap termlib unknown
 		do
 			echo $ac_n "checking for tgoto in -l$cf_term_lib""... $ac_c" 1>&6
-echo "configure:5980: checking for tgoto in -l$cf_term_lib" >&5
+echo "configure:5984: checking for tgoto in -l$cf_term_lib" >&5
 ac_lib_var=`echo $cf_term_lib'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5984,7 +5988,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_term_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5988 "configure"
+#line 5992 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5995,7 +5999,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:5999: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6003: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6025,7 +6029,7 @@ fi
 	for cf_curs_lib in cursesX curses ncurses xcurses jcurses unknown
 	do
 		echo $ac_n "checking for initscr in -l$cf_curs_lib""... $ac_c" 1>&6
-echo "configure:6029: checking for initscr in -l$cf_curs_lib" >&5
+echo "configure:6033: checking for initscr in -l$cf_curs_lib" >&5
 ac_lib_var=`echo $cf_curs_lib'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6033,7 +6037,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$cf_curs_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6037 "configure"
+#line 6041 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6044,7 +6048,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6048: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6052: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6070,16 +6074,16 @@ fi
 	LIBS="-l$cf_curs_lib $cf_save_LIBS"
 	if test "$cf_term_lib" = unknown ; then
 		echo $ac_n "checking if we can link with $cf_curs_lib library""... $ac_c" 1>&6
-echo "configure:6074: checking if we can link with $cf_curs_lib library" >&5
+echo "configure:6078: checking if we can link with $cf_curs_lib library" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 6076 "configure"
+#line 6080 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6083: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6087: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -6093,16 +6097,16 @@ rm -f conftest*
 		test $cf_result = no && { echo "configure: error: Cannot link curses library" 1>&2; exit 1; }
 	elif test "$cf_term_lib" != predefined ; then
 		echo $ac_n "checking if we need both $cf_curs_lib and $cf_term_lib libraries""... $ac_c" 1>&6
-echo "configure:6097: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
+echo "configure:6101: checking if we need both $cf_curs_lib and $cf_term_lib libraries" >&5
 		cat > conftest.$ac_ext <<EOF
-#line 6099 "configure"
+#line 6103 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:6106: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6110: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=no
 else
@@ -6112,14 +6116,14 @@ else
   
 			LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
 			cat > conftest.$ac_ext <<EOF
-#line 6116 "configure"
+#line 6120 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6123: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6127: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -6141,14 +6145,14 @@ fi
 
 	
 echo $ac_n "checking for curses performance tradeoff""... $ac_c" 1>&6
-echo "configure:6145: checking for curses performance tradeoff" >&5
+echo "configure:6149: checking for curses performance tradeoff" >&5
 if eval "test \"`echo '$''{'cf_cv_curs_performance'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cf_cv_curs_performance=no
     cat > conftest.$ac_ext <<EOF
-#line 6152 "configure"
+#line 6156 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6162,11 +6166,11 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6166: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6170: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 6170 "configure"
+#line 6174 "configure"
 #include "confdefs.h"
 
 #define CURS_PERFORMANCE
@@ -6181,7 +6185,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6185: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6189: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_curs_performance=yes
 else
@@ -6206,13 +6210,13 @@ EOF
 ncurses)
 	
 echo $ac_n "checking for ncurses header file""... $ac_c" 1>&6
-echo "configure:6210: checking for ncurses header file" >&5
+echo "configure:6214: checking for ncurses header file" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 6216 "configure"
+#line 6220 "configure"
 #include "confdefs.h"
 #include <curses.h>
 int main() {
@@ -6229,7 +6233,7 @@ make an error
 	
 ; return 0; }
 EOF
-if { (eval echo configure:6233: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6237: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_header=predefined
 else
@@ -6315,7 +6319,7 @@ done
 	;;
 esac
 echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:6319: checking for ncurses version" >&5
+echo "configure:6323: checking for ncurses version" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6340,7 +6344,7 @@ Autoconf "old"
 #endif
 EOF
 	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:6344: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	{ (eval echo configure:6348: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
 	if test -f conftest.out ; then
 		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
 		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
@@ -6349,7 +6353,7 @@ EOF
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 6353 "configure"
+#line 6357 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -6372,7 +6376,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:6376: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:6380: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   
 	cf_cv_ncurses_version=`cat $cf_tempfile`
@@ -6397,7 +6401,7 @@ echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 cf_ncurses_LIBS=""
 cf_ncurses_SAVE="$LIBS"
 echo $ac_n "checking for Gpm_Open in -lgpm""... $ac_c" 1>&6
-echo "configure:6401: checking for Gpm_Open in -lgpm" >&5
+echo "configure:6405: checking for Gpm_Open in -lgpm" >&5
 ac_lib_var=`echo gpm'_'Gpm_Open | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6405,7 +6409,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6409 "configure"
+#line 6413 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6416,7 +6420,7 @@ int main() {
 Gpm_Open()
 ; return 0; }
 EOF
-if { (eval echo configure:6420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6424: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6432,7 +6436,7 @@ fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for initscr in -lgpm""... $ac_c" 1>&6
-echo "configure:6436: checking for initscr in -lgpm" >&5
+echo "configure:6440: checking for initscr in -lgpm" >&5
 ac_lib_var=`echo gpm'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6440,7 +6444,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgpm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6444 "configure"
+#line 6448 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6451,7 +6455,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6455: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6459: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6482,7 +6486,7 @@ freebsd*)
 	# This is only necessary if you are linking against an obsolete
 	# version of ncurses (but it should do no harm, since it's static).
 	echo $ac_n "checking for tgoto in -lmytinfo""... $ac_c" 1>&6
-echo "configure:6486: checking for tgoto in -lmytinfo" >&5
+echo "configure:6490: checking for tgoto in -lmytinfo" >&5
 ac_lib_var=`echo mytinfo'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6490,7 +6494,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmytinfo  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6494 "configure"
+#line 6498 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6501,7 +6505,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:6505: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6509: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6529,12 +6533,12 @@ LIBS="$cf_ncurses_LIBS $LIBS"
 	cf_cv_have_lib_ncurses=no
 	cf_libdir=""
 	echo $ac_n "checking for initscr""... $ac_c" 1>&6
-echo "configure:6533: checking for initscr" >&5
+echo "configure:6537: checking for initscr" >&5
 if eval "test \"`echo '$''{'ac_cv_func_initscr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6538 "configure"
+#line 6542 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char initscr(); below.  */
@@ -6557,7 +6561,7 @@ initscr();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6561: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6565: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_initscr=yes"
 else
@@ -6577,17 +6581,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for initscr in -lncurses""... $ac_c" 1>&6
-echo "configure:6581: checking for initscr in -lncurses" >&5
+echo "configure:6585: checking for initscr in -lncurses" >&5
 		LIBS="-lncurses $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 6584 "configure"
+#line 6588 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6591: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6595: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_ncurses=yes
@@ -6614,17 +6618,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/ncur
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lncurses in $cf_libdir""... $ac_c" 1>&6
-echo "configure:6618: checking for -lncurses in $cf_libdir" >&5
+echo "configure:6622: checking for -lncurses in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lncurses $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 6621 "configure"
+#line 6625 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6628: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6632: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_ncurses=yes
@@ -6656,7 +6660,7 @@ esac
 
 if test -n "$cf_ncurses_LIBS" ; then
 	echo $ac_n "checking if we can link ncurses without $cf_ncurses_LIBS""... $ac_c" 1>&6
-echo "configure:6660: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
+echo "configure:6664: checking if we can link ncurses without $cf_ncurses_LIBS" >&5
 	cf_ncurses_SAVE="$LIBS"
 	for p in $cf_ncurses_LIBS ; do
 		q=`echo $LIBS | sed -e 's/'$p' //' -e 's/'$p'$//'`
@@ -6665,14 +6669,14 @@ echo "configure:6660: checking if we can link ncurses without $cf_ncurses_LIBS"
 		fi
 	done
 	cat > conftest.$ac_ext <<EOF
-#line 6669 "configure"
+#line 6673 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:6676: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6680: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 else
@@ -6689,20 +6693,20 @@ fi
 slang)
 	
 echo $ac_n "checking for slang header file""... $ac_c" 1>&6
-echo "configure:6693: checking for slang header file" >&5
+echo "configure:6697: checking for slang header file" >&5
 if eval "test \"`echo '$''{'cf_cv_slang_header'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 6699 "configure"
+#line 6703 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 printf("%s\n", SLANG_VERSION)
 ; return 0; }
 EOF
-if { (eval echo configure:6706: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6710: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_slang_header=predefined
 else
@@ -6784,24 +6788,24 @@ else
   
 cf_cv_lib_termcap=none
 cat > conftest.$ac_ext <<EOF
-#line 6788 "configure"
+#line 6792 "configure"
 #include "confdefs.h"
 
 int main() {
 char *x=(char*)tgoto("",0,0)
 ; return 0; }
 EOF
-if { (eval echo configure:6795: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6799: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 6798 "configure"
+#line 6802 "configure"
 #include "confdefs.h"
 
 int main() {
 int x=tigetstr("")
 ; return 0; }
 EOF
-if { (eval echo configure:6805: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6809: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_termlib=terminfo
 else
@@ -6823,7 +6827,7 @@ else
 # HP-UX 9.x terminfo has setupterm, but no tigetstr.
 if test "$termlib" = none; then
 	echo $ac_n "checking for tigetstr in -ltermlib""... $ac_c" 1>&6
-echo "configure:6827: checking for tigetstr in -ltermlib" >&5
+echo "configure:6831: checking for tigetstr in -ltermlib" >&5
 ac_lib_var=`echo termlib'_'tigetstr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6831,7 +6835,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermlib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6835 "configure"
+#line 6839 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6842,7 +6846,7 @@ int main() {
 tigetstr()
 ; return 0; }
 EOF
-if { (eval echo configure:6846: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6850: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6865,7 +6869,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -ltermlib""... $ac_c" 1>&6
-echo "configure:6869: checking for tgoto in -ltermlib" >&5
+echo "configure:6873: checking for tgoto in -ltermlib" >&5
 ac_lib_var=`echo termlib'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6873,7 +6877,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermlib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6877 "configure"
+#line 6881 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6884,7 +6888,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:6888: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6908,7 +6912,7 @@ fi
 if test "$cf_cv_lib_termcap" = none; then
 	# allow curses library for broken AIX system.
 	echo $ac_n "checking for initscr in -lcurses""... $ac_c" 1>&6
-echo "configure:6912: checking for initscr in -lcurses" >&5
+echo "configure:6916: checking for initscr in -lcurses" >&5
 ac_lib_var=`echo curses'_'initscr | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6916,7 +6920,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6920 "configure"
+#line 6924 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6927,7 +6931,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:6931: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6935: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6948,7 +6952,7 @@ else
 fi
 
 	echo $ac_n "checking for tgoto in -ltermcap""... $ac_c" 1>&6
-echo "configure:6952: checking for tgoto in -ltermcap" >&5
+echo "configure:6956: checking for tgoto in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6956,7 +6960,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6960 "configure"
+#line 6964 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6967,7 +6971,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:6971: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:6975: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6990,7 +6994,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -ltermcap""... $ac_c" 1>&6
-echo "configure:6994: checking for tgoto in -ltermcap" >&5
+echo "configure:6998: checking for tgoto in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6998,7 +7002,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7002 "configure"
+#line 7006 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7009,7 +7013,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:7013: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7017: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7032,7 +7036,7 @@ fi
 fi
 if test "$cf_cv_lib_termcap" = none; then
 	echo $ac_n "checking for tgoto in -lncurses""... $ac_c" 1>&6
-echo "configure:7036: checking for tgoto in -lncurses" >&5
+echo "configure:7040: checking for tgoto in -lncurses" >&5
 ac_lib_var=`echo ncurses'_'tgoto | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7040,7 +7044,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lncurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7044 "configure"
+#line 7048 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7051,7 +7055,7 @@ int main() {
 tgoto()
 ; return 0; }
 EOF
-if { (eval echo configure:7055: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7059: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7083,12 +7087,12 @@ fi
 
 cf_slang_LIBS2="$LIBS"
 echo $ac_n "checking for acos""... $ac_c" 1>&6
-echo "configure:7087: checking for acos" >&5
+echo "configure:7091: checking for acos" >&5
 if eval "test \"`echo '$''{'ac_cv_func_acos'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7092 "configure"
+#line 7096 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char acos(); below.  */
@@ -7111,7 +7115,7 @@ acos();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7115: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7119: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_acos=yes"
 else
@@ -7130,7 +7134,7 @@ else
   echo "$ac_t""no" 1>&6
 
 echo $ac_n "checking for acos in -lm""... $ac_c" 1>&6
-echo "configure:7134: checking for acos in -lm" >&5
+echo "configure:7138: checking for acos in -lm" >&5
 ac_lib_var=`echo m'_'acos | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7138,7 +7142,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lm $LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7142 "configure"
+#line 7146 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7149,7 +7153,7 @@ int main() {
 acos()
 ; return 0; }
 EOF
-if { (eval echo configure:7153: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7157: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7189,12 +7193,12 @@ fi
 	cf_cv_have_lib_slang=no
 	cf_libdir=""
 	echo $ac_n "checking for SLtt_get_screen_size""... $ac_c" 1>&6
-echo "configure:7193: checking for SLtt_get_screen_size" >&5
+echo "configure:7197: checking for SLtt_get_screen_size" >&5
 if eval "test \"`echo '$''{'ac_cv_func_SLtt_get_screen_size'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7198 "configure"
+#line 7202 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char SLtt_get_screen_size(); below.  */
@@ -7217,7 +7221,7 @@ SLtt_get_screen_size();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7221: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7225: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_SLtt_get_screen_size=yes"
 else
@@ -7237,17 +7241,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for SLtt_get_screen_size in -lslang""... $ac_c" 1>&6
-echo "configure:7241: checking for SLtt_get_screen_size in -lslang" >&5
+echo "configure:7245: checking for SLtt_get_screen_size in -lslang" >&5
 		LIBS="-lslang $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 7244 "configure"
+#line 7248 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:7251: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7255: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_slang=yes
@@ -7274,17 +7278,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/slan
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lslang in $cf_libdir""... $ac_c" 1>&6
-echo "configure:7278: checking for -lslang in $cf_libdir" >&5
+echo "configure:7282: checking for -lslang in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lslang $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 7281 "configure"
+#line 7285 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:7288: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7292: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_slang=yes
@@ -7315,7 +7319,7 @@ esac
 
 cf_slang_LIBS3="$LIBS"
 echo $ac_n "checking if we can link slang without termcap""... $ac_c" 1>&6
-echo "configure:7319: checking if we can link slang without termcap" >&5
+echo "configure:7323: checking if we can link slang without termcap" >&5
 if test -n "`echo $cf_slang_LIBS1 | sed -e 's/ //g'`" ; then
 	cf_exclude=`echo ".$cf_slang_LIBS2" | sed -e "s@$cf_slang_LIBS1@@" -e 's@^.@@'`
 else
@@ -7323,14 +7327,14 @@ else
 fi
 LIBS=`echo ".$cf_slang_LIBS3" | sed -e "s@$cf_exclude@@" -e 's@^.@@'`
 cat > conftest.$ac_ext <<EOF
-#line 7327 "configure"
+#line 7331 "configure"
 #include "confdefs.h"
 #include <slang.h>
 int main() {
 SLtt_get_screen_size()
 ; return 0; }
 EOF
-if { (eval echo configure:7334: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7338: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_result=yes
 else
@@ -7350,7 +7354,7 @@ eval cf_libdir=$libdir
 cf_libdir=`echo $cf_libdir | sed -e s@'^NONE/'@$prefix/@ -e s@'^NONE/'@$ac_default_prefix/@`
 
 echo $ac_n "checking for location of config-file""... $ac_c" 1>&6
-echo "configure:7354: checking for location of config-file" >&5
+echo "configure:7358: checking for location of config-file" >&5
 LYNX_CFG_FILE=$cf_libdir/lynx.cfg
 cat >> confdefs.h <<EOF
 #define LYNX_CFG_FILE "$LYNX_CFG_FILE"
@@ -7360,12 +7364,12 @@ echo "$ac_t""$LYNX_CFG_FILE" 1>&6
 
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:7364: checking for ANSI C header files" >&5
+echo "configure:7368: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7369 "configure"
+#line 7373 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -7373,7 +7377,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7377: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7381: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7390,7 +7394,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 7394 "configure"
+#line 7398 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -7408,7 +7412,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 7412 "configure"
+#line 7416 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -7429,7 +7433,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 7433 "configure"
+#line 7437 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -7440,7 +7444,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:7444: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -7464,12 +7468,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:7468: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:7472: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7473 "configure"
+#line 7477 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -7478,7 +7482,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:7482: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7486: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -7503,12 +7507,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:7507: checking for $ac_hdr that defines DIR" >&5
+echo "configure:7511: checking for $ac_hdr that defines DIR" >&5
 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7512 "configure"
+#line 7516 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -7516,7 +7520,7 @@ int main() {
 DIR *dirp = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:7520: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7524: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
@@ -7541,7 +7545,7 @@ done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:7545: checking for opendir in -ldir" >&5
+echo "configure:7549: checking for opendir in -ldir" >&5
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7549,7 +7553,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7553 "configure"
+#line 7557 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7560,7 +7564,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:7564: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7568: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7582,7 +7586,7 @@ fi
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:7586: checking for opendir in -lx" >&5
+echo "configure:7590: checking for opendir in -lx" >&5
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7590,7 +7594,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7594 "configure"
+#line 7598 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7601,7 +7605,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:7605: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7609: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7640,17 +7644,17 @@ for ac_hdr in \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:7644: checking for $ac_hdr" >&5
+echo "configure:7648: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7649 "configure"
+#line 7653 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7654: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7658: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7678,13 +7682,13 @@ done
 
 
 echo $ac_n "checking termio.h and termios.h""... $ac_c" 1>&6
-echo "configure:7682: checking termio.h and termios.h" >&5
+echo "configure:7686: checking termio.h and termios.h" >&5
 if eval "test \"`echo '$''{'cf_cv_termio_and_termios'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 7688 "configure"
+#line 7692 "configure"
 #include "confdefs.h"
 
 #if HAVE_TERMIO_H
@@ -7697,7 +7701,7 @@ int main() {
 putchar (0x0a)
 ; return 0; }
 EOF
-if { (eval echo configure:7701: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7705: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_termio_and_termios=yes
 else
@@ -7720,17 +7724,17 @@ for ac_hdr in sys/wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:7724: checking for $ac_hdr" >&5
+echo "configure:7728: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7729 "configure"
+#line 7733 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7734: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7738: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7767,17 +7771,17 @@ for ac_hdr in wait.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:7771: checking for $ac_hdr" >&5
+echo "configure:7775: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7776 "configure"
+#line 7780 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7781: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7785: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7807,17 +7811,17 @@ for ac_hdr in waitstatus.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:7811: checking for $ac_hdr" >&5
+echo "configure:7815: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7816 "configure"
+#line 7820 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7821: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7825: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7858,13 +7862,13 @@ fi
 
 
 echo $ac_n "checking for union wait""... $ac_c" 1>&6
-echo "configure:7862: checking for union wait" >&5
+echo "configure:7866: checking for union wait" >&5
 if eval "test \"`echo '$''{'cf_cv_type_unionwait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 7868 "configure"
+#line 7872 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -7875,7 +7879,7 @@ int x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7879: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7883: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_type_unionwait=no
 	 echo compiles ok w/o union wait 1>&5
@@ -7886,7 +7890,7 @@ else
   rm -rf conftest*
   
 	cat > conftest.$ac_ext <<EOF
-#line 7890 "configure"
+#line 7894 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
@@ -7901,7 +7905,7 @@ union wait x;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:7905: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:7909: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_type_unionwait=yes
 	 echo compiles ok with union wait and possibly macros too 1>&5
@@ -7928,20 +7932,20 @@ EOF
 if test $cf_cv_type_unionwait = yes; then
 
 	echo $ac_n "checking if union wait can be used as wait-arg""... $ac_c" 1>&6
-echo "configure:7932: checking if union wait can be used as wait-arg" >&5
+echo "configure:7936: checking if union wait can be used as wait-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_wait'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 7938 "configure"
+#line 7942 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; wait(&x)
 ; return 0; }
 EOF
-if { (eval echo configure:7945: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7949: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_wait=yes
 else
@@ -7961,20 +7965,20 @@ EOF
 
 
 	echo $ac_n "checking if union wait can be used as waitpid-arg""... $ac_c" 1>&6
-echo "configure:7965: checking if union wait can be used as waitpid-arg" >&5
+echo "configure:7969: checking if union wait can be used as waitpid-arg" >&5
 	if eval "test \"`echo '$''{'cf_cv_arg_union_waitpid'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 		cat > conftest.$ac_ext <<EOF
-#line 7971 "configure"
+#line 7975 "configure"
 #include "confdefs.h"
 $cf_wait_headers
 int main() {
 union wait x; waitpid(0, &x, 0)
 ; return 0; }
 EOF
-if { (eval echo configure:7978: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:7982: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_arg_union_waitpid=yes
 else
@@ -7995,13 +7999,95 @@ EOF
 
 fi
 
+
+for ac_hdr in stdarg.h varargs.h
+do
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:8008: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftest.$ac_ext <<EOF
+#line 8013 "configure"
+#include "confdefs.h"
+#include <$ac_hdr>
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:8018: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out`
+if test -z "$ac_err"; then
+  rm -rf conftest*
+  eval "ac_cv_header_$ac_safe=yes"
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_header_$ac_safe=no"
+fi
+rm -f conftest*
+fi
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+  cat >> confdefs.h <<EOF
+#define $ac_tr_hdr 1
+EOF
+ 
+else
+  echo "$ac_t""no" 1>&6
+fi
+done
+
+echo $ac_n "checking for standard varargs""... $ac_c" 1>&6
+echo "configure:8045: checking for standard varargs" >&5
+if eval "test \"`echo '$''{'cf_cv_ansi_varargs'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+	cat > conftest.$ac_ext <<EOF
+#line 8051 "configure"
+#include "confdefs.h"
+
+#if HAVE_STDARG_H
+#include <stdarg.h>
+#else
+#if HAVE_VARARGS_H
+#include <varargs.h>
+#endif
+#endif
+		
+int main() {
+return 0;} int foo(char *fmt,...){va_list args;va_start(args,fmt);va_end(args)
+; return 0; }
+EOF
+if { (eval echo configure:8066: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  cf_cv_ansi_varargs=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  cf_cv_ansi_varargs=no
+fi
+rm -f conftest*
+	
+fi
+
+echo "$ac_t""$cf_cv_ansi_varargs" 1>&6
+test $cf_cv_ansi_varargs = yes && cat >> confdefs.h <<\EOF
+#define ANSI_VARARGS 1
+EOF
+
+
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:8000: checking for uid_t in sys/types.h" >&5
+echo "configure:8086: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8005 "configure"
+#line 8091 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -8030,7 +8116,7 @@ EOF
 fi
 
 echo $ac_n "checking type of array argument to getgroups""... $ac_c" 1>&6
-echo "configure:8034: checking type of array argument to getgroups" >&5
+echo "configure:8120: checking type of array argument to getgroups" >&5
 if eval "test \"`echo '$''{'ac_cv_type_getgroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8038,7 +8124,7 @@ else
   ac_cv_type_getgroups=cross
 else
   cat > conftest.$ac_ext <<EOF
-#line 8042 "configure"
+#line 8128 "configure"
 #include "confdefs.h"
 
 /* Thanks to Mike Rendell for this test.  */
@@ -8063,7 +8149,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:8067: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8153: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
     ac_cv_type_getgroups=gid_t
 else
@@ -8077,7 +8163,7 @@ fi
 
 if test $ac_cv_type_getgroups = cross; then
         cat > conftest.$ac_ext <<EOF
-#line 8081 "configure"
+#line 8167 "configure"
 #include "confdefs.h"
 #include <unistd.h>
 EOF
@@ -8101,12 +8187,12 @@ EOF
 
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:8105: checking for pid_t" >&5
+echo "configure:8191: checking for pid_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8110 "configure"
+#line 8196 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -8134,12 +8220,12 @@ EOF
 fi
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:8138: checking for uid_t in sys/types.h" >&5
+echo "configure:8224: checking for uid_t in sys/types.h" >&5
 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8143 "configure"
+#line 8229 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -8168,12 +8254,12 @@ EOF
 fi
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:8172: checking for mode_t" >&5
+echo "configure:8258: checking for mode_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8177 "configure"
+#line 8263 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -8204,17 +8290,17 @@ fi
 
 ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for vfork.h""... $ac_c" 1>&6
-echo "configure:8208: checking for vfork.h" >&5
+echo "configure:8294: checking for vfork.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8213 "configure"
+#line 8299 "configure"
 #include "confdefs.h"
 #include <vfork.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8218: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8304: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8239,18 +8325,18 @@ else
 fi
 
 echo $ac_n "checking for working vfork""... $ac_c" 1>&6
-echo "configure:8243: checking for working vfork" >&5
+echo "configure:8329: checking for working vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   if test "$cross_compiling" = yes; then
   echo $ac_n "checking for vfork""... $ac_c" 1>&6
-echo "configure:8249: checking for vfork" >&5
+echo "configure:8335: checking for vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8254 "configure"
+#line 8340 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vfork(); below.  */
@@ -8273,7 +8359,7 @@ vfork();
 
 ; return 0; }
 EOF
-if { (eval echo configure:8277: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8363: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_vfork=yes"
 else
@@ -8294,7 +8380,7 @@ fi
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 8298 "configure"
+#line 8384 "configure"
 #include "confdefs.h"
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
@@ -8389,7 +8475,7 @@ main() {
   }
 }
 EOF
-if { (eval echo configure:8393: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8479: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_vfork_works=yes
 else
@@ -8413,13 +8499,13 @@ fi
 
 
 echo $ac_n "checking if we should use fcntl or ioctl""... $ac_c" 1>&6
-echo "configure:8417: checking if we should use fcntl or ioctl" >&5
+echo "configure:8503: checking if we should use fcntl or ioctl" >&5
 if eval "test \"`echo '$''{'cf_cv_fionbio'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 8423 "configure"
+#line 8509 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -8431,7 +8517,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:8435: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8521: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fionbio=ioctl
 else
@@ -8440,7 +8526,7 @@ else
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 8444 "configure"
+#line 8530 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -8457,7 +8543,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:8461: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8547: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fionbio=fcntl
 else
@@ -8480,20 +8566,20 @@ EOF
 
 
 echo $ac_n "checking for broken/missing definition of remove""... $ac_c" 1>&6
-echo "configure:8484: checking for broken/missing definition of remove" >&5
+echo "configure:8570: checking for broken/missing definition of remove" >&5
 if eval "test \"`echo '$''{'cf_cv_baddef_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 8490 "configure"
+#line 8576 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:8497: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8583: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_baddef_remove=no
 else
@@ -8501,7 +8587,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 8505 "configure"
+#line 8591 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 		int __unlink(name) { return unlink(name); } 
@@ -8509,7 +8595,7 @@ int main() {
 remove("dummy")
 ; return 0; }
 EOF
-if { (eval echo configure:8513: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8599: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_baddef_remove=yes
 else
@@ -8533,13 +8619,13 @@ EOF
 
 
 echo $ac_n "checking for lstat""... $ac_c" 1>&6
-echo "configure:8537: checking for lstat" >&5
+echo "configure:8623: checking for lstat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_lstat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 8543 "configure"
+#line 8629 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -8548,7 +8634,7 @@ int main() {
 lstat(".", (struct stat *)0)
 ; return 0; }
 EOF
-if { (eval echo configure:8552: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8638: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   ac_cv_func_lstat=yes
 else
@@ -8580,12 +8666,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:8584: checking for $ac_func" >&5
+echo "configure:8670: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8589 "configure"
+#line 8675 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -8608,7 +8694,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:8612: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8698: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -8638,12 +8724,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:8642: checking for $ac_func" >&5
+echo "configure:8728: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8647 "configure"
+#line 8733 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -8666,7 +8752,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:8670: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:8756: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -8697,12 +8783,12 @@ for ac_func in strstr
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:8701: checking for $ac_func declaration" >&5
+echo "configure:8787: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8706 "configure"
+#line 8792 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -8711,11 +8797,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:8715: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8801: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 8719 "configure"
+#line 8805 "configure"
 #include "confdefs.h"
 #include <string.h>
 int main() {
@@ -8724,7 +8810,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:8728: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8814: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -8766,12 +8852,12 @@ for ac_func in getgrgid getgrnam
 do
 
 echo $ac_n "checking for $ac_func declaration""... $ac_c" 1>&6
-echo "configure:8770: checking for $ac_func declaration" >&5
+echo "configure:8856: checking for $ac_func declaration" >&5
 if eval "test \"`echo '$''{'ac_cv_func_decl_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8775 "configure"
+#line 8861 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -8782,11 +8868,11 @@ extern	int	${ac_func}();
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:8786: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8872: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 cat > conftest.$ac_ext <<EOF
-#line 8790 "configure"
+#line 8876 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -8797,7 +8883,7 @@ int	(*p)() = ${ac_func};
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:8801: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8887: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   
 eval "ac_cv_func_decl_$ac_func=yes"
@@ -8839,13 +8925,13 @@ done
 
 
 echo $ac_n "checking if TRUE/FALSE are defined""... $ac_c" 1>&6
-echo "configure:8843: checking if TRUE/FALSE are defined" >&5
+echo "configure:8929: checking if TRUE/FALSE are defined" >&5
 if eval "test \"`echo '$''{'cf_cv_bool_defs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 8849 "configure"
+#line 8935 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -8854,7 +8940,7 @@ int main() {
 int x = TRUE, y = FALSE
 ; return 0; }
 EOF
-if { (eval echo configure:8858: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8944: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_bool_defs=yes
 else
@@ -8881,13 +8967,13 @@ fi
 
 
 echo $ac_n "checking declaration of errno""... $ac_c" 1>&6
-echo "configure:8885: checking declaration of errno" >&5
+echo "configure:8971: checking declaration of errno" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_errno'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 8891 "configure"
+#line 8977 "configure"
 #include "confdefs.h"
 
 #if HAVE_STDLIB_H
@@ -8900,7 +8986,7 @@ int main() {
 long x = (long) errno
 ; return 0; }
 EOF
-if { (eval echo configure:8904: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:8990: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'errno'=yes'
 else
@@ -8930,9 +9016,9 @@ cf_result=`echo $cf_result | tr '[a-z]' '[A-Z]'`
 EOF
 
     echo $ac_n "checking existence of errno""... $ac_c" 1>&6
-echo "configure:8934: checking existence of errno" >&5
+echo "configure:9020: checking existence of errno" >&5
         cat > conftest.$ac_ext <<EOF
-#line 8936 "configure"
+#line 9022 "configure"
 #include "confdefs.h"
 
 #undef errno
@@ -8942,7 +9028,7 @@ int main() {
 errno = 2
 ; return 0; }
 EOF
-if { (eval echo configure:8946: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9032: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval 'cf_cv_have_'errno'=yes'
 else
@@ -8972,20 +9058,20 @@ EOF
 
 
 echo $ac_n "checking for setlocale()""... $ac_c" 1>&6
-echo "configure:8976: checking for setlocale()" >&5
+echo "configure:9062: checking for setlocale()" >&5
 if eval "test \"`echo '$''{'cf_cv_locale'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 8982 "configure"
+#line 9068 "configure"
 #include "confdefs.h"
 #include <locale.h>
 int main() {
 setlocale(LC_ALL, "")
 ; return 0; }
 EOF
-if { (eval echo configure:8989: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9075: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_locale=yes
 else
@@ -9006,13 +9092,13 @@ EOF
 
 
 echo $ac_n "checking if NGROUPS is defined""... $ac_c" 1>&6
-echo "configure:9010: checking if NGROUPS is defined" >&5
+echo "configure:9096: checking if NGROUPS is defined" >&5
 if eval "test \"`echo '$''{'cf_cv_ngroups'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 9016 "configure"
+#line 9102 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -9026,7 +9112,7 @@ int main() {
 int x = NGROUPS
 ; return 0; }
 EOF
-if { (eval echo configure:9030: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9116: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=yes
 else
@@ -9034,7 +9120,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 9038 "configure"
+#line 9124 "configure"
 #include "confdefs.h"
 
 #if HAVE_SYS_PARAM_H
@@ -9048,7 +9134,7 @@ int main() {
 int x = NGROUPS_MAX
 ; return 0; }
 EOF
-if { (eval echo configure:9052: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9138: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ngroups=NGROUPS_MAX
 else
@@ -9082,13 +9168,13 @@ for cf_name in sys_nerr sys_errlist
 do
     
 echo $ac_n "checking declaration of $cf_name""... $ac_c" 1>&6
-echo "configure:9086: checking declaration of $cf_name" >&5
+echo "configure:9172: checking declaration of $cf_name" >&5
 if eval "test \"`echo '$''{'cf_cv_dcl_$cf_name'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
     cat > conftest.$ac_ext <<EOF
-#line 9092 "configure"
+#line 9178 "configure"
 #include "confdefs.h"
 
 #if HAVE_STDLIB_H
@@ -9101,7 +9187,7 @@ int main() {
 long x = (long) $cf_name
 ; return 0; }
 EOF
-if { (eval echo configure:9105: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9191: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval 'cf_cv_dcl_'$cf_name'=yes'
 else
@@ -9131,9 +9217,9 @@ cf_result=`echo $cf_result | tr '[a-z]' '[A-Z]'`
 EOF
 
     echo $ac_n "checking existence of $cf_name""... $ac_c" 1>&6
-echo "configure:9135: checking existence of $cf_name" >&5
+echo "configure:9221: checking existence of $cf_name" >&5
         cat > conftest.$ac_ext <<EOF
-#line 9137 "configure"
+#line 9223 "configure"
 #include "confdefs.h"
 
 #undef $cf_name
@@ -9143,7 +9229,7 @@ int main() {
 $cf_name = 2
 ; return 0; }
 EOF
-if { (eval echo configure:9147: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9233: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval 'cf_cv_have_'$cf_name'=yes'
 else
@@ -9174,13 +9260,13 @@ done
 
 
 echo $ac_n "checking if struct utmp is declared""... $ac_c" 1>&6
-echo "configure:9178: checking if struct utmp is declared" >&5
+echo "configure:9264: checking if struct utmp is declared" >&5
 if eval "test \"`echo '$''{'cf_cv_have_utmp'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 9184 "configure"
+#line 9270 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -9189,7 +9275,7 @@ int main() {
 struct utmp x; char *y = &x.ut_host[0]
 ; return 0; }
 EOF
-if { (eval echo configure:9193: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9279: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=yes
 else
@@ -9197,14 +9283,14 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 9201 "configure"
+#line 9287 "configure"
 #include "confdefs.h"
 #include <utmpx.h>
 int main() {
 struct utmpx x; char *y = &x.ut_host[0]
 ; return 0; }
 EOF
-if { (eval echo configure:9208: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9294: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_have_utmp=utmpx
 else
@@ -9233,13 +9319,13 @@ EOF
 
 
 echo $ac_n "checking if character set is EBCDIC""... $ac_c" 1>&6
-echo "configure:9237: checking if character set is EBCDIC" >&5
+echo "configure:9323: checking if character set is EBCDIC" >&5
 if eval "test \"`echo '$''{'cf_cv_ebcdic'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 9243 "configure"
+#line 9329 "configure"
 #include "confdefs.h"
  
 int main() {
@@ -9252,7 +9338,7 @@ int main() {
 #endif 
 ; return 0; }
 EOF
-if { (eval echo configure:9256: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9342: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
    # TryCompile action if true
 cf_cv_ebcdic=yes 
@@ -9286,7 +9372,7 @@ esac
 if test $cf_cv_screen != slang ; then
 	
 echo $ac_n "checking if curses supports alternate-character set""... $ac_c" 1>&6
-echo "configure:9290: checking if curses supports alternate-character set" >&5
+echo "configure:9376: checking if curses supports alternate-character set" >&5
 if eval "test \"`echo '$''{'cf_cv_alt_char_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9294,7 +9380,7 @@ else
 for mapname in acs_map _acs_map
 do
 	cat > conftest.$ac_ext <<EOF
-#line 9298 "configure"
+#line 9384 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -9303,7 +9389,7 @@ int main() {
 chtype x = $mapname['l']; $mapname['m'] = 0
 ; return 0; }
 EOF
-if { (eval echo configure:9307: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9393: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_alt_char_set=$mapname
 	 break
@@ -9326,13 +9412,13 @@ EOF
 
 	
 echo $ac_n "checking if curses supports fancy attributes""... $ac_c" 1>&6
-echo "configure:9330: checking if curses supports fancy attributes" >&5
+echo "configure:9416: checking if curses supports fancy attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_fancy_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 9336 "configure"
+#line 9422 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -9345,7 +9431,7 @@ attrset(A_UNDERLINE|A_BOLD|A_REVERSE);
 	
 ; return 0; }
 EOF
-if { (eval echo configure:9349: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9435: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_fancy_curses=yes
 else
@@ -9365,7 +9451,7 @@ EOF
 
 
 	echo $ac_n "checking for ncurses version""... $ac_c" 1>&6
-echo "configure:9369: checking for ncurses version" >&5
+echo "configure:9455: checking for ncurses version" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9390,7 +9476,7 @@ Autoconf "old"
 #endif
 EOF
 	cf_try="$ac_cpp conftest.$ac_ext 2>&5 | grep '^Autoconf ' >conftest.out"
-	{ (eval echo configure:9394: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
+	{ (eval echo configure:9480: \"$cf_try\") 1>&5; (eval $cf_try) 2>&5; }
 	if test -f conftest.out ; then
 		cf_out=`cat conftest.out | sed -e 's@^Autoconf @@' -e 's@^[^"]*"@@' -e 's@".*@@'`
 		test -n "$cf_out" && cf_cv_ncurses_version="$cf_out"
@@ -9399,7 +9485,7 @@ EOF
 
 else
   cat > conftest.$ac_ext <<EOF
-#line 9403 "configure"
+#line 9489 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -9422,7 +9508,7 @@ int main()
 	exit(0);
 }
 EOF
-if { (eval echo configure:9426: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9512: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
 then
   
 	cf_cv_ncurses_version=`cat $cf_tempfile`
@@ -9442,13 +9528,13 @@ echo "$ac_t""$cf_cv_ncurses_version" 1>&6
 
 if test "$cf_cv_ncurses_version" != no ; then
 echo $ac_n "checking for obsolete/broken version of ncurses""... $ac_c" 1>&6
-echo "configure:9446: checking for obsolete/broken version of ncurses" >&5
+echo "configure:9532: checking for obsolete/broken version of ncurses" >&5
 if eval "test \"`echo '$''{'cf_cv_ncurses_broken'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 cat > conftest.$ac_ext <<EOF
-#line 9452 "configure"
+#line 9538 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -9462,7 +9548,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9466: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9552: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_ncurses_broken=no
 else
@@ -9487,13 +9573,13 @@ fi
 
 	
 echo $ac_n "checking if curses supports color attributes""... $ac_c" 1>&6
-echo "configure:9491: checking if curses supports color attributes" >&5
+echo "configure:9577: checking if curses supports color attributes" >&5
 if eval "test \"`echo '$''{'cf_cv_color_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 9497 "configure"
+#line 9583 "configure"
 #include "confdefs.h"
 
 #include <${cf_cv_ncurses_header-curses.h}>
@@ -9508,7 +9594,7 @@ chtype x = COLOR_BLUE;
 	
 ; return 0; }
 EOF
-if { (eval echo configure:9512: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9598: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_color_curses=yes
 else
@@ -9535,7 +9621,7 @@ fi
 
 	
 echo $ac_n "checking declaration of size-change""... $ac_c" 1>&6
-echo "configure:9539: checking declaration of size-change" >&5
+echo "configure:9625: checking declaration of size-change" >&5
 if eval "test \"`echo '$''{'cf_cv_sizechange'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9549,7 +9635,7 @@ do
     CFLAGS="$cf_save_CFLAGS"
     test -n "$cf_opts" && CFLAGS="$CFLAGS -D$cf_opts"
     cat > conftest.$ac_ext <<EOF
-#line 9553 "configure"
+#line 9639 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if HAVE_TERMIOS_H
@@ -9588,7 +9674,7 @@ int main() {
 	
 ; return 0; }
 EOF
-if { (eval echo configure:9592: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:9678: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_sizechange=yes
 else
@@ -9620,20 +9706,20 @@ EOF
 
 	
 echo $ac_n "checking if ttytype is declared in curses library""... $ac_c" 1>&6
-echo "configure:9624: checking if ttytype is declared in curses library" >&5
+echo "configure:9710: checking if ttytype is declared in curses library" >&5
 if eval "test \"`echo '$''{'cf_cv_have_ttytype'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
 	cat > conftest.$ac_ext <<EOF
-#line 9630 "configure"
+#line 9716 "configure"
 #include "confdefs.h"
 #include <${cf_cv_ncurses_header-curses.h}>
 int main() {
 char *x = &ttytype[1]; *x = 1
 ; return 0; }
 EOF
-if { (eval echo configure:9637: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9723: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   cf_cv_have_ttytype=yes
 else
@@ -9661,12 +9747,12 @@ EOF
 	
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:9665: checking for $ac_func" >&5
+echo "configure:9751: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 9670 "configure"
+#line 9756 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -9689,7 +9775,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:9693: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:9779: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -9719,7 +9805,7 @@ fi
 
 
 echo $ac_n "checking if new-style forms-based options screen should be used""... $ac_c" 1>&6
-echo "configure:9723: checking if new-style forms-based options screen should be used" >&5
+echo "configure:9809: checking if new-style forms-based options screen should be used" >&5
 
 # Check whether --enable-forms-options or --disable-forms-options was given.
 if test "${enable_forms_options+set}" = set; then
@@ -9743,7 +9829,7 @@ EOF
 
 
 echo $ac_n "checking if old-style options menu should be used""... $ac_c" 1>&6
-echo "configure:9747: checking if old-style options menu should be used" >&5
+echo "configure:9833: checking if old-style options menu should be used" >&5
 
 # Check whether --enable-menu-options or --disable-menu-options was given.
 if test "${enable_menu_options+set}" = set; then
@@ -9767,7 +9853,7 @@ EOF
 
 
 echo $ac_n "checking if configuration info should be browsable""... $ac_c" 1>&6
-echo "configure:9771: checking if configuration info should be browsable" >&5
+echo "configure:9857: checking if configuration info should be browsable" >&5
 
 # Check whether --enable-config-info or --disable-config-info was given.
 if test "${enable_config_info+set}" = set; then
@@ -9791,7 +9877,7 @@ EOF
 
 
 echo $ac_n "checking if experimental alternative line-edit bindings should be used""... $ac_c" 1>&6
-echo "configure:9795: checking if experimental alternative line-edit bindings should be used" >&5
+echo "configure:9881: checking if experimental alternative line-edit bindings should be used" >&5
 
 # Check whether --enable-alt-bindings or --disable-alt-bindings was given.
 if test "${enable_alt_bindings+set}" = set; then
@@ -9815,7 +9901,7 @@ EOF
 
 
 echo $ac_n "checking if experimental keyboard-layout logic should be used""... $ac_c" 1>&6
-echo "configure:9819: checking if experimental keyboard-layout logic should be used" >&5
+echo "configure:9905: checking if experimental keyboard-layout logic should be used" >&5
 
 # Check whether --enable-kbd-layout or --disable-kbd-layout was given.
 if test "${enable_kbd_layout+set}" = set; then
@@ -9839,7 +9925,7 @@ EOF
 
 
 echo $ac_n "checking if experimental persistent-cookie logic should be used""... $ac_c" 1>&6
-echo "configure:9843: checking if experimental persistent-cookie logic should be used" >&5
+echo "configure:9929: checking if experimental persistent-cookie logic should be used" >&5
 
 # Check whether --enable-persistent-cookies or --disable-persistent-cookies was given.
 if test "${enable_persistent_cookies+set}" = set; then
@@ -9863,7 +9949,7 @@ EOF
 
 
 echo $ac_n "checking if color-style code should be used""... $ac_c" 1>&6
-echo "configure:9867: checking if color-style code should be used" >&5
+echo "configure:9953: checking if color-style code should be used" >&5
 
 # Check whether --enable-color-style or --disable-color-style was given.
 if test "${enable_color_style+set}" = set; then
@@ -9911,7 +9997,7 @@ EOF
 	echo "$ac_t""yes" 1>&6
 
 	echo $ac_n "checking for location of style-sheet file""... $ac_c" 1>&6
-echo "configure:9915: checking for location of style-sheet file" >&5
+echo "configure:10001: checking for location of style-sheet file" >&5
 	LYNX_LSS_FILE=$cf_libdir/lynx.lss
 	cat >> confdefs.h <<EOF
 #define LYNX_LSS_FILE "$LYNX_LSS_FILE"
@@ -9924,7 +10010,7 @@ esac
 
 
 echo $ac_n "checking if partial-display should be used""... $ac_c" 1>&6
-echo "configure:9928: checking if partial-display should be used" >&5
+echo "configure:10014: checking if partial-display should be used" >&5
 
 # Check whether --enable-partial or --disable-partial was given.
 if test "${enable_partial+set}" = set; then
@@ -9953,7 +10039,7 @@ test ".$ac_cv_func_use_default_colors" = ".yes" && use_dft_colors=maybe
 
 if test "$use_dft_colors" != no ; then
 echo $ac_n "checking if you want to use default-colors""... $ac_c" 1>&6
-echo "configure:9957: checking if you want to use default-colors" >&5
+echo "configure:10043: checking if you want to use default-colors" >&5
 
 # Check whether --enable-default-colors or --disable-default-colors was given.
 if test "${enable_default_colors+set}" = set; then
@@ -9978,7 +10064,7 @@ EOF
 fi
 
 echo $ac_n "checking if you want to use extended HTML DTD logic""... $ac_c" 1>&6
-echo "configure:9982: checking if you want to use extended HTML DTD logic" >&5
+echo "configure:10068: checking if you want to use extended HTML DTD logic" >&5
 
 # Check whether --enable-extended-dtd or --disable-extended-dtd was given.
 if test "${enable_extended_dtd+set}" = set; then
@@ -10002,7 +10088,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use external commands""... $ac_c" 1>&6
-echo "configure:10006: checking if you want to use external commands" >&5
+echo "configure:10092: checking if you want to use external commands" >&5
 
 # Check whether --enable-externs or --disable-externs was given.
 if test "${enable_externs+set}" = set; then
@@ -10026,7 +10112,7 @@ EOF
 
 
 echo $ac_n "checking if you want to use setfont support""... $ac_c" 1>&6
-echo "configure:10030: checking if you want to use setfont support" >&5
+echo "configure:10116: checking if you want to use setfont support" >&5
 
 # Check whether --enable-font-switch or --disable-font-switch was given.
 if test "${enable_font_switch+set}" = set; then
@@ -10050,7 +10136,7 @@ EOF
 
 
 echo $ac_n "checking if you want cgi-link support""... $ac_c" 1>&6
-echo "configure:10054: checking if you want cgi-link support" >&5
+echo "configure:10140: checking if you want cgi-link support" >&5
 
 # Check whether --enable-cgi-links or --disable-cgi-links was given.
 if test "${enable_cgi_links+set}" = set; then
@@ -10069,7 +10155,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if you want exec-links support""... $ac_c" 1>&6
-echo "configure:10073: checking if you want exec-links support" >&5
+echo "configure:10159: checking if you want exec-links support" >&5
 
 # Check whether --enable-exec-links or --disable-exec-links was given.
 if test "${enable_exec_links+set}" = set; then
@@ -10088,7 +10174,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if you want exec-scripts support""... $ac_c" 1>&6
-echo "configure:10092: checking if you want exec-scripts support" >&5
+echo "configure:10178: checking if you want exec-scripts support" >&5
 
 # Check whether --enable-exec-scripts or --disable-exec-scripts was given.
 if test "${enable_exec_scripts+set}" = set; then
@@ -10107,7 +10193,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if you want internal-links feature""... $ac_c" 1>&6
-echo "configure:10111: checking if you want internal-links feature" >&5
+echo "configure:10197: checking if you want internal-links feature" >&5
 
 # Check whether --enable-internal-links or --disable-internal-links was given.
 if test "${enable_internal_links+set}" = set; then
@@ -10131,7 +10217,7 @@ EOF
 
 
 echo $ac_n "checking if you want to fork NSL requests""... $ac_c" 1>&6
-echo "configure:10135: checking if you want to fork NSL requests" >&5
+echo "configure:10221: checking if you want to fork NSL requests" >&5
 
 # Check whether --enable-nsl-fork or --disable-nsl-fork was given.
 if test "${enable_nsl_fork+set}" = set; then
@@ -10155,7 +10241,7 @@ EOF
 
 
 echo $ac_n "checking if you want to log URL requests via syslog""... $ac_c" 1>&6
-echo "configure:10159: checking if you want to log URL requests via syslog" >&5
+echo "configure:10245: checking if you want to log URL requests via syslog" >&5
 
 # Check whether --enable-syslog or --disable-syslog was given.
 if test "${enable_syslog+set}" = set; then
@@ -10179,7 +10265,7 @@ EOF
 
 
 echo $ac_n "checking if you want to underline links""... $ac_c" 1>&6
-echo "configure:10183: checking if you want to underline links" >&5
+echo "configure:10269: checking if you want to underline links" >&5
 
 # Check whether --enable-underlines or --disable-underlines was given.
 if test "${enable_underlines+set}" = set; then
@@ -10203,7 +10289,7 @@ EOF
 
 
 echo $ac_n "checking if help files should be gzip'ed""... $ac_c" 1>&6
-echo "configure:10207: checking if help files should be gzip'ed" >&5
+echo "configure:10293: checking if help files should be gzip'ed" >&5
 
 # Check whether --enable-gzip-help or --disable-gzip-help was given.
 if test "${enable_gzip_help+set}" = set; then
@@ -10232,7 +10318,7 @@ fi
 
 
 echo $ac_n "checking if you want to use zlib for decompression of some gzip files""... $ac_c" 1>&6
-echo "configure:10236: checking if you want to use zlib for decompression of some gzip files" >&5
+echo "configure:10322: checking if you want to use zlib for decompression of some gzip files" >&5
 
 # Check whether --with-zlib or --without-zlib was given.
 if test "${with_zlib+set}" = set; then
@@ -10249,12 +10335,12 @@ if test ".$use_zlib" != ".no" ; then
 	cf_cv_have_lib_z=no
 	cf_libdir=""
 	echo $ac_n "checking for gzopen""... $ac_c" 1>&6
-echo "configure:10253: checking for gzopen" >&5
+echo "configure:10339: checking for gzopen" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gzopen'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10258 "configure"
+#line 10344 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gzopen(); below.  */
@@ -10277,7 +10363,7 @@ gzopen();
 
 ; return 0; }
 EOF
-if { (eval echo configure:10281: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:10367: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   eval "ac_cv_func_gzopen=yes"
 else
@@ -10297,17 +10383,17 @@ else
 
 		cf_save_LIBS="$LIBS"
 		echo $ac_n "checking for gzopen in -lz""... $ac_c" 1>&6
-echo "configure:10301: checking for gzopen in -lz" >&5
+echo "configure:10387: checking for gzopen in -lz" >&5
 		LIBS="-lz $LIBS"
 		cat > conftest.$ac_ext <<EOF
-#line 10304 "configure"
+#line 10390 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:10311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:10397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 cf_cv_have_lib_z=yes
@@ -10334,17 +10420,17 @@ test "$prefix" != /usr           && cf_search="$cf_search /usr/lib /usr/lib/z"
 			for cf_libdir in $cf_search
 			do
 				echo $ac_n "checking for -lz in $cf_libdir""... $ac_c" 1>&6
-echo "configure:10338: checking for -lz in $cf_libdir" >&5
+echo "configure:10424: checking for -lz in $cf_libdir" >&5
 				LIBS="-L$cf_libdir -lz $cf_save_LIBS"
 				cat > conftest.$ac_ext <<EOF
-#line 10341 "configure"
+#line 10427 "configure"
 #include "confdefs.h"
 #include <zlib.h>
 int main() {
 gzopen("name","mode")
 ; return 0; }
 EOF
-if { (eval echo configure:10348: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
+if { (eval echo configure:10434: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
   rm -rf conftest*
   echo "$ac_t""yes" 1>&6
 			 		 cf_cv_have_lib_z=yes
@@ -10385,7 +10471,7 @@ fi
 # All DirEd functions that were enabled on compilation can be disabled
 # or modified at run time via DIRED_MENU symbols in lynx.cfg.
 echo $ac_n "checking if directory-editor code should be used""... $ac_c" 1>&6
-echo "configure:10389: checking if directory-editor code should be used" >&5
+echo "configure:10475: checking if directory-editor code should be used" >&5
 
 # Check whether --enable-dired or --disable-dired was given.
 if test "${enable_dired+set}" = set; then
@@ -10411,7 +10497,7 @@ EOF
 
 
 	echo $ac_n "checking if you wish to allow extracting from archives via DirEd""... $ac_c" 1>&6
-echo "configure:10415: checking if you wish to allow extracting from archives via DirEd" >&5
+echo "configure:10501: checking if you wish to allow extracting from archives via DirEd" >&5
 	
 # Check whether --enable-dired-archive or --disable-dired-archive was given.
 if test "${enable_dired_archive+set}" = set; then
@@ -10430,7 +10516,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow users to redefine DirEd keys""... $ac_c" 1>&6
-echo "configure:10434: checking if you wish to allow users to redefine DirEd keys" >&5
+echo "configure:10520: checking if you wish to allow users to redefine DirEd keys" >&5
 	
 # Check whether --enable-dired-override or --disable-dired-override was given.
 if test "${enable_dired_override+set}" = set; then
@@ -10456,7 +10542,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow permissions commands via DirEd""... $ac_c" 1>&6
-echo "configure:10460: checking if you wish to allow permissions commands via DirEd" >&5
+echo "configure:10546: checking if you wish to allow permissions commands via DirEd" >&5
 	
 # Check whether --enable-dired-permit or --disable-dired-permit was given.
 if test "${enable_dired_permit+set}" = set; then
@@ -10482,7 +10568,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow executable-permission commands via DirEd""... $ac_c" 1>&6
-echo "configure:10486: checking if you wish to allow executable-permission commands via DirEd" >&5
+echo "configure:10572: checking if you wish to allow executable-permission commands via DirEd" >&5
 	
 # Check whether --enable-dired-xpermit or --disable-dired-xpermit was given.
 if test "${enable_dired_xpermit+set}" = set; then
@@ -10501,7 +10587,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "tar" commands from DirEd""... $ac_c" 1>&6
-echo "configure:10505: checking if you wish to allow "tar" commands from DirEd" >&5
+echo "configure:10591: checking if you wish to allow "tar" commands from DirEd" >&5
 	
 # Check whether --enable-dired-tar or --disable-dired-tar was given.
 if test "${enable_dired_tar+set}" = set; then
@@ -10527,7 +10613,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "uudecode" commands from DirEd""... $ac_c" 1>&6
-echo "configure:10531: checking if you wish to allow "uudecode" commands from DirEd" >&5
+echo "configure:10617: checking if you wish to allow "uudecode" commands from DirEd" >&5
 	
 # Check whether --enable-dired-uudecode or --disable-dired-uudecode was given.
 if test "${enable_dired_uudecode+set}" = set; then
@@ -10553,7 +10639,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "zip" and "unzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:10557: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
+echo "configure:10643: checking if you wish to allow "zip" and "unzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-zip or --disable-dired-zip was given.
 if test "${enable_dired_zip+set}" = set; then
@@ -10579,7 +10665,7 @@ fi
 	echo "$ac_t""$enableval" 1>&6
 
 	echo $ac_n "checking if you wish to allow "gzip" and "gunzip" commands from DirEd""... $ac_c" 1>&6
-echo "configure:10583: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
+echo "configure:10669: checking if you wish to allow "gzip" and "gunzip" commands from DirEd" >&5
 	
 # Check whether --enable-dired-gzip or --disable-dired-gzip was given.
 if test "${enable_dired_gzip+set}" = set; then
@@ -10606,7 +10692,7 @@ fi
 fi
 
 echo $ac_n "checking if you want long-directory listings""... $ac_c" 1>&6
-echo "configure:10610: checking if you want long-directory listings" >&5
+echo "configure:10696: checking if you want long-directory listings" >&5
 
 # Check whether --enable-long-list or --disable-long-list was given.
 if test "${enable_long_list+set}" = set; then
@@ -10632,7 +10718,7 @@ fi
 echo "$ac_t""$enableval" 1>&6
 
 echo $ac_n "checking if parent-directory references are permitted""... $ac_c" 1>&6
-echo "configure:10636: checking if parent-directory references are permitted" >&5
+echo "configure:10722: checking if parent-directory references are permitted" >&5
 
 # Check whether --enable-parent-dir-refs or --disable-parent-dir-refs was given.
 if test "${enable_parent_dir_refs+set}" = set; then
@@ -10652,7 +10738,7 @@ echo "$ac_t""$enableval" 1>&6
 
 
 echo $ac_n "checking if we can include termio.h with curses""... $ac_c" 1>&6
-echo "configure:10656: checking if we can include termio.h with curses" >&5
+echo "configure:10742: checking if we can include termio.h with curses" >&5
 if eval "test \"`echo '$''{'cf_cv_termio_and_curses'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10661,7 +10747,7 @@ else
     CFLAGS="$CFLAGS -DHAVE_CONFIG_H -I. -I${srcdir-.} -I${srcdir-.}/src -I${srcdir-.}/WWW/Library/Implementation"
     touch lynx_cfg.h
     cat > conftest.$ac_ext <<EOF
-#line 10665 "configure"
+#line 10751 "configure"
 #include "confdefs.h"
 
 #include <LYCurses.h>
@@ -10670,7 +10756,7 @@ int main() {
 putchar(0x0a)
 ; return 0; }
 EOF
-if { (eval echo configure:10674: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:10760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   cf_cv_termio_and_curses=yes
 else
@@ -11134,7 +11220,8 @@ cat >> $CONFIG_STATUS <<\EOF
 	if test "$USE_NLS" = yes ; then
 		echo creating po/makefile
 		rm -f	po/temp$$
-		sed	-e '$s/\\//' po/POTFILES >po/temp$$
+		sed	-e 's@^.*LYMessages.c@../LYMessages.c@' \
+			-e '$s/\\//' po/POTFILES >po/temp$$
 		sed	-e "/POTFILES =/r po/temp$$" \
 			po/makefile.in > po/makefile
 		rm -f	po/temp$$
diff --git a/configure.in b/configure.in
index bcdd4d6f..7d4f96a3 100644
--- a/configure.in
+++ b/configure.in
@@ -411,6 +411,7 @@ AC_CHECK_HEADERS( \
 )
 CF_TERMIO_AND_TERMIOS
 CF_FUNC_WAIT
+CF_VARARGS
 AC_TYPE_GETGROUPS
 AC_TYPE_PID_T
 AC_TYPE_UID_T
@@ -792,7 +793,8 @@ AC_OUTPUT(
 	if test "$USE_NLS" = yes ; then
 		echo creating po/makefile
 		rm -f	po/temp$$
-		sed	-e '$s/\\//' po/POTFILES >po/temp$$
+		sed	-e 's@^.*LYMessages.c@../LYMessages.c@' \
+			-e '$s/\\//' po/POTFILES >po/temp$$
 		sed	-e "/POTFILES =/r po/temp$$" \
 			po/makefile.in > po/makefile
 		rm -f	po/temp$$
diff --git a/lynx.cfg b/lynx.cfg
index ece995a7..c6a4d9bc 100644
--- a/lynx.cfg
+++ b/lynx.cfg
@@ -8,7 +8,7 @@
 #
 #  If you do not have write access to /usr/local/bin you may change
 #  the default location of this file in the userdefs.h file and recompile,
-#  or specify it's location on the command line with the "-cfg"
+#  or specify its location on the command line with the "-cfg"
 #  command line option.
 #
 # Items may be commented out by putting a '#' as the FIRST char of the line
@@ -30,7 +30,7 @@
 # Then in ~/lynx.cfg:
 #
 #INCLUDE:/usr/local/lib/lynx.cfg
-#       ^^^^^^^^^^^^^^^^^^^^^^^ or whatever's appropriate on your system
+#       ^^^^^^^^^^^^^^^^^^^^^^^ or whatever is appropriate on your system
 #and now your own tweaks.
 
 #
@@ -86,7 +86,7 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 # the user presses the 'J' (JUMP) key.  The user will be prompted for
 # a shortcut entry (analogously to 'g'oto), and can enter one
 # or use '?' for a list of the shortcuts with associated links to
-# their actual URL's.  See the jumps files in the lynx*/samples
+# their actual URLs.  See the jumps files in the lynx*/samples
 # subdirectory.  Make sure your jumps file includes a '?' shortcut
 # for a file://localhost URL to itself:
 #
@@ -262,6 +262,7 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 #
 # The value should be the MIME name of a character set recognized by
 # Lynx (case insensitive).
+# Find RFC 1345 at http://www.ics.uci.edu/pub/ietf/uri/rfc1345.txt .
 #
 #CHARACTER_SET:iso-8859-1
 
@@ -364,7 +365,8 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 # and if the server cannot send a response which is acceptable
 # according to the Accept-Charset header, then the server SHOULD send
 # an error response with the 406 (not acceptable) status code, though
-# the sending of an unacceptable response is also allowed.  See RFC2068.
+# the sending of an unacceptable response is also allowed.  See RFC 2068
+# (http://www.ics.uci.edu/pub/ietf/uri/rfc2068.txt).
 #
 #PREFERRED_CHARSET:
 
@@ -590,9 +592,9 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 # If LOCAL_EXECUTION_LINK_ON_BUT_NOT_REMOTE is TRUE, and no TRUSTED_EXEC
 # rule is defined, it defaults to "file://localhost/" and any lynxexec
 # or lynxprog command will be permitted if it was referenced with a URL
-# beginning with that string.  If you wish to restrict the referencing URL's
+# beginning with that string.  If you wish to restrict the referencing URLs
 # further, you can extend the string to include a trusted path.  You also can
-# specify a trusted directory for http URL's, which will then be treated as
+# specify a trusted directory for http URLs, which will then be treated as
 # if they were local rather than remote.  For example:
 #
 #	TRUSTED_EXEC:file://localhost/trusted/
@@ -617,10 +619,10 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 # rules below, you need not repeat them as TRUSTED_EXEC rules.
 #
 # If EXEC_LINKS and JUMPFILE have been defined, any lynxexec or lynxprog
-# URL's in that file will be permitted, regardless of other settings.  If
+# URLs in that file will be permitted, regardless of other settings.  If
 # you also set LOCAL_EXECUTION_LINKS_ON_BUT_NOT_REMOTE:TRUE and a single
 # TRUSTED_EXEC rule that will always fail (e.g., "none"), then *ONLY* the
-# lynxexec or lynxprog URL's in JUMPFILE (and any ALWAYS_TRUSTED_EXEC rules,
+# lynxexec or lynxprog URLs in JUMPFILE (and any ALWAYS_TRUSTED_EXEC rules,
 # see below) will be allowed.  Note, however, that if Lynx was compiled with
 # CAN_ANONYMOUS_JUMP set to FALSE (default is TRUE), or -restrictions=jump
 # is included with the -anonymous switch at run time, then users of an
@@ -1229,7 +1231,7 @@ DEFAULT_INDEX_FILE:http://www.ncsa.uiuc.edu/SDG/Software/Mosaic/MetaIndex.html
 
 # If HISTORICAL_COMMENTS is TRUE, Lynx will revert to the "Historical"
 # behavior of treating any '>' as a terminator for comments, instead of
-# seeking a valid '-->' terminator (note that white space can be present 
+# seeking a valid '-->' terminator (note that white space can be present
 # between the '--' and '>' in valid terminators).  The compilation default
 # is FALSE.
 #
diff --git a/lynx_help/keystrokes/edit_help.html b/lynx_help/keystrokes/edit_help.html
index d5dc9003..c58af9b2 100644
--- a/lynx_help/keystrokes/edit_help.html
+++ b/lynx_help/keystrokes/edit_help.html
@@ -41,7 +41,7 @@ line option), or by editing lineedit_mode in the .lynxrc file.
      UPPER  Upper case the line   -  Ctrl-T 
  
      LKCMD  Invoke cmd prompt     -  Ctrl-V (in form text fields, only) 
-     SWMAP  Switch input keymap   -  Ctrl-Y
+     SWMAP  Switch input keymap   -  Ctrl-^
  
 [*] "next" means the character "under" a box or underline type cursor; it 
      means "to the immediate right of" an I-beam type (between characters) 
diff --git a/makefile.in b/makefile.in
index 53bdf0ee..e6836793 100644
--- a/makefile.in
+++ b/makefile.in
@@ -221,7 +221,9 @@ distclean: clean
 	-cd src && $(MAKE) $@
 	-cd src/chrtrans && $(MAKE) $@
 	@INTLDIR_MAKE@cd intl && $(MAKE) $@
+	@MSG_DIR_MAKE@-rmdir intl
 	@MSG_DIR_MAKE@cd po && $(MAKE) $@
+	@MSG_DIR_MAKE@-rmdir po
 	-rm -f *~ *.bak *.sav
 	-rm -f WWW/Library/unix/makefile src/makefile src/chrtrans/makefile
 	@SRCDIR_CLEAN@-find . -type f -name '*.rej' -exec -rm -f {} \;
diff --git a/po/it.po b/po/it.po
index 321e7af4..180e0f8e 100644
--- a/po/it.po
+++ b/po/it.po
@@ -243,5 +243,5 @@ msgid ""
 "\n"
 "\n"
 "\n"
-"%s %s: out of memory.  Aborting...\n"
+"%s %s: out of memory.  Aborting..."
 msgstr "\n\n\n%s %s: Memoria esaurita! Fine anomala del programma!"
diff --git a/po/lynx.pot b/po/lynx.pot
index 21310e86..8ce51bd7 100644
--- a/po/lynx.pot
+++ b/po/lynx.pot
@@ -1,7 +1,7 @@
 msgid ""
 msgstr ""
-"Date: 1998-11-18 11:34:22-0700\n"
-"From: Tom Dickey <dickey@sol.slcc.edu>\n"
+"Date: 1998-11-20 22:38:39-0500\n"
+"From: Thomas Dickey,,, <tom@dickey-ppp>\n"
 "Content-Type: text/plain; charset=\n"
 "Xgettext-Options: --default-domain=lynx --directory=.. --add-comments --keyword=_ --keyword=N_ --files-from=./POTFILES.in\n"
 "Files: LYMessages.c WWW/Library/Implementation/HTAABrow.c WWW/Library/Implementation/HTAAProt.c WWW/Library/Implementation/HTAccess.c WWW/Library/Implementation/HTFTP.c WWW/Library/Implementation/HTFWriter.c WWW/Library/Implementation/HTFile.c WWW/Library/Implementation/HTFinger.c WWW/Library/Implementation/HTFormat.c WWW/Library/Implementation/HTGopher.c WWW/Library/Implementation/HTMIME.c WWW/Library/Implementation/HTNews.c WWW/Library/Implementation/HTRules.c WWW/Library/Implementation/HTStyle.c WWW/Library/Implementation/HTTCP.c WWW/Library/Implementation/HTTP.c WWW/Library/Implementation/HTVMSUtils.c WWW/Library/Implementation/HTWAIS.c WWW/Library/Implementation/HTWSRC.c src/GridText.c src/HTAlert.c src/HTFWriter.c src/HTML.c src/LYBookmark.c src/LYCgi.c src/LYClean.c src/LYCookie.c src/LYCurses.c src/LYDownload.c src/LYGetFile.c src/LYHistory.c src/LYJump.c src/LYLeaks.c src/LYList.c src/LYLocal.c src/LYMail.c src/LYMain.c src/LYMainLoop.c src/LYMap.c src/LYNews.c "
@@ -1563,59 +1563,56 @@ msgstr ""
 msgid "Can't open local file to write into."
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1249 WWW/Library/Implementation/HTFile.c:1259 WWW/Library/Implementation/HTFile.c:1264
+#: WWW/Library/Implementation/HTFile.c:1251 WWW/Library/Implementation/HTFile.c:1261 WWW/Library/Implementation/HTFile.c:1266
 msgid "Welcome"
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1250
+#: WWW/Library/Implementation/HTFile.c:1252
 msgid " directory"
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1258
+#: WWW/Library/Implementation/HTFile.c:1260
 msgid "Current directory is "
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1374
+#: WWW/Library/Implementation/HTFile.c:1376
 msgid "Up to "
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1506 WWW/Library/Implementation/HTFile.c:1892
+#: WWW/Library/Implementation/HTFile.c:1508 WWW/Library/Implementation/HTFile.c:1894
 msgid "Directory browsing is not allowed."
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1522 WWW/Library/Implementation/HTFile.c:1909
+#: WWW/Library/Implementation/HTFile.c:1524 WWW/Library/Implementation/HTFile.c:1911
 msgid "Selective access is not enabled for this directory"
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1681 WWW/Library/Implementation/HTFile.c:2317
+#: WWW/Library/Implementation/HTFile.c:1683 WWW/Library/Implementation/HTFile.c:2331
 msgid "Could not open file for decompression!"
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1746
+#: WWW/Library/Implementation/HTFile.c:1748
 msgid "Multiformat: directory scan failed."
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1836
+#. List formats?
+#: WWW/Library/Implementation/HTFile.c:1838
 msgid "Could not find suitable representation for transmission."
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:1918
+#: WWW/Library/Implementation/HTFile.c:1920
 msgid "This directory is not readable."
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:2119 WWW/Library/Implementation/HTFile.c:2141
+#: WWW/Library/Implementation/HTFile.c:2127 WWW/Library/Implementation/HTFile.c:2149
 msgid "Subdirectories:"
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:2120 WWW/Library/Implementation/HTFile.c:2142
+#: WWW/Library/Implementation/HTFile.c:2128 WWW/Library/Implementation/HTFile.c:2150
 msgid "Files:"
 msgstr ""
 
-#: WWW/Library/Implementation/HTFile.c:2177
-msgid "Empty Directory"
-msgstr ""
-
-#: WWW/Library/Implementation/HTFile.c:2366
+#: WWW/Library/Implementation/HTFile.c:2380
 msgid "Can't access requested file."
 msgstr ""
 
@@ -2219,75 +2216,75 @@ msgstr ""
 msgid "Memory exhausted, will interrupt transfer!"
 msgstr ""
 
-#: src/GridText.c:2109
+#: src/GridText.c:2134
 msgid " *** MEMORY EXHAUSTED ***"
 msgstr ""
 
-#: src/GridText.c:3485 src/GridText.c:3492 src/LYList.c:246
+#: src/GridText.c:3509 src/GridText.c:3516 src/LYList.c:246
 msgid "unknown field or link"
 msgstr ""
 
-#: src/GridText.c:3501
+#: src/GridText.c:3525
 msgid "text entry field"
 msgstr ""
 
-#: src/GridText.c:3504
+#: src/GridText.c:3528
 msgid "password entry field"
 msgstr ""
 
-#: src/GridText.c:3507
+#: src/GridText.c:3531
 msgid "checkbox"
 msgstr ""
 
-#: src/GridText.c:3510
+#: src/GridText.c:3534
 msgid "radio button"
 msgstr ""
 
-#: src/GridText.c:3513
+#: src/GridText.c:3537
 msgid "submit button"
 msgstr ""
 
-#: src/GridText.c:3516
+#: src/GridText.c:3540
 msgid "reset button"
 msgstr ""
 
-#: src/GridText.c:3519
+#: src/GridText.c:3543
 msgid "popup menu"
 msgstr ""
 
-#: src/GridText.c:3522
+#: src/GridText.c:3546
 msgid "hidden form field"
 msgstr ""
 
-#: src/GridText.c:3525
+#: src/GridText.c:3549
 msgid "text entry area"
 msgstr ""
 
-#: src/GridText.c:3528
+#: src/GridText.c:3552
 msgid "range entry field"
 msgstr ""
 
-#: src/GridText.c:3531
+#: src/GridText.c:3555
 msgid "file entry field"
 msgstr ""
 
-#: src/GridText.c:3534
+#: src/GridText.c:3558
 msgid "text-submit field"
 msgstr ""
 
-#: src/GridText.c:3537
+#: src/GridText.c:3561
 msgid "image-submit button"
 msgstr ""
 
-#: src/GridText.c:3540
+#: src/GridText.c:3564
 msgid "keygen field"
 msgstr ""
 
-#: src/GridText.c:3543
+#: src/GridText.c:3567
 msgid "unknown form field"
 msgstr ""
 
-#: src/GridText.c:7814
+#: src/GridText.c:7842
 msgid "Submitting %s"
 msgstr ""
 
@@ -2331,27 +2328,27 @@ msgstr ""
 msgid "Content-type: %s"
 msgstr ""
 
-#: src/HTML.c:5489
+#: src/HTML.c:5500
 msgid "Description:"
 msgstr ""
 
-#: src/HTML.c:5494
+#: src/HTML.c:5505
 msgid "(none)"
 msgstr ""
 
-#: src/HTML.c:5498
+#: src/HTML.c:5509
 msgid "Filepath:"
 msgstr ""
 
-#: src/HTML.c:5503
+#: src/HTML.c:5514
 msgid "(unknown)"
 msgstr ""
 
-#: src/HTML.c:6806
+#: src/HTML.c:6817
 msgid "Document has only hidden links. Use the 'l'ist command."
 msgstr ""
 
-#: src/LYBookmark.c:146
+#: src/LYBookmark.c:147
 msgid ""
 "     This file is an HTML representation of the X Mosaic hotlist file.\n"
 "     Outdated or invalid links may be removed by using the\n"
@@ -2362,7 +2359,7 @@ msgid ""
 "<ol>\n"
 msgstr ""
 
-#: src/LYBookmark.c:325
+#: src/LYBookmark.c:332
 msgid ""
 "     You can delete links using the remove bookmark command.  It is usually\n"
 "     the 'R' key but may have been remapped by you or your system\n"
@@ -2406,11 +2403,7 @@ msgid "<p>It provides <b>state of the art</b> CGI script support.\n"
 msgstr ""
 
 #: src/LYClean.c:109
-msgid ""
-"\n"
-"\n"
-"Exiting via interrupt: %d\n"
-"\n"
+msgid "Exiting via interrupt:"
 msgstr ""
 
 #: src/LYCookie.c:2046
@@ -2759,7 +2752,7 @@ msgstr ""
 msgid "Specify permissions below:"
 msgstr ""
 
-#: src/LYLocal.c:1122 src/LYShowInfo.c:227
+#: src/LYLocal.c:1122 src/LYShowInfo.c:224
 msgid "Owner:"
 msgstr ""
 
@@ -2906,75 +2899,78 @@ msgstr ""
 msgid "Personal Name: "
 msgstr ""
 
-#: src/LYMain.c:603
+#: src/LYMain.c:615
 msgid "No Winsock found, sorry."
 msgstr ""
 
-#: src/LYMain.c:763
+#: src/LYMain.c:775
 msgid "You MUST define a valid TMP or TEMP area!\n"
 msgstr ""
 
-#: src/LYMain.c:1186
+#.
+#. *	If the configuration file is not available,
+#. *	inform the user and exit.
+#.
+#: src/LYMain.c:1198
 msgid ""
 "\n"
 "Configuration file %s is not available.\n"
 "\n"
 msgstr ""
 
-#: src/LYMain.c:1202
+#: src/LYMain.c:1214
 msgid ""
 "\n"
 "Lynx character sets not declared.\n"
 "\n"
 msgstr ""
 
-#.
-#. *	If the lynx-style file is not available,
-#. *	inform the user and exit.
-#.
-#: src/LYMain.c:1261
+#: src/LYMain.c:1273
 msgid ""
 "\n"
 "Lynx file %s is not available.\n"
 "\n"
 msgstr ""
 
-#: src/LYMain.c:1275
+#.
+#. *	Make sure we have the edit map declared. - FM
+#.
+#: src/LYMain.c:1287
 msgid ""
 "\n"
 "Lynx edit map not declared.\n"
 "\n"
 msgstr ""
 
-#: src/LYMain.c:2485
+#: src/LYMain.c:2497
 msgid ""
 "\n"
 "%s Version %s (%.*s)\n"
 msgstr ""
 
-#: src/LYMain.c:2492
+#: src/LYMain.c:2504
 msgid "Copyrights held by the University of Kansas, CERN, and other contributors.\n"
 msgstr ""
 
-#: src/LYMain.c:2494
+#: src/LYMain.c:2506
 msgid "Distributed under the GNU General Public License.\n"
 msgstr ""
 
-#: src/LYMain.c:2496
+#: src/LYMain.c:2508
 msgid ""
 "See http://lynx.browser.org/ and the online help for more information.\n"
 "\n"
 msgstr ""
 
-#: src/LYMain.c:3015
+#: src/LYMain.c:3027
 msgid "USAGE: %s [options] [file]\n"
 msgstr ""
 
-#: src/LYMain.c:3016
+#: src/LYMain.c:3028
 msgid "Options are:\n"
 msgstr ""
 
-#: src/LYMain.c:3194
+#: src/LYMain.c:3206
 msgid "%s: Invalid Option: %s\n"
 msgstr ""
 
@@ -2998,7 +2994,7 @@ msgstr ""
 msgid "      Exiting...\n"
 msgstr ""
 
-#: src/LYMainLoop.c:1093 src/LYMainLoop.c:1147 src/LYMainLoop.c:1154 src/LYShowInfo.c:343
+#: src/LYMainLoop.c:1093 src/LYMainLoop.c:1147 src/LYMainLoop.c:1154 src/LYShowInfo.c:340
 msgid "None"
 msgstr ""
 
@@ -3336,7 +3332,7 @@ msgstr ""
 msgid "Print out on a printer attached to your vt100 terminal"
 msgstr ""
 
-#: src/LYReadCFG.c:368
+#: src/LYReadCFG.c:369
 msgid ""
 "Syntax Error parsing COLOR in configuration file:\n"
 "The line must be of the form:\n"
@@ -3346,200 +3342,202 @@ msgid ""
 "The special strings 'nocolor' or 'default', or\n"
 msgstr ""
 
-#: src/LYReadCFG.c:381
+#: src/LYReadCFG.c:382
 msgid "Offending line:"
 msgstr ""
 
-#: src/LYReadCFG.c:635
+#: src/LYReadCFG.c:636
 msgid "key remapping of "
 msgstr ""
 
-#: src/LYReadCFG.c:637
+#: src/LYReadCFG.c:638
 msgid " failed"
 msgstr ""
 
-#: src/LYReadCFG.c:1022
+#: src/LYReadCFG.c:1026
 msgid "More than %d nested lynx.cfg includes -- perhaps there is a loop?!?\n"
 msgstr ""
 
-#: src/LYReadCFG.c:1024
+#: src/LYReadCFG.c:1028
 msgid "Last attempted include was '%s',\n"
 msgstr ""
 
-#: src/LYReadCFG.c:1025
+#: src/LYReadCFG.c:1029
 msgid "included from '%s'.\n"
 msgstr ""
 
-#: src/LYReadCFG.c:1262
+#: src/LYReadCFG.c:1274
 msgid "This is read from your lynx.cfg file,"
 msgstr ""
 
-#: src/LYReadCFG.c:1270
+#. for lynx.cfg on DOS/Win32
+#. HAVE_CONFIG_H
+#: src/LYReadCFG.c:1282
 msgid "please \"read\" distribution's"
 msgstr ""
 
-#: src/LYReadCFG.c:1272
+#: src/LYReadCFG.c:1284
 msgid "for more comments."
 msgstr ""
 
-#: src/LYReadCFG.c:1274
+#: src/LYReadCFG.c:1286
 msgid "Your primary configuration"
 msgstr ""
 
-#: src/LYReadCFG.c:1277
+#: src/LYReadCFG.c:1289
 msgid "This is read from your lynx.cfg file:"
 msgstr ""
 
-#: src/LYShowInfo.c:157
+#: src/LYShowInfo.c:154
 msgid "Directory that you are currently viewing"
 msgstr ""
 
-#: src/LYShowInfo.c:163
+#: src/LYShowInfo.c:160
 msgid "Name:"
 msgstr ""
 
-#: src/LYShowInfo.c:164
+#: src/LYShowInfo.c:161
 msgid "URL:"
 msgstr ""
 
-#: src/LYShowInfo.c:177
+#: src/LYShowInfo.c:174
 msgid "Directory that you have currently selected"
 msgstr ""
 
-#: src/LYShowInfo.c:180
+#: src/LYShowInfo.c:177
 msgid "File that you have currently selected"
 msgstr ""
 
-#: src/LYShowInfo.c:184
+#: src/LYShowInfo.c:181
 msgid "Symbolic link that you have currently selected"
 msgstr ""
 
-#: src/LYShowInfo.c:188
+#: src/LYShowInfo.c:185
 msgid "Item that you have currently selected"
 msgstr ""
 
-#: src/LYShowInfo.c:190
+#: src/LYShowInfo.c:187
 msgid "Full name:"
 msgstr ""
 
-#: src/LYShowInfo.c:199
+#: src/LYShowInfo.c:196
 msgid "Unable to follow link"
 msgstr ""
 
-#: src/LYShowInfo.c:201
+#: src/LYShowInfo.c:198
 msgid "Points to file:"
 msgstr ""
 
-#: src/LYShowInfo.c:206
+#: src/LYShowInfo.c:203
 msgid "Name of owner"
 msgstr ""
 
-#: src/LYShowInfo.c:209
+#: src/LYShowInfo.c:206
 msgid "Group name:"
 msgstr ""
 
-#: src/LYShowInfo.c:212
+#: src/LYShowInfo.c:209
 msgid "File size:"
 msgstr ""
 
-#: src/LYShowInfo.c:218
+#: src/LYShowInfo.c:215
 msgid "Creation date:"
 msgstr ""
 
-#: src/LYShowInfo.c:221
+#: src/LYShowInfo.c:218
 msgid "Last modified:"
 msgstr ""
 
-#: src/LYShowInfo.c:224
+#: src/LYShowInfo.c:221
 msgid "Last accessed:"
 msgstr ""
 
-#: src/LYShowInfo.c:226
+#: src/LYShowInfo.c:223
 msgid "Access Permissions"
 msgstr ""
 
 #. DIRED_SUPPORT
-#: src/LYShowInfo.c:291
+#: src/LYShowInfo.c:288
 msgid "File that you are currently viewing"
 msgstr ""
 
-#: src/LYShowInfo.c:296 src/LYShowInfo.c:366
+#: src/LYShowInfo.c:293 src/LYShowInfo.c:363
 msgid "Linkname:"
 msgstr ""
 
-#: src/LYShowInfo.c:306 src/LYShowInfo.c:318
+#: src/LYShowInfo.c:303 src/LYShowInfo.c:315
 msgid "Charset:"
 msgstr ""
 
-#: src/LYShowInfo.c:324
+#: src/LYShowInfo.c:321
 msgid "Server:"
 msgstr ""
 
-#: src/LYShowInfo.c:327
+#: src/LYShowInfo.c:324
 msgid "Date:"
 msgstr ""
 
-#: src/LYShowInfo.c:330
+#: src/LYShowInfo.c:327
 msgid "Last Mod:"
 msgstr ""
 
-#: src/LYShowInfo.c:334
+#: src/LYShowInfo.c:331
 msgid "Post Data:"
 msgstr ""
 
-#: src/LYShowInfo.c:336
+#: src/LYShowInfo.c:333
 msgid "Post Content Type:"
 msgstr ""
 
-#: src/LYShowInfo.c:345
+#: src/LYShowInfo.c:342
 msgid "Owner(s):"
 msgstr ""
 
-#: src/LYShowInfo.c:348
+#: src/LYShowInfo.c:345
 msgid "size:"
 msgstr ""
 
-#: src/LYShowInfo.c:348
+#: src/LYShowInfo.c:345
 msgid "lines"
 msgstr ""
 
-#: src/LYShowInfo.c:351
+#: src/LYShowInfo.c:348
 msgid "mode:"
 msgstr ""
 
-#: src/LYShowInfo.c:353
+#: src/LYShowInfo.c:350
 msgid "forms mode"
 msgstr ""
 
-#: src/LYShowInfo.c:353
+#: src/LYShowInfo.c:350
 msgid "normal"
 msgstr ""
 
-#: src/LYShowInfo.c:354
+#: src/LYShowInfo.c:351
 msgid ", safe"
 msgstr ""
 
-#: src/LYShowInfo.c:355
+#: src/LYShowInfo.c:352
 msgid ", internal link"
 msgstr ""
 
-#: src/LYShowInfo.c:362
+#: src/LYShowInfo.c:359
 msgid "Link that you currently have selected"
 msgstr ""
 
-#: src/LYShowInfo.c:375
+#: src/LYShowInfo.c:372
 msgid "Method:"
 msgstr ""
 
-#: src/LYShowInfo.c:380
+#: src/LYShowInfo.c:377
 msgid "Enctype:"
 msgstr ""
 
-#: src/LYShowInfo.c:392
+#: src/LYShowInfo.c:389
 msgid "(Form field)"
 msgstr ""
 
-#: src/LYShowInfo.c:407
+#: src/LYShowInfo.c:404
 msgid "No Links on the current page"
 msgstr ""
 
@@ -3592,23 +3590,23 @@ msgstr ""
 msgid "Upload options:"
 msgstr ""
 
-#: src/LYUtils.c:1989 src/LYUtils.c:1998
+#: src/LYUtils.c:1992 src/LYUtils.c:2001
 msgid "This is a searchable index.  Use "
 msgstr ""
 
-#: src/LYUtils.c:1991 src/LYUtils.c:2000
+#: src/LYUtils.c:1994 src/LYUtils.c:2003
 msgid " to search:"
 msgstr ""
 
-#: src/LYUtils.c:1995
+#: src/LYUtils.c:1998
 msgid "space for more"
 msgstr ""
 
-#: src/LYUtils.c:2002
+#: src/LYUtils.c:2005
 msgid "Type a command or ? for help:"
 msgstr ""
 
-#: src/LYUtils.c:2008
+#: src/LYUtils.c:2011
 msgid "Press space for next page"
 msgstr ""
 
diff --git a/po/makefile.inn b/po/makefile.inn
index c9ecb129..61dd2191 100644
--- a/po/makefile.inn
+++ b/po/makefile.inn
@@ -45,7 +45,7 @@ INCLUDES = -I.. -I$(top_srcdir)/intl
 
 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
 
-SOURCES = cat-id-tbl.c
+SOURCES = # cat-id-tbl.c
 POFILES = @POFILES@
 GMOFILES = @GMOFILES@
 DISTFILES = ChangeLog makefile.inn POTFILES.in $(PACKAGE).pot \
@@ -71,7 +71,7 @@ INSTOBJEXT = @INSTOBJEXT@
 	$(MSGFMT) -o $@ $<
 
 .po.gmo:
-	file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
+	file=./`echo $* | sed 's,.*/,,'`.gmo \
 	  && rm -f $$file && $(GMSGFMT) -o $$file $<
 
 .po.cat:
@@ -81,7 +81,7 @@ INSTOBJEXT = @INSTOBJEXT@
 
 all: all-@USE_NLS@
 
-all-yes: cat-id-tbl.c $(CATALOGS)
+all-yes: $(SOURCES) $(CATALOGS)
 all-no:
 
 $(srcdir)/$(PACKAGE).pot: $(POTFILES)
diff --git a/po/readme b/po/readme
new file mode 100644
index 00000000..4c416e51
--- /dev/null
+++ b/po/readme
@@ -0,0 +1,18 @@
+ 
+> I want to translate to xxxxxx. 
+ 
+The full list of messages is in lynx.pot, which is generated from looking 
+at the calls to gettext, use it as template for translations. 
+ 
+syntax: 
+ 
+#: src/LYMainLoop.c:1512 src/LYMainLoop.c:1516 
+msgid "Fatal error - could not open output file %s\n" 
+msgstr "" 
+ 
+First line is a comment beginning with #, for your information. 
+Original english string is <msgid>, do not change it. 
+Translation in <msgstr>, empty string assume english default. 
+Do not forget to include %s properly in your contributed translation! 
+ 
+A good place to start is with the messages derived from LYMessages_en.h 
diff --git a/src/DefaultStyle.c b/src/DefaultStyle.c
index 2e00ba62..c77f0b8f 100644
--- a/src/DefaultStyle.c
+++ b/src/DefaultStyle.c
@@ -35,95 +35,95 @@ PRIVATE HTTabStop tabs_16[] = {
 **	word wrap, free format, space: before, after, flags.
 */
 
-PRIVATE HTStyle HTStyleNormal = { 
+PRIVATE HTStyle HTStyleNormal = {
 	0,  "Normal", "P",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	3, 3, 6, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleDivCenter = { 
+PRIVATE HTStyle HTStyleDivCenter = {
 	&HTStyleNormal,  "DivCenter", "DCENTER",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	3, 3, 6, HT_CENTER,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleDivLeft = { 
+PRIVATE HTStyle HTStyleDivLeft = {
 	&HTStyleDivCenter,  "DivLeft", "DLEFT",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	3, 3, 6, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleDivRight = { 
+PRIVATE HTStyle HTStyleDivRight = {
 	&HTStyleDivLeft,  "DivRight", "DRIGHT",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	3, 3, 6, HT_RIGHT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleBanner = { 
+PRIVATE HTStyle HTStyleBanner = {
 	&HTStyleDivRight,  "Banner", "BANNER",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	3, 3, 6, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleBlockquote = { 
+PRIVATE HTStyle HTStyleBlockquote = {
 	&HTStyleBanner,  "Blockquote", "BLOCKQUOTE",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	5, 5, 7, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
 PRIVATE HTStyle HTStyleBq = { /* HTML 3.0 BLOCKQUOTE - FM */
 	&HTStyleBlockquote,  "Bq", "BQ",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	5, 5, 7, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
 PRIVATE HTStyle HTStyleFootnote = { /* HTML 3.0 FN - FM */
 	&HTStyleBq,  "Footnote", "FN",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	5, 5, 7, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleList = { 
+PRIVATE HTStyle HTStyleList = {
 	&HTStyleFootnote,  "List", "UL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	3, 7, 6, HT_LEFT,		1, 0,	0,
-	YES, YES, 0, 0,			0 };	
+	YES, YES, 0, 0,			0 };
 
-PRIVATE HTStyle HTStyleList1 = { 
+PRIVATE HTStyle HTStyleList1 = {
 	&HTStyleList,  "List1", "UL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	8, 12, 6, HT_LEFT,		1, 0,	0,
-	YES, YES, 0, 0,			0 };	
+	YES, YES, 0, 0,			0 };
 
-PRIVATE HTStyle HTStyleList2 = { 
+PRIVATE HTStyle HTStyleList2 = {
 	&HTStyleList1,  "List2", "UL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	13, 17, 6, HT_LEFT,		1, 0,	0,
-	YES, YES, 0, 0,			0 };	
+	YES, YES, 0, 0,			0 };
 
-PRIVATE HTStyle HTStyleList3 = { 
+PRIVATE HTStyle HTStyleList3 = {
 	&HTStyleList2,  "List3", "UL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	18, 22, 6, HT_LEFT,		1, 0,	0,
-	YES, YES, 0, 0,			0 };	
+	YES, YES, 0, 0,			0 };
 
-PRIVATE HTStyle HTStyleList4 = { 
+PRIVATE HTStyle HTStyleList4 = {
 	&HTStyleList3,  "List4", "UL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	23, 27, 6, HT_LEFT,		1, 0,	0,
-	YES, YES, 0, 0,			0 };	
+	YES, YES, 0, 0,			0 };
 
-PRIVATE HTStyle HTStyleList5 = { 
+PRIVATE HTStyle HTStyleList5 = {
 	&HTStyleList4,  "List5", "UL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	28, 32, 6, HT_LEFT,		1, 0,	0,
-	YES, YES, 0, 0,			0 };	
+	YES, YES, 0, 0,			0 };
 
-PRIVATE HTStyle HTStyleList6 = { 
+PRIVATE HTStyle HTStyleList6 = {
 	&HTStyleList5,  "List6", "UL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	33, 37, 6, HT_LEFT,		1, 0,	0,
-	YES, YES, 0, 0,			0 };	
+	YES, YES, 0, 0,			0 };
 
 PRIVATE HTStyle HTStyleMenu = {
 	&HTStyleList6,  "Menu", "MENU",
@@ -177,98 +177,98 @@ PRIVATE HTStyle HTStyleMenu6= {
 PRIVATE HTStyle HTStyleGlossary = {
 	&HTStyleMenu6,  "Glossary", "DL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	3, 10, 6, HT_LEFT,		1, 0,	0, 
+	3, 10, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 1, 1,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleGlossary1 = {
 	&HTStyleGlossary,  "Glossary1", "DL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	8, 16, 6, HT_LEFT,		1, 0,	0, 
+	8, 16, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 1, 1,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleGlossary2 = {
 	&HTStyleGlossary1,  "Glossary2", "DL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	14, 22, 6, HT_LEFT,		1, 0,	0, 
+	14, 22, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 1, 1,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleGlossary3 = {
 	&HTStyleGlossary2,  "Glossary3", "DL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	20, 28, 6, HT_LEFT,		1, 0,	0, 
+	20, 28, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 1, 1,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleGlossary4 = {
 	&HTStyleGlossary3,  "Glossary4", "DL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	26, 34, 6, HT_LEFT,		1, 0,	0, 
+	26, 34, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 1, 1,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleGlossary5 = {
 	&HTStyleGlossary4,  "Glossary5", "DL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	32, 40, 6, HT_LEFT,		1, 0,	0, 
+	32, 40, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 1, 1,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleGlossary6 = {
 	&HTStyleGlossary5,  "Glossary6", "DL",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	38, 46, 6, HT_LEFT,		1, 0,	0, 
+	38, 46, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 1, 1,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleGlossaryCompact = {
 	&HTStyleGlossary6,  "GlossaryCompact", "DLC",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	3, 10, 6, HT_LEFT,		1, 0,	0, 
+	3, 10, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 0, 0,			0
 };
 
 PRIVATE HTStyle HTStyleGlossaryCompact1 = {
 	&HTStyleGlossaryCompact,  "GlossaryCompact1", "DLC",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	8, 15, 6, HT_LEFT,		1, 0,	0, 
+	8, 15, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 0, 0,			0
 };
 
 PRIVATE HTStyle HTStyleGlossaryCompact2 = {
 	&HTStyleGlossaryCompact1,  "GlossaryCompact2", "DLC",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	13, 20, 6, HT_LEFT,		1, 0,	0, 
+	13, 20, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 0, 0,			0
 };
 
 PRIVATE HTStyle HTStyleGlossaryCompact3 = {
 	&HTStyleGlossaryCompact2,  "GlossaryCompact3", "DLC",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	18, 25, 6, HT_LEFT,		1, 0,	0, 
+	18, 25, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 0, 0,			0
 };
 
 PRIVATE HTStyle HTStyleGlossaryCompact4 = {
 	&HTStyleGlossaryCompact3,  "GlossaryCompact4", "DLC",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	23, 30, 6, HT_LEFT,		1, 0,	0, 
+	23, 30, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 0, 0,			0
 };
 
 PRIVATE HTStyle HTStyleGlossaryCompact5 = {
 	&HTStyleGlossaryCompact4,  "GlossaryCompact5", "DLC",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	28, 35, 6, HT_LEFT,		1, 0,	0, 
+	28, 35, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 0, 0,			0
 };
 
 PRIVATE HTStyle HTStyleGlossaryCompact6 = {
 	&HTStyleGlossaryCompact5,  "GlossaryCompact6", "DLC",
 	HT_FONT, 1, HT_BLACK,		0, 0,
-	33, 40, 6, HT_LEFT,		1, 0,	0, 
+	33, 40, 6, HT_LEFT,		1, 0,	0,
 	YES, YES, 0, 0,			0
 };
 
@@ -277,95 +277,107 @@ PRIVATE HTStyle HTStyleExample = {
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	0, 0, 0, HT_LEFT,		1, 0,	tabs_8,
 	NO, NO, 0, 0,			0
-};	
+};
 
 PRIVATE HTStyle HTStylePreformatted = {
 	&HTStyleExample,  	"Preformatted", "PRE",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	0, 0, 0, HT_LEFT,		1, 0,	tabs_8,
 	NO, NO, 0, 0,			0
-};	
+};
 
 PRIVATE HTStyle HTStyleListing = {
 	&HTStylePreformatted,  "Listing", "LISTING",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	0, 0, 0, HT_LEFT,		1, 0,	tabs_8,
-	NO, NO, 0, 0,			0 };	
+	NO, NO, 0, 0,			0 };
 
 PRIVATE HTStyle HTStyleAddress = {
 	&HTStyleListing,  "Address", "ADDRESS",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	4, 4, 7, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 2, 0,			0 };	
+	YES, YES, 2, 0,			0 };
 
 PRIVATE HTStyle HTStyleNote = { /* HTML 3.0 NOTE - FM */
 	&HTStyleAddress,  "Note", "NOTE",
 	HT_FONT, 1, HT_BLACK,		0, 0,
 	5, 5, 7, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
 PRIVATE HTStyle HTStyleHeading1 = {
 	&HTStyleNote,  "Heading1", "H1",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	0, 0, 0, HT_CENTER,		1, 0,	0,
-	YES, YES, 1, 1,			0 };	
+	YES, YES, 1, 1,			0 };
 
 PRIVATE HTStyle HTStyleHeading2 = {
 	&HTStyleHeading1,  "Heading2", "H2",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	0, 0, 0, HT_LEFT,		1, 0,	0,
-	YES, YES, 1, 1,			0 };	
+	YES, YES, 1, 1,			0 };
 
-PRIVATE HTStyle HTStyleHeading3 = { 
+PRIVATE HTStyle HTStyleHeading3 = {
 	&HTStyleHeading2,  "Heading3", "H3",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
-	2, 2, 0, HT_LEFT,		1, 0,	0, 
-	YES, YES, 1, 0,			0 };	
+	2, 2, 0, HT_LEFT,		1, 0,	0,
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleHeading4 = { 
+PRIVATE HTStyle HTStyleHeading4 = {
 	&HTStyleHeading3,  "Heading4", "H4",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	4, 4, 0, HT_LEFT,		1, 0,	0,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleHeading5 = { 
+PRIVATE HTStyle HTStyleHeading5 = {
 	&HTStyleHeading4,  "Heading5", "H5",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	6, 6, 0, HT_LEFT,		1, 0,	0,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleHeading6 = { 
+PRIVATE HTStyle HTStyleHeading6 = {
 	&HTStyleHeading5,  "Heading6", "H6",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	8, 8, 0, HT_LEFT,		1, 0,	0,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleHeadingCenter = { 
+PRIVATE HTStyle HTStyleHeadingCenter = {
 	&HTStyleHeading6,  "HeadingCenter", "HCENTER",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	0, 0, 3, HT_CENTER,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleHeadingLeft = { 
+PRIVATE HTStyle HTStyleHeadingLeft = {
 	&HTStyleHeadingCenter,  "HeadingLeft", "HLEFT",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	0, 0, 3, HT_LEFT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
-PRIVATE HTStyle HTStyleHeadingRight = { 
+PRIVATE HTStyle HTStyleHeadingRight = {
 	&HTStyleHeadingLeft,  "HeadingRight", "HRIGHT",
 	HT_FONT+HT_BOLD, 1, HT_BLACK,	0, 0,
 	0, 0, 3, HT_RIGHT,		1, 0,	tabs_8,
-	YES, YES, 1, 0,			0 };	
+	YES, YES, 1, 0,			0 };
 
 /* Style sheet points to the last in the list:
 */
 PRIVATE HTStyleSheet sheet = { "default.style",
 				&HTStyleHeadingRight }; /* sheet */
 
+
+PRIVATE HTStyleSheet *result = NULL;
+
+PRIVATE void FreeDefaultStyle NOARGS
+{
+    HTStyle * style;
+    while((style=result->styles)!=0) {
+	result->styles = style->next;
+	FREE(style);
+    }
+    FREE(result);
+}
+
 PUBLIC HTStyleSheet * DefaultStyle NOARGS
 {
-    static HTStyleSheet *result;
     HTStyle *p, *q;
 
     /*
@@ -378,6 +390,7 @@ PUBLIC HTStyleSheet * DefaultStyle NOARGS
     	result = HTStyleSheetNew ();
 	*result = sheet;
 	result->styles = 0;
+	atexit(FreeDefaultStyle);
 	for (p = sheet.styles; p != 0; p = p->next) {
 	    q = HTStyleNew ();
 	    *q = *p;
@@ -389,9 +402,6 @@ PUBLIC HTStyleSheet * DefaultStyle NOARGS
 		p != 0 && q != 0;
 		p = p->next, q = q->next) {
     	    HTStyle *r = p->next;
-	    HTStyle temp;
-	    temp = *p;
-	    temp.next = q->next;
 	    *p = *q;
 	    p->next = r;
 	}
diff --git a/src/GridText.c b/src/GridText.c
index ebca529f..e43e1ec5 100644
--- a/src/GridText.c
+++ b/src/GridText.c
@@ -464,9 +464,14 @@ PUBLIC HText *	HText_new ARGS1(
     /*
      *  If we are going to render the List Page, always merge in hidden
      *  links to get the numbering consistent if form fields are numbered
-     *  and show up as hidden links in the list of links. - kw
+     *  and show up as hidden links in the list of links.
+     *  If we are going to render a bookmark file, also always merge in
+     *	hidden links, to get the link numbers consistent with the counting
+     *  in remove_bookmark_link().  Normally a bookmark file shouldn't
+     *	contain any entries with empty titles, but it might happen. - kw
      */
-    if (anchor->address && !strcmp(anchor->address, LYlist_temp_url()))
+    if (anchor->bookmark ||
+	(anchor->address && !strcmp(anchor->address, LYlist_temp_url())))
 	self->hiddenlinkflag = HIDDENLINKS_MERGE;
     else
 	self->hiddenlinkflag = LYHiddenLinks;
@@ -1036,7 +1041,10 @@ PRIVATE void display_page ARGS3(
 {
     HTLine * line = NULL;
     int i;
-    char *cp, tmp[7];
+#if defined(FANCY_CURSES) || defined(USE_SLANG)
+    char *cp;
+#endif
+    char tmp[7];
     int last_screen;
     TextAnchor *Anchor_ptr = NULL;
     FormInfo *FormInfo_ptr;
@@ -1143,8 +1151,10 @@ PRIVATE void display_page ARGS3(
      *  Output the page.
      */
     if (line) {
+#if defined(FANCY_CURSES) || defined(USE_SLANG)
 	char *data;
 	int offset, HitOffset, LenNeeded;
+#endif
 	for (i = 0; i < (display_lines); i++)  {
 	    /*
 	     *  Verify and display each line.
@@ -1208,7 +1218,7 @@ PRIVATE void display_page ARGS3(
 		for (;
 		     written < len && (tmp[0] = data[itmp]) != '\0';
 		     itmp++)  {
-		    if (IsSpecialAttrChar(tmp[0])) {
+		    if (IsSpecialAttrChar(tmp[0]) && tmp[0] != LY_SOFT_NEWLINE) {
 			/*
 			 *  Ignore special characters.
 			 */
@@ -1714,8 +1724,8 @@ PRIVATE void split_line ARGS2(
     if (line->numstyles > 0 && line->numstyles < MAX_STYLES_ON_LINE) {
 	int n;
 	inew ++;
-	for (n = line->numstyles; n >= 0; n--)
-		line->styles[n + inew] = line->styles[n];
+	for (n = 0; n < line->numstyles; n++)
+		line->styles[n] = line->styles[n + inew];
     } else
 	if (line->numstyles == 0)
 	/* FIXME: RJP - shouldn't use 0xffffffff for largest integer */
@@ -1754,7 +1764,7 @@ PRIVATE void split_line ARGS2(
     if (split > 0) {	/* Delete space at "split" splitting line */
 	char *p, *prevdata = previous->data, *linedata = line->data;
 	unsigned plen;
-	unsigned i;
+	int i;
 
 	/*
 	 *  Split the line. - FM
@@ -1767,7 +1777,13 @@ PRIVATE void split_line ARGS2(
 	 *  of our new line. - FM
 	 */
 	p = prevdata + split;
-	while (*p == ' ' || *p == LY_SOFT_HYPHEN) {
+	while ((*p == ' ' &&
+		(HeadTrim || text->first_anchor ||
+		 underline_on || bold_on ||
+		 text->style->alignment != HT_LEFT ||
+		 text->style->wordWrap || text->style->freeFormat ||
+		 text->style->spaceBefore || text->style->spaceAfter)) ||
+	       *p == LY_SOFT_HYPHEN) {
 	    p++;
 	    HeadTrim++;
 	}
@@ -1782,7 +1798,7 @@ PRIVATE void split_line ARGS2(
 	     */
 	    underline_on = NO;
 	    if (split) {
-		for (i = (split-1); i != 0; i--) {
+		for (i = (split-1); i >= 0; i--) {
 		    if (prevdata[i] == LY_UNDERLINE_END_CHAR) {
 			break;
 		    }
@@ -1802,7 +1818,7 @@ PRIVATE void split_line ARGS2(
 		SpecialAttrChars++;
 	    }
 	    if (plen) {
-		for (i = (plen - 1); i != 0; i--) {
+		for (i = (plen - 1); i >= 0; i--) {
 		    if (p[i] == LY_UNDERLINE_START_CHAR) {
 			underline_on = YES;
 			break;
@@ -1812,7 +1828,7 @@ PRIVATE void split_line ARGS2(
 			break;
 		    }
 		}
-		for (i = (plen - 1); i != 0; i--) {
+		for (i = (plen - 1); i >= 0; i--) {
 		    if (p[i] == LY_UNDERLINE_START_CHAR ||
 			p[i] == LY_UNDERLINE_END_CHAR) {
 			ctrl_chars_on_this_line++;
@@ -1827,7 +1843,7 @@ PRIVATE void split_line ARGS2(
 	 */
 	bold_on = NO;
 	if (split) {
-	    for (i = (split - 1); i != 0; i--) {
+	    for (i = (split - 1); i >= 0; i--) {
 		if (prevdata[i] == LY_BOLD_END_CHAR) {
 		    break;
 		}
@@ -1845,10 +1861,9 @@ PRIVATE void split_line ARGS2(
 	    linedata[line->size] = '\0';
 	    ctrl_chars_on_this_line++;
 	    SpecialAttrChars++;;
-	} else
-	    bold_on = OFF;
+	}
 	if (plen) {
-	    for (i = (plen - 1); i != 0; i--) {
+	    for (i = (plen - 1); i >= 0; i--) {
 		if (p[i] == LY_BOLD_START_CHAR) {
 		    bold_on = YES;
 		    break;
@@ -1858,14 +1873,14 @@ PRIVATE void split_line ARGS2(
 		    break;
 		}
 	    }
-	    for (i = (plen - 1); i != 0; i--) {
+	    for (i = (plen - 1); i >= 0; i--) {
 		if (p[i] == LY_BOLD_START_CHAR ||
 		    p[i] == LY_BOLD_END_CHAR ||
 		    IS_UTF_EXTRA(p[i]) ||
 		    p[i] == LY_SOFT_HYPHEN) {
 		    ctrl_chars_on_this_line++;
 		}
-		if (p[i] == LY_SOFT_HYPHEN && text->permissible_split < i) {
+		if (p[i] == LY_SOFT_HYPHEN && (int)text->permissible_split < i) {
 		    text->permissible_split = i + 1;
 		}
 	    }
@@ -1882,7 +1897,12 @@ PRIVATE void split_line ARGS2(
      *  Economize on space.
      */
     while ((previous->size > 0) &&
-	(previous->data[previous->size-1] == ' ')) {
+	   (previous->data[previous->size-1] == ' ') &&
+	   (ctrl_chars_on_this_line || HeadTrim || text->first_anchor ||
+	    underline_on || bold_on ||
+	    text->style->alignment != HT_LEFT ||
+	    text->style->wordWrap || text->style->freeFormat ||
+	    text->style->spaceBefore || text->style->spaceAfter)) {
 	/*
 	 *  Strip trailers.
 	 */
@@ -1908,23 +1928,28 @@ PRIVATE void split_line ARGS2(
     /*
      *  Align left, right or center.
      */
-    for (cp = previous->data; *cp; cp++) {
-	if (*cp == LY_UNDERLINE_START_CHAR ||
-	    *cp == LY_UNDERLINE_END_CHAR ||
-	    *cp == LY_BOLD_START_CHAR ||
-	    *cp == LY_BOLD_END_CHAR ||
-	    IS_UTF_EXTRA(*cp) ||
-	    *cp == LY_SOFT_HYPHEN)
-	    ctrl_chars_on_previous_line++;
-    }
-    /* @@ first line indent */
-    spare =  (LYcols-1) -
-		(int)style->rightIndent - indent +
-		ctrl_chars_on_previous_line - previous->size -
-		((previous->size > 0) &&
-		 (int)(previous->data[previous->size-1] ==
-					    LY_SOFT_HYPHEN ?
-							 1 : 0));
+    spare = 0;
+    if (style->alignment == HT_CENTER ||
+	style->alignment == HT_RIGHT) {
+	/* Calculate spare character positions if needed */
+	for (cp = previous->data; *cp; cp++) {
+	    if (*cp == LY_UNDERLINE_START_CHAR ||
+		*cp == LY_UNDERLINE_END_CHAR ||
+		*cp == LY_BOLD_START_CHAR ||
+		*cp == LY_BOLD_END_CHAR ||
+		IS_UTF_EXTRA(*cp) ||
+		*cp == LY_SOFT_HYPHEN)
+		ctrl_chars_on_previous_line++;
+	}
+	/* @@ first line indent */
+	spare =  (LYcols-1) -
+	    (int)style->rightIndent - indent +
+	    ctrl_chars_on_previous_line - previous->size -
+	    ((previous->size > 0) &&
+	     (int)(previous->data[previous->size-1] ==
+		   LY_SOFT_HYPHEN ?
+		   1 : 0));
+    }
 
     switch (style->alignment) {
 	case HT_CENTER :
@@ -2282,7 +2307,7 @@ PUBLIC void HText_appendCharacter ARGS2(
 	return;
     }
 
-    if (IsSpecialAttrChar(ch)) {
+    if (IsSpecialAttrChar(ch) && ch != LY_SOFT_NEWLINE) {
 #ifndef USE_COLOR_STYLE
 	if (line->size >= (MAX_LINE-1)) return;
 	if (ch == LY_UNDERLINE_START_CHAR) {
@@ -2311,11 +2336,6 @@ PUBLIC void HText_appendCharacter ARGS2(
 	    bold_on = OFF;
 	    ctrl_chars_on_this_line++;
 	    return;
-	} else if (ch == LY_SOFT_NEWLINE) {
-	    line->data[line->size++] = LY_SOFT_NEWLINE;
-	    line->data[line->size] = '\0';
-	    ctrl_chars_on_this_line++;
-	    return;
 	} else if (ch == LY_SOFT_HYPHEN) {
 	    int i;
 
@@ -2343,6 +2363,10 @@ PUBLIC void HText_appendCharacter ARGS2(
 #else
 	return;
 #endif
+    } else if (ch == LY_SOFT_NEWLINE) {
+	line->data[line->size++] = LY_SOFT_NEWLINE;
+	line->data[line->size] = '\0';
+	return;
     }
 
     if (IS_UTF_EXTRA(ch)) {
@@ -4066,7 +4090,9 @@ PUBLIC void HText_pageDisplay ARGS2(
 	int,		line_num,
 	char *,		target)
 {
-    CTRACE(tfp, "GridText: HText_pageDisplay at line %d started\n", line_num);
+    if (debug_display_partial || (LYTraceLogFP != NULL)) {
+	CTRACE(tfp, "GridText: HText_pageDisplay at line %d started\n", line_num);
+    }
 
 #ifdef DISP_PARTIAL
     if (display_partial && detected_forms_input_partial) {
@@ -4093,7 +4119,9 @@ PUBLIC void HText_pageDisplay ARGS2(
 
     is_www_index = HTAnchor_isIndex(HTMainAnchor);
 
-    CTRACE(tfp, "GridText: HText_pageDisplay finished\n");
+    if (debug_display_partial || (LYTraceLogFP != NULL)) {
+	CTRACE(tfp, "GridText: HText_pageDisplay finished\n");
+    }
 }
 
 /*
diff --git a/src/HTFWriter.c b/src/HTFWriter.c
index 667c8480..8b1e8805 100644
--- a/src/HTFWriter.c
+++ b/src/HTFWriter.c
@@ -157,7 +157,7 @@ PRIVATE void HTFWriter_free ARGS1(HTStream *, me)
 		 */
 		StrAllocCopy(path, me->anchor->FileCache);
 		if ((len = strlen(path)) > 2) {
-		    if (!strcasecomp((char *)&path[len-2], "gz")) {
+		    if (!strcasecomp(&path[len-2], "gz")) {
 #ifdef USE_ZLIB
 			if (!skip_loadfile) {
 			    use_gzread = YES;
@@ -167,7 +167,7 @@ PRIVATE void HTFWriter_free ARGS1(HTStream *, me)
 			    path[len-3] = '\0';
 			    remove(path);
 			}
-		    } else if (!strcasecomp((char *)&path[len-1], "Z")) {
+		    } else if (!strcasecomp(&path[len-1], "Z")) {
 			path[len-2] = '\0';
 			remove(path);
 		    }
@@ -626,11 +626,11 @@ PUBLIC HTStream* HTSaveToFile ARGS3(
 	    return(NULL);
 	}
 
-	if (((cp=strchr((char *)pres->rep->name, ';')) != NULL) &&
+	if (((cp=strchr(pres->rep->name, ';')) != NULL) &&
 	    strstr((cp+1), "charset") != NULL) {
-	    _user_message(WRONG_CHARSET_D_OR_C, (char *)pres->rep->name);
-	} else if (*((char *)pres->rep->name) != '\0')	{
-	    _user_message(UNMAPPED_TYPE_D_OR_C, (char *)pres->rep->name);
+	    _user_message(WRONG_CHARSET_D_OR_C, pres->rep->name);
+	} else if (*(pres->rep->name) != '\0')	{
+	    _user_message(UNMAPPED_TYPE_D_OR_C, pres->rep->name);
 	} else {
 	    _statusline(CANNOT_DISPLAY_FILE_D_OR_C);
 	}
diff --git a/src/HTInit.c b/src/HTInit.c
index 44c915b6..21a0dc4e 100644
--- a/src/HTInit.c
+++ b/src/HTInit.c
@@ -532,9 +532,14 @@ PRIVATE int PassesTest ARGS1(
     /*
      *  Build the command and execute it.
      */
-    if (LYOpenTemp(TmpFileName, HTML_SUFFIX, "w") == 0)
-	ExitWithError(CANNOT_OPEN_TEMP);
-    LYCloseTemp(TmpFileName);
+    if (strchr(mc->testcommand, '%')) {
+	if (LYOpenTemp(TmpFileName, HTML_SUFFIX, "w") == 0)
+	    ExitWithError(CANNOT_OPEN_TEMP);
+	LYCloseTemp(TmpFileName);
+    } else {
+	/* We normally don't need a temp file name - kw */
+	TmpFileName[0] = '\0';
+    }
     cmd = (char *)malloc(1024);
     if (!cmd)
 	ExitWithError(MEMORY_EXHAUSTED_ABORT);
diff --git a/src/HTML.c b/src/HTML.c
index 0e1bf5bf..24e5acf2 100644
--- a/src/HTML.c
+++ b/src/HTML.c
@@ -78,14 +78,14 @@ struct _HTStream {
     /* .... */
 };
 
-PRIVATE HTStyleSheet * styleSheet;	/* Application-wide */
+PRIVATE HTStyleSheet * styleSheet = NULL;	/* Application-wide */
 
 /*	Module-wide style cache
 */
 PRIVATE HTStyle *styles[HTML_ELEMENTS+31]; /* adding 24 nested list styles  */
 					   /* and 3 header alignment styles */
 					   /* and 3 div alignment styles    */
-PRIVATE HTStyle *default_style;
+PRIVATE HTStyle *default_style = NULL;
 
 PUBLIC char *LYToolbarName = "LynxPseudoToolbar";
 
@@ -108,7 +108,7 @@ PRIVATE void HTML_end_element PARAMS((HTStructured *me,
 
 PRIVATE char* MakeNewTitle PARAMS((CONST char ** value, int src_type));
 PRIVATE char* MakeNewImageValue PARAMS((CONST char ** value));
-PRIVATE char* MakeNewMapValue PARAMS((const char ** value, const char* mapstr));
+PRIVATE char* MakeNewMapValue PARAMS((CONST char ** value, CONST char* mapstr));
 
 /*	Set an internal flag that the next call to a stack-affecting method
 **	is only internal and the stack manipulation should be skipped. - kw
@@ -655,13 +655,13 @@ PRIVATE void HTML_start_element ARGS6(
 	UPDATE_STYLE;
     }
 
-    CTRACE(tfp, "me->tag_charset: %d -> ", me->tag_charset); 
+    CTRACE(tfp, "me->tag_charset: %d -> ", me->tag_charset);
     if (tag_charset < 0)
 	me->tag_charset = me->UCLYhndl;
     else
 	me->tag_charset = tag_charset;
-    CTRACE(tfp, "%d (me->UCLYhndl: %d, tag_charset: %d)\n",  
-	me->tag_charset, me->UCLYhndl, tag_charset); 
+    CTRACE(tfp, "%d (me->UCLYhndl: %d, tag_charset: %d)\n",
+	me->tag_charset, me->UCLYhndl, tag_charset);
 
 /* this should be done differently */
 #if defined(USE_COLOR_STYLE)
@@ -2737,10 +2737,12 @@ PRIVATE void HTML_start_element ARGS6(
 		if (*alt_string == '\0') {
 		    if (map_href) {
 			StrAllocCopy(alt_string, (title ? title :
-				     MakeNewMapValue(value,"USEMAP")));
+				     (temp = MakeNewMapValue(value,"USEMAP"))));
+			FREE(temp);
 		    } else if (dest_ismap) {
 			StrAllocCopy(alt_string, (title ? title :
-				     MakeNewMapValue(value,"ISMAP")));
+				     (temp = MakeNewMapValue(value,"ISMAP"))));
+			FREE(temp);
 
 		    } else if (me->inA == TRUE && dest) {
 			StrAllocCopy(alt_string, (title ?
@@ -2760,12 +2762,14 @@ PRIVATE void HTML_start_element ARGS6(
 
 	} else if (map_href) {
 	    StrAllocCopy(alt_string, (title ? title :
-				      MakeNewMapValue(value,"USEMAP")));
+				      (temp = MakeNewMapValue(value,"USEMAP"))));
+	    FREE(temp);
 
 	} else if ((dest_ismap == TRUE) ||
 		   (me->inA && present && present[HTML_IMG_ISMAP])) {
 	    StrAllocCopy(alt_string, (title ? title :
-				      MakeNewMapValue(value,"ISMAP")));
+				      (temp = MakeNewMapValue(value,"ISMAP"))));
+	    FREE(temp);
 
 	} else if (me->inA == TRUE && dest) {
 	    StrAllocCopy(alt_string, (title ?
@@ -2784,7 +2788,8 @@ PRIVATE void HTML_start_element ARGS6(
 					  title : ""));
 	}
 	if (*alt_string == '\0' && map_href) {
-	    StrAllocCopy(alt_string, MakeNewMapValue(value,"USEMAP"));
+	    StrAllocCopy(alt_string, (temp = MakeNewMapValue(value,"USEMAP")));
+	    FREE(temp);
 	}
 
 	CTRACE(tfp, "HTML IMG: USEMAP=%d ISMAP=%d ANCHOR=%d PARA=%d\n",
@@ -2846,7 +2851,8 @@ PRIVATE void HTML_start_element ARGS6(
 		    if (dest_ismap) {
 			HTML_put_character(me, ' ');
 			me->in_word = NO;
-			HTML_put_string(me, MakeNewMapValue(value,"ISMAP"));
+			HTML_put_string(me, (temp = MakeNewMapValue(value,"ISMAP")));
+			FREE(temp);
 		    } else if (dest) {
 			HTML_put_character(me, ' ');
 			me->in_word = NO;
@@ -2902,6 +2908,7 @@ PRIVATE void HTML_start_element ARGS6(
 		HText_endAnchor(me->text, me->CurrentANum);
 		me->CurrentANum = 0;
 		HTML_put_character(me, '-');
+		FREE(newtitle);
 		StrAllocCopy(alt_string,
 			     ((present &&
 			       present[HTML_IMG_ISOBJECT]) ?
@@ -2958,6 +2965,7 @@ PRIVATE void HTML_start_element ARGS6(
 		HText_endAnchor(me->text, me->CurrentANum);
 		me->CurrentANum = 0;
 		HTML_put_character(me, '-');
+		FREE(newtitle);
 		StrAllocCopy(alt_string,
 			     ((present &&
 			       present[HTML_IMG_ISOBJECT]) ?
@@ -3014,7 +3022,8 @@ PRIVATE void HTML_start_element ARGS6(
 		if (dest_ismap) {
 		    HTML_put_character(me, ' ');/* space char may be ignored */
 		    me->in_word = NO;
-		    HTML_put_string(me, MakeNewMapValue(value,"ISMAP"));
+		    HTML_put_string(me, (temp = MakeNewMapValue(value,"ISMAP")));
+		    FREE(temp);
 		} else if (dest) {
 		    HTML_put_character(me, ' ');/* space char may be ignored */
 		    me->in_word = NO;
@@ -4400,7 +4409,7 @@ PRIVATE void HTML_start_element ARGS6(
 		 *  We have a TYPE="image" with a non-zero-length SRC
 		 *  attribute and want clickable images.  Make the
 		 *  SRC's value a link if it's still not zero-length
-		 *  legitiimizing it. - FM
+		 *  legitimizing it. - FM
 		 */
 		url_type = LYLegitimizeHREF(me, &href, TRUE, TRUE);
 		if (*href) {
@@ -4438,6 +4447,7 @@ PRIVATE void HTML_start_element ARGS6(
 		    if (me->inBoldH == FALSE)
 			HText_appendCharacter(me->text, LY_BOLD_START_CHAR);
 		    HTML_put_string(me, VERBOSE_IMG(value,HTML_INPUT_SRC,"[IMAGE]"));
+		    FREE(newtitle);
 		    if (me->inBoldH == FALSE)
 			HText_appendCharacter(me->text, LY_BOLD_END_CHAR);
 		    HText_endAnchor(me->text, 0);
@@ -4689,6 +4699,7 @@ PRIVATE void HTML_start_element ARGS6(
 		}
 	    }
 	    HText_setIgnoreExcess(me->text, FALSE);
+	    FREE(ImageSrc);
 	    FREE(I_value);
 	    FREE(I_name);
 	}
@@ -7460,7 +7471,10 @@ PRIVATE char * MakeNewTitle ARGS2(CONST char **, value, int, src_type)
     char *newtitle = NULL;
 
     StrAllocCopy(newtitle, "[");
-    ptr = strrchr(value[src_type], '/');
+    if (value != 0 && value[src_type] != 0)
+	ptr = strrchr(value[src_type], '/');
+    else
+	ptr = 0;
     if (!ptr) {
 	StrAllocCat(newtitle, value[src_type]);
     } else {
@@ -7486,7 +7500,7 @@ PRIVATE char * MakeNewImageValue ARGS1(CONST char **, value)
     return newtitle;
 }
 
-PRIVATE char * MakeNewMapValue ARGS2(const char **, value, const char*, mapstr)
+PRIVATE char * MakeNewMapValue ARGS2(CONST char **, value, CONST char*, mapstr)
 {
     char *ptr;
     char *newtitle = NULL;
diff --git a/src/LYBookmark.c b/src/LYBookmark.c
index 9c116890..7f103f11 100644
--- a/src/LYBookmark.c
+++ b/src/LYBookmark.c
@@ -7,6 +7,7 @@
 #include <LYSignal.h>
 #include <LYKeymap.h>
 #include <LYCharUtils.h> /* need for META charset */
+#include <UCAux.h>
 #include <LYCharSets.h>  /* need for LYHaveCJKCharacterSet */
 #include <LYCurses.h>
 #include <GridText.h>
@@ -171,8 +172,9 @@ PRIVATE char * convert_mosaic_bookmark_file ARGS1(
     return(newfile);
 }
 
-PRIVATE  BOOLEAN have8bit PARAMS((char *Title));
-PRIVATE  char* title_convert8bit PARAMS((char *Title));
+PRIVATE  BOOLEAN havevisible PARAMS((CONST char *Title));
+PRIVATE  BOOLEAN have8bit PARAMS((CONST char *Title));
+PRIVATE  char* title_convert8bit PARAMS((CONST char *Title));
 
 /*
  *  Adds a link to a bookmark file, creating the file
@@ -259,17 +261,19 @@ PUBLIC void save_bookmark_link ARGS2(
     /*
      *	Allow user to change the title. - FM
      */
-    string_buffer[255] = '\0';
-    LYstrncpy(string_buffer, title, 255);
-    convert_to_spaces(string_buffer, FALSE);
-    LYMBM_statusline(TITLE_PROMPT);
-    LYgetstr(string_buffer, VISIBLE, sizeof(string_buffer), NORECALL);
-    if (*string_buffer == '\0') {
-	LYMBM_statusline(CANCELLED);
-	sleep(MessageSecs);
-	FREE(bookmark_URL);
-	return;
-    }
+    string_buffer[sizeof(string_buffer)-1] = '\0';
+    do {
+	LYstrncpy(string_buffer, title, sizeof(string_buffer)-1);
+	convert_to_spaces(string_buffer, FALSE);
+	LYMBM_statusline(TITLE_PROMPT);
+	LYgetstr(string_buffer, VISIBLE, sizeof(string_buffer), NORECALL);
+	if (*string_buffer == '\0') {
+	    LYMBM_statusline(CANCELLED);
+	    sleep(MessageSecs);
+	    FREE(bookmark_URL);
+	    return;
+	}
+    } while(!havevisible(string_buffer));
 
     /*
      *	Create the Title with any left-angle-brackets
@@ -283,8 +287,11 @@ PUBLIC void save_bookmark_link ARGS2(
     StrAllocCopy(Title, string_buffer);
     LYEntify(&Title, TRUE);
     if (UCSaveBookmarksInUnicode &&
-		have8bit(Title) && (!LYHaveCJKCharacterSet))
-	StrAllocCopy(Title, title_convert8bit(Title));
+	have8bit(Title) && (!LYHaveCJKCharacterSet)) {
+	char *p = title_convert8bit(Title);
+	FREE(Title);
+	Title = p;
+    }
 
     /*
      *	Create the bookmark file, if it doesn't exist already,
@@ -877,9 +884,38 @@ PUBLIC void LYMBM_statusline  ARGS1(
 }
 
 /*
+ * Check whether we have any visible (non-blank) chars.
+ */
+PRIVATE  BOOLEAN havevisible ARGS1(CONST char *, Title)
+{
+    CONST char *p = Title;
+    unsigned char c;
+    long unicode;
+
+    for ( ; *p; p++) {
+	c = (unsigned char)(TOASCII(*p));
+	if (c > 32 && c < 127)
+	    return(TRUE);
+	if (c <= 32 || c == 127)
+	    continue;
+	if (LYHaveCJKCharacterSet || !UCCanUniTranslateFrom(current_char_set))
+	    return(TRUE);
+	unicode = UCTransToUni(*p, current_char_set);
+	if (unicode > 32 && unicode < 127)
+	    return(TRUE);
+	if (c <= 32 || (c >= 127 && c <= 160) || c == 0xad)
+	    continue;
+	if (unicode >= 0x2000 && unicode < 0x200f)
+	    continue;
+	return(TRUE);
+    }
+    return(FALSE); /* if we came here */
+}
+
+/*
  * Check whether string have 8 bit chars.
  */
-PRIVATE  BOOLEAN have8bit ARGS1(char *, Title)
+PRIVATE  BOOLEAN have8bit ARGS1(CONST char *, Title)
 {
     CONST char *p = Title;
 
@@ -909,14 +945,17 @@ PRIVATE  BOOLEAN have8bit ARGS1(char *, Title)
  *  Older versions fail.
  *
  */
-PRIVATE  char* title_convert8bit ARGS1(char *, Title)
+PRIVATE  char* title_convert8bit ARGS1(CONST char *, Title)
 {
     CONST char *p = Title;
     char temp[256];
+    char *p0;
     char *q = temp;
     char *comment = NULL;
     char *ncr     = NULL;
     char *buf = NULL;
+    int charset_in  = current_char_set;
+    int charset_out = -1;
 
     for ( ; *p; p++) {
 	LYstrncpy(q, p, 1);
@@ -924,12 +963,12 @@ PRIVATE  char* title_convert8bit ARGS1(char *, Title)
 	    StrAllocCat(comment, q);
 	    StrAllocCat(ncr, q);
 	} else {
-	int charset_in, charset_out, uck;
+	int uck;
 	long unicode;
 	char replace_buf [10], replace_buf2 [10];
 
-	charset_in  = current_char_set;
-	charset_out = UCGetLYhndl_byMIME("us-ascii");
+	if (charset_out < 0)
+	    charset_out = UCGetLYhndl_byMIME("us-ascii");
 
 	uck = UCTransCharStr(replace_buf, sizeof(replace_buf), *q,
 			      charset_in, charset_out, YES);
@@ -946,6 +985,19 @@ PRIVATE  char* title_convert8bit ARGS1(char *, Title)
     }
 
     /*
+     *  Cleanup comment, collapse multiple dashes into one dash,
+     *  skip '>'.
+     */
+    for (q = p0 = comment; *p0; p0++) {
+	if ((unsigned char)(TOASCII(*p0)) >= 32 &&
+	    *p0 != '>' &&
+	    (q == comment || *p0 != '-' || *(q-1) != '-')) {
+	    *q++ = *p0;
+	}
+    }
+    *q = '\0';
+
+    /*
      * valid bookmark should be a single line (no linebreaks!).
      */
     StrAllocCat(buf, "<!-- ");
@@ -953,5 +1005,7 @@ PRIVATE  char* title_convert8bit ARGS1(char *, Title)
     StrAllocCat(buf, " -->");
     StrAllocCat(buf, ncr);
 
+    FREE(comment);
+    FREE(ncr);
     return(buf);
 }
diff --git a/src/LYCharSets.c b/src/LYCharSets.c
index 03f9f74e..dafda5b8 100644
--- a/src/LYCharSets.c
+++ b/src/LYCharSets.c
@@ -373,59 +373,59 @@ PUBLIC CONST char * LYchar_set_names[MAXCHARSETS + 1]={
  *  Will be automatically modified (and extended) by charset translations
  *  which are loaded using the chartrans mechanism.
  *  Most important piece of info to put here is a MIME charset name.
- *  Used for chartrans.
+ *  Used for chartrans (see UCDefs.h).
  *  The order of LYCharSets and LYCharSet_UC MUST be the same.
  *
  *  Note that most of the charsets added by the new mechanism in src/chrtrans
- *  don't show up here at all.	They don't have to.
+ *  don't show up here at all.  They don't have to.
  */
 PUBLIC LYUCcharset LYCharSet_UC[MAXCHARSETS]=
 {
   /*
    *  Zero position placeholder and HTMLGetEntityUCValue() reference. - FM
    */
-  {-1,"iso-8859-1",	UCT_ENC_8BIT,
-			UCT_REP_IS_LAT1,
-			UCT_CP_IS_LAT1, 	UCT_R_LAT1,UCT_R_LAT1},
+  {-1,"iso-8859-1",    UCT_ENC_8BIT,0,
+                       UCT_REP_IS_LAT1,
+                       UCT_CP_IS_LAT1,         UCT_R_LAT1,UCT_R_LAT1},
 
   /*
    *  Placeholders for Unicode tables. - FM
    */
-  {-1,"cp850",		UCT_ENC_8BIT,
-			UCT_REP_SUPERSETOF_LAT1,
-			0,			UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"windows-1252", 	UCT_ENC_8BIT,
-			UCT_REP_SUPERSETOF_LAT1,
-			0,			UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"cp437",		UCT_ENC_8BIT,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"dec-mcs",	UCT_ENC_8BIT,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"macintosh",	UCT_ENC_8BIT,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"next",		UCT_ENC_8BIT,0,0,	UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"cp850",         UCT_ENC_8BIT,0,
+                       UCT_REP_SUPERSETOF_LAT1,
+                       0,                      UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"windows-1252",  UCT_ENC_8BIT,0,
+                       UCT_REP_SUPERSETOF_LAT1,
+                       0,                      UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"cp437",         UCT_ENC_8BIT,0,0,0,     UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"dec-mcs",       UCT_ENC_8BIT,0,0,0,     UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"macintosh",     UCT_ENC_8BIT,0,0,0,     UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"next",          UCT_ENC_8BIT,0,0,0,     UCT_R_8BIT,UCT_R_ASCII},
 
   /*
    *  There is no strict correlation for the next five, since the transfer
    *  charset gets decoded into Display Char Set by the CJK code (separate
-   *  from Unicode mechanism).	For now we use the MIME name that describes
+   *  from Unicode mechanism).  For now we use the MIME name that describes
    *  what is output to the terminal. - KW
    */
-  {-1,"euc-cn", 	UCT_ENC_CJK,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"euc-jp", 	UCT_ENC_CJK,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"shift_jis",	UCT_ENC_CJK,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"euc-kr", 	UCT_ENC_CJK,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"big5",		UCT_ENC_CJK,0,0,	UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"euc-cn",        UCT_ENC_CJK,0,0,0,      UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"euc-jp",        UCT_ENC_CJK,0,0,0,      UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"shift_jis",     UCT_ENC_CJK,0,0,0,      UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"euc-kr",        UCT_ENC_CJK,0,0,0,      UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"big5",          UCT_ENC_CJK,0,0,0,      UCT_R_8BIT,UCT_R_ASCII},
 
   /*
    *  Placeholders for Unicode tables. - FM
    */
-  {-1,"viscii", 	UCT_ENC_8BIT_C0,0,0,	UCT_R_8BIT,UCT_R_ASCII},
-  {-1,"us-ascii",	UCT_ENC_7BIT,
-			UCT_REP_SUBSETOF_LAT1,
-			UCT_CP_SUBSETOF_LAT1,	UCT_R_ASCII,UCT_R_ASCII},
+  {-1,"viscii",        UCT_ENC_8BIT_C0,0,0,0,  UCT_R_8BIT,UCT_R_ASCII},
+  {-1,"us-ascii",      UCT_ENC_7BIT,0,
+                       UCT_REP_SUBSETOF_LAT1,
+                       UCT_CP_SUBSETOF_LAT1,   UCT_R_ASCII,UCT_R_ASCII},
 
   /*
    *  Placeholder for non-translation mode. - FM
    */
-  {-1,"x-transparent",	UCT_ENC_8BIT,0,0,	UCT_R_8BIT,UCT_R_ASCII}
+  {-1,"x-transparent", UCT_ENC_8BIT,0,0,0,     UCT_R_8BIT,UCT_R_ASCII}
 
 };
 
diff --git a/src/LYClean.c b/src/LYClean.c
index cc134e8c..78e5a67e 100644
--- a/src/LYClean.c
+++ b/src/LYClean.c
@@ -106,7 +106,7 @@ PUBLIC void cleanup_sig ARGS1(
 	}
 	if (sig != 0) {
 	    printf("\n\n%s %d\n\n",
-		   gettext("\n\nExiting via interrupt: %d\n\n"),
+		   gettext("Exiting via interrupt:"),
 		   sig);
 	    fflush(stdout);
 	}
diff --git a/src/LYCookie.c b/src/LYCookie.c
index 9bcb6f0c..0ef68296 100644
--- a/src/LYCookie.c
+++ b/src/LYCookie.c
@@ -495,6 +495,14 @@ PRIVATE void store_cookie ARGS3(
 	co = NULL;
 
     /*
+     * Don't add the cookie if the value is NULL. - BJP
+     */
+    } else if (co->value[0] == '\0') {
+	CTRACE(tfp, "store_cookie: Value is NULL! Not storing cookie.\n");
+	freeCookie(co);
+	co = NULL;
+
+    /*
      *	If it's a replacement for a cookie that had not expired,
      *	and never allow has not been set, add it again without
      *	confirmation. - FM
diff --git a/src/LYCurses.c b/src/LYCurses.c
index ff8e22a1..42b10477 100644
--- a/src/LYCurses.c
+++ b/src/LYCurses.c
@@ -344,7 +344,7 @@ PUBLIC void curses_w_style ARGS3(
 		    CTRACE(tfp,"........... %s (0x%x) %s\r\n",
 				"attribute cache FULL, dropping last",
 				last_styles[last_ptr],
-				"in LynxChangStyle(curses_w_style)");
+				"in LynxChangeStyle(curses_w_style)");
 		    last_ptr--;
 		}
 		last_styles[last_ptr++] = getattrs(stdscr);
@@ -750,16 +750,7 @@ PUBLIC void start_curses NOARGS
 	if (initscr() == NULL) {  /* start curses */
 	    fprintf(tfp, "%s\n",
 		gettext("Terminal initialisation failed - unknown terminal type?"));
-#ifndef NOSIGHUP
-	    (void) signal(SIGHUP, SIG_DFL);
-#endif /* !NOSIGHUP */
-	    (void) signal(SIGTERM, SIG_DFL);
-	    (void) signal(SIGINT, SIG_DFL);
-#ifdef SIGTSTP
-	    if (no_suspend)
-		(void) signal(SIGTSTP,SIG_DFL);
-#endif /* SIGTSTP */
-	    exit (-1);
+	    exit_immediately (-1);
 	}
 #if defined(SIGWINCH) && defined(NCURSES_VERSION)
 	size_change(0);
diff --git a/src/LYDownload.c b/src/LYDownload.c
index 2382e750..e0215020 100644
--- a/src/LYDownload.c
+++ b/src/LYDownload.c
@@ -658,6 +658,7 @@ PUBLIC int LYdownload_options ARGS2(
      *	Free off temp copy.
      */
     FREE(sug_filename);
+    FREE(downloaded_url);
 
     return(0);
 }
diff --git a/src/LYEditmap.c b/src/LYEditmap.c
index cf8cc312..1a1dcebd 100644
--- a/src/LYEditmap.c
+++ b/src/LYEditmap.c
@@ -15,7 +15,7 @@ PRIVATE char DefaultEditBinding[]={
 LYE_NOP,        LYE_BOL,        LYE_DELPW,      LYE_ABORT,
 /* nul          ^A              ^B              ^C      */
 
-LYE_DELC,       LYE_EOL,        LYE_DELNW,      LYE_ABORT,
+LYE_DELN,       LYE_EOL,        LYE_DELNW,      LYE_ABORT,
 /* ^D           ^E              ^F              ^G      */
 
 LYE_DELP,       LYE_ENTER,      LYE_ENTER,      LYE_LOWER,
@@ -33,7 +33,7 @@ LYE_UPPER,      LYE_ERASE,      LYE_LKCMD,      LYE_NOP,
 LYE_ERASE,      LYE_NOP,        LYE_NOP,        LYE_NOP,
 /* ^X           ^Y              ^Z              ESC     */
 
-LYE_NOP,        LYE_NOP,        LYE_NOP,        LYE_NOP,
+LYE_NOP,        LYE_NOP,        LYE_SWMAP,      LYE_NOP,
 /* ^\           ^]              ^^              ^_      */
 
 /* sp .. RUBOUT                                         */
@@ -114,9 +114,117 @@ LYE_NOP,        LYE_DELP,       LYE_NOP,        LYE_NOP,
 };
 
 /*
- * Add your favorite key binding HERE
+ * Add your favorite key bindings HERE
  */
 
+/* 01 */ /* Default except that  ^F=cursor-forward  and  ^B=cursor-backward */
+/*    */
+
+#ifdef EXP_ALT_BINDINGS
+PRIVATE char BetterEditBinding[]={
+
+LYE_NOP,        LYE_BOL,        LYE_BACK,       LYE_ABORT,
+/* nul          ^A              ^B              ^C      */
+
+LYE_DELN,       LYE_EOL,        LYE_FORW,       LYE_ABORT,
+/* ^D           ^E              ^F              ^G      */
+
+LYE_DELP,       LYE_ENTER,      LYE_ENTER,      LYE_DELEL,
+/* bs           tab             nl              ^K      */
+
+LYE_NOP,        LYE_ENTER,      LYE_FORWW,      LYE_ABORT,
+/* ^L           cr              ^N              ^O      */
+
+LYE_BACKW,      LYE_NOP,        LYE_DELPW,      LYE_NOP,
+/* ^P           XON             ^R              XOFF    */
+
+LYE_DELNW,      LYE_ERASE,      LYE_LKCMD,      LYE_NOP,
+/* ^T           ^U              ^V              ^W      */
+
+LYE_ERASE,      LYE_NOP,        LYE_NOP,        LYE_NOP,
+/* ^X           ^Y              ^Z              ESC     */
+
+LYE_NOP,        LYE_NOP,        LYE_UPPER,      LYE_LOWER,
+/* ^\           ^]              ^^              ^_      */
+
+/* sp .. RUBOUT                                         */
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_DELP,
+
+/* 80..9F ISO-8859-1 8-bit escape characters. */
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_AIX,
+/*                                               97 AIX    */
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+
+/* A0..FF (permissible ISO-8859-1) 8-bit characters. */
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+LYE_CHAR,       LYE_CHAR,       LYE_CHAR,       LYE_CHAR,
+
+/* 100..10E function key definitions in LYStrings.h */
+LYE_NOP,        LYE_NOP,        LYE_FORW,       LYE_BACK,
+/* UPARROW      DNARROW         RTARROW         LTARROW     */
+
+LYE_NOP,        LYE_NOP,        LYE_BOL,        LYE_EOL,
+/* PGDOWN       PGUP            HOME            END         */
+
+LYE_NOP,        LYE_TAB,        LYE_BOL,        LYE_EOL,
+/* F1           Do key          Find key        Select key  */
+
+LYE_NOP,        LYE_DELP,       LYE_NOP,        LYE_NOP,
+/* Insert key   Remove key      DO_NOTHING      ...         */
+};
+#endif
+
 
 /*
  * Add the array name to LYLineEditors
@@ -124,6 +232,9 @@ LYE_NOP,        LYE_DELP,       LYE_NOP,        LYE_NOP,
 
 PUBLIC char * LYLineEditors[]={
         DefaultEditBinding,     /* You can't please everyone, so you ... DW */
+#ifdef EXP_ALT_BINDINGS
+	BetterEditBinding,      /* No, you certainly can't ... /ked 10/27/98*/
+#endif
 };
 
 /*
@@ -131,8 +242,11 @@ PUBLIC char * LYLineEditors[]={
  * The order of LYLineEditors and LyLineditNames MUST be the same
  */
 PUBLIC char * LYLineeditNames[]={
-        "Default Binding     ",
-        (char *) 0
+	"Default Binding",
+#ifdef EXP_ALT_BINDINGS
+	"Alternate Bindings",
+#endif
+	(char *) 0
 };
 
 /*
diff --git a/src/LYGlobalDefs.h b/src/LYGlobalDefs.h
index c326615d..663c968f 100644
--- a/src/LYGlobalDefs.h
+++ b/src/LYGlobalDefs.h
@@ -270,10 +270,11 @@ extern char *form_post_data;         /* User data for post form */
 extern char *form_get_data;          /* User data for get form */
 extern char *http_error_file;        /* Place HTTP status code in this file */
 extern char *authentication_info[2]; /* Id:Password for protected documents */
-extern char *proxyauth_info[2];	  /* Id:Password for protected proxy server */
-extern BOOLEAN HEAD_request;	     /* Do a HEAD request */
+extern char *proxyauth_info[2];      /* Id:Password for protected proxy server */
+extern char *UC_TEMPcharset;         /* temporary in UCGetLYhndl_byMIME */
+extern BOOLEAN HEAD_request;         /* Do a HEAD request */
 extern BOOLEAN scan_for_buried_news_references;
-extern BOOLEAN bookmark_start;	  /* Use bookmarks as startfile */
+extern BOOLEAN bookmark_start;       /* Use bookmarks as startfile */
 extern BOOLEAN clickable_images;
 extern BOOLEAN pseudo_inline_alts;
 extern BOOLEAN crawl;
diff --git a/src/LYHistory.c b/src/LYHistory.c
index 05d4b6e6..6ba11db6 100644
--- a/src/LYHistory.c
+++ b/src/LYHistory.c
@@ -84,7 +84,7 @@ PUBLIC void LYAddVisitedLink ARGS1(
     }
 
     if ((new = (VisitedLink *)calloc(1, sizeof(*new))) == NULL)
-	outofmem(__FILE__, "HTAddVisitedLink");
+	outofmem(__FILE__, "LYAddVisitedLink");
     StrAllocCopy(new->address, doc->address);
     StrAllocCopy(new->title, (doc->title ? doc->title : gettext("(no title)")));
 
diff --git a/src/LYKeymap.c b/src/LYKeymap.c
index 9ab5df62..2d01e830 100644
--- a/src/LYKeymap.c
+++ b/src/LYKeymap.c
@@ -8,6 +8,29 @@
 
 #include <LYLeaks.h>
 
+#ifdef EXP_KEYBOARD_LAYOUT
+#include <jcuken_kb.h>
+#include <yawerty_kb.h>
+#include <rot13_kb.h>
+#endif
+
+#ifdef EXP_KEYBOARD_LAYOUT
+PUBLIC int current_layout = 0;  /* Index into LYKbLayouts[]   */
+
+PUBLIC unsigned short * LYKbLayouts[]={
+	kb_layout_rot13,
+	kb_layout_jcuken,
+	kb_layout_yawerty
+};
+
+PUBLIC char * LYKbLayoutNames[]={
+	"ROT13'd keyboard layout",
+	"JCUKEN Cyrillic, for AT 101-key kbd",
+	"YAWERTY Cyrillic, for DEC LK201 kbd",
+        (char *) 0
+};
+#endif
+
 PRIVATE CONST DocAddress keymap_anchor = {"LYNXKEYMAP", NULL, NULL};
 
 struct _HTStream
@@ -751,8 +774,10 @@ GLOBALDEF PUBLIC HTProtocol LYLynxKeymap = {"LYNXKEYMAP", LYLoadKeymap, 0};
  * func must be present in the revmap table.
  * returns TRUE if the mapping was made, FALSE if not.
  */
-PUBLIC int remap ARGS2(char *,key, char *,func)
- {
+PUBLIC int remap ARGS2(
+	char *,	key,
+	char *,	func)
+{
        int i;
        struct rmap *mp;
        int c = 0;
@@ -897,7 +922,7 @@ PUBLIC void reset_numbers_as_arrows NOARGS
 }
 
 PUBLIC int lookup_keymap ARGS1(
-	int,		func)
+	int,	func)
 {
     size_t i;
 
@@ -910,7 +935,7 @@ PUBLIC int lookup_keymap ARGS1(
 }
 
 PUBLIC char *key_for_func ARGS1 (
-	int,		func)
+	int,	func)
 {
     static char buf[512];
     int i;
@@ -947,7 +972,7 @@ PUBLIC BOOL LYisNonAlnumKeyname ARGS2(
  *  LYK_foo value passed to it as an argument. - FM
  */
 PUBLIC int LYReverseKeymap ARGS1(
-	int,		key_name)
+	int,	key_name)
 {
     int i;
 
@@ -959,3 +984,20 @@ PUBLIC int LYReverseKeymap ARGS1(
 
     return(-1);
 }
+
+#ifdef EXP_KEYBOARD_LAYOUT
+PUBLIC int LYSetKbLayout ARGS1(
+	char *,	layout_id)
+{
+    int i;
+
+    for (i = 0; i < (int) TABLESIZE(LYKbLayoutNames) - 1; i++) {
+	if (!strcmp(LYKbLayoutNames[i], layout_id)) {
+	    current_layout = i;
+	    return (-1);
+	}
+    }
+
+    return 0;
+}
+#endif
diff --git a/src/LYKeymap.h b/src/LYKeymap.h
index e8ccad06..a1acced8 100644
--- a/src/LYKeymap.h
+++ b/src/LYKeymap.h
@@ -19,6 +19,13 @@ extern void set_vms_keys NOPARAMS;
 
 extern unsigned short keymap[]; /* main keymap matrix */
 
+#ifdef EXP_KEYBOARD_LAYOUT
+extern int current_layout;
+extern unsigned short * LYKbLayouts[];
+extern char * LYKbLayoutNames[];
+extern int LYSetKbLayout PARAMS((char *layout_id));
+#endif
+
 #if defined(DIRED_SUPPORT) && defined(OK_OVERRIDE)
 extern unsigned short key_override[];
 #endif
diff --git a/src/LYMail.c b/src/LYMail.c
index ee9479fe..dd8a2141 100644
--- a/src/LYMail.c
+++ b/src/LYMail.c
@@ -69,9 +69,11 @@ PUBLIC void mailform ARGS4(
     int len, i, ch;
 #if defined(VMS) || defined(DOSPATH)
     char my_tmpfile[256];
-    char *address_ptr1, *address_ptr2;
     char *command = NULL;
+#ifdef VMS
+    char *address_ptr1, *address_ptr2;
     BOOLEAN first = TRUE;
+#endif
     BOOLEAN isPMDF = FALSE;
     char hdrfile[256];
     FILE *hfd;
@@ -595,9 +597,11 @@ PUBLIC void mailmsg ARGS4(
     char cmd[512], *cp, *cp0, *cp1;
 #if defined(VMS) || defined(DOSPATH)
     char my_tmpfile[256];
-    char *address_ptr1, *address_ptr2;
     char *command = NULL;
+#ifdef VMS
+    char *address_ptr1, *address_ptr2;
     BOOLEAN first = TRUE;
+#endif
     BOOLEAN isPMDF = FALSE;
     char hdrfile[256];
     FILE *hfd;
@@ -831,18 +835,7 @@ PUBLIC void mailmsg ARGS4(
 	if ((ofp = LYAppendToTxtFile(TRAVERSE_ERRORS)) == NULL) {
 	    if ((ofp = LYNewTxtFile(TRAVERSE_ERRORS)) == NULL) {
 		perror(NOOPEN_TRAV_ERR_FILE);
-#ifndef NOSIGHUP
-		(void) signal(SIGHUP, SIG_DFL);
-#endif /* NOSIGHUP */
-		(void) signal(SIGTERM, SIG_DFL);
-#ifndef VMS
-		(void) signal(SIGINT, SIG_DFL);
-#endif /* !VMS */
-#ifdef SIGTSTP
-		if (no_suspend)
-		    (void) signal(SIGTSTP,SIG_DFL);
-#endif /* SIGTSTP */
-		exit(-1);
+		exit_immediately(-1);
 	    }
 	}
 
diff --git a/src/LYMain.c b/src/LYMain.c
index 0cd4de25..ab2a13b2 100644
--- a/src/LYMain.c
+++ b/src/LYMain.c
@@ -75,7 +75,7 @@ PUBLIC BOOLEAN UseFixedRecords = USE_FIXED_RECORDS;
 #endif /* VMS */
 
 #ifndef VMS
-PUBLIC char *lynx_version_putenv_command = NULL;
+PRIVATE char *lynx_version_putenv_command = NULL;
 PUBLIC char *list_format = NULL;	/* LONG_LIST formatting mask */
 #ifdef SYSLOG_REQUESTED_URLS
 PUBLIC char *syslog_txt = NULL; 	/* syslog arb text for session */
@@ -461,6 +461,9 @@ PRIVATE void free_lynx_globals NOARGS
     FREE(LynxSigFile);
     FREE(system_mail);
     FREE(system_mail_flags);
+#ifdef EXP_PERSISTENT_COOKIES
+    FREE(LYCookieFile);
+#endif
     FREE(LYUserAgent);
     FREE(LYUserAgentDefault);
     FREE(LYHostName);
@@ -482,14 +485,23 @@ PRIVATE void free_lynx_globals NOARGS
     FREE(lynxjumpfile);
     FREE(startrealm);
     FREE(personal_mail_address);
+    FREE(UC_TEMPcharset);
     FREE(URLDomainPrefixes);
     FREE(URLDomainSuffixes);
     FREE(XLoadImageCommand);
     FREE(LYTraceLogPath);
+    FREE(lynx_cfg_file);
 #if defined(USE_HASH)
     FREE(lynx_lss_file);
 #endif
     FREE(UCAssume_MIMEcharset);
+    {
+	char *p = LYlist_temp_url();
+	if (p && *p) {
+	    *p = '\0';
+	    FREE(p);
+	}
+    }
     for (i = 0; i < nlinks; i++) {
 	FREE(links[i].lname);
     }
diff --git a/src/LYPrint.c b/src/LYPrint.c
index 1367d8f1..1b0c7d4b 100644
--- a/src/LYPrint.c
+++ b/src/LYPrint.c
@@ -447,7 +447,7 @@ PUBLIC int printfile ARGS1(
 		if ((outfile_fp = (TOUPPER(c) == 'A'
 			? LYAppendToTxtFile(buffer)
 			: LYNewTxtFile(buffer))) == NULL) {
-		    CTRACE(tfp, "LYPrint: error is %s\n", strerror(errno));
+		    CTRACE(tfp, "LYPrint: errno is %d\n", errno);
 		    HTAlert(CANNOT_WRITE_TO_FILE);
 		    _statusline(NEW_FILENAME_PROMPT);
 		    FirstRecall = TRUE;
diff --git a/src/LYReadCFG.c b/src/LYReadCFG.c
index d5a9ac6f..1978fa4a 100644
--- a/src/LYReadCFG.c
+++ b/src/LYReadCFG.c
@@ -7,6 +7,7 @@
 #include <LYStructs.h>
 #include <LYGlobalDefs.h>
 #include <LYCharSets.h>
+#include <LYCharUtils.h>
 #include <LYKeymap.h>
 #include <LYJump.h>
 #include <LYGetFile.h>
@@ -972,6 +973,8 @@ static Config_Type Config_Table [] =
      {0}
 };
 
+PRIVATE char *local_url = NULL;
+
 /*
  * Free memory allocated in 'read_cfg()'
  */
@@ -996,6 +999,7 @@ PUBLIC void free_lynx_cfg NOARGS
 	    break;
 	}
     }
+    FREE(local_url);
 }
 
 /*
@@ -1194,8 +1198,17 @@ PUBLIC void read_cfg ARGS4(
 	    break;
 #endif
 	default:
-	    if (fp0 != 0)
-		fprintf(fp0, "%s:%s\n", name, value);
+	    if (fp0 != 0) {
+		if (strchr(value, '&') || strchr(value, '<')) {
+		    char *cp1 = NULL;
+		    StrAllocCopy(cp1, value);
+		    LYEntify(&cp1, TRUE);
+		    fprintf(fp0, "%s:%s\n", name, cp1);
+		    FREE(cp1);
+		} else {
+		    fprintf(fp0, "%s:%s\n", name, value);
+		}
+	    }
 	    break;
 	}
     }
@@ -1241,7 +1254,6 @@ PUBLIC void read_cfg ARGS4(
  */
 PUBLIC char *lynx_cfg_infopage NOARGS
 {
-    static char *local_url;
     char tempfile[LY_MAXPATH];
     char *temp = 0;
     FILE *fp0;
diff --git a/src/LYShowInfo.c b/src/LYShowInfo.c
index decf40a5..3d3d9c42 100644
--- a/src/LYShowInfo.c
+++ b/src/LYShowInfo.c
@@ -49,7 +49,7 @@ PRIVATE char *lynx_compile_opts NOARGS
 	BeginInternalPage (fp0, CONFIG_DEF_TITLE, NULL);
 	fprintf(fp0, "<pre>\n");
 
-	fprintf(fp0, "%s <a href=\"%s\">%s lynx.cfg</a> %s\n\n",
+	fprintf(fp0, "%s %s<a href=\"%s\"> lynx.cfg</a> %s\n\n",
 	    SEE_ALSO,
 	    YOUR_SEGMENT,
 	    lynx_cfg_infopage(),
@@ -85,7 +85,6 @@ PUBLIC int showinfo ARGS4(
 	char *, 	owner_address)
 {
     static char tempfile[LY_MAXPATH];
-    static char *info_url;
     int url_type;
     FILE *fp0;
     char *Address = NULL, *Title = NULL;
@@ -104,12 +103,10 @@ PUBLIC int showinfo ARGS4(
 	return(-1);
     }
 
-    LYLocalFileToURL(&info_url, tempfile);
-
     /*
      *	Point the address pointer at this Url
      */
-    StrAllocCopy(newdoc->address, info_url);
+    LYLocalFileToURL(&newdoc->address, tempfile);
 
     if (nlinks > 0 && links[doc->link].lname != NULL &&
 	(url_type = is_url(links[doc->link].lname)) != 0 &&
diff --git a/src/LYStrings.c b/src/LYStrings.c
index b8421f43..4f88b003 100644
--- a/src/LYStrings.c
+++ b/src/LYStrings.c
@@ -407,7 +407,7 @@ static Keysym_String_List Keysym_Strings [] =
  * Ncurses stores the termcap/terminfo names in arrays sorted to match the
  * array of strings in the TERMTYPE struct.
  */
-PRIVATE int lookup_tiname (char *name, NCURSES_CONST char *const *names)
+PRIVATE int lookup_tiname (char *name, NCURSES_CONST char *CONST *names)
 {
     int code;
 
diff --git a/src/LYStrings.h b/src/LYStrings.h
index 22e7de00..8f53178c 100644
--- a/src/LYStrings.h
+++ b/src/LYStrings.h
@@ -22,7 +22,7 @@ extern int LYgetstr PARAMS((
 	int		recall));
 extern char *LYstrsep PARAMS((
 	char **		stringp,
-	const char *	delim));
+	CONST char *	delim));
 extern char * LYstrstr PARAMS((
 	char *		chptr,
 	CONST char *	tarptr));
diff --git a/src/LYUtils.c b/src/LYUtils.c
index d1d76319..0147188e 100644
--- a/src/LYUtils.c
+++ b/src/LYUtils.c
@@ -107,12 +107,15 @@ PUBLIC void highlight ARGS3(
 {
     char buffer[200];
     int i;
-    char tmp[7], *cp;
+    char tmp[7];
+#if defined(FANCY_CURSES) || defined(USE_SLANG)
+    char *cp;
     char *theData = NULL;
     char *Data = NULL;
     int Offset, HitOffset, tLen;
     int LenNeeded;
     BOOL TargetEmphasisON = FALSE;
+#endif
     BOOL utf_flag = (LYCharSet_UC[current_char_set].enc == UCT_ENC_UTF8);
 
     tmp[0] = tmp[1] = tmp[2] = '\0';
@@ -5356,10 +5359,6 @@ Cambridge, MA 02139, USA.  */
 #define NULL 0
 #endif /* !NULL */
 
-#if !__STDC__
-#define const
-#endif /* !__STDC__ */
-
 extern char **environ;
 
 /*
@@ -6039,6 +6038,7 @@ PUBLIC int LYSystem ARGS1(
 	char *,	command)
 {
     int code;
+    int do_free = 0;
 
     fflush(stdout);
     fflush(stderr);
@@ -6051,6 +6051,29 @@ PUBLIC int LYSystem ARGS1(
 #ifdef VMS
     code = DCLsystem(command);
 #else
+#  ifdef __EMX__			/* FIXME: Should be LY_CONVERT_SLASH? */
+    /* Configure writes commands which contain direct slashes.
+       Native command-(non)-shell will not tolerate this. */
+    {
+	char *space = command, *slash = command;
+	while (*space && *space != ' ' && *space != '\t')
+	    space++;
+	while (slash < space && *slash != '/')
+	    slash++;
+	if (slash != space) {
+	    char *old = command;
+
+	    command = NULL;
+	    StrAllocCopy(command, old);
+	    do_free = 1;
+	    slash = (slash - old) + command - 1;
+	    space = (space - old) + command;
+	    while (++slash < space)
+		if (*slash == '/')
+		    *slash = '\\';
+	}
+    }
+#  endif
     code = system(command);
 #endif
 
@@ -6062,6 +6085,8 @@ PUBLIC int LYSystem ARGS1(
     fflush(stdout);
     fflush(stderr);
 
+    if (do_free)
+	FREE(command);
     return code;
 }
 
diff --git a/src/UCdomap.c b/src/UCdomap.c
index 49599e74..2ce2ac2c 100644
--- a/src/UCdomap.c
+++ b/src/UCdomap.c
@@ -25,6 +25,8 @@
 #include <LYCharSets.h>
 #include <LYStrings.h>
 
+#include <LYLeaks.h>
+
 /*
  *  Include tables & parameters.
  */
@@ -67,6 +69,8 @@
 #include <mnem_suni.h>
 #endif /* NOTDEFINED */
 
+PUBLIC  char *UC_TEMPcharset = 0;	/* temporary in UCGetLYhndl_byMIME */
+
 /*
  *  Some of the code below, and some of the comments, are left in for
  *  historical reasons.  Not all those tables below are currently
@@ -1017,11 +1021,6 @@ PRIVATE void UCconsole_map_init NOARGS
 /*
  *  OK now, finally, some stuff that is more specifically for Lynx: - KW
  */
-#ifdef NOTDEFINED
-PUBLIC int UCGetcharset_byMIMEname PARAMS((CONST char * UC_MIMEcharset));
-PUBLIC int UCGetcharset_byLYNXname PARAMS((CONST char * UC_LYNXcharset));
-#endif /* NOTDEFINED */
-
 PUBLIC int UCTransUniChar ARGS2(
 	long,		unicode,
 	int,		charset_out)
@@ -1510,9 +1509,9 @@ PUBLIC int UCGetRawUniMode_byLYhndl ARGS1(
 PUBLIC int UCGetLYhndl_byMIME ARGS1(
 	CONST char *,	value)
 {
-  int i;
-  int LYhndl = -1;
-  char *UC_MIMEcharset = NULL;
+#define UC_MIMEcharset UC_TEMPcharset
+    int i;
+    int LYhndl = -1;
 
     if (!value || !(*value)) {
 	CTRACE(tfp, "UCGetLYhndl_byMIME: NULL argument instead of MIME name.\n");
@@ -1639,6 +1638,7 @@ PUBLIC int UCGetLYhndl_byMIME ARGS1(
 
     CTRACE(tfp, "UCGetLYhndl_byMIME: unrecognized MIME name \"%s\"\n", value);
     return -1;	/* returns -1 if no charset found by that MIME name */
+#undef UC_MIMEcharset
 }
 
 /*
diff --git a/src/chrtrans/README.format b/src/chrtrans/README.format
index 636afd32..4b425a00 100644
--- a/src/chrtrans/README.format
+++ b/src/chrtrans/README.format
@@ -32,7 +32,7 @@ b) directives:
 	in the list for Display Character Set
     MIMEName
 	The name for this charset in MIME syntax (one word with digits
-        and some other non-letters allowed, should be IANA registered)
+	and some other non-letters allowed, should be IANA registered)
     Default
 	If "Y[es]" or "1", this is the default (fallback) translation table,
 	it will be used for Unicode -> 8bit (or 7bit) translation if no
@@ -45,7 +45,10 @@ b) directives:
 
     RawOrEnc
 	a number which flags some special property (encoding) for this
-        charset [see utf8_uni.tbl for example, see UCDefs.h for details].
+	charset [see utf8_uni.tbl for example, see UCDefs.h for details].
+
+    Codepage number (IBM specific)
+	used by OS/2 font-switching code.
 
 c) character translation definitions:
    they look like
diff --git a/src/chrtrans/cp1250_uni.tbl b/src/chrtrans/cp1250_uni.tbl
index 7b3820d0..207add88 100644
--- a/src/chrtrans/cp1250_uni.tbl
+++ b/src/chrtrans/cp1250_uni.tbl
@@ -10,7 +10,7 @@ C1250
 #
 #    Name:     cp1250 to Unicode table
 #    Unicode version: 2.0
-#    Table version: 2.00
+#    Table version: 2.01
 #    Table format:  Format A
 #    Date:          04/15/98
 #
diff --git a/src/chrtrans/cp1251_uni.tbl b/src/chrtrans/cp1251_uni.tbl
index 21cfb598..97a00449 100644
--- a/src/chrtrans/cp1251_uni.tbl
+++ b/src/chrtrans/cp1251_uni.tbl
@@ -10,7 +10,7 @@ C1251
 #
 #    Name:     cp1251 to Unicode table
 #    Unicode version: 2.0
-#    Table version: 2.00
+#    Table version: 2.01
 #    Table format:  Format A
 #    Date:          04/15/98
 #
diff --git a/src/chrtrans/cp1252_uni.tbl b/src/chrtrans/cp1252_uni.tbl
index 0dd82ef8..73d91e57 100644
--- a/src/chrtrans/cp1252_uni.tbl
+++ b/src/chrtrans/cp1252_uni.tbl
@@ -14,7 +14,7 @@ C1252
 #
 #    Name:     cp1252 to Unicode table
 #    Unicode version: 2.0
-#    Table version: 2.00
+#    Table version: 2.01
 #    Table format:  Format A
 #    Date:          04/15/98
 #
diff --git a/src/chrtrans/cp1253_uni.tbl b/src/chrtrans/cp1253_uni.tbl
index 3340d719..59cf46fe 100644
--- a/src/chrtrans/cp1253_uni.tbl
+++ b/src/chrtrans/cp1253_uni.tbl
@@ -10,7 +10,7 @@ C1253
 #
 #    Name:     cp1253 to Unicode table
 #    Unicode version: 2.0
-#    Table version: 2.00
+#    Table version: 2.01
 #    Table format:  Format A
 #    Date:          04/15/98
 #
diff --git a/src/chrtrans/cp1255_uni.tbl b/src/chrtrans/cp1255_uni.tbl
index 1c38f40a..5b82fcfd 100644
--- a/src/chrtrans/cp1255_uni.tbl
+++ b/src/chrtrans/cp1255_uni.tbl
@@ -10,7 +10,7 @@ C1255
 #
 #    Name:     cp1255 to Unicode table
 #    Unicode version: 2.0
-#    Table version: 2.00
+#    Table version: 2.01
 #    Table format:  Format A
 #    Date:          04/15/98
 #
diff --git a/src/chrtrans/cp1256_uni.tbl b/src/chrtrans/cp1256_uni.tbl
index b38c412d..c1bbcfde 100644
--- a/src/chrtrans/cp1256_uni.tbl
+++ b/src/chrtrans/cp1256_uni.tbl
@@ -10,7 +10,7 @@ C1256
 #
 #    Name:     cp1256 to Unicode table
 #    Unicode version: 2.0
-#    Table version: 2.00
+#    Table version: 2.01
 #    Table format:  Format A
 #    Date:          04/15/98
 #
diff --git a/src/chrtrans/cp1257_uni.tbl b/src/chrtrans/cp1257_uni.tbl
index d42d6731..f5f9a926 100644
--- a/src/chrtrans/cp1257_uni.tbl
+++ b/src/chrtrans/cp1257_uni.tbl
@@ -10,7 +10,7 @@ C1257
 #
 #    Name:     cp1257 to Unicode table
 #    Unicode version: 2.0
-#    Table version: 2.00
+#    Table version: 2.01
 #    Table format:  Format A
 #    Date:          04/15/98
 #
diff --git a/userdefs.h b/userdefs.h
index 09c0b89f..9e56bb5c 100644
--- a/userdefs.h
+++ b/userdefs.h
@@ -92,7 +92,7 @@
 #endif /* LYNX_CFG_FILE */
 
 /**************************
- * The EXTENSION_MAP file allows you to map file suffix's to
+ * The EXTENSION_MAP file allows you to map file suffixes to
  * mime types.
  * These global and personal files override anything in
  * lynx.cfg or src/HTInit.c
@@ -275,7 +275,7 @@
 #endif /* HAVE_CONFIG_H */
 
 /**************************
- * The EXTENSION_MAP file allows you to map file suffix's to
+ * The EXTENSION_MAP file allows you to map file suffixes to
  * mime types.
  * These global and personal files override anything in
  * lynx.cfg or src/HTInit.c
@@ -330,7 +330,7 @@
  */
 
 /**************************
- * A place to put temporary files, it's almost always in "/tmp/"
+ * A place to put temporary files, it is almost always in "/tmp/"
  * for UNIX systems.  If you include "$USER" in the definition
  * (e.g., "/tmp/$USER"), Lynx will replace the "$USER" with the
  * username of the account which invoked the Lynx image.  Such
@@ -1132,7 +1132,7 @@
  * to be treated as TRUE via -restrictions=dotfiles (or -anonymous, which sets
  * this and most other restrictions).
  *
- * If it's FALSE at startup of Lynx, the user can regulate it via the
+ * If it is FALSE at startup of Lynx, the user can regulate it via the
  * 'o'ptions menu, and may save the preference in the RC file.
  */
 #define NO_DOT_FILES    TRUE  /* disallow access to dot files */
@@ -1216,12 +1216,12 @@
  * the version definition with the Project Version on checkout. Just
  * ignore it. - kw */
 /* $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$ */
-#define LYNX_VERSION "2.8.2dev.4"
+#define LYNX_VERSION "2.8.2dev.5"
 #define LYNX_WWW_HOME "http://lynx.browser.org/"
 #define LYNX_WWW_DIST "http://www.slcc.edu/lynx/current/"
 #define LYNX_RELEASE FALSE
 /* $Format: "#define LYNX_DATE \"$ProjectDate$\""$ */
-#define LYNX_DATE "Wed, 18 Nov 1998 12:23:55 -0700"
+#define LYNX_DATE "Sat, 21 Nov 1998 09:32:10 -0700"
 #define LYNX_DATE_OFF 5		/* truncate the automatically-generated date */
 #define LYNX_DATE_LEN 11	/* truncate the automatically-generated date */
 #define LYNX_RELEASE_DATE "1998"