about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--.Lynx.prcs_aux54
-rw-r--r--CHANGES.new47
-rw-r--r--LYMessages_en.h8
-rw-r--r--Lynx.prj80
-rw-r--r--Makefile.old10
-rw-r--r--WWW/Library/Implementation/HTFile.c9
-rw-r--r--WWW/Library/Implementation/HTFormat.c51
-rw-r--r--WWW/Library/Implementation/HTMIME.c7
-rw-r--r--WWW/Library/Implementation/HTStyle.h2
-rw-r--r--WWW/Library/Implementation/HTTCP.c51
-rw-r--r--WWW/Library/Implementation/HTTP.c16
-rw-r--r--lynx.cfg14
-rw-r--r--lynx.hlp5
-rw-r--r--lynx.man8
-rw-r--r--lynx_help/Lynx_users_guide.html6
-rw-r--r--samples/lynx.cfg14
-rw-r--r--src/GridText.c41
-rw-r--r--src/HTFWriter.c8
-rw-r--r--src/LYCookie.c64
-rw-r--r--src/LYGetFile.c27
-rw-r--r--src/LYGlobalDefs.h5
-rw-r--r--src/LYMail.c73
-rw-r--r--src/LYMain.c22
-rw-r--r--src/LYMainLoop.c17
-rw-r--r--src/LYReadCFG.c5
-rw-r--r--src/LYShowInfo.c2
-rw-r--r--userdefs.h12
27 files changed, 494 insertions, 164 deletions
diff --git a/.Lynx.prcs_aux b/.Lynx.prcs_aux
index e941ac57..719a6ddd 100644
--- a/.Lynx.prcs_aux
+++ b/.Lynx.prcs_aux
@@ -5,11 +5,11 @@
 (WWW/Library/Implementation/HTList.c 6153 856833014 h/4_HTList.c 1.1)
 (WWW/Library/Implementation/HTGroup.h 5641 856833014 f/49_HTGroup.h 1.1)
 (src/tcpwareolb.opt 24 856833014 d/8_tcpwareolb 1.1)
-(src/LYGlobalDefs.h 11763 869904256 d/25_LYGlobalDe 1.1.3.1.2.1.1.1.1.1.1.6)
+(src/LYGlobalDefs.h 11842 870708759 d/25_LYGlobalDe 1.1.3.1.2.1.1.1.1.1.1.2.1.4)
 (CHANGES2-3 18114 856833014 h/46_CHANGES2-3 1.1)
 (CHANGES2-4 48390 856833014 h/45_CHANGES2-4 1.1)
 (WWW/Library/freebsd/Makefile 600 856833014 f/10_Makefile 1.1)
-(lynx_help/Lynx_users_guide.html 116333 869904256 e/14_Lynx_users 1.8.1.1.1.1.1.1.1.3)
+(lynx_help/Lynx_users_guide.html 116641 870708759 e/14_Lynx_users 1.8.1.1.1.1.1.1.1.2.1.2)
 (CHANGES2-5 93256 856833014 h/44_CHANGES2-5 1.1)
 (src/LYMail.h 475 860064663 c/43_LYMail.h 1.2)
 (lynx_help/keystroke_commands/cookie_help.html 2652 856833014 e/15_cookie_hel 1.1)
@@ -40,10 +40,10 @@
 (src/chrtrans/cp1252_uni.tbl 10789 856856948 h/51_cp1252_uni 1.1)
 (utils/inews/config.h-dist 13461 856833014 b/51_config.h-d 1.1)
 (WWW/Library/Implementation/HTFTP.c 91171 868775901 h/14_HTFTP.c 1.6)
-(src/GridText.c 187356 870159729 e/5_GridText.c 1.1.3.1.1.1.1.1.1.2.2.2.1.2.1.2.1.1.1.1.1.5)
-(src/LYMain.c 86684 869929579 d/44_LYMain.c 1.1.2.1.1.1.1.1.1.2.2.1.1.1.1.1.1.1.1.1.1.8)
+(src/GridText.c 188036 870708759 e/5_GridText.c 1.1.3.1.1.1.1.1.1.2.2.2.1.2.1.2.1.1.1.1.1.1.1.2)
+(src/LYMain.c 87227 870708759 d/44_LYMain.c 1.1.2.1.1.1.1.1.1.2.2.1.1.1.1.1.1.1.1.1.1.1.1.4)
 (src/tcpwareshr.opt 30 856833014 d/6_tcpwareshr 1.1)
-(src/LYGetFile.c 35170 870159729 d/48_LYGetFile. 1.5.2.3.2.1.1.1.1.1.1.2)
+(src/LYGetFile.c 35566 870708759 d/48_LYGetFile. 1.5.2.3.2.1.1.1.1.1.1.1.1.2)
 (src/chrtrans/iso05_uni.tbl 1865 856925688 i/8_iso05_uni. 1.2)
 (src/chrtrans/mnem_suni.tbl 24067 856856948 h/50_mnem_suni. 1.1)
 (README.configure 6720 870050175 14_README.con 1.5)
@@ -68,11 +68,11 @@
 (lynx_help/keystroke_commands/gopher_types_help.html 1091 856833014 e/26_gopher_typ 1.1)
 (WWW/Library/Implementation/HTVMSUtils.h 2354 856833014 f/39_HTVMSUtils 1.1)
 (src/LYExtern.c 1988 868400879 39_LYExtern.c 1.5.1.1)
-(LYMessages_en.h 32284 870159729 h/37_LYMessages 1.4.1.4.1.2.1.1.1.1.1.1.3.2)
+(LYMessages_en.h 32688 870708759 h/37_LYMessages 1.4.1.4.1.2.1.1.1.1.1.1.3.1.1.2)
 (lynx_help/keystroke_commands/keystroke_help.html 5115 868266973 e/28_keystroke_ 1.3.1.2)
 (WWW/Library/umaxv-m88k/Makefile 678 856833014 e/48_Makefile 1.1)
 (WWW/Library/Implementation/HTBTree.c 26907 856833014 h/15_HTBTree.c 1.1)
-(src/LYCookie.c 69003 869211854 c/18_LYCookie.c 1.2.1.7)
+(src/LYCookie.c 70031 870708759 c/18_LYCookie.c 1.2.1.6.1.2)
 (src/LYExtern.h 174 868719652 38_LYExtern.h 1.1.1.1)
 (src/DefaultStyle.c 9513 862857695 c/51_DefaultSty 1.1.1.1)
 (VMSWAIS.announce 1549 856833014 h/29_VMSWAIS.an 1.1)
@@ -128,7 +128,7 @@
 (WWW/Library/Implementation/HTStream.h 1802 856833014 g/21_HTStream.h 1.1)
 (src/chrtrans/build-header.com 932 868567209 c/0_build-head 1.1)
 (src/chrtrans/iso04_uni.tbl 1858 856925688 i/15_iso04_uni. 1.2)
-(WWW/Library/Implementation/HTFormat.c 22812 870159729 h/0_HTFormat.c 1.2)
+(WWW/Library/Implementation/HTFormat.c 22944 870708759 h/0_HTFormat.c 1.1.1.2)
 (WWW/Library/Implementation/HTUU.c 7512 860064663 g/37_HTUU.c 1.2)
 (WWW/Library/vms/libmake.com 6288 856833014 f/21_libmake.co 1.1)
 (src/chrtrans/koi8r_uni.tbl 4570 860516880 24_koi8r_uni. 1.1)
@@ -138,14 +138,14 @@
 (src/LYList.h 262 861212923 c/26_LYList.h 1.2)
 (src/chrtrans/cp1250_uni.tbl 10813 856856948 h/48_cp1250_uni 1.1)
 (src/decc.opt 58 856833014 d/13_decc.opt 1.1)
-(WWW/Library/Implementation/HTStyle.h 6741 856833014 g/18_HTStyle.h 1.1)
-(CHANGES.new 109753 870308176 6_CHANGES.ne 1.18.1.4.1.1.2.1.1.2.2.2.1.2.1.1.1.1.1.4.2.7.1.3.1.4.1.7)
+(WWW/Library/Implementation/HTStyle.h 6777 870708759 g/18_HTStyle.h 1.2)
+(CHANGES.new 112369 870708759 6_CHANGES.ne 1.18.1.4.1.1.2.1.1.2.2.2.1.2.1.1.1.1.1.4.2.7.1.3.1.4.1.8)
 (WWW/Library/Implementation/HTMLGen.h 753 856833014 g/22_HTMLGen.h 1.1)
 (WWW/Library/Implementation/HTFormat.h 10965 870159729 g/13_HTFormat.h 1.2)
 (WWW/Library/Implementation/HTUU.h 964 856833014 f/43_HTUU.h 1.1)
 (WWW/Library/Implementation/HTWSRC.c 11119 862857695 h/20_HTWSRC.c 1.1.1.1)
 (src/chrtrans/UCkd.h 1425 868451907 b/20_UCkd.h 1.1)
-(WWW/Library/Implementation/HTFile.c 56844 870159729 h/27_HTFile.c 1.1.3.6)
+(WWW/Library/Implementation/HTFile.c 57073 870708759 h/27_HTFile.c 1.1.3.1.1.3)
 (src/chrtrans/mnemonic_suni.tbl 22265 868451907 b/28_mnemonic_s 1.1)
 (WWW/Library/vms/COPYING.LIB 25265 856833014 f/20_COPYING.LI 1.1)
 (src/chrtrans/MAKEW32.BAT 830 862109152 3_MAKEW32.BA 1.3)
@@ -162,10 +162,10 @@
 (src/chrtrans/iso10_uni.tbl 1565 856925688 i/10_iso10_uni. 1.2)
 (src/LYMap.h 240 861212923 c/20_LYMap.h 1.2)
 (samples/jumpsVMS.html 1417 856833014 e/7_jumpsVMS.h 1.1)
-(src/LYReadCFG.c 33732 869808657 d/39_LYReadCFG. 1.1.1.1.3.2.3.1.1.6)
+(src/LYReadCFG.c 33864 870708759 d/39_LYReadCFG. 1.1.1.1.3.2.3.1.1.2.1.4)
 (WWW/Library/vms/descrip.mms 9051 856833014 f/22_descrip.mm 1.1)
 (src/LYPrint.h 304 856833014 d/7_LYPrint.h 1.1)
-(Makefile.old 46094 870050175 h/36_Makefile 1.1.1.1.1.1.1.2.3.4)
+(Makefile.old 46150 870708759 h/36_Makefile 1.1.1.1.1.1.1.2.3.1.3.2)
 (WWW/Library/Implementation/HTAccess.c 36271 870159729 h/17_HTAccess.c 1.5.2.2)
 (WWW/Library/Implementation/HTTelnet.h 582 856833014 g/5_HTTelnet.h 1.1)
 (WWW/Library/Implementation/HTAnchor.c 33169 870050175 h/6_HTAnchor.c 1.1.4.4)
@@ -182,7 +182,7 @@
 (WWW/Library/Implementation/HTAnchor.h 13797 868224571 g/19_HTAnchor.h 1.1.2.6)
 (src/chrtrans/iso06_uni.tbl 1204 856856948 i/14_iso06_uni. 1.1)
 (src/LYrcFile.h 194 856833014 d/5_LYrcFile.h 1.1)
-(src/LYUpload.c 8005 870083375 d/35_LYUpload.c 1.1.4.1.3.1.1.3)
+(src/LYUpload.c 8005 870708759 d/35_LYUpload.c 1.1.4.1.3.1.1.1.1.3)
 (src/HTForms.h 3316 861212923 d/32_HTForms.h 1.2)
 (WWW/Library/Implementation/HTAtom.h 1210 856833014 g/20_HTAtom.h 1.1)
 (WWW/Library/Implementation/HTAAFile.h 4408 856833014 f/51_HTAAFile.h 1.1)
@@ -192,7 +192,7 @@
 (lynx_help/keystroke_commands/other_help.html 6511 868266973 e/22_other_help 1.4)
 (aclocal.m4 27576 870050175 12_aclocal.m4 1.12)
 (WWW/Library/Implementation/patchlevel.h 959 856833014 f/34_patchlevel 1.1)
-(userdefs.h 55768 870083375 c/10_userdefs.h 1.1.2.1.1.1.1.1.1.1.2.1.1.1.1.5)
+(userdefs.h 56140 870708759 c/10_userdefs.h 1.1.2.1.1.1.1.1.1.1.2.1.1.1.1.1.1.3)
 (TCPWARE.announce 1352 856833014 h/31_TCPWARE.an 1.1)
 (WWW/Library/Implementation/HTMLDTD.c 63227 869808657 h/26_HTMLDTD.c 1.1.2.7)
 (WWW/Library/Implementation/HTAssoc.c 1736 856833014 g/39_HTAssoc.c 1.1)
@@ -201,7 +201,7 @@
 (src/LYUpload.h 300 856833014 c/49_LYUpload.h 1.1)
 (lynx_help/keystroke_commands/edit_help.html 1409 856833014 e/17_edit_help. 1.1)
 (src/LYLeaks.c 14715 868401363 c/31_LYLeaks.c 1.1.1.2)
-(src/LYMainLoop.c 145303 869929579 d/43_LYMainLoop 1.2.4.2.2.1.2.6.1.2.1.1.1.1.1.1.1.1.1.1.1.4)
+(src/LYMainLoop.c 145689 870708759 d/43_LYMainLoop 1.2.4.2.2.1.2.6.1.2.1.1.1.1.1.1.1.1.1.1.1.5)
 (about_lynx/about_lynx-dev.html 2500 856833014 e/42_about_lynx 1.1)
 (VMSPrint.com 616 856833014 h/30_VMSPrint.c 1.1)
 (WWW/Library/netbsd/Makefile 613 856833014 f/0_Makefile 1.1)
@@ -210,7 +210,7 @@
 (WWW/Library/Implementation/HTAssoc.h 1096 856833014 f/45_HTAssoc.h 1.1)
 (src/Makefile 2373 869808657 d/29_Makefile 1.2.2.5)
 (WWW/Library/Implementation/HTAAUtil.c 15696 856833014 g/47_HTAAUtil.c 1.1)
-(lynx.man 14352 869904256 e/30_lynx.man 1.5.2.7)
+(lynx.man 14570 870708759 e/30_lynx.man 1.5.2.6.1.2)
 (WWW/Library/osf/Makefile 388 856833014 f/7_Makefile 1.1)
 (src/LYMainLoop.h 101 860064663 d/19_LYMainLoop 1.2)
 (build-slang.com 9442 868451907 e/39_build-slan 1.2)
@@ -223,7 +223,7 @@
 (WWW/Library/Implementation/Makefile 15116 856833014 f/40_Makefile 1.1)
 (WWW/Library/Implementation/HTDOS.c 1855 860588360 28_HTDOS.C 1.1)
 (utils/inews/README.NN 3051 856833014 c/6_README.NN 1.1)
-(src/LYShowInfo.c 10843 868567209 d/37_LYShowInfo 1.1.2.1.2.7)
+(src/LYShowInfo.c 10809 870708759 d/37_LYShowInfo 1.1.2.1.2.8)
 (src/chrtrans/iso01_uni.tbl 5204 860516309 i/18_iso01_uni. 1.2)
 (WWW/Library/Implementation/HTAAUtil.h 12046 856833014 g/2_HTAAUtil.h 1.1)
 (src/LYEdit.c 4287 868567209 d/50_LYEdit.c 1.1.2.1.1.2)
@@ -246,12 +246,12 @@
 (src/LYStyle.c 9090 864519259 36_LYStyle.c 1.6)
 (newfiles.chartrans 1286 860620937 b/0_newfiles.chartrans 1.4)
 (WWW/Library/Implementation/HTParse.c 20852 860064663 h/18_HTParse.c 1.3)
-(src/HTFWriter.c 32218 869443761 d/2_HTFWriter. 1.1.3.1.3.1.1.1.1.1.3.3)
+(src/HTFWriter.c 32346 870708759 d/2_HTFWriter. 1.1.3.1.3.1.1.1.1.1.3.1.1.2)
 (WWW/Library/Implementation/HTWAIS.h 1554 856833014 g/4_HTWAIS.h 1.1)
 (WWW/Library/unix_x/Makefile 15482 856833014 f/1_Makefile 1.1)
 (WWW/Library/Implementation/SGML.h 8815 868567209 g/29_SGML.h 1.1.2.2)
 (WWW/Library/Implementation/HTRules.h 4105 856833014 g/14_HTRules.h 1.1)
-(lynx.cfg 76710 869929579 e/32_lynx.cfg 1.2.1.2.1.1.2.1.1.7)
+(lynx.cfg 77266 870708759 e/32_lynx.cfg 1.2.1.2.1.1.2.1.1.2.1.4)
 (src/HTInit.c 30678 864519259 e/3_HTInit.c 1.2.1.2)
 (WWW/Library/snake/Makefile 649 856833014 f/13_Makefile 1.1)
 (src/LYStyle.h 676 864519259 b/5_LYStyle.h 1.2)
@@ -265,20 +265,20 @@
 (lynx_help/keystroke_commands/print_help.html 1235 856833014 e/21_print_help 1.1)
 (src/LYStructs.h 3277 868401363 d/26_LYStructs. 1.1.3.4)
 (utils/lpansi/lpansi.1 3039 856833014 b/47_lpansi.1 1.1)
-(WWW/Library/Implementation/HTMIME.c 63637 869211854 g/50_HTMIME.c 1.1.2.2.1.1.1.2)
+(WWW/Library/Implementation/HTMIME.c 63691 870708759 g/50_HTMIME.c 1.1.2.2.1.1.1.3)
 (WWW/Library/Implementation/HTVMS_WaisProt.c 70622 856833014 f/32_HTVMS_Wais 1.1)
 (src/cmu_tcp.opt 34 856833014 d/14_cmu_tcp.op 1.1)
 (WWW/Library/ptx/Makefile 626 856833014 e/51_Makefile 1.1)
 (src/chrtrans/makefile.in 2411 869808657 18_makefile.i 1.4)
 (WWW/Library/Implementation/HTAuth.c 5776 856833014 h/28_HTAuth.c 1.1)
-(lynx.hlp 14762 869904256 e/31_lynx.hlp 1.11)
+(lynx.hlp 14941 870708759 e/31_lynx.hlp 1.10.1.2)
 (src/HTSaveToFile.h 554 856833014 c/50_HTSaveToFi 1.1)
 (src/LYCurses.c 39023 869904256 d/51_LYCurses.c 1.1.5.1.1.8.1.4.1.3)
 (WWW/Library/Implementation/HTInit.h 613 856833014 g/12_HTInit.h 1.1)
 (WWW/Library/Implementation/HTAAServ.h 4950 856833014 g/1_HTAAServ.h 1.1)
 (WWW/Library/mips/Makefile 663 856833014 f/3_Makefile 1.1)
 (test/iso8859-1.html 12169 856833014 c/12_iso8859-1. 1.1)
-(WWW/Library/Implementation/HTTP.c 50335 869211854 h/16_HTTP.c 1.1.1.1.1.1.1.1.1.3)
+(WWW/Library/Implementation/HTTP.c 50832 870708759 h/16_HTTP.c 1.1.1.1.1.1.1.1.1.2.1.2)
 (WWW/Library/Implementation/UCMap.h 932 868567209 i/22_UCMap.h 1.3)
 (about_lynx/COPYING 17982 856833014 e/41_COPYING 1.1)
 (styles/lynx.lss 1490 862005876 37_lynx.lss 1.1)
@@ -289,7 +289,7 @@
 (WWW/Library/Implementation/HTVMS_WaisProt.h 13173 856833014 f/28_HTVMS_Wais 1.1)
 (WWW/Library/Implementation/HTAuth.h 1791 856833014 f/47_HTAuth.h 1.1)
 (src/chrtrans/utf8_uni.tbl 936 856856948 i/7_utf8_uni.t 1.1)
-(WWW/Library/Implementation/HTTCP.c 28466 868567209 h/13_HTTCP.c 1.2.3.1.1.2)
+(WWW/Library/Implementation/HTTCP.c 29596 870708759 h/13_HTTCP.c 1.2.3.1.1.3)
 (src/LYCurses.h 10550 870308176 d/22_LYCurses.h 1.1.4.1.1.1.1.6)
 (descrip.mms 3765 868451907 e/37_descrip.mm 1.2)
 (WWW/Library/Implementation/HTTP.h 672 869443761 g/34_HTTP.h 1.2)
@@ -337,7 +337,7 @@
 (utils/inews/nntp.h 2530 856833014 c/1_nntp.h 1.1)
 (src/LYLocal.h 2561 856833014 c/37_LYLocal.h 1.1)
 (src/chrtrans/iso07_uni.tbl 1791 856925688 i/13_iso07_uni. 1.2)
-(src/LYOptions.c 74522 870308176 d/41_LYOptions. 1.1.2.1.1.1.1.1.1.5)
+(src/LYOptions.c 74522 870708759 d/41_LYOptions. 1.1.2.1.1.1.1.1.1.3.1.2)
 (WWW/Library/Implementation/HTNews.c 62341 869211854 h/25_HTNews.c 1.1.2.2)
 (WWW/Library/Implementation/HTVMS_WaisUI.h 21281 856833014 f/26_HTVMS_Wais 1.1)
 (src/LYNews.c 11804 869619703 d/42_LYNews.c 1.7)
@@ -385,8 +385,8 @@
 (WWW/Library/Implementation/tcp.h 16630 870050175 h/19_tcp.h 1.8)
 (WWW/Library/Implementation/HTFWriter.h 998 856833014 g/23_HTFWriter. 1.1)
 (src/LYexit.c 3615 869552380 d/4_LYexit.c 1.6)
-(src/LYMail.c 30581 869619703 d/45_LYMail.c 1.1.1.1.1.1.3.6)
+(src/LYMail.c 30772 870708759 d/45_LYMail.c 1.1.1.1.1.1.3.1.1.1.2.2)
 (WWW/Library/solaris2/Makefile 655 856833014 f/6_Makefile 1.1)
 (WWW/Library/Implementation/HTGopher.h 562 856833014 g/8_HTGopher.h 1.1)
-(samples/lynx.cfg 76565 869904256 e/12_lynx.cfg 1.2.1.2.1.1.2.1.1.1.1.3)
+(samples/lynx.cfg 77121 870708759 e/12_lynx.cfg 1.2.1.2.1.1.2.1.1.1.1.1.1.4)
 (WWW/Library/duns/Makefile 15116 856833014 f/17_Makefile 1.1)
diff --git a/CHANGES.new b/CHANGES.new
index ffe88c06..f4cb5c6d 100644
--- a/CHANGES.new
+++ b/CHANGES.new
@@ -10,12 +10,59 @@ README.configure), and miscellaneous other changes.  Note that the 2.7 ->
 2.7.1 changes (which are listed at the beginning of the current CHANGES
 file) are duplicated here. - KW]
 
+1997-08-04
+* Fixed header parsing in HTMIME.c so that "Safe:" is recognized. - KW
+* Changed confirmation prompts for HEAD (']') commands acting on a POST
+  document, to reflect the fact that the POST request body will not
+  actually be submitted in a HEAD request. - KW
+* Reset LYCancelDownload to FALSE at top of getfile(), to prevent delayed
+  effect which can otherwise occur. - KW
+* Block URLs with port numbers outside the range of valid numbers in
+  getfile(). - KW
+1997-08-03
+* Changed the NSL_FORK code in HTTCP.c so that the gethostbyname() call
+  is retried without forking if the child process exits without returning
+  enough data.  Also added trace output, to show whether something
+  unusual has happened to the child process. - KW
+* Changed the typedef for HTCoord in HTStyle.h from float to int, for
+  significant speedup of rendering on machines without floating-point
+  hardware. - KW
+1997-08-01
+* Fixed typos in LYCookie.c. - FM
+1997-07-31
+* Mods of the cookie handling based on the latest pre-draft.  Add a
+  Cookie2: $Version="1" header in any requests that use historical
+  cookies in the Cookie: request header, so that modern servers will
+  use Set-Cookie2 headers with modern cookies in their subsequent
+  replies.  Limit the scheme for commentURLs to http or https, not
+  just to network servers (e.g., gopher is now barred too).  Include
+  a $Port attribute in modern Cookie request headers if it was set
+  via a server's reply header.  The pre-draft indicates intention
+  to drop the requirement to combine Set-Cookie2 and Set-Cookie
+  headers if both types were received.  We're still combining them,
+  but based on bona fide one-to-one correspondence checks (which were
+  not specified in the earlier draft), so that's OK, and we'll get
+  rid of that needless overhead if the current pre-draft holds up
+  and becomes an official IETF draft. - FM
+* Added a -nocc command line switch for disabling the Cc: prompt
+  for self copies of mailings.  Note that this does not disable
+  any CCs that have been incorporated within a mailto URL or form
+  ACTION. - FM
+* Added a NO_FORCED_CORE_DUMP compilation (userdefs.h) and configuration
+  (lynx.cfg) symbol, normally set FALSE, which if changed to TRUE will
+  block forced core dumps on Unix via abort() calls on fatal errors or
+  assert() calls on potentially fatal error checks.  Also added a -core
+  command line switch for toggling the default. - FM
+* Updated the documentation and 'h'elp concerning the new symbol and
+  switches. - FM
 1997-07-30
 * Added workaround for curses with broken handling of 8-bit acs characters
   (which may be used for drawing of popup boxes) to LYCurses.h.  This fixes
   box characters and attributes/colors for solaris curses used with linux
   console as terminal.  Currently it is not automatically enabled or
   configured, but can be enabled by -DBROKEN_CURSES_8BIT_ACS. - KW
+* Mod in HTFWriter.c to change the statusline appropriately when an
+  uncompression has completed. - FM
 * Fixed code in LYOptions.c for the case when NEVER_ALLOW_REMOTE_EXEC was
   not defined and ALLOW_USERS_TO_CHANGE_EXEC_WITHIN_OPTIONS was defined. - KW
 1997-07-28
diff --git a/LYMessages_en.h b/LYMessages_en.h
index 7a7708af..02ffa8d4 100644
--- a/LYMessages_en.h
+++ b/LYMessages_en.h
@@ -97,6 +97,9 @@
 #define LINK_NOT_FOUND "The resource requested is not available at this time."
 #define WWW_WAIT_MESSAGE "Getting %s"
 #define WWW_SKIP_MESSAGE "Skipping %s"
+#define WWW_USING_MESSAGE "Using %s"
+#define WWW_ILLEGAL_URL_MESSAGE "Illegal URL: %s"
+#define WWW_BAD_ADDR_MESSAGE "Badly formed address %s"
 #define ADVANCED_URL_MESSAGE "URL: %s"
 #define WWW_FAIL_MESSAGE "Unable to access WWW file!!!"
 #define WWW_INDEX_MESSAGE "This is a searchable index.  Use %s to search."
@@ -504,6 +507,10 @@
  "Redirection of POST content. P)roceed, see U)RL, use G)ET or C)ancel"
 #define CONFIRM_POST_RESUBMISSION \
  "Document from Form with POST content.  Resubmit?"
+#define CONFIRM_POST_DOC_HEAD \
+ "Document from POST action, HEAD may not be understood.  Proceed?"
+#define CONFIRM_POST_LINK_HEAD \
+ "Form submit action is POST, HEAD may not be understood.  Proceed?"
 #define WILL_NOT_RELOAD_DOC "Document will not be reloaded!"
 #define	LOCATION_HEADER "Location: "
 #define STRING_NOT_FOUND "'%s' not found!"
@@ -591,6 +598,7 @@
 #define PROMTING_TO_ALLOW_COOKIES "'P'rompting to allow from domain '%s'."
 #define DELETE_ALL_COOKIES_IN_DOMAIN "Delete all cookies in this domain?"
 #define ALL_COOKIES_EATEN "All of the cookies in the jar have been eaten!"
+#define PORT_INVALID "URL contains an invalid port number."
 #define PORT_NINETEEN_INVALID "Port 19 not permitted in URLs."
 #define PORT_TWENTYFIVE_INVALID "Port 25 not permitted in URLs."
 #define HTML_STACK_OVERRUN "Maximum nesting of HTML elements exceeded."
diff --git a/Lynx.prj b/Lynx.prj
index f0c5e5a7..9a684b6b 100644
--- a/Lynx.prj
+++ b/Lynx.prj
@@ -1,12 +1,12 @@
 ;; -*- Lisp -*-
 (Created-By-Prcs-Version 1 2 0)
 (Project-Description "PRCS Project for The Lynx browser")
-(Project-Version Lynx 2.7.1ac-0 45)
-(Parent-Version Lynx 2.7.1ac-0 44)
+(Project-Version Lynx 2.7.1ac-0 46)
+(Parent-Version Lynx 2.7.1ac-0 45)
 
-(Version-Log "two small fixes")
+(Version-Log "update fotemods 1997-08-01, various fixes")
 (New-Version-Log "")
-(Checkin-Time "Wed, 30 Jul 1997 18:16:16 -0600")
+(Checkin-Time "Mon, 04 Aug 1997 09:32:39 -0600")
 (Checkin-Login kweide)
 (Populate-Ignore ("\\.o$" "\\.a$" "~$" "^a.out$" "^core$"
                   "\\.dvi$" "\\.aux$" "^\\..*_aux$" "\\.log"
@@ -39,7 +39,7 @@
   (utils/inews/README (Lynx/c/7_README 1.1 644))
   (utils/inews/Manifest (Lynx/c/8_Manifest 1.1 644))
   (utils/inews/Makefile (Lynx/c/9_Makefile 1.1.1.1 644) :no-keywords)
-  (userdefs.h (Lynx/c/10_userdefs.h 1.1.2.1.1.1.1.1.1.1.2.1.1.1.1.5 644))
+  (userdefs.h (Lynx/c/10_userdefs.h 1.1.2.1.1.1.1.1.1.1.2.1.1.1.1.1.1.3 644))
   (test/tabtest.html (Lynx/c/11_tabtest.ht 1.1 644))
   (test/iso8859-1.html (Lynx/c/12_iso8859-1. 1.1 644))
   (test/TestComment.html (Lynx/c/13_TestCommen 1.1 644))
@@ -47,7 +47,7 @@
   (test/README.txt (Lynx/c/15_README.txt 1.1 644))
   (src/LYVMSdef.h (Lynx/c/16_LYVMSdef.h 1.1 644))
   (src/LYCookie.h (Lynx/c/17_LYCookie.h 1.2 644))
-  (src/LYCookie.c (Lynx/c/18_LYCookie.c 1.2.1.7 644))
+  (src/LYCookie.c (Lynx/c/18_LYCookie.c 1.2.1.6.1.2 644))
   (src/LYCharUtils.h (Lynx/c/19_LYCharUtil 1.1.2.3 644))
   (src/LYMap.h (Lynx/c/20_LYMap.h 1.2 644))
   (src/LYMap.c (Lynx/c/21_LYMap.c 1.1.2.1.1.2.1.2.1.2 644))
@@ -83,7 +83,7 @@
   (src/DefaultStyle.c (Lynx/c/51_DefaultSty 1.1.1.1 644))
   (src/HTFont.h (Lynx/d/0_HTFont.h 1.1 644))
   (src/HTAlert.h (Lynx/d/1_HTAlert.h 1.3 644))
-  (src/HTFWriter.c (Lynx/d/2_HTFWriter. 1.1.3.1.3.1.1.1.1.1.3.3 644))
+  (src/HTFWriter.c (Lynx/d/2_HTFWriter. 1.1.3.1.3.1.1.1.1.1.3.1.1.2 644))
   (src/LYList.c (Lynx/d/3_LYList.c 1.1.3.2.1.1.1.2 644))
   (src/LYexit.c (Lynx/d/4_LYexit.c 1.6 644))
   (src/LYrcFile.h (Lynx/d/5_LYrcFile.h 1.1 644))
@@ -106,7 +106,7 @@
   (src/LYCurses.h (Lynx/d/22_LYCurses.h 1.1.4.1.1.1.1.6 644))
   (src/LYSignal.h (Lynx/d/23_LYSignal.h 1.1 644))
   (src/LYClean.h (Lynx/d/24_LYClean.h 1.1.2.1 644))
-  (src/LYGlobalDefs.h (Lynx/d/25_LYGlobalDe 1.1.3.1.2.1.1.1.1.1.1.6 644))
+  (src/LYGlobalDefs.h (Lynx/d/25_LYGlobalDe 1.1.3.1.2.1.1.1.1.1.1.2.1.4 644))
   (src/LYStructs.h (Lynx/d/26_LYStructs. 1.1.3.4 644))
   
   (src/LYSearch.h (Lynx/d/28_LYSearch.h 1.2 644))
@@ -116,20 +116,20 @@
   (src/HTForms.h (Lynx/d/32_HTForms.h 1.2 644))
   (src/GridText.h (Lynx/d/33_GridText.h 1.1.1.1.1.3.1.1.1.1.1.2 644))
   (src/LYUtils.h (Lynx/d/34_LYUtils.h 1.1.2.3 644))
-  (src/LYUpload.c (Lynx/d/35_LYUpload.c 1.1.4.1.3.1.1.3 644))
+  (src/LYUpload.c (Lynx/d/35_LYUpload.c 1.1.4.1.3.1.1.1.1.3 644))
   (src/LYStrings.c (Lynx/d/36_LYStrings. 1.1.3.3.2.7 644))
-  (src/LYShowInfo.c (Lynx/d/37_LYShowInfo 1.1.2.1.2.7 644))
+  (src/LYShowInfo.c (Lynx/d/37_LYShowInfo 1.1.2.1.2.8 644))
   (src/LYSearch.c (Lynx/d/38_LYSearch.c 1.2.2.5 644))
-  (src/LYReadCFG.c (Lynx/d/39_LYReadCFG. 1.1.1.1.3.2.3.1.1.6 644))
+  (src/LYReadCFG.c (Lynx/d/39_LYReadCFG. 1.1.1.1.3.2.3.1.1.2.1.4 644))
   (src/LYPrint.c (Lynx/d/40_LYPrint.c 1.1.1.1.1.1.1.1.1.1.1.3 644))
-  (src/LYOptions.c (Lynx/d/41_LYOptions. 1.1.2.1.1.1.1.1.1.5 644))
+  (src/LYOptions.c (Lynx/d/41_LYOptions. 1.1.2.1.1.1.1.1.1.3.1.2 644))
   (src/LYNews.c (Lynx/d/42_LYNews.c 1.7 644))
-  (src/LYMainLoop.c (Lynx/d/43_LYMainLoop 1.2.4.2.2.1.2.6.1.2.1.1.1.1.1.1.1.1.1.1.1.4 644))
-  (src/LYMain.c (Lynx/d/44_LYMain.c 1.1.2.1.1.1.1.1.1.2.2.1.1.1.1.1.1.1.1.1.1.8 644))
-  (src/LYMail.c (Lynx/d/45_LYMail.c 1.1.1.1.1.1.3.6 644))
+  (src/LYMainLoop.c (Lynx/d/43_LYMainLoop 1.2.4.2.2.1.2.6.1.2.1.1.1.1.1.1.1.1.1.1.1.5 644))
+  (src/LYMain.c (Lynx/d/44_LYMain.c 1.1.2.1.1.1.1.1.1.2.2.1.1.1.1.1.1.1.1.1.1.1.1.4 644))
+  (src/LYMail.c (Lynx/d/45_LYMail.c 1.1.1.1.1.1.3.1.1.1.2.2 644))
   (src/LYLocal.c (Lynx/d/46_LYLocal.c 1.2.3.1.3.3 644))
   (src/LYJump.c (Lynx/d/47_LYJump.c 1.3 644))
-  (src/LYGetFile.c (Lynx/d/48_LYGetFile. 1.5.2.3.2.1.1.1.1.1.1.2 644))
+  (src/LYGetFile.c (Lynx/d/48_LYGetFile. 1.5.2.3.2.1.1.1.1.1.1.1.1.2 644))
   (src/LYForms.c (Lynx/d/49_LYForms.c 1.1.4.1.2.1.1.1.1.4 644))
   (src/LYEdit.c (Lynx/d/50_LYEdit.c 1.1.2.1.1.2 644))
   
@@ -138,16 +138,16 @@
   (src/HTML.c (Lynx/e/2_HTML.c 1.1.4.1.1.1.1.2.1.4.1.2.1.3.1.2.1.2.2.3 644))
   (src/HTInit.c (Lynx/e/3_HTInit.c 1.2.1.2 644))
   (src/HTAlert.c (Lynx/e/4_HTAlert.c 1.1.2.3 644))
-  (src/GridText.c (Lynx/e/5_GridText.c 1.1.3.1.1.1.1.1.1.2.2.2.1.2.1.2.1.1.1.1.1.5 644))
+  (src/GridText.c (Lynx/e/5_GridText.c 1.1.3.1.1.1.1.1.1.2.2.2.1.2.1.2.1.1.1.1.1.1.1.2 644))
   (src/descrip.mms (Lynx/e/6_descrip.mm 1.2 644))
   (samples/jumpsVMS.html (Lynx/e/7_jumpsVMS.h 1.1 644))
   (samples/jumpsUnix.html (Lynx/e/8_jumpsUnix. 1.1 644))
   (samples/mime.types (Lynx/e/9_mime.types 1.1 644))
   (samples/lynx.com (Lynx/e/10_lynx.com 1.1 644))
   (samples/mailcap (Lynx/e/11_mailcap 1.1 644))
-  (samples/lynx.cfg (Lynx/e/12_lynx.cfg 1.2.1.2.1.1.2.1.1.1.1.3 644))
+  (samples/lynx.cfg (Lynx/e/12_lynx.cfg 1.2.1.2.1.1.2.1.1.1.1.1.1.4 644))
   (lynx_help/lynx_url_support.html (Lynx/e/13_lynx_url_s 1.2 644))
-  (lynx_help/Lynx_users_guide.html (Lynx/e/14_Lynx_users 1.8.1.1.1.1.1.1.1.3 644))
+  (lynx_help/Lynx_users_guide.html (Lynx/e/14_Lynx_users 1.8.1.1.1.1.1.1.1.2.1.2 644))
   (lynx_help/keystroke_commands/cookie_help.html (Lynx/e/15_cookie_hel 1.1 644))
   (lynx_help/keystroke_commands/visited_help.html (Lynx/e/16_visited_he 1.1 644))
   (lynx_help/keystroke_commands/edit_help.html (Lynx/e/17_edit_help. 1.1 644))
@@ -163,9 +163,9 @@
   (lynx_help/keystroke_commands/bookmark_help.html (Lynx/e/27_bookmark_h 1.1 644))
   (lynx_help/keystroke_commands/keystroke_help.html (Lynx/e/28_keystroke_ 1.3.1.2 644))
   (lynx_help/lynx_help_main.html (Lynx/e/29_lynx_help_ 1.3 644))
-  (lynx.man (Lynx/e/30_lynx.man 1.5.2.7 644))
-  (lynx.hlp (Lynx/e/31_lynx.hlp 1.11 644))
-  (lynx.cfg (Lynx/e/32_lynx.cfg 1.2.1.2.1.1.2.1.1.7 644))
+  (lynx.man (Lynx/e/30_lynx.man 1.5.2.6.1.2 644))
+  (lynx.hlp (Lynx/e/31_lynx.hlp 1.10.1.2 644))
+  (lynx.cfg (Lynx/e/32_lynx.cfg 1.2.1.2.1.1.2.1.1.2.1.4 644))
   (fixed512.com (Lynx/e/33_fixed512.c 1.1 644))
   (docs/RFC-MAILCAP.txt (Lynx/e/34_RFC-MAILCA 1.1 644))
   (docs/README.txt (Lynx/e/35_README.txt 1.1 644))
@@ -255,7 +255,7 @@
   (WWW/Library/Implementation/HTAlert.h (Lynx/g/15_HTAlert.h 1.2 644))
   (WWW/Library/Implementation/HTString.h (Lynx/g/16_HTString.h 1.1 644))
   (WWW/Library/Implementation/HTList.h (Lynx/g/17_HTList.h 1.1 644))
-  (WWW/Library/Implementation/HTStyle.h (Lynx/g/18_HTStyle.h 1.1 644))
+  (WWW/Library/Implementation/HTStyle.h (Lynx/g/18_HTStyle.h 1.2 644))
   (WWW/Library/Implementation/HTAnchor.h (Lynx/g/19_HTAnchor.h 1.1.2.6 644))
   (WWW/Library/Implementation/HTAtom.h (Lynx/g/20_HTAtom.h 1.1 644))
   (WWW/Library/Implementation/HTStream.h (Lynx/g/21_HTStream.h 1.1 644))
@@ -287,9 +287,9 @@
   (WWW/Library/Implementation/HTAAUtil.c (Lynx/g/47_HTAAUtil.c 1.1 644))
   (WWW/Library/Implementation/HTGopher.c (Lynx/g/48_HTGopher.c 1.3 644))
   (WWW/Library/Implementation/HTHistory.c (Lynx/g/49_HTHistory. 1.1 644))
-  (WWW/Library/Implementation/HTMIME.c (Lynx/g/50_HTMIME.c 1.1.2.2.1.1.1.2 644))
+  (WWW/Library/Implementation/HTMIME.c (Lynx/g/50_HTMIME.c 1.1.2.2.1.1.1.3 644))
   (WWW/Library/Implementation/HTInit.c (Lynx/g/51_HTInit.c 1.1 644))
-  (WWW/Library/Implementation/HTFormat.c (Lynx/h/0_HTFormat.c 1.2 644))
+  (WWW/Library/Implementation/HTFormat.c (Lynx/h/0_HTFormat.c 1.1.1.2 644))
   (WWW/Library/Implementation/HTRules.c (Lynx/h/1_HTRules.c 1.1 644))
   (WWW/Library/Implementation/HTAlert.c (Lynx/h/2_HTAlert.c 1.2 644))
   (WWW/Library/Implementation/HTString.c (Lynx/h/3_HTString.c 1.1 644))
@@ -302,10 +302,10 @@
   (WWW/Library/Implementation/HTFWriter.c (Lynx/h/10_HTFWriter. 1.1 644))
   (WWW/Library/Implementation/HTPlain.c (Lynx/h/11_HTPlain.c 1.1.2.2 644))
   (WWW/Library/Implementation/SGML.c (Lynx/h/12_SGML.c 1.1.1.1.1.1.2.4.1.4 644))
-  (WWW/Library/Implementation/HTTCP.c (Lynx/h/13_HTTCP.c 1.2.3.1.1.2 644))
+  (WWW/Library/Implementation/HTTCP.c (Lynx/h/13_HTTCP.c 1.2.3.1.1.3 644))
   (WWW/Library/Implementation/HTFTP.c (Lynx/h/14_HTFTP.c 1.6 644))
   (WWW/Library/Implementation/HTBTree.c (Lynx/h/15_HTBTree.c 1.1 644))
-  (WWW/Library/Implementation/HTTP.c (Lynx/h/16_HTTP.c 1.1.1.1.1.1.1.1.1.3 644))
+  (WWW/Library/Implementation/HTTP.c (Lynx/h/16_HTTP.c 1.1.1.1.1.1.1.1.1.2.1.2 644))
   (WWW/Library/Implementation/HTAccess.c (Lynx/h/17_HTAccess.c 1.5.2.2 644))
   (WWW/Library/Implementation/HTParse.c (Lynx/h/18_HTParse.c 1.3 644))
   (WWW/Library/Implementation/tcp.h (Lynx/h/19_tcp.h 1.8 644))
@@ -316,7 +316,7 @@
   (WWW/Library/Implementation/HTTelnet.c (Lynx/h/24_HTTelnet.c 1.4 644))
   (WWW/Library/Implementation/HTNews.c (Lynx/h/25_HTNews.c 1.1.2.2 644))  
   (WWW/Library/Implementation/HTMLDTD.c (Lynx/h/26_HTMLDTD.c 1.1.2.7 644))
-  (WWW/Library/Implementation/HTFile.c (Lynx/h/27_HTFile.c 1.1.3.6 644))
+  (WWW/Library/Implementation/HTFile.c (Lynx/h/27_HTFile.c 1.1.3.1.1.3 644))
   (WWW/Library/Implementation/HTAuth.c (Lynx/h/28_HTAuth.c 1.1 644))
   (VMSWAIS.announce (Lynx/h/29_VMSWAIS.an 1.1 644))
   (VMSPrint.com (Lynx/h/30_VMSPrint.c 1.1 644))
@@ -325,8 +325,8 @@
   (RELEASE_STATEMENT (Lynx/h/33_RELEASE_ST 1.2 644))
   (README (Lynx/h/34_README 1.1 644))
   (PROBLEMS (Lynx/h/35_PROBLEMS 1.3 644))
-  (Makefile.old (Lynx/h/36_Makefile 1.1.1.1.1.1.1.2.3.4 644))
-  (LYMessages_en.h (Lynx/h/37_LYMessages 1.4.1.4.1.2.1.1.1.1.1.1.3.2 644))
+  (Makefile.old (Lynx/h/36_Makefile 1.1.1.1.1.1.1.2.3.1.3.2 644))
+  (LYMessages_en.h (Lynx/h/37_LYMessages 1.4.1.4.1.2.1.1.1.1.1.1.3.1.1.2 644))
   (INSTALLATION (Lynx/h/38_INSTALLATI 1.1 644))
   (IBMPC-charsets.announce (Lynx/h/39_IBMPC-char 1.1 644))
   (FM.announce (Lynx/h/40_FM.announc 1.1 644))
@@ -390,7 +390,7 @@
 
 ;; Files added by populate at Mon, 03 Mar 1997 06:05:56 -0600:
 
-  (CHANGES.new (Lynx/6_CHANGES.ne 1.18.1.4.1.1.2.1.1.2.2.2.1.2.1.1.1.1.1.4.2.7.1.3.1.4.1.7 644))
+  (CHANGES.new (Lynx/6_CHANGES.ne 1.18.1.4.1.1.2.1.1.2.2.2.1.2.1.1.1.1.1.4.2.7.1.3.1.4.1.8 644))
 
 ;; Files added by populate at Tue, 11 Mar 1997 04:22:39 -0600:
 
@@ -448,5 +448,21 @@
   (src/chrtrans/build-header.com (Lynx/c/0_build-head 1.1 644))
 
   (src/chrtrans/cp1251_uni.tbl (Lynx/b/0_cp1251_uni 1.1 644)))
-(Merge-Parents)
+(Merge-Parents
+  (2.7.1fm-0.37 incomplete
+    (Makefile.old Makefile Makefile m) 
+  )
+  (2.7.1fm-0.37 complete
+    (userdefs.h userdefs.h userdefs.h m) (src/LYCookie.c src/LYCookie.c src/LYCookie.c m)
+    (src/HTFWriter.c src/HTFWriter.c src/HTFWriter.c m) (src/LYGlobalDefs.h src/LYGlobalDefs.h src/LYGlobalDefs.h m)
+    (src/LYUpload.c src/LYUpload.c src/LYUpload.c m) (src/LYReadCFG.c src/LYReadCFG.c src/LYReadCFG.c m)
+    (src/LYOptions.c src/LYOptions.c src/LYOptions.c m) (src/LYMain.c src/LYMain.c src/LYMain.c m)
+    (src/LYMail.c src/LYMail.c src/LYMail.c m) (src/LYGetFile.c src/LYGetFile.c src/LYGetFile.c m)
+    (src/GridText.c src/GridText.c src/GridText.c m) (samples/lynx.cfg samples/lynx.cfg samples/lynx.cfg m)
+    (lynx_help/Lynx_users_guide.html lynx_help/Lynx_users_guide.html lynx_help/Lynx_users_guide.html m) (lynx.man lynx.man lynx.man m)
+    (lynx.hlp lynx.hlp lynx.hlp m) (lynx.cfg lynx.cfg lynx.cfg m)
+    (WWW/Library/Implementation/HTFormat.c WWW/Library/Implementation/HTFormat.c WWW/Library/Implementation/HTFormat.c m) (WWW/Library/Implementation/HTTP.c WWW/Library/Implementation/HTTP.c WWW/Library/Implementation/HTTP.c m)
+    (WWW/Library/Implementation/HTFile.c WWW/Library/Implementation/HTFile.c WWW/Library/Implementation/HTFile.c m) (LYMessages_en.h LYMessages_en.h LYMessages_en.h m)
+    (() FOTEMODS FOTEMODS n) (() 00README 00README n))
+)
 (New-Merge-Parents)
diff --git a/Makefile.old b/Makefile.old
index 3b801902..ecdaba32 100644
--- a/Makefile.old
+++ b/Makefile.old
@@ -785,18 +785,20 @@ solaris2-slangcc:
 		SLANGINC="$(SLANGINC)"
   
 osf:
-	cd WWW/Library/osf; $(MAKE) LYFLAGS="-Olimit 2000 $(SITE_LYDEFS)"
+	cd WWW/Library/osf; $(MAKE) LYFLAGS="-Olimit 2000 -DNSL_FORK \
+		$(SITE_LYDEFS)"
 	cd src; $(MAKE) all CC="cc" MCFLAGS="-O -Olimit 4000 -DUNIX \
-		-DFANCY_CURSES $(ADDFLAGS) \
+		-DFANCY_CURSES -DNO_TTYTYPE $(ADDFLAGS) \
 		-I../$(WWWINC) $(SITE_DEFS)" \
 		LIBS="-lcurses -ltermcap \
 		$(WAISLIB) $(SOCKSLIB) $(SITE_LIBS)" \
 		WWWLIB="../WWW/Library/osf/libwww.a"
 
 osf-slang:
-	cd WWW/Library/osf; $(MAKE) LYFLAGS="-Olimit 2000 $(SITE_LYDEFS)"
+	cd WWW/Library/osf; $(MAKE) LYFLAGS="-Olimit 2000 -DNSL_FORK \
+		$(SITE_LYDEFS)"
 	cd src; $(MAKE) all CC="cc" MCFLAGS="-O -Olimit 4000 -DUNIX \
-		-DUSE_SLANG $(ADDFLAGS) \
+		-DUSE_SLANG -DNO_TTYTYPE $(ADDFLAGS) \
 		-I../$(WWWINC) $(SITE_DEFS)" \
 		LIBS="-lcurses -ltermcap \
 		$(WAISLIB) $(SOCKSLIB) $(SITE_LIBS)" \
diff --git a/WWW/Library/Implementation/HTFile.c b/WWW/Library/Implementation/HTFile.c
index 60c71e9a..99f0cc41 100644
--- a/WWW/Library/Implementation/HTFile.c
+++ b/WWW/Library/Implementation/HTFile.c
@@ -446,6 +446,8 @@ PRIVATE void do_readme ARGS2(HTStructured *, target, CONST char *, localname)
     FILE * fp;
     char * readme_file_name = 
 	malloc(strlen(localname)+ 1 + strlen(HT_DIR_README_FILE) + 1);
+    if (readme_file_name == NULL)
+        outofmem(__FILE__, "do_readme");
     strcpy(readme_file_name, localname);
     strcat(readme_file_name, "/");
     strcat(readme_file_name, HT_DIR_README_FILE);
@@ -1413,6 +1415,7 @@ PUBLIC int HTLoadFile ARGS4(
     char * nodename = NULL;
     char * newname = NULL;	/* Simplified name of file */
     HTAtom * encoding;		/* @@ not used yet */
+    int status;
 #ifdef VMS
     struct stat stat_info;
 #else
@@ -1489,6 +1492,8 @@ PUBLIC int HTLoadFile ARGS4(
 		char * enable_file_name = 
 		    malloc(strlen(filename)+ 1 +
 		    strlen(HT_DIR_ENABLE_FILE) + 1);
+		if (enable_file_name == NULL)
+		    outofmem(__FILE__, "HTLoadFile");
 		strcpy(enable_file_name, filename);
 		strcat(enable_file_name, "/");
 		strcat(enable_file_name, HT_DIR_ENABLE_FILE);
@@ -1593,7 +1598,7 @@ PUBLIC int HTLoadFile ARGS4(
 	    FREE(nodename);
 	    status = HTParseFile(format, format_out, anchor, fp, sink);
 	    fclose(fp);
-            return status;
+	    return status;
         }  /* If successfull open */
 	FREE(filename);
     }
@@ -1756,6 +1761,8 @@ forget_multi:
 		    char * enable_file_name = 
 			malloc(strlen(localname)+ 1 +
 				      strlen(HT_DIR_ENABLE_FILE) + 1);
+		    if (enable_file_name == NULL)
+			outofmem(__FILE__, "HTLoadFile");
 		    strcpy(enable_file_name, localname);
 		    strcat(enable_file_name, "/");
 		    strcat(enable_file_name, HT_DIR_ENABLE_FILE);
diff --git a/WWW/Library/Implementation/HTFormat.c b/WWW/Library/Implementation/HTFormat.c
index 527ae13c..c8bda5de 100644
--- a/WWW/Library/Implementation/HTFormat.c
+++ b/WWW/Library/Implementation/HTFormat.c
@@ -13,6 +13,7 @@
 
 #include "HTUtils.h"
 #include "tcp.h"
+#include "HTAccess.h"
 
 /* Implements:
 */
@@ -589,9 +590,9 @@ PUBLIC int HTFileCopy ARGS2(
 	FILE *,			fp,
 	HTStream*,		sink)
 {
-    HTStreamClass targetClass;
+    HTStreamClass targetClass;    
     char line[256];
-    int bytes = 0, nreads = 0, nprogr = 0;
+    int status, bytes = 0, nreads = 0, nprogr = 0;
     int rv = HT_OK;
     
     /*  Push the data down the stream
@@ -601,9 +602,8 @@ PUBLIC int HTFileCopy ARGS2(
     /*	Push binary from socket down sink
     */
     for (;;) {
-	int status = fread(input_buffer, 1, INPUT_BUFFER_SIZE, fp);
-	nreads ++;
-
+	status = fread(input_buffer, 1, INPUT_BUFFER_SIZE, fp);
+	nreads++;
 	if (status == 0) { /* EOF or error */
 	    if (ferror(fp) == 0) {
 		rv = HT_LOADED;
@@ -613,7 +613,11 @@ PUBLIC int HTFileCopy ARGS2(
 	        fprintf(stderr,
 			"HTFormat: Read error, read returns %d\n",
 			ferror(fp));
-	    rv = HT_PARTIAL_CONTENT;
+	    if (bytes) {
+		rv = HT_PARTIAL_CONTENT;
+	    } else {
+		rv = -1;
+	    }
 	    break;
 	}
 	(*targetClass.put_block)(sink, input_buffer, status);
@@ -621,27 +625,28 @@ PUBLIC int HTFileCopy ARGS2(
 	bytes += status;
 	if (nreads >= 100) {
 	    /*
-	     *  Show progres messages for local files, and check for
-	     *  user interruption.
-	     *  Start doing so only after a certain number of reads
-	     *  have been done, and don't update it on every read -
-	     *  normally reading in a local file should be speedy.
-	     */
+	    **  Show progress messages for local files, and check for
+	    **  user interruption.  Start doing so only after a certain
+	    **  number of reads have been done, and don't update it on
+	    **  every read (normally reading in a local file should be
+	    **  speedy). - KW
+	    */
 	    if (nprogr == 0) {
-	        if (bytes < 1024000) {
+		if (bytes < 1024000) {
 		    sprintf(line, "Read %d bytes of data.", bytes);
 		} else {
 		    sprintf(line, "Read %d KB of data. %s",
-			    bytes/1024,
+				  bytes/1024,
 		    "(Press 'z' if you want to abort loading.)");
 		}
 		HTProgress(line);
 		if (HTCheckForInterrupt()) {
 		    _HTProgress ("Data transfer interrupted.");
-		    if (bytes)
+		    if (bytes) {
 			rv = HT_INTERRUPTED;
-		    else
-			rv = HT_PARTIAL_CONTENT;
+		    } else {
+			rv = -1;
+		    }
 		    break;
 		}
 		nprogr++;
@@ -788,14 +793,18 @@ PUBLIC int HTParseFile ARGS5(
     */
     targetClass = *(stream->isa);	/* Copy pointers to procedures */
     rv = HTFileCopy(fp, stream);
-    if (rv == -1 || rv == HT_INTERRUPTED)
+    if (rv == -1 || rv == HT_INTERRUPTED) {
         (*targetClass._abort)(stream, NULL);
-    else
+    } else {
 	(*targetClass._free)(stream);
+    }
 
-    if (rv == HT_INTERRUPTED || (rv > 0 && rv != HT_LOADED))
+    if (rv == -1)
+	return HT_NO_DATA;
+    else if (rv == HT_INTERRUPTED || (rv > 0 && rv != HT_LOADED))
 	return HT_PARTIAL_CONTENT;
-    return HT_LOADED;
+    else
+	return HT_LOADED;
 }
 
 /*	Converter stream: Network Telnet to internal character text
diff --git a/WWW/Library/Implementation/HTMIME.c b/WWW/Library/Implementation/HTMIME.c
index 6e34c16b..2b9e31e4 100644
--- a/WWW/Library/Implementation/HTMIME.c
+++ b/WWW/Library/Implementation/HTMIME.c
@@ -86,7 +86,6 @@ typedef enum _MIME_state {
 	miPUBLIC,
 	miRETRY_AFTER,
 	miS,
-	miSA,
 	miSAFE,
 	miSE,
 	miSERVER,
@@ -977,9 +976,11 @@ PRIVATE void HTMIME_put_character ARGS2(
         switch (c) {
 	case 'a':
 	case 'A':
-	    me->state = miSAFE;
+	    me->check_pointer = "fe:";
+	    me->if_ok = miSAFE;
+	    me->state = miCHECK;
 	    if (TRACE)
-	        fprintf(stderr, "HTMIME: Was S, found A, state now SAFE'\n");
+	        fprintf(stderr, "HTMIME: Was S, found A, checking for 'fe:'\n");
 	    break;
 
 	case 'e':
diff --git a/WWW/Library/Implementation/HTStyle.h b/WWW/Library/Implementation/HTStyle.h
index 100162d2..837251aa 100644
--- a/WWW/Library/Implementation/HTStyle.h
+++ b/WWW/Library/Implementation/HTStyle.h
@@ -67,7 +67,7 @@ typedef struct _color {
 } HTColor;
 #else
 
-typedef float HTCoord;
+typedef int HTCoord;		/* changed from float to int - kw */
 
 typedef struct _HTParagraphStyle {
     HTCoord     left_indent;            /* @@@@ junk! etc etc*/
diff --git a/WWW/Library/Implementation/HTTCP.c b/WWW/Library/Implementation/HTTCP.c
index 62c38095..98d21800 100644
--- a/WWW/Library/Implementation/HTTCP.c
+++ b/WWW/Library/Implementation/HTTCP.c
@@ -417,7 +417,8 @@ PUBLIC int HTParseInet ARGS2(
 	    /*
 	    **  Pipe, child pid, and status buffers.
 	    */
-	    int pfd[2], fpid, cstat, cst1;
+	    pid_t fpid, waitret = (pid_t)0;
+	    int pfd[2], cstat, cst1 = 0;
 
 	    pipe(pfd);
 
@@ -454,8 +455,9 @@ PUBLIC int HTParseInet ARGS2(
 		/*
 		**  Exit if child exited.
 		*/
-		if (waitpid(fpid, &cst1, WNOHANG) > 0)
+		if ((waitret = waitpid(fpid, &cst1, WNOHANG)) > 0) {
 		    break;
+		}
 		/*
 		**  Abort if interrupt key pressed.
 		*/
@@ -473,19 +475,56 @@ PUBLIC int HTParseInet ARGS2(
 		*/
 		sleep(1);
 	    }
-	    waitpid(fpid, &cst1, WNOHANG);
+	    if (waitret <= 0)
+		waitret = waitpid(fpid, &cst1, WNOHANG);
+	    if (TRACE) {
+		if (WIFEXITED(cst1)) {
+		    fprintf(stderr,
+			    "NSL_FORK: Child %d exited, status 0x%x.\n",
+			    (int)waitret, cst1);
+		} else if (WIFSIGNALED(cst1)) {
+		    fprintf(stderr,
+			    "NSL_FORK: Child %d got signal, status 0x%x!\n",
+			    (int)waitret, cst1);
+#ifdef WCOREDUMP
+		    if (WCOREDUMP(cst1)) {
+		    fprintf(stderr,
+			    "NSL_FORK: Child %d dumped core!\n",(int)waitret);
+		    }
+#endif
+		} else if (WIFSTOPPED(cst1)) {
+		    fprintf(stderr,
+			    "NSL_FORK: Child %d is stopped, status 0x%x!\n",
+			    (int)waitret, cst1);
+		}
+	    }
 	    /*
 	    **  Read as much as we can - should be the address.
 	    */
 	    IOCTL(pfd[0], FIONREAD, &cstat);
-	    if (cstat < 4)
+	    if (cstat < 4) {
+		if (TRACE)
+		    fprintf(stderr, 
+			    "NSL_FORK: Child returns only %d bytes, \
+trying again without forking...\n", cstat);
+		phost = gethostbyname(host);	/* See netdb.h */
+		if (!phost) {
+		    if (TRACE)
+			fprintf(stderr, 
+				"HTParseInet: Can't find internet node name `%s'.\n",host);
+		    memset((void *)&sin->sin_addr, 0, sizeof(sin->sin_addr));
+		} else {
+		    memcpy((void *)&sin->sin_addr, phost->h_addr, phost->h_length);
+		}
+#if 0		
 	        cstat = read(pfd[0], (void *)&sin->sin_addr , 4);
-	    else
+#endif
+	    } else {
 	        cstat = read(pfd[0], (void *)&sin->sin_addr , cstat);
+	    }
 	    close(pfd[0]);
 	    close(pfd[1]);
 	}
-
 	if (sin->sin_addr.s_addr == 0) {
 	    if (TRACE)
 	        fprintf(stderr, 
diff --git a/WWW/Library/Implementation/HTTP.c b/WWW/Library/Implementation/HTTP.c
index 980b8f6e..0bcc2c62 100644
--- a/WWW/Library/Implementation/HTTP.c
+++ b/WWW/Library/Implementation/HTTP.c
@@ -485,7 +485,23 @@ try_again:
 	**  If we do have a cookie set, add it to the request buffer. - FM
 	*/
 	if (cookie != NULL) {
+	    if (*cookie != '$') {
+	        /*
+		**  It's a historical cookie, so signal to the
+		**  server that we support modern cookies. - FM
+		*/
+		StrAllocCat(command, "Cookie2: $Version=\"1\"");
+		StrAllocCat(command, crlf);
+	        if (TRACE)
+	            fprintf(stderr,
+			    "HTTP: Sending Cookie2: $Version =\"1\"\n");
+	    }
 	    if (*cookie != '\0') {
+	        /*
+		**  It's not a zero-length string, so add the header.
+		**  Note that any folding of long strings has been
+		**  done already in LYCookie.c. - FM
+		*/
 	        StrAllocCat(command, "Cookie: ");
 	        StrAllocCat(command, cookie);
 		StrAllocCat(command, crlf);
diff --git a/lynx.cfg b/lynx.cfg
index 2e2f430e..495208dc 100644
--- a/lynx.cfg
+++ b/lynx.cfg
@@ -1584,6 +1584,20 @@ MINIMAL_COMMENTS:TRUE
 #DIRED_MENU:TAG::Remove all tagged files and directories.::LYNXDIRED://REMOVE_TAGGED
 #DIRED_MENU:TAG::Untag all tagged items.::LYNXDIRED://CLEAR_TAGGED
 
+# Unix ONLY:
+#===========
+# If NO_FORCED_CORE_DUMP is set to TRUE, Lynx will not force
+# core dumps via abort() calls on fatal errors or assert()
+# calls to check potentially fatal errors.  The compilation
+# default normally is FALSE, and can be changed here.  The
+# compilation or configuration default can be toggled via
+# the -core command line switch.
+# Note that this setting cannot be used to prevent core dumps
+# with certainty.  If this is important, means provided by the
+# operating system or kernel should be used.
+#
+#NO_FORCED_CORE_DUMP:FALSE
+
 # COLORS (only available if compiled with SVr4 curses or slang)
 #
 # The line must be of the form:
diff --git a/lynx.hlp b/lynx.hlp
index 0e561bce..150cedf9 100644
--- a/lynx.hlp
+++ b/lynx.hlp
@@ -187,6 +187,11 @@
   -nobrowse
        disable directory browsing.
 
+  -nocc
+       disable Cc: prompts for self copies of mailings.  Note
+       that this does not disable any CCs which are incorporated
+       within a mailto URL or form ACTION.
+
   -nocolor
        force color mode off, overriding terminal capabilities and any
        -color flags, COLORTERM variable, and saved .lynxrc settings.
diff --git a/lynx.man b/lynx.man
index 317249fe..a5a6e052 100644
--- a/lynx.man
+++ b/lynx.man
@@ -122,6 +122,9 @@ in .lynxrc on startup is overridden by this flag.
 .B -cookies
 toggles handling of Set-Cookie headers.
 .TP
+.B -core
+toggles forced core dumps on fatal errors.
+.TP
 .B -crawl
 with -traversal, output each page to a file.
 with -dump, format output as with -traversal, but to stdout.
@@ -215,6 +218,11 @@ maximum news articles in listings before chunking.
 .B -nobrowse
 disable directory browsing.
 .TP
+.B -nocc
+disable Cc: prompts for self copies of mailings.  Note
+that this does not disable any CCs which are incorporated
+within a mailto URL or form ACTION.
+.TP
 .B -nocolor
 force color mode off, overriding terminal capabilities and any
 -color flags, COLORTERM variable, and saved .lynxrc settings.
diff --git a/lynx_help/Lynx_users_guide.html b/lynx_help/Lynx_users_guide.html
index b13a48a2..efdf884e 100644
--- a/lynx_help/Lynx_users_guide.html
+++ b/lynx_help/Lynx_users_guide.html
@@ -1884,6 +1884,8 @@ where
 		       in .lynxrc on startup is overridden by this flag.
              <dt><code>-cookies</code>
     		<dd>toggles handling of Set-Cookie headers.
+             <dt><code>-core</code>
+    		<dd>toggles forced core dumps on fatal errors. (Unix only)
              <dt><code>-crawl</code>
     		<dd>with <em>-traversal</em>, output each page to a file.<br>
     		    with <em>-dump</em>, format output as with
@@ -1965,6 +1967,10 @@ where
     		<dd>maximum news articles in listings before chunking.
              <dt><code>-nobrowse</code>
     		<dd>disable directory browsing.
+             <dt><code>-nocc</code>
+    		<dd>disable Cc: prompts for self copies of mailings.  Note
+		    that this does not disable any CCs which are incorporated
+		    within a mailto URL or form ACTION.
              <dt><code>-nocolor</code>
     		<dd>force color mode off, overriding terminal capabilities and any
 	       <em>-color</em> flags, <em>COLORTERM</em> variable, and saved .lynxrc settings.
diff --git a/samples/lynx.cfg b/samples/lynx.cfg
index 17a790b2..d760fb93 100644
--- a/samples/lynx.cfg
+++ b/samples/lynx.cfg
@@ -1583,6 +1583,20 @@ MINIMAL_COMMENTS:TRUE
 #DIRED_MENU:TAG::Remove all tagged files and directories.::LYNXDIRED://REMOVE_TAGGED
 #DIRED_MENU:TAG::Untag all tagged items.::LYNXDIRED://CLEAR_TAGGED
 
+# Unix ONLY:
+#===========
+# If NO_FORCED_CORE_DUMP is set to TRUE, Lynx will not force
+# core dumps via abort() calls on fatal errors or assert()
+# calls to check potentially fatal errors.  The compilation
+# default normally is FALSE, and can be changed here.  The
+# compilation or configuration default can be toggled via
+# the -core command line switch.
+# Note that this setting cannot be used to prevent core dumps
+# with certainty.  If this is important, means provided by the
+# operating system or kernel should be used.
+#
+#NO_FORCED_CORE_DUMP:FALSE
+
 # COLORS (only available if compiled with SVr4 curses or slang)
 #
 # The line must be of the form:
diff --git a/src/GridText.c b/src/GridText.c
index 493e66cc..e057c95f 100644
--- a/src/GridText.c
+++ b/src/GridText.c
@@ -932,8 +932,25 @@ PRIVATE void display_page ARGS3(
     
     for (i = 0, line = text->last_line->next;		/* Find line */
     	 i < line_number && (line != text->last_line);
-         i++, line = line->next) 			/* Loop */
+         i++, line = line->next) {			/* Loop */
+#ifndef VMS
+	if (!LYNoCore) {
+	    assert(line->next != NULL);
+	} else if (line->next == NULL) {
+	    if (enable_scrollback) {
+		addch('*');
+		refresh();
+		clear();
+	    }
+	    addstr("\n\nError drawing page!\nBad HText structure!\n");
+	    refresh();
+	    nlinks = 0;  /* set number of links to 0 */
+	    return;
+	}
+#else
 	assert(line->next != NULL);
+#endif /* !VMS */
+    }
 
 #ifdef EXP_CHARTRANS
     if (LYlowest_eightbit[current_char_set] <= 255 &&
@@ -997,7 +1014,23 @@ PRIVATE void display_page ARGS3(
 	    /*
 	     *  Verify and display each line.
 	     */
+#ifndef VMS
+	    if (!LYNoCore) {
+		assert(line != NULL);
+	    } else if (line == NULL) {
+		if (enable_scrollback) {
+		    addch('*');
+		    refresh();
+		    clear();
+		}
+		addstr("\n\nError drawing page!\nBad HText structure!\n");
+		refresh();
+		nlinks = 0;  /* set number of links to 0 */
+		return;
+	    }
+#else
 	    assert(line != NULL);
+#endif /* !VMS */
 	    display_line(line, text);
 
 #if defined(FANCY_CURSES) || defined(USE_SLANG)
@@ -1466,6 +1499,8 @@ PRIVATE void split_line ARGS2(
     int ctrl_chars_on_previous_line = 0;
     char * cp;
     HTLine * line = (HTLine *)calloc(1, LINE_SIZE(MAX_LINE));
+    if (line == NULL)
+        outofmem(__FILE__, "split_line");
 
     ctrl_chars_on_this_line = 0; /*reset since we are going to a new line*/
     text->LastChar = ' ';
@@ -1473,8 +1508,6 @@ PRIVATE void split_line ARGS2(
     if (TRACE)
 	fprintf(stderr,"GridText: split_line called\n");
     
-    if (line == NULL)
-        outofmem(__FILE__, "split_line");
     text->Lines++;
     
     previous->next->prev = line;
@@ -2459,7 +2492,7 @@ PUBLIC void HText_endAnchor ARGS2(
      *  without needing to close any anchor with an HREF
      *  within which that link might be embedded. - FM
      */
-    if (number <= 0 || text->last_anchor->number == number) {
+    if (number <= 0 || number == text->last_anchor->number) {
 	a = text->last_anchor;
     } else {
         for (a = text->first_anchor; a; a = a->next) {
diff --git a/src/HTFWriter.c b/src/HTFWriter.c
index 711774b1..93e75a68 100644
--- a/src/HTFWriter.c
+++ b/src/HTFWriter.c
@@ -180,7 +180,7 @@ PRIVATE void HTFWriter_free ARGS1(HTStream *, me)
 		    /*
 		     *  Tell user what's happening. - FM
 		     */
-                    _HTProgress(me->end_command);
+		    _HTProgress(me->end_command);
 		}
 		/*
 		 *  Uncompress it. - FM
@@ -235,6 +235,12 @@ PRIVATE void HTFWriter_free ARGS1(HTStream *, me)
 		     *  Now have HTLoadFile() handle the uncompressed
 		     *  file as if it were the original reply. - FM
 		     */
+		    if (!dump_output_immediately) {
+			/*
+			 *  Tell user what's happening. - FM
+			 */
+			_user_message(WWW_USING_MESSAGE, addr);
+		    }
 		    status = HTLoadFile(addr,
 			    		me->anchor,
 			    		me->output_format,
diff --git a/src/LYCookie.c b/src/LYCookie.c
index 008797e3..07d51595 100644
--- a/src/LYCookie.c
+++ b/src/LYCookie.c
@@ -611,9 +611,9 @@ PRIVATE char * scan_cookie_sublist ARGS6(
  	    len += (strlen(co->name) + strlen(co->value) + 1);
 	    /*
 	     *  For Version 1 (or greater) cookies, add
-	     *  $PATH and/or $DOMAIN attributes for the
-	     *  cookie if they were specified via a server
-	     *  reply header. - FM
+	     *  $PATH, $PORT and/or $DOMAIN attributes for
+	     *  the cookie if they were specified via a
+	     *  server reply header. - FM
 	     */
 	    if (co->version > 0) {
 		if (co->path && (co->flags & COOKIE_FLAG_PATH_SET)) {
@@ -623,7 +623,16 @@ PRIVATE char * scan_cookie_sublist ARGS6(
 		    StrAllocCat(header, "; $Path=\"");
 		    StrAllocCat(header, co->path);
 		    StrAllocCat(header, "\"");
-		    len != (strlen(co->path) + 8);
+		    len += (strlen(co->path) + 10);
+		}
+		if (co->PortList && isdigit((unsigned char)*co->PortList)) {
+		    /*
+		     *  Append the port attribute. - FM
+		     */
+		    StrAllocCat(header, "; $Port=\"");
+		    StrAllocCat(header, co->PortList);
+		    StrAllocCat(header, "\"");
+		    len += (strlen(co->PortList) + 10);
 		}
 		if (co->domain && (co->flags & COOKIE_FLAG_DOMAIN_SET)) {
 		    /*
@@ -632,7 +641,7 @@ PRIVATE char * scan_cookie_sublist ARGS6(
 		    StrAllocCat(header, "; $Domain=\"");
 		    StrAllocCat(header, co->domain);
 		    StrAllocCat(header, "\"");
-		    len != (strlen(co->domain) + 10);
+		    len += (strlen(co->domain) + 12);
 		}
 	    }
 	}
@@ -672,15 +681,22 @@ PRIVATE void LYProcessSetCookies ARGS6(
     }
 
     /*
-     *  If we have both Set-Cookie and Set-Cookie2 headers,
-     *  and must combine them because the Set-Cookie2 headers
-     *  are not required to have complete cookies if Set-Cookie
-     *  headers are present.  So set up a list for the cookies
-     *  we process out of the header(s).  Note that if more than
-     *  one instance of a valued attribute for the same cookie
-     *  is encountered, the value for the first instance is
-     *  retained, with preference to that in a Set-Cookie2
-     *  header.  We only accept up to 50 cookies from either
+     *  If we have both Set-Cookie and Set-Cookie2 headers.
+     *  process the Set-Cookie2 header, then the Set-Cookie
+     *  header.  The most current draft has abandoned the
+     *  the earlier requirement to combine them, but we'll
+     *  keep doing that for now, until we're sure that holds
+     *  up, since we never replace anything that was in the
+     *  Set-Cookie2 headers with it's equivalent in the
+     *  Set-Cookie header.  If we have only a Set-Cookie2
+     *  or only a Set-Cookie header, that's what we use.  So
+     *  set up a list for the cookies we process out of the
+     *  header(s).  Note that if more than one instance of a
+     *  valued attribute for the same cookie is encountered,
+     *  even within the same header, the value for the first
+     *  instance is retained, with consequent preference to
+     *  that in a Set-Cookie2 header, since that was processed
+     *  first.  We only accept up to 50 cookies from either
      *  header, and only if a cookie's values do not exceed
      *  the 4096 byte limit on overall size. - FM
      */
@@ -688,7 +704,7 @@ PRIVATE void LYProcessSetCookies ARGS6(
 
     /*
      *  First process the Set-Cookie2 header, if present, adding
-     *  each cookie to the CombinedCoookies list. - FM
+     *  each cookie to the CombinedCookies list. - FM
      */
     p = (SetCookie2 ? SetCookie2 : "");
     while (NumCookies <= 50 && *p) {
@@ -712,7 +728,11 @@ PRIVATE void LYProcessSetCookies ARGS6(
 	 *  Check for an '=' delimiter, or an 'expires' name followed
 	 *  by white, since Netscape's bogus parser doesn't require
 	 *  an '=' delimiter, and 'expires' attributes are being
-	 *  encountered without them. - FM
+	 *  encountered without them.  These shouldn't be in a
+	 *  Set-Cookie2 header, but we'll assume it's an expires
+	 *  attribute rather a cookie with that name, since the
+	 *  attribute mistake rather than name mistake seems more
+	 *  likely to be made by providers. - FM
 	 */
 	if (*p == '=' ||
 	     !strncasecomp(attr_start, "Expires", 7)) {
@@ -1393,11 +1413,13 @@ PRIVATE void LYProcessSetCookies ARGS6(
 						     address,
 						     PARSE_ALL);
 		    /*
-		     *  Accept only URLs for servers. - FM
+		     *  Accept only URLs for servers.  The most
+		     *  recent draft says just http, so the others
+		     *  are commented out here. - FM
 		     */
 		    if ((url_type = is_url(cur_cookie->commentURL)) &&
 		        (url_type == HTTP_URL_TYPE ||
-		    	 url_type == HTTPS_URL_TYPE ||
+		    	 url_type == HTTPS_URL_TYPE/* ||
 			 url_type == FTP_URL_TYPE ||
 			 url_type == GOPHER_URL_TYPE ||
 			 url_type == HTML_GOPHER_URL_TYPE ||
@@ -1407,7 +1429,7 @@ PRIVATE void LYProcessSetCookies ARGS6(
 			 url_type == SNEWS_URL_TYPE ||
 			 url_type == WAIS_URL_TYPE ||
 			 url_type == CSO_URL_TYPE ||
-			 url_type == FINGER_URL_TYPE)) {
+			 url_type == FINGER_URL_TYPE */)) {
 		        length += strlen(cur_cookie->commentURL);
 		    } else {
 			FREE(cur_cookie->commentURL);
@@ -1570,7 +1592,7 @@ PRIVATE void LYProcessSetCookies ARGS6(
 				(cur_cookie->flags & COOKIE_FLAG_PATH_SET)) {
 				StrAllocCopy(co->path, cur_cookie->path);
 				co->pathlen = cur_cookie->pathlen;
-				co->flags |= COOKIE_FLAG_DOMAIN_SET;
+				co->flags |= COOKIE_FLAG_PATH_SET;
 			    }
 			    /*
 			     *  If the Set-Cookie2 header didn't include
@@ -1711,7 +1733,7 @@ PRIVATE void LYProcessSetCookies ARGS6(
 		    (cur_cookie->flags & COOKIE_FLAG_PATH_SET)) {
 		    StrAllocCopy(co->path, cur_cookie->path);
 		    co->pathlen = cur_cookie->pathlen;
-		    co->flags |= COOKIE_FLAG_DOMAIN_SET;
+		    co->flags |= COOKIE_FLAG_PATH_SET;
 		}
 		/*
 		 *  If the Set-Cookie2 header didn't include
diff --git a/src/LYGetFile.c b/src/LYGetFile.c
index e51f714f..f58fcd84 100644
--- a/src/LYGetFile.c
+++ b/src/LYGetFile.c
@@ -47,6 +47,7 @@
 
 PRIVATE int fix_http_urls PARAMS((document *doc));
 extern char * WWW_Download_File;
+extern char LYCancelDownload;
 #ifdef VMS
 extern BOOLEAN LYDidRename;
 #endif /* VMS */
@@ -94,6 +95,16 @@ PUBLIC BOOLEAN getfile ARGS1(
 	char *temp = NULL;
 	DocAddress WWWDoc;  /* a WWW absolute doc address struct */
 
+	/*
+	 *  Reset LYCancelDownload to prevent unwanted delayed effect. - KW
+	 */
+	if (LYCancelDownload) {
+	    if (TRACE)
+		fprintf(stderr,
+			"getfile:    resetting LYCancelDownload to FALSE\n");
+	    LYCancelDownload = FALSE;
+	}
+
 Try_Redirected_URL:
 	/*
 	 *  Load the WWWDoc struct in case we need to use it.
@@ -131,10 +142,15 @@ Try_Redirected_URL:
 	    if ((cp1 = strchr(temp, '@')) == NULL)
 	        cp1 = temp;
 	    if ((cp = strrchr(cp1, ':')) != NULL) {
-	        int value;
+	        long int value;
 
 		cp++;
-	        if (sscanf(cp, "%d", &value) == 1) {
+	        if (sscanf(cp, "%ld", &value) == 1) {
+		    if (value > 65535 || value < 0) {
+			HTAlert(PORT_INVALID);
+			FREE(temp);
+			return(NULLFILE); 
+		    }
 		    if (value == 19) {
 			HTAlert(PORT_NINETEEN_INVALID);
 			FREE(temp);
@@ -767,7 +783,7 @@ Try_Redirected_URL:
 				 */
 				HTAlert(ILLEGAL_REDIRECTION_URL);
 				if (LYCursesON) {
-				    _user_message("Illegal URL: %s",
+				    _user_message(WWW_ILLEGAL_URL_MESSAGE,
 				    		  use_this_url_instead);
 				    sleep(AlertSecs);
 				} else {
@@ -780,7 +796,8 @@ Try_Redirected_URL:
 			    }
 			    if (TRACE)
 			        sleep(MessageSecs);
-			    _user_message("Using %s", use_this_url_instead);
+			    _user_message(WWW_USING_MESSAGE,
+			    		  use_this_url_instead);
 			    sleep(InfoSecs);
 			    if (TRACE)
 			        fprintf(stderr, "\n");
@@ -909,7 +926,7 @@ Try_Redirected_URL:
 	  } else {
 	      if (TRACE)
 	          sleep(MessageSecs);
-	      _user_message("Badly formed address %s",doc->address);
+	      _user_message(WWW_BAD_ADDR_MESSAGE, doc->address);
 	      if (TRACE)
 	          fprintf(stderr,"\n");
 	      sleep(MessageSecs);
diff --git a/src/LYGlobalDefs.h b/src/LYGlobalDefs.h
index 81ffbfa2..d811b74f 100644
--- a/src/LYGlobalDefs.h
+++ b/src/LYGlobalDefs.h
@@ -318,5 +318,10 @@ extern BOOLEAN LYSeekFragMAPinCur;
 extern BOOLEAN LYSeekFragAREAinCur;
 extern BOOLEAN LYStripDotDotURLs;	/* Try to fix ../ in some URLs?  */
 extern BOOLEAN LYForceSSLCookiesSecure;
+extern BOOLEAN LYNoCc;
+
+#ifndef VMS
+extern BOOLEAN LYNoCore;
+#endif /* !VMS */
 
 #endif /* LYGLOBALDEFS_H */
diff --git a/src/LYMail.c b/src/LYMail.c
index 474f1a3a..849bb5d7 100644
--- a/src/LYMail.c
+++ b/src/LYMail.c
@@ -145,8 +145,7 @@ PUBLIC void mailform ARGS4(
     }
 
     /*
-     *  Allow user to edit the default Subject
-     *   and enter a cc to self. - FM
+     *  Allow user to edit the default Subject - FM
      */
     if (subject[0] == '\0') {
         if (mailto_subject && *mailto_subject) {
@@ -167,18 +166,25 @@ PUBLIC void mailform ARGS4(
 	FREE(address);
 	return;
     }
-    sprintf(self,"%.79s", (personal_mail_address ? 
-			   personal_mail_address : ""));
-    self[79] = '\0';
-    _statusline("Cc: ");
-    if ((ch = LYgetstr(self, VISIBLE, sizeof(self), NORECALL)) < 0) {
-	/*
-	 * User cancelled via ^G. - FM
-	 */
-	_statusline(FORM_MAILTO_CANCELLED);
-	sleep(InfoSecs);
-	FREE(address);
-	return;
+
+    /*
+     *  Allow user to specify a self copy via a CC:
+     *  entry, if permitted. - FM
+     */
+    if (!LYNoCc) {
+	sprintf(self,"%.79s", (personal_mail_address ? 
+			       personal_mail_address : ""));
+	self[79] = '\0';
+	_statusline("Cc: ");
+	if ((ch = LYgetstr(self, VISIBLE, sizeof(self), NORECALL)) < 0) {
+	    /*
+	     * User cancelled via ^G. - FM
+	     */
+	    _statusline(FORM_MAILTO_CANCELLED);
+	    sleep(InfoSecs);
+	    FREE(address);
+	    return;
+	}
     }
 
 #if defined(VMS) || defined(DOSPATH)
@@ -901,26 +907,31 @@ PUBLIC void reply_by_mail ARGS3(
 #endif /* VMS */
 
     /*
-     *  Offer a CC line.
+     *  Offer a CC line, if permitted. - FM
      */
-    addstr(ENTER_ADDRESS_FOR_CC);
-    if (personal_mail_address)
-	addstr(CTRL_U_TO_ERASE);
-    addstr(BLANK_FOR_NO_COPY);
-    addstr("Cc: ");
-    /* Add the mail address if there is one. */
-    sprintf(user_input,"%s", (personal_mail_address ? 
-			      personal_mail_address : ""));
-    if (LYgetstr(user_input, VISIBLE, sizeof(user_input), NORECALL) < 0 ||
-	term_letter) {
+    user_input[0] = '\0';
+    if (!LYNoCc) {
+	addstr(ENTER_ADDRESS_FOR_CC);
+	if (personal_mail_address)
+	    addstr(CTRL_U_TO_ERASE);
+	addstr(BLANK_FOR_NO_COPY);
+	addstr("Cc: ");
+	/*
+	 *  Add the mail address if there is one.
+	 */
+	sprintf(user_input,"%s", (personal_mail_address ? 
+				  personal_mail_address : ""));
+	if (LYgetstr(user_input, VISIBLE, sizeof(user_input), NORECALL) < 0 ||
+	    term_letter) {
+	    addstr("\n");
+	    _statusline(COMMENT_REQUEST_CANCELLED);
+	    sleep(InfoSecs);
+	    fclose(fd);			/* Close the tmpfile. */
+	    scrollok(stdscr,FALSE);	/* Stop scrolling.    */
+	    goto cleanup;
+	}
 	addstr("\n");
-	_statusline(COMMENT_REQUEST_CANCELLED);
-	sleep(InfoSecs);
-	fclose(fd);		/* Close the tmpfile. */
-	scrollok(stdscr,FALSE);	/* Stop scrolling.    */
-	goto cleanup;
     }
-    addstr("\n");
     remove_tildes(user_input);
 #if defined (VMS) || defined (DOSPATH)
     if (*user_input) {
diff --git a/src/LYMain.c b/src/LYMain.c
index b939f01d..ff473d5d 100644
--- a/src/LYMain.c
+++ b/src/LYMain.c
@@ -359,6 +359,7 @@ PUBLIC BOOLEAN LYSeekFragAREAinCur = TRUE;
 
 PUBLIC BOOLEAN LYStripDotDotURLs = TRUE;	/* Try to fix ../ in some URLs? */
 PUBLIC BOOLEAN LYForceSSLCookiesSecure = FALSE;
+PUBLIC BOOLEAN LYNoCc = FALSE;
 
 /* These are declared in cutil.h for current freeWAIS libraries. - FM */
 #ifdef DECLARE_WAIS_LOGFILES
@@ -379,6 +380,7 @@ PRIVATE HTList *LYStdinArgs = NULL;
 
 PRIVATE void parse_arg PARAMS((char **arg, int *i, int argc));
 #ifndef VMS
+PUBLIC BOOLEAN LYNoCore = NO_FORCED_CORE_DUMP;
 PRIVATE void FatalProblem PARAMS((int sig));
 #endif /* !VMS */
 
@@ -1894,6 +1896,14 @@ PRIVATE void parse_arg ARGS3(
 	else
 	    LYSetCookies = TRUE;
 
+#ifndef VMS
+    } else if (strncmp(argv[0], "-core", 5) == 0) {
+        if (LYNoCore)
+	    LYNoCore = FALSE;
+	else
+	    LYNoCore = TRUE;
+#endif /* !VMS */
+
     } else {
         goto Output_Error_and_Help_List;
     }
@@ -2187,6 +2197,9 @@ PRIVATE void parse_arg ARGS3(
     } else if (strncmp(argv[0], "-nobrowse", 9) == 0) {
 	HTDirAccess = HT_DIR_FORBID;
 
+    } else if (strncmp(argv[0], "-nocc", 5) == 0) {
+	LYNoCc = TRUE;
+
     } else if (strncmp(argv[0], "-nocolor", 8) == 0) {
 	LYShowColor = SHOW_COLOR_NEVER;
 #ifdef USE_SLANG
@@ -2606,6 +2619,9 @@ Output_Help_List:
     printf("    -blink           force high intensity bg colors in color mode\n");
 #endif /* USE_SLANG */
     printf("    -cookies         toggles handling of Set-Cookie headers\n");
+#ifndef VMS
+    printf("    -core            toggles forced core dumps on fatal errors\n");
+#endif /* !VMS */
     printf("    -crawl           with -traversal, output each page to a file\n");
     printf("                     with -dump, format output as with -traversal, but to stdout\n");
     printf("    -display=DISPLAY set the display variable for X execed programs\n");
@@ -2649,6 +2665,7 @@ Output_Help_List:
     printf("    -newschunksize=NUMBER  number of articles in chunked news listings\n");
     printf("    -newsmaxchunk=NUMBER   maximum news articles in listings before chunking\n");
     printf("    -nobrowse        disable directory browsing\n");
+    printf("    -nocc            disable Cc: prompts for self copies of mailings\n");
     printf("    -nofilereferer   disable transmissions of Referer headers for file URLs\n");
     printf("    -nolist          disable the link list feature in dumps\n");
     printf("    -nolog           disable mailing of error messages to document owners\n");
@@ -2771,8 +2788,11 @@ Do NOT mail the core file if one was generated.\r\n");
 Lynx now exiting with signal:  %d\r\n\r\n", sig);
 
 	/*
-	 *  Exit and dump core.
+	 *  Exit and possibly dump core.
 	 */
+	if (LYNoCore) {
+	    exit(-1);
+	}
 	abort();
 
     } else {
diff --git a/src/LYMainLoop.c b/src/LYMainLoop.c
index b8ecfb02..cdaedb29 100644
--- a/src/LYMainLoop.c
+++ b/src/LYMainLoop.c
@@ -4643,7 +4643,7 @@ check_add_bookmark_to_self:
 			 */
 			if ((curdoc.post_data != NULL &&
 			     curdoc.safe != TRUE) &&
-			    HTConfirm(CONFIRM_POST_RESUBMISSION) == FALSE) {
+			    HTConfirm(CONFIRM_POST_DOC_HEAD) == FALSE) {
 			    _statusline(CANCELLED);
 			    sleep(InfoSecs);
 			    break;
@@ -4653,6 +4653,8 @@ check_add_bookmark_to_self:
 			if (HTLoadedDocumentIsHEAD()) {
 	            	    HTuncache_current_document();
 			    FREE(curdoc.address);
+			} else {
+			    StrAllocCat(newdoc.title, " - HEAD");
 			}
 		    }
 		    break;
@@ -4673,9 +4675,15 @@ check_add_bookmark_to_self:
 								 "http", 4)) {
 			_statusline(FORM_ACTION_NOT_HTTP_URL);
 			sleep(MessageSecs);
+		    } else if (links[curdoc.link].type == WWW_FORM_LINK_TYPE &&
+		    	       links[curdoc.link].form->submit_method == URL_POST_METHOD &&
+			       HTConfirm(CONFIRM_POST_LINK_HEAD) == FALSE) {
+			_statusline(CANCELLED);
+			sleep(InfoSecs);
 		    } else {
 			HEAD_request = TRUE;
 			LYforce_no_cache = TRUE;
+			StrAllocCat(newdoc.title, " - HEAD");
 			cmd = LYK_ACTIVATE;
 			goto new_cmd;
 		    }
@@ -4689,12 +4697,11 @@ check_add_bookmark_to_self:
 		 */
 		if ((curdoc.post_data != NULL &&
 		     curdoc.safe != TRUE) &&
-		    HTConfirm(CONFIRM_POST_RESUBMISSION) == FALSE) {
+		    HTConfirm(CONFIRM_POST_DOC_HEAD) == FALSE) {
 		    _statusline(CANCELLED);
 		    sleep(InfoSecs);
 		    break;
-		} 
-	        if (nlinks > 0) {
+		} else if (nlinks > 0) {
 		    _statusline(HEAD_D_OR_CANCEL);
 	            c = LYgetch();
 		} else {
@@ -4710,6 +4717,8 @@ check_add_bookmark_to_self:
 			if (HTLoadedDocumentIsHEAD()) {
 	            	    HTuncache_current_document();
 			    FREE(curdoc.address);
+			} else {
+			    StrAllocCat(newdoc.title, " - HEAD");
 			}
 		    }
 		}
diff --git a/src/LYReadCFG.c b/src/LYReadCFG.c
index 18f0c1d5..60f80410 100644
--- a/src/LYReadCFG.c
+++ b/src/LYReadCFG.c
@@ -987,6 +987,11 @@ PUBLIC void read_cfg ARGS1(
 	} else if (!strncasecomp(buffer, "NO_FILE_REFERER:", 16)) {
 	    no_filereferer = is_true(buffer+16);
 
+#ifndef VMS
+	} else if (!strncasecomp(buffer, "NO_FORCED_CORE_DUMP:", 20)) {
+	    LYNoCore = is_true(buffer+20);
+#endif /* !VMS */
+
 	} else if (!strncasecomp(buffer, "NO_FROM_HEADER:", 15)) {
 	    LYNoFromHeader = is_true(buffer+15);
 
diff --git a/src/LYShowInfo.c b/src/LYShowInfo.c
index 7c17df72..156e4baf 100644
--- a/src/LYShowInfo.c
+++ b/src/LYShowInfo.c
@@ -295,7 +295,7 @@ PUBLIC int showinfo ARGS4(
     fprintf(fp0, "<dt>&nbsp;&nbsp;&nbsp;&nbsp;<em>mode:</em> %s%s%s\n",
 		 (lynx_mode == FORMS_LYNX_MODE ?
 				  "forms mode" : "normal"),
-		 ((lynx_mode == FORMS_LYNX_MODE && doc->safe) ? ", safe" : ""),
+		 (doc->safe ? ", safe" : ""),
 		 (doc->internal_link ? ", internal link" : "")
 	    );
 
diff --git a/userdefs.h b/userdefs.h
index 72fa9227..3ebd912a 100644
--- a/userdefs.h
+++ b/userdefs.h
@@ -374,6 +374,16 @@
  */
 #define LIST_FORMAT "    %p %4l %-8.8o %-8.8g %7s %-12.12d %a"
 
+/*
+ *  If NO_FORCED_CORE_DUMP is set to TRUE, Lynx will not force
+ *  core dumps via abort() calls on fatal errors or assert()
+ *  calls to check potentially fatal errors.  The default defined
+ *  here can be changed in lynx.cfg, and the compilation or
+ *  configuration default can be toggled via the -core command
+ *  line switch.
+ */
+#define NO_FORCED_CORE_DUMP	FALSE
+
 #endif /* VMS OR UNIX */
 
 /*************************************************************
@@ -1250,7 +1260,7 @@
  * the version definition with the Project Version on checkout. Just
  * ignore it. - kw */
 /* $Format: "#define LYNX_VERSION \"$ProjectVersion$\""$ */
-#define LYNX_VERSION "2.7.1ac-0.45"
+#define LYNX_VERSION "2.7.1ac-0.46"
 
 /****************************************************************
  * The LYMessages_en.h header defines default, English strings