diff options
Diffstat (limited to 'docs/CHANGES2.8')
-rw-r--r-- | docs/CHANGES2.8 | 3399 |
1 files changed, 0 insertions, 3399 deletions
diff --git a/docs/CHANGES2.8 b/docs/CHANGES2.8 deleted file mode 100644 index a7ae1a61..00000000 --- a/docs/CHANGES2.8 +++ /dev/null @@ -1,3399 +0,0 @@ -======================================================================= ---- Release of Lynx v2.8 (March 10, 1998) --- -======================================================================= - -1998-03-10 -* omit platform-specifics about release (recommended by HN). - TD -* drop samples/lynx.cfg since it is redundant (recommended by HN). - TD -* modify makefile.in so that "make install-cfg" does not edit lynx.cfg - to point at local helpfiles, while "make install-help" will now do - that (reported by LP). - TD -1998-03-07 -* move ifdef's for EXP_8BIT_TOUPPER inside UPPER8 function to allow - check for DOS/WINDOWS display charsets. - LP -1998-03-06 -* clarify relationship between the configure script and userdefs.h with - respect to the LYNX_CFG_FILE definition. - TD -* newer CF_FIND_LIBRARY autoconf macro, to allow ncurses library in /lib - only, needed for SUSE Linux. - TD -* add casts to UPPER8 function's comparison for equality of parameters, and - to TOUPPER macro to guard against sign-extension due to prototype. - AAC -* correct spelling of -lcur_colr library in aclocal.m4, change order of - tests to put -lHcurses second on HP-UX (patch by Jonathan Sergent). -* restore simple zmodem downloader script, displaced by recent undocumented - change (there are some concerns about security or permissions with the - alternate script). - DK -* DOSPATH localfile patch: corrected display of file://localhost/c:/, - which was displayed as file://localhost/c%3A/ (tweak LYConvertToUrl() in - LYUtils.c). Now we may start "lynx c:" or 'go' c: and not see these - strange letters. On the other hand, if % and # symbols found in local - path it will be escaped as before (note that #fragment is not supposed here - to be used from command line...) - LP -* workaround error in vendor's terminfo description of 'dtterm' by ensuring - we limit color pair-number accordingly. - TD -1998-03-04 -* strip -g compiler option if not otherwise specified, for debugging (note - that autoconf 2.12 does not try to use -O option due to concerns about - compiler optimization). - TD -* correct value of $host_os used in CF_CURSES_LIBS for special-case of - HP's -lHcurses (Jonathan Sergent <sergent@ecn.purdue.edu>). -* correct def7_uni.tbl for Greek letters, note about UPPER8 assumption - added to chrtrans/README.format. - LP -* few comments corrected. - LP -1998-02-28 -* create new PRCS revision (2.8pre) for pre-release testing of Lynx 2.8 -TD -* remove RELEASE_STATEMENT, merging it into README as per HN's - recommendation - TD -* comments/minor changes to HTDOS.c, HTDOS.h, LYUtils.c - LP -* document recent fix for RAW_DOS_KEY_HACK in lynx.cfg - DK -* rename CHANGES.new to docs/CHANGES2.8 - TD -* undo last minor change to UPPER8 - LP -1998-02-27 -* add RELEASE_STATEMENT file. - TD -* modify slang configuration to add fake 'scrollok()' - JED -* modify LYmktime() so that 2-digit years must be greater/equal to 70 to be in - 1900's (patch by Bela Lubkin). Also adjust parse_windows_nt_dir_entry() and - parse_cms_dir_entry() as noted by Bela - TD -* comment-out entries in cp1252_uni.tbl which correspond to nonprinting - control-characters - LP -* add logic in SGML.c to correspond with 2.7.2 logic for codes used by - Microsoft FrontPage. - LP -* remove unneeded code for nbsp, ensp, emsp, thinsp and shy from handle_entity() - in SGML.c - LP -* ifdef UPPER8 function with EXP_8BIT_TOUPPER, - add configure option --enable-8bit-toupper to allow testing. - TD -* case-insensitive search and 8bit letters: It was realized that - information about upper/lower mapping got from TOUPPER which depends on - locale in its 8bit and usually fails on non-UNIX systems. We introduce - UPPER8 and strcasecomp8 to implement 8-bit aware case-independent search - using one simple assumption: 8bit upper/lower case letters have their - "7bit approximation" images in def7_uni.tbl matched case-insensitively - (7bit). The cost of this assumption is that several differently accented - letters may be interpreted as equal but this is negligible if the search - string is more than one character long. (LYStrings.c, also HTString.c - and LYMainLoop.c). - LP, TD -* add SunOS 4.x-specific ifdef to quiet redefinition warnings for sys/ioctl.h - vs sys/termios.h - TD -* convert usage/options messages into arrays to simplify maintenance. - TD -* add "-useragent" command-line option to set "User-Agent" (request by Merlin - Mathesius <merlin_mathesius@swissbank.com>). - LP -* tweak HTML in LYDownload.c, LYPrint.c to restore some double-spacing effects - altered in 'collapsible spaces' change 1998-01-25 (reported by James Elkinton - <zio@blueneptune.com>). - LP -* use strncasecomp/strcasecomp consistently throughout to avoid library - dependency on strncasecmp/strcasecmp. - TD -* correct lengths in several strncasecmp calls for command-line options - (though -w is still an abbreviation for -width). - TD -* test-build with BSD curses on OS/2 EMX (does not display properly), and - with ncurses -TD -* add configure check CF_FUNC_LSTAT -TD -* modify CF_CHECK_ERRNO so that configure script on OS/2 EMX finds - sys_errlist[] -TD -* reset styles[] and styleSheet list in DefaultStyle.c, HTML.c so that when - a user reloads a page with ^R, we undo changes to those data structures - (reported by Larry Virden). - TD -* remove extra copy of HTML.h from Implementation directory. - TD -* add CF_GCC_ATTRIBUTES to configure script, to use in flushing out unused - parameter warnings (and later, to support prototypes for logging). - TD -* rename 'extra_entities' to 'unicode_entities' (recommended by LP) - TD -* add configure option --use-default-colors, to allow background color to use - default value (request by SUNAGAWA Keiki <Keiki_Sunagawa@yokogawa.co.jp>) -TD -* change default for --disable-internal-links so it is normally-off - TD -1998-02-19 -* add configure test CF_FIONBIO, some ifdef's (e.g., S_IFLNK) to support - build on OS/2 EMX. - TD -* add configure option --disable-extended-dtd, for testing - TD -* split-out entities.h from HTMLDTD.c - TD -* remove obsolete mapping in "private" e000 area of mnem_suni.tbl, - mnem2_suni.tbl, rfc_suni.tbl - LP -* remove unused function HTMLGetLatinOneValue() - LP -* remove logic that would attempt lookup of Unicode entities by index into the - unicode_entities.put_entity method (e.g., of HTML_dtd), in HTML.c - (HTML_put_entity) and HTMLGen.c (HTMLGen_put_entity) - LP -* tweaks to HTPlain.c, LYCharUtils.c and SGML.c, remove extra checks for - Unicode mdash, ndash, trade, as well as "iso-8859-2", "koi8-r", since they - are done in the chartrans tables - LP -* add an alias 'H' for F1 when using RAWDOSKEYHACK (LYStrings.c) - DK -* restore -DRAWDOSKEYHACK to src/makefile.dos, reported by DK - TD -* correct a typo in CF_CURSES_LIBS configure macro, which caused the configure - script to not add termcap library to the list - TD -* correct --disable-internal-links, by adding DONT_TRACK_INTERNAL_LINKS to - config.hin - TD -1998-02-13 -* use size_t in SGML_dtd. - TD -* remove extra trademark symbol and quotes from chrtrans/*.tbl, since - they are in the default def7_uni.tbl - LP -* New item to lynx.cfg added: PREPEND_CHARSET_TO_SOURCE (similar to BASE), we - need it to resolve charset for downloaded/printed HTML sources which became - local. This is really useful because downloaded and printed texts may - happened to have different charsets so assume_local_charset fails. For - downloaded source meta charset added from HTTP charset header (if and only if - present). For printed source meta charset added from display_charset (real - charset after chrtrans). If the original source has its own meta charset - and we add the second on top - Lynx currently use those on top and ignore - others (old) value (that is correct, although non standard like BASE on top). - The compilation default is FALSE (compatibility). - LP -* modify ncurses mouse behavior to match slang (use button 3 rather than - button 2 for "previous document" (reported by Michael Ritzert) - TD -* use case-independent comparison for tail-only comparison in override_proxy - (patch by pg@sweng.stortek.com) - TD -* remove unneeded definitions of ALT_CHAR_SET, NCURSES_VERSION in - src/makefile.dos - DK -* correct syntax for the RAW_DOS_KEY_HACK in lynx.cfg, add a little information - on how to compile this. Also patched makefile.dos to make compilation of the - raw dos key hack the default when compiling in DOS. - DK -* change back to boolean since the logic was unused: UCCanTranslateFromTo(), - UCCanTranslateUniTo(), and UCCanUniTranslateFrom(). - TD -* Mods of SGML.c and LYCharUtils.c to improve handling of entities, - obsolete stuff removed (not all yet). - LP -* -localhost mode: disable interpreting BASE HREF= if local_host_only - to resolve local html files with BASE (Lynx add base to downloaded - sources and this may affect links if looking them with -localhost). - (tweak in html.c). - LP -* Modify HTMLGetEntityUCValue in LYCharSets.c: - we begin to move from old style entities[] to unicode-based. - LP -* added a few comments. - LP -1998-02-07 -* Fixed a bug in HTTP.c which could cause trashing of authorization info - for an origin HTTP(s) server if the request is being proxied. - FM -* Tweak in HTTP.c so that the reloading variable is not reset until - after any resubmissions due to authorization challenges. - FM -* Tweaks of userdefs.h, lynx.cfg, LYMessages_en.h, LYMain.c, LYMainLoop.c, - LYClean.c, LYReadCFG.c, and LYGlobalDefs.h so that the QUIT_DEFAULT_YES - compilation symbol can be overridden in lynx.cfg, in keeping with - the principle that only strict security-related compilation symbols - cannot be overridden at run time. - FM -1998-02-05 -* adjust formatting, comments & some messages in WWW files to simplify - comparison with 2.7.2 version. (I have preserved some chunks of difference, - ifdef'd NOTUSED_FOTEMODS or NOTDEFINED for ease of comparison -- these may be - removed at a later time, when we are done absorbing changes from 2.7.2) - TD -* Update SGML entity to Unicode table in HTMLDTD.c from ftp.unicode.org - - lots of new entities, iso-latin-1 now included there. - See also new files in test/ directory: sgml.html and unicode.html. - Tweak a few typos in test/*.html according to sgml.html. - Add a few new entries in def7_uni.tbl according to sgml.html - LP -* Cleanup iso01-iso09, cp866 tables against ones found at ftp.unicode.org -LP -* Strip the fat from LYCharSets.c - unnecessary obsoleted tables removed - and redirected to SevenBitApproximation table (ones which have unicode tables - override it anyway, those for CJK had exactly the same tables as - SevenBit..). - LP -* Remove obsolete "Other ISO Latin" charset, which works _exactly_ the same - as "7 bit approximation" (See the note on 06-14-96 where it comes from) -LP -* Sort the list of charsets in Options according to 2.7.2 for 1997-10-15, - see the comments in UCinit at the bottom of UCDomap.c - LP -* add ifdef to HTFile.c to workaround conflicting S_IFIFO vs S_IFSOCK - (e.g., on Apollo, from a report by Dave Eaton <dwe@arde.com>) - TD -* updated INSTALLATION (patch by HN) - TD -* modify DOS handling of CTL-C and CTL-BREAK handling for DOS to allow - exiting via SIGINT when pressing CTL-C or CTL-BREAK regardless of the - BREAK setting in DOS. This leaves the BREAK setting unchanged unless - CTL-C or CTL-BREAK is actually pressed (in which case it leaves BREAK - ON) - DK -* add note about Lynx vs frames to User's Guide (from Al Gilman) - TD -1998-01-27 -* correct lynx.man to reference section "1" (one), not "l", since it is - not installed in the latter (reported by Jason Castonguay - <jcast@ntplx.net>) - TD -* fix for VMS declarations of mainloop() and from_hex() (reported by FM) - TD -* add to include-paths in libmake.com, build.com (reported by FM, citing - Brian Tillman) - TD -* revert HTML.c to use LYHandleSELECT() - TD -* align cases for function keys in LYStrings.c with 2.7.2 - TD -* remove EXP_CHARTRANS ifdef's - TD -* remove symbol USE_SIZECHANGEHACK -TD -* adjust formatting, comments & some messages in most remaining ./src files to - simplify comparison with 2.7.2 version. - TD -1998-01-25 -* Changed the utf-8 Display Character Set string to "UNICODE UTF-8" - (i.e., added the hyphen between UTF and 8), and fixed typos in - the comments about iso-8859-5. -LP, FM -* Modified HTML.c to add collapsible spaces before and after IMG ALT - strings or pseudo-ALTs whether or not the IMG element is within - Anchor content. The occasional absence of such spaces due to poor - HTML was problematic for blind users. Note that markup which uses - an image for a fancy letter with the ASCII letter as an ALT will - have that letter separated from the rest of the word. Also note - that these spaces will not be collapsed in PRE blocks, but IMG is - invalid in PRE blocks. The spaces could be omitted when IMG is - used invalidly in PRE blocks, but that would revive the problem - for blind users that they might not be present at all, so it seems - better to suffer extra spaces in such cases. - FM -1998-01-24 -* Tweak in HTAccess.c to reset the title element in anchors on forced - reloads. - FM -1998-01-22 -* Tweaks in HTML.c to prevent collapsing of blank lines within TEXTAREA - default values. Note that we still strip any leading or trailing - blank lines (reported by Edward S. Marshall <emarshal@xnet.com>). - FM -* Tweaks of LYCurses.c, LYMain.c, LYOptions.c, LYReadCFG.c, LYUtils.c - and LYAuto.c to ensure properly setting, with internal buffering, and - avoid memory leaks for the display and homedir values (reported by - pg@sweng.stortek.com). - FM -* include userdefs.h in LYCurses.h to address redefinition warnings for - curses-related configuration. - TD -* adjust formatting, comments & some messages in recently-modified files to - simplify comparison with 2.7.2 version. - TD -* remove obsolete logic from UCCanTranslateFromTo, (recommended by LP). - TD -* make character set names (e.g., cp437, cp850, next) consistent in lynx.cfg, - userdefs.h (reported by LP). - TD -* change configure script to check for termcap library before curses, in case - it is dependent. - TD -* More corrections in the Russian Cyrillic area of def7_uni.tbl. - LP -1998-01-17 -* correct logic for no_color_video by ensuring that if not defined, it - doesn't disable underline with color. - TD -* remove NSL_CLONE - didn't build. - TD -1998-01-16 -* eliminate gcc "shadowed variable", "nested declaration", "no previous - prototype" warnings. - TD -* add --disable-internal-links configure option. - TD -* remove W3C gateway (patch by DK, based on email from Gerald Oskoboiny - <gerald@w3.org>). - TD -* documentation updates (patch by JS). - TD -* add CONTENT_TYPE to environment of lynxcgi POST documents (reported by - Ty Sarna <tsarna@endicor.com> & FM). - TD -* add NSL_CLONE ifdef that enables use of the Linux clone() call instead of - fork() for the gethostbyname() calls in HTTCP.c. (patch by Ryan Nielsen - <ran@haxor.com>). - TD -from the lynx code. I think the following patch does this. -1998-01-15 -* Tweak of the NSL_FORK code in HTTCP.c to prevent zombie processes from - being created when gethostbyname() is interrupted. - RN -* Corrected the Russian Cyrillic area of the def7_uni.tbl Unicode to - 7-bit approximations conversion table. - LP -* Mods of UCAux.c, LYCharUtils.c, SGML.c and HTPlain.c to use 7-bit - approximations instead of 8th bit stripping when the document charset - is koi8-r and the Display Character Set does not have the corresponding - characters. - FM -* Tweaks in HTML.c to ignore a newline character immediately following - a PRE start tag more consistently. When PRE blocks are used to create - blank lines, you should get only as many as are actually included in - the PRE block, unless you include less than the number specified for - "before" the block to which you return, in which case you'll get the - latter number of blank lines. - FM -1998-01-13 -* Fixed a typo in the HTParse() code of HTParse.c for checking whether - a colon in the host field indeed delimits a port number. - FM -* Changed the internal MIME names for all Microsoft Windows codepages - from cp#### to windows-####, since the latter is used more commonly - as the charset value in META elements and/or Content-Type headers, - and most of them have been registered that way with IANA. Note, - however, that Microsoft uses cp instead of windows- prefixes in the - charset names for the Unicode conversion tables submitted to the - Unicode Consortium. Also note that we still treat cp, cp-, and ibm - prefixes as synonyms for the windows- prefix. - FM -1998-01-06 -* work around for 'keypad()' function w/o corresponding key defines - (reported by Francisco A. Tomei Torres for NeXTstep 4.0). - TD -* quote message in install rule, just in case (from HN). - TD -* correct expression to supply default value of .cfg file's pathname - (reported by LE & Ambrose Li <acli@acli.interlog.com>). - TD -* correct dependency of .cfg files upon $(libdir) in makefile.in - TD -1998-01-04 -* correct temporary filename for -traversal -crawl (patch by Doug Kaufman). - TD -* correct redefinition of SYSTEM_MAIL_FLAGS. (reported by Doug Kaufman). - TD -* uncache current document when character set may have changed (patch - by Andrey A. Chernov) - TD -* modify Linux setfont code to restore the original font on exit - TD -* correct missing backslash (again) in makefile.in - (reported by Mark Mentovai - again) - TD -1998-01-02 -* workaround for sed expression when rerunning configure with config.cache - for slang libraries (reported by Hynek Med). - TD -* fix indicated by Laura Eaves (LE) for LYUCFullyTranslateString_1() - TD -* modify SPAWNING_MSG for DOSPATH configuration, avoid unnecessary use - of clear-screen in shell (patch by Doug Kaufman). - TD -* remove install-help from list for install rule, adding message to - indicate how to install it. - TD -* install lynx.lss only if color-style is configured. - TD -* correct filemode for DJGPP when processing config-file, patch by - Doug Kaufman). - TD -* add LYNX_LSS_FILE to config.hin, reported by Ambrose Li - <acli@acli.interlog.com>. - TD -* new copy of INSTALLATION file from HN. - TD -* add COPY* to install rule. - TD -* simplify includes in UCdomap.c by using include-path in makefiles. - TD -* build configure script with patched autoconf to workaround limited - environment space on CLIX 3.1 - TD -* rename mnemonic_suni.tbl to mnem2_suni.tbl to accommodate 'make' on - older system with 14-character name-limit. - TD -* sorted some lists (e.g., character sets) which were unreadable. - TD -* incorporate most of FM's changes from 971124 to 971230 (see below). - TD - (Note: don't try to use fflush(stdin) -- it's an FAQ -- nonstandard, - dumps core on some platforms). -1997-12-30 -* Added Unicode translation support for "DosBaltRim (cp775)" and - "WinBaltRim (cp1257)". - FM -1997-12-29 -* Fixed bug in the order of re-initializations for the 1997-12-22 - get_connection() mods. - FM -* Fixed typos in some LYCharUtils.c comment. - FM -* Fixed typo in LYrcFile.c comments concerning the NO_FROM_HEADER - symbol. - DK -1997-12-24 -* resolve conflict between autoconf $INSTALL and lynx's INSTALL_PATH - (reported by Scott McGee). - TD -* modify CF_CHECK_FUNCDECL to work with non-gcc compilers. - TD -* add <stdio.h> to prototype test for getgrgid getgrnam, needed on SVr3. - TD -* add install-lss to makefile.in. - TD -* modify order of includes in LYKeymap.c so that USE_EXTERNALS is defined - if it comes from userdefs.h (inferred from a report by Larry Virden). - TD -* correct spelling of USE_EXTERNALS which prevented --enable-externs from - working. - TD -* move assignment to stderr from VMSexit to cleanup function (reported - by Brian Tillman & FM). - TD -* modify UCChangeTerminalCodepage() to not use stderr, disentangling it - from stderr/logfile hack. - TD -* rename docs/CHANGES2-* files to docs/CHANGES2.* (reported by - Doug Kaufman). - TD -* add start_color() call to DOSPATH version of start_curses() to - fix problem reported by Doug Kaufman - TD -* correct typo in ColorCode() function (reported by Doug Kaufman) - TD -* modify comments in makefile.in (patch by HN) - TD -* minor fixes for CF_CHECK_ERRNO, CF_SIZECHANGE, CF_SLANG_CPPFLAGS - macros. - TD -* add configure option --enable-nsl-fork to turn on code defined by - NSL_FORK. - TD -* add configure option --enable-links to turn on code defined by - UNDERLINE_LINKS. - TD -* add configure option --enable-font-switch, to turn on code defined by - EXP_CHARTRANS_AUTOSWITCH. - TD -* modify configure CF_CURSES_LIBS test to look also for ncurses, - since some systems do not have a "curses" library (reported by - Michael Ritzert). - TD -1997-12-22 -* Reworked -width=NUMBER command line switch for specifying the screen - width for formatting of dumps (default is 80; forced wraps occur at one - column less than the screen width, i.e., at 79 by default). - FM -* Tweak of get_connection() in HTFTP.c to re-initialize the elements of - the connection structure when using a previously allocated connection - object. -DW, FM -* Mods of LYexit.c, LYClean.c, LYMain.c and LYMainLoop.c to fflush() all - standard file descriptors in conjunction with all fopen() and fclose() - operations on the TRACE log and redirections of stderr via equality - statements (see 1997-12-16, 1997-12-13 and 1997-07-18 mods). - FM -1997-12-18 -* forgotten last } UN-inserted (John Line) - WB -* few commented messages corrected according to RFC2068 (HTTP1.1) - (Leonid Pauzner) - WB -1997-12-17 -* Changed all %i tokens to %d or %ld in functions that always get decimal - values in their arguments. - FM -1997-12-17 (all patches by Leonid Pauzner) -* open text mode while writing lynx.rc and bookmarks files - LYrcFile.c and LYBookmark.c (forgotten last } inserted). - WB -* add a comment about binary mode in LYMain.c and pile them - in one ifdef - WB -* few misprinted characters (in comments) corrected in - \chrtrans\cp850_uni.tbl - WB -1997-12-16 -* Further mods in LYClean.c (see 1997-12-13 mods) do block the - *stderr = LYOrigStderr; statement in cleanup() for VMS with VAXC. - FM -* Added an ELGOTO keystroke command, mapped by default to upper case 'E' - (lower case 'e' still invokes the editor for the current document, if - it is a local file), for passing the URL (or ACTION) of the current - link to the line editor for editing as a goto URL. Works like the - ECGOTO ('G') keystroke command for editing the URL of the current - document as a goto URL, i.e., if the URL is not modified, is set to - a zero-length string, or ^G is entered, the command is cancelled. - FM -* Mods of LYMainLoop.c to disallow ECGOTO or ELGOTO commands for File - Management (DIRED_SUPPORT) menu URLs. - FM -1997-12-15 -* Added reporting of the Discard value (YES or NO), in the Cookie Jar Page - (note that until we have code for storing cookies beyond the current - session, Lynx behaves as if Discard were set, whether or not it was set - by the server, but we still report the server's instructions, as we do - for the Maximum Gobble Date). - FM -1997-12-14 -* added a lynx.cfg switch to turn on/off extended dos translations for keys. - -WB -* added minor DOS tweaks by Doug Kaufman and myself. - WB -* fixed windows binary mode piping. - WB -1997-12-13 -* Tweaks in LYList.c to make the link numbers correspond with those in - the current document when LINKS_AND_FORM_FIELDS_ARE_NUMBERED in on, - and to show the current document's URL in the display. - FM -* Mods in HTTP.c to show the body of a 305 return status instead of ever - acting on it. A number of security/privacy problems with this status - are being discussed in the HTTP-WG, and it's likely to be dropped or - deprecated in the next revision of the HTTP/1.1 specs. - FM -* Restored the v2.7.1 HTmmdecode() that's specific for iso-2022-jp in - HTMIME.c. We still only call it when HTCJK == JAPANESE, and the - generalized version reportedly has problems. - FM -* Removed the *stderr = LYOrigStderr; statement from VMSexit() in LYCurses.c - and added it to the if() claused section which closes the TRACE log file, - if opened, in cleanup() of LYClean.c. This is just a stab in the dark - for dealing with reported problems on exit with VAXC on VAXen. We may - need to use freopen() for redirecting TRACE messages to a file for VAXC - or VAXen (there's no apparent problem with the current code with DECC - on VMS/AXP). - FM -* Added more function key cases to the keypad() mode switch() in LYgetch() - of LYStrings.c. We don't need them with this code set, but they may as - well be there for completeness. - FM -* check for and use ncurses default-color extension, use to make the - color-style configuration usable on xterm with white background. - TD -* add cases in LYgetch() for remaining VT220-compatible codes, reported - by Michael Ritzert and FM. - TD -* add configure test to see if slang can be linked without curses or - termcap libraries, request by John Davis. - TD -* set umask in mkdirs.sh script to work around users who have set root's - umask to 077. - TD -* split up install rule to install-bin, install-cfg, install-man and - install-help. - TD -* suppress suffixes in top-level makefile so 'make' won't try to create - a file named "install" from install.sh - TD -* make $(CPPFLAGS) inherit consistently from top-level makefile. - TD - (reported by Mark Mentovai) -* add configure option --enable-externs, to turn on USE_EXTERNS. - TD -* use explicit comparison for enum values, fix compile problem with VAX C - for UCAux functions (reported by Brian Tillman). - TD -1997-12-03 -* Remove CHANGES.configure, since it is redundant. - TD -* Make -g3 option check for OSF/1 3.2 consistent with -Olimit check. - TD -* Use 'result' rather than 'time' in mktime.c to avoid shadowing. - TD -* Use wborder only if configure finds it, not ifdef FANCY_CURSES. - PHDM -* List of systems having strerror replaced by configure test. - PHDM -* Beautifying of mktime.c (`now' was misleading). - PHDM -1997-12-02 -* Mods in LYCookie.c to prompt whether to accept (or reject) cookies with - an invalid domain value which yields a hostname prefix with a dot (as - specified in section 4.3.2 of the IETF cookie drafts and RFC), rather - than rejecting it silently. Note that it is rejected in non-interactive - (-dump or -source) mode, because the user can't be prompted. - FM -1997-11-27 -* Added a PREPEND_BASE_TO_SOURCE configuration symbol in lynx.cfg which - can be set FALSE to suppress prepending of a Request URL comment and - BASE element to text/html sources retrieved for 'd'ownloading or passed - to 'p'rint functions. Note that this prepending is not done for -source - dumps unless the -base switch also was included on the command line, and - the latter switch overrides the setting of the PREPEND_BASE_TO_SOURCE - configuration variable. - FM -1997-11-25 -* Mods in LYMail.c and LYPrint.c to handle to=address(es), cc=address(es), - subject=string, keywords=word_list, and body=message fields in the - ?searchpart of mailto URLs as specified in the 1997-11-16 draft: - ftp://ftp.isi.edu/internet-drafts/draft-hoffman-mailto-url-03.txt - The cc=address(es) values are now handled as a Cc: header, and a self - copy, if confirmed on prompt, is added to the Cc: header. Note that - the draft now allows mailto:?to=address(es)[&foo=blah] as a format, - i.e., without an address before the ?searchpart. The Netscape - ?searchpart tack-on broke all pre-existing implementations of mailto, - and this breaks Lynx's support through v2.7.1. Though it's now - supported in this code set, don't use it. Complaints and formal - requests to provide this functionality via a new scheme (e.g., - mail: or smtp:) without breaking existing implementation of mailto:, - including from TimBL (HimSelf :), thus far have fallen on deaf ears. - You can send email to those deaf ears via: - mailto:masinter@parc.xerox.com%20(Larry%20Masinter) - Don't allow the IETF backward compatibility principle to go down - the drain. - FM -* Mods to support use of the PMDF SEND command on VMS in conjunction with - a temporary header file, so that all headers specified in the ?searchpart - of mailto URLs can be included in the mailing, and made that the compilation - default in userdefs.h to go with the default MAIL_ADRS mask for PMDF (If - the "generic" VMS MAIL utility is used, not all of the headers can be - specified on the command line, as it requires). Look at the code in - LYMail.c and LYPrint.c that is used when isPMDF is TRUE as a model of how - to do this with other header-file-capable VMS mailers (but I don't have - any besides PMDF, and can't do it for you :). - FM -* Tweak of the 1997-11-17 URL parsing mods so that relative symbolic - elements immediately preceding a ?searchpart are handled identically - to when a ?searchpart is not present. - FM -* Added support for setting both SYSTEM_MAIL and SYSTEM_MAIL_FLAGS in - both userdefs.h and lynx.cfg. - FM -1997-11-23 -* integrate PHDM's patch. - TD -* Check for existence of sys/wait.h. - PHDM -* Do not include sys/stat.h twice. - PHDM -* New autoconf-macros to check if a function is declared after including a - specific set of files. - PHDM -* Declare strstr if it is not declared by string.h. - PHDM -* Declare getgrgid and getgrnam if not declared by grp.h. - PHDM -* Provide strstr and mktime implementations, and use them if needed. - PHDM -* Always include sys/types.h in HTUtils.h. - PHDM -* define NO_GROUPS if we do not have getgroups. - PHDM -* define NEED_REMOVE also if test yields unknown. - PHDM -* define mode_t if not done by system include files. - PHDM (phdm@macqel.be) -* change CF_UNION_WAIT to use compile+link rather than compile, to ensure - that we pick up the wait-macros rather than an implied function, which - should fix configure problems on NeXT for Francisco A. Tomei Torres - <fatomei2@mail.unm.edu>. - TD -* spelling nit from Larry Virden. - TD -* add osf3.0 to special case compiler options using -g3 in place of - -O -g, from Harsh Kumar <harsh@krcl.ernet.in>. - TD -* remove redundant "-c" option from $(installbin) in makefile.in, reported - by Michael Warner <warner@wsu.edu>, for OSF/1 4.0. - TD -* if configure --srcdir is not used, comment-out rmdir's in "make distclean" - rule. - TD -* modify recent erase/clear change so that it applies only to FANCY_CURSES, - since BSD curses does not otherwise clear the screen when restoring after - popup. - TD -* modify change for boxes so this builds with BSD curses, which has no - wborder() function. - TD -* reverse ifdef for NO_SIZECHANGEHACK to USE_SIZECHANGEHACK, which is - normally off, since this code did not work with BSD 4.4 curses, SVr4 - curses, or ncurses 4.1 with xterm. (Will make a configure test if anyone - can identify a configuration that works). - TD -1997-11-21 -* Changed LYE_LINKN to LYE_LKCMD (still mapped by default to Ctrl-V; may - need to be entered twice for some systems) for invoking a prompt to - enter any Lynx keystroke command when in form text fields. - FM -1997-11-20 -* Added an LYK_CLEAR_AUTH command, mapped to underscore ('_') by default, - which clears all authorization info for the current session. This is - recommended for the situation when one leaves one's terminal but doesn't - want to end the browser session, nor want others to be able to retrieve - protected documents with previously entered username and password info. - Note that we don't yet have a way to block access to any protected - documents which are still in cache. - FM -1997-11-19 -* Tweak of HTTP.c to ensure closing of the connection when interrupted - ('z'apped) on the first socket read. - FM -1997-11-18 -* Mods to use the explicit label "Bad HTML:" in trace messages corresponding - to BAD_HTML_USE_TRACE messages. - FM, KW -* Tweak of the restored TABLE-in-PRE block handling to deal with the - case when it's encased in a CENTER or DIV with ALIGN="center". - FM -* Changed docs/README.defines to refer to INSTALLATION file - HN -1997-11-17 -* Changed the default ASCII BOXVERT and BOXHORI definitions from '*' to - to '|' and '-', and new function LYbox() for non-VMS (n)curses. - FM -* Use explicitly specified characters for drawing the corners of popup - boxes with non-VMS (n)curses if we have also specified characters for - vertical and horizontal lines. - KW -* Mods in HTTP.c to trim any "LYNXIMGMAP:" leader from Referer header - values and strip the #fragment when making http(s) requests via links - in the pseudo-documents constructed for MAP elements. - FM, KW -* Mods of SGML parsing to better handle SELECT blocks with invalid markup, - in effect for both TagSoup and SortaSGML parsing (for the latter just - in case it doesn't already prevent invalid markup from being passed on). - Only OPTION elements are accepted in SELECT blocks. - Otherwise, if the element is a form-related start tag, the - SELECT block is closed and the new form-related element is started. - All other elements are ignored. A FORM end or start tag ends any open - SELECT block and the current FORM (before starting another FORM if - it is a start tag). Note that we now support SELECT blocks outside - of FORM blocks, which some providers are using for "informational" - popups, but no Lynx user would do anything that awful, right? - FM -* Tweak in LYMainLoop.c to override an LYresubmit_posts flag if we are - reloading a popped document due to a NOT_FOUND or NULLFILE return - value from getfile(). - FM - (But if the document that would be loaded after such a failure has POST - data and is not in memory, still jump to the PREV_DOC code, see enttry - for 1997-11-03. - KW) -* Worked in a variant of AJL's suggestion of setting LINES and COLUMNS - artificially high before the initscr() call with Unix curses, then - using a dummy call to size_change() for setting LYlines and LYcols - to the actual screen dimensions, so that increases in the screen size - during the Lynx session, and not just decreases, can be handled. - Note that one still needs to do a RELOAD (^R) overtly to create a - new HText structure based on the current screen size. - FM - (The new code can be disabled by defining NO_SIZECHANGEHACK, in case - some curses version or terminal cannot deal with it. - KW) -* Tweaks of the chartrans code. - FM, KW -* Change in HTNews.c to ignore very long bogus newsgroup names when listing - available groups. - KW -* Tweaks in code for highlighting search text in anchors, to better deal with - terminals in UTF-8 mode. - KW -* Mods to ignore anything past a '?' character when simplifying URL paths, - as is now more clearly specified in the Fielding URL draft. Note that - we still assume a ';' is not in fact a parameter delimiter, or won't - have a value with characters that could be misinterpreted as relative - path specs. - FM -* Increased the redirection limit to the original Lynx's value of 10, - because the HTTP/1.1 draft no longer will restrict it to 5, but instead - will leave it to the discretion of the browser (and I like 10, as a - reminder of the "good old days" :). - FM -1997-11-15 -* Mods of parsing in HTML.c to restore support for the TABLE-in-PRE-block - HTML kludge described in http://ppewww.ph.gla.ac.uk/~flavell/tablejob.html, - which stopped working in conjunction with the 1997-05-21 mods (see below) - for treating TABLEs as DIVisions to support ALIGNment attributes in TABLE - markup. The PRE-in-TABLE-block HTML kludge was not affected by those mods - but works only with the TagSoup parsing mode. - FM, KW -1997-11-12 -* Made handling of the 'x' in hexadecimal character references (&#xH;) - case insensitive, as for the "alphabetic digits" (a-f, A-F). - FM -* Added a LINKN command key in the line editor, mapped to Ctrl-V, for - invoking the F_LINK_NUM prompt when in form text fields. Ctrl-V is - still a dead key under other circumstances in the line editor. - FM -* remove options --with-lss-file and --with-cfg-file, since the corresponding - files will always be installed under $(libdir), reported by Henry Eric - Nelson (HN). - TD -* modify configure script and makefile templates to permit builds with the - --srcdir option, noted by Philippe De Muyter. - TD -1997-11-08 -* Added Unicode support for "DosArabic (cp864)", "WinArabic (cp1256)", - "DosGreek (cp737)", "DosGreek2 (cp869)", "WinGreek (cp1253)", - "DosHebrew (cp862)", and "WinHebrew (cp1255)". Note that we still - have no code for taking DIR attributes, or directionality in general, - into account. - FM -* Mods to handle "cp-#" charset names as synonyms for "cp#", and some - cp# names as synonyms for "windows-#". -FM, KW -1997-11-07 -* Change of LY_SLrefresh() in LYCurses.c as suggested by JED - FM -* add logic to make install-directories as needed. - TD -* remove --disable-char-trans option (ifdef's still remain). - TD -* correct type used in first compile-test for union wait. - TD -* correct order of deletions in "make distclean" rule. - TD -* new versions of macros used to check for ncurses version. - TD -* don't suppress -I/usr/local/include when checking -I/usr/local/include/*, - to accommodate older versions of gcc. - TD -1997-11-06 -* Use erase() instead of clear() in some places, to avoid unnecessary full - screen repainting even for UNIX (and similar) curses. Renamed LY_SLclear - to LY_SLerase, but it is used for erase() and clear() now, so there should - be no change in behavior for slang introduced by this. - KW -* Added new format for lines in chartrans .tbl files: U+NNNN "a string" where - the string can have C backslash-escaped characters. This allows to write - replacement strings with 8-bit characters that won't be garbled when the - .tbl files are transferred in some non-binary way. Note there is no ':' - between the Unicode value and the beginning quote character. - KW -* Changes to HTMLDTD.c (for SortaSGML parsing) and HTML.c (second line of - defense) for dealing with invalid SELECT tags. Also tolerate SELECT - outside of forms. - KW -* Change in HTLocalName for DOSPATH so that it doesn't depend on whether - HTDOS_name returns a pointer to static memory or not. - KW -* Started new file docs/README.defines. Renamed CHANGES to CHANGES2-7, - removed duplicate 2-7-1 entries. Minor changes to INSTALLATION, other - files. CHANGES.chartrans is gone. - KW -* Tweaked color style stuff again. Statusline may behave better. - KW -* Don't use memmove for HEAD in HTNews.c. - KW -* For UNIX, use normal umask permissions, instead of the extra-cautious temp - file permissions, for files saved to disk by the default actions for PRINT - and DOWNLOAD. - KW -* Changes (untested) in the code dealing with reading of compressed files in - HTFile.c, in parallel to the code for other systems. - KW -* Mods to avoid va_start redefinition warnings when building with slang. - FM -1997-11-05 -* Change in LYForms.c to avoid full screen repaint after popup is retracted - for slang. - KW, FM -1997-11-03 -* Internal links code revised. Some details follow, but first a summary - of the basic premises. Links in a document given as href="#fragment" or - href="" (empty, but href attribute is present) mean something different - from href="url#fragment" or href="url" (where url is a non-empty absolute - or relative URL not including a fragment), they are internal links pointing - to an element or a location within the same copy of the document (or to the - document itself, for href=""). In contrast, a URL-Reference with a non- - empty URL refers to a (generally...) external resource. If the "url" - happens to coincide with (or, if it is relative, resolve to) the URL from - which the current document was retrieved, the current document is a - representation of the resource, but not the same thing. In most such cases - we can treat href="#fragment" and href="url#fragment" the same way, i.e. - activating such a link is interpreted as a request to reposition within - the current document; we are using the current document as a cache copy - of the resource (like we would other documents in the memory cache). But - if we have marked our copy as no-cache, it seems more consistent to treat - activation of a href="url#fragment" link as a request for retrieving a - new copy and _then_ locating #fragment in it, as we do for "any-other-url - #fragment" if we have cached a document which represents "any-other-url" - and which is marked no-cache. Following a href="" link should just result - in repositioning to the start of the document, not in a new retrieval for - no-cache documents. - If the current document is the result of a POST submission, there is in - general no way to refer to its underlying resource with a URL, since there - is no URL notation for "url+post_data". Internal links can be used within - the context of this document, but there is no way to hyperlink to it or - parts of it from "outside". A link to a href="url" or href="url#fragment" - target should always imply a GET retrieval, whether it occurs within a - document from a POST submission or not, for consistency. - This understanding also applies to other than <A href=..> uses of URL- - References in documents, for example the link implied between a USEMAP - attribute and a MAP element; but not to all uses, for example a FORM's - ACTION requires an external resource and not an internal reference, so - ACTION="" is resolved to an absolute URL (using a base URL if one is - given). - The semantics for URL-less URL-References are given in Internet Draft - <http://www.ics.uci.edu/~fielding/url/draft-fielding-url-syntax-09.txt>, - including that "Traversal of such a reference should not result in an - additional retrieval action." No comparable prescriptions are made for - references which have a URL, in particular it is not stated that they - should be treated as equivalent when the URL coincides with or resolves - to the current document's retrieval URL. - The changes to the Lynx code attempt to implement what is outlined above, - by keeping track of how a link destination was originally specified. href= - "#fragment" and href="" links are still "resolved" into a "url#fragment" - and "url" form, for use internally, and if an explicit NOCACHE action is - requested, and for generating lists of links etc., and in general for use - outside of the context of the current document. - To the best of my knowledge they do not lead to unwanted (or misdirected) - resubmission of POST content without prompting the user for confirmation - (although the prompt texts probably need improvement). - KW -* The notion of the context of the "current document" is extended, so that - auxiliary LYNXIMGMAP documents generated by Lynx are within the scope of - the underlying document, i.e., the document containing the MAP and AREA - elements. Although they are treated as separate documents for display - and internal handling, following links between the underlying document - and its LYNXIMGMAP documents will result in display from cached data - (if available) even for no-cache documents, if a fragment-only (or empty) - URL-Reference was used in the HTML. This includes the link generated for - pointing from the IMG to the LYNXIMGMAP if the USEMAP attribute value was - was fragment-only; the LYNXIMGMAP is normally regenerated from the list - of MAP and AREA elements kept internally when a link to it is activated. - (Note that a LYNXIMGMAP screen is still not reloaded from external sources - even when RELOAD or NOCACHE keys are used, if data for the MAP is found - in the internal list; but that reloading the underlying document will - refresh the internal lists.) - KW -* List Page screens are also in the context of the underlying document, so - that internal links in the underlying document can be listed and activated - from the List Page. When following an internal link from a List Page, it - is not pushed on the history stack (similar to the History List Page), to - reduce the chance of confusion when walking back through history. - KW -* LYNXIMGMAP and List Page auxiliary documents can now be associated with - POST data. This does not mean that the data is posted to a "LYNXIMGMAP:" - or "file:" URL, which is impossible; but that the underlying document is - associated with the POST data. This way these aux documents can still - have links regarded as "internal" pointing to the document of which they - are logically a part, keeping track of what POST data are applicable if - several form submissions have occurred. Normally the underlying document - should be in the document cache when such a link is activated, so that - resubmission of the POST can be overridden. If it is not found, - resubmission may happen after user confirmation. Although the POST data - content is not shown on such aux pages, it can be inspected with the INFO - ('=') command. Note that the association of LYNXIMGMAPs and List Pages - with POST data automatically excludes them from various operations which - may otherwise be possible, such as bookmarking or inclusion in the - 'V'isited Links Page. Note also that such aux pages are treated internally - as different documents from their POST-free counterparts with the same - address, which might be generated for example after typing the address - at a 'g'oto prompt while viewing a different text. It may be possible to - generate confusing situations, but regenerating the displayed data (by - invoking 'L'IST again, or by following a LYNXIMGMAP: link) will always - show the currently applicable information. - For image maps, the change implements link-following capabilities which - come naturally to graphical UAs, which can handle IMG USEMAP and the - corresponding MAP elements from the same data stream as objects within - the same document instance. - KW -* To implement the above, MAP and AREA information from a POST response is - not kept in the global list shared by all other documents, but in a separate - list specific to the underlying (containing) document and the POST data. - The specific lists are managed with the underlying document's anchor - structure so that they can automatically expire after the anchor is removed - from memory and will not stay around and accumulate until session end. - KW -* POST data is kept in mainloop when following an internal link, but is now - always dropped for links that were given with a URL. This removes the - limitation by which a link in a POST response to the URL of the POST - submission script would be inappropriately converted to a resubmission of - the POST data. (example: search form from <http://www.marshall.edu/htbin/ - calendar>) - KW -* Changes to the PREV_DOC handling in mainloop. When encountering documents - that may need to be reloaded while walking back in history, because they - have POST data associated and are not marked "safe" and are either not found - in the memory cache or -resubmit_posts has been set, the user is prompted - for confirmation as before; if the reply is 'n' the document will be skipped - but if the user cancels with ^G the walkback operation is cancelled and the - currently viewed document remains loaded. Some of the aux documents which - can new be associated with POST data may be automatically skipped if their - document structures are not any more in memory. - KW -* When following a link marked internal from a List Page and confirmation is - required, ^G may also have the different effect of cancelling the operation - while responding 'n' may attempt to follow the link as a GET request (i.e. - with POST data dropped). - KW -* In some situations, automatic popping from the history stack in mainloop - after getfile fails to load a new document could lead to resubmission of - a previous POST request without prompting. This is now avoided by jumping - to the code handling PREV_DOC. - KW -* Use new LYinternal_flag variable for propagating info to HTAccess, rather - than overloading LYoverride_no_cache. - KW -* Tweaks for bad form tag soup with crashes on unclosed SELECT. Changes in - HTML.c and GridText.c to prevent memory leaks resulting from insanely - placed or unclosed form field tags, hopefully not introducing other - problems... - KW -1997-11-02 -* Changes in HTParse's scan to leave additional '#' characters alone after - the first has been found when scanning (from left) for fragments, and - to apply the "don't treat '#' as start of a fragment for some kinds of - URLs" hack only when the '#' will become part of what has been scanned - as a path. NNTP articles with more than '#' in the message-id are now - accessible with the "news:" or "nntp:" schemes. We should actually always - escape when generating URLs and unescape when parsing them instead. - KW -* Changed HTUnEscape to leave '%' alone if not followed by two valid hex - digits. - KW -* Allow the HEAD key and -head and -mime_header flags for "lynxcgi:" URLs - and for "news:" and "nntp:" URLs that specify a single news article. - KW -* Change to writing of POST data in LYCgi.c, to close file descriptor after - done writing and before reading as suggested by mhw@bcs.org.uk (Mark - H. Wilkinson), and to check status from the write() call and retry if - needed. Note that the code is not appropriate for handling large - amounts of POST data, since it still first does all the writing and - then all the reading. - KW -1997-11-01 -* Added support for presentation of text/plain files in SOURCE ('\') mode, - homologously to text/html files, rather than treating the command as a - synonym for 'd'ownload when viewing a text/plain file. Note that if the - text/plain file has no long lines, the display of it will not change, - but otherwise, the long lines will not be wrapped in SOURCE mode, and - thus can be 'p'rinted without line wrapping. One still should use - 'd'ownload for a faithful copy of the file, i.e., without charset - conversions and expansions of TABs. - FM -1997-10-30 -* Get numbering of links on List Page right, by faking hidden links for - form fields which get counted but are not selectable. - KW -* Allow LYNXHIST: links in List Page since the History Page may get - 'L'isted... - KW -* Mods of HTML.c parsing to close any open Anchor or emphasis elements - at the starts of TABLE elements, as the Big Two's TABLE handlers appear - to do now. - FM -* Tweaks of charset handling via META elements and CHARSET attributes. - FM -1997-10-29 -* Tweak of SortaSGML DTD for insane HTML with FORM start before HEAD. - KW -* Prevent memory leaks from HTChunks for option and textarea with very - bad markup, added TRACE and BAD_HTML_USE_TRACE warnings for those. - KW -* Don't call tigetnum("ncv") for _WINDOWS - BD -* Added Unicode tables for the "DEC Multinational", "Macintosh (8 bit)", - and "NeXT character set" display character sets. - FM -1997-10-28 -* Disable setting of the `reloading' flag in HTLoadDocument which would - generate no-cache headers for request where this is not appropriate. - KW -* Memory leak for first OPTION in SELECT removed. - KW -* Changed HTDOS_name to not return pointer to static area. - Binh Do - <bdo@mailman.epnet.com> -* Changes to INSTALLATION file. - HN -* Fix in HTMIME.c to recognize Content-location. - KW -1997-10-27 -* Don't disable FORMs that have INPUTs with TYPE="file" or TYPE="range" - since those fields may be optional and the rest of the FORM may be - valid to submit. - FM -* Updated links to www.w3.org in help files. - KW -* Some changes for DOS compilation. - DK -* Changes to INSTALLATION file. - HN -* Tweaks of internal links stuff. - KW -* Allow HEAD on URLs starting with LYNXIMGMAP:http by stripping the - prefix. - KW -* Reverted LYCheckForCSI() to previous incarnation. - KW -1997-10-26 -* If compiled with -DDONT_TRACK_INTERNAL_LINKS, behavior with respect to - internal links as in FM's code. - KW -* Some chartrans tweaks. - KW -1997-10-25 -* Changes to INSTALLATION file. - HN -* Make temp file names conform to 8+3 naming convention for DOS, and - give LYNX_TEMP_SPACE priority over TEMP and TMP for DOS. - DK -* Create temp file names with '-' char as separator between pid and - sequential number for non-8+3 systems, to prevent (unlikely) - collision. - KW -1997-10-24 -* Change in HTML.c to use the base (rather than current document, if the - base differs) in all cases for form ACTIONs (i.e., if the ACTION is - empty, or has a lone fragment, or an ACTION attribute is not included) - as specified in the -07 to -09 Fielding URL drafts. - FM -1997-10-23 -* Fixed a few typos and glued together a few URLs to make it easier for - folk to cut and paste them, in the new INSTALLATION file. - LV -1997-10-22 -* Many locations of files changed, about_lynx/ directory and references to - aboutfilepath removed, userdefs.h reorganized, changed README, new - INSTALLATION file, doc changes, some doc files removed. - HN - (Removed paragraph in README which doesn't apply yet, some files still - not done - KW) -* Patch to WWW/Library/djgpp/makefile - WS -* Added entity names from HTML 4.0 draft to extra entities in HTMLDTD.c - KW -* Understand lists in ACCEPT-CHARSET attributes. Added a list of forms - to GridText structure (currently underused). - KW -* Don't try to use box drawing chars in UTF-8 display mode. - KW -* Changed chartrans mechanism (UCdomap.c, makeuctb.c) so that the "default" - translation table is now used as a fallback for other translation tables. - This also applies to display character sets which do not have a chartrans - table file but are listed in LYCharSets.c. Changed syntax of table files - (see src/chrtrans/README.format), added a keyword to disable using the - fallback. Currently def7_uni (corresponding to "7 bit approximations" - and the MIME charset "us-ascii") is used as default table, as before; - but previously the default table didn't have any real meaning. - Conceptually every translation table (unless it disables fallback) is - extended as if it included all the replacements from the default table. - Note that mappings for some characters in the default table file still - differ from the old mappings given in LYCharSets.c, and what is displayed - e.g., for umlaut characters may not be consistent, this still has to be - sorted out. It may just have become more visible now. - KW -* Tweaks to some replacement strings in def7_uni.tbl; contributions of - more useful strings would be welcome... - KW -* Removed mappings for invalid chars from some chartrans files, removed - Ethiopic chars from iso01_uni.tbl. - KW -* Some other corrections and tweaks for chartrans mechanisms. - KW -1997-10-21 -* Fixed handling of Control-D (delete character under the cursor) in the - line editor when the cursor is at the end of the line instead of on a - character in the string being edited. - FM -* revised tests for wait/waitpid/union-wait. - TD -* correct/update handling of default prefix in CF_WITH_PATH macro, used for - parsing --with-cfg-file and --with-lss-file options. - TD -* add uninstall target to top-level makefile. - TD -* remove redundant install options from $(INSTALL_DATA). - TD -* add configure --with-lss-file option - TD -* minor cleanup of gcc warnings, ifdefs. - TD -1997-10-20 -* Mods in the CSO/PH gateway to set the anchor's safe flag to TRUE so the - user need not be bothered with confirmation prompts on resubmissions of - the search form. - FM -* Tweaked the break point setting code in GridText.c for CJK di-bytes - so that one is set after a recognized "ESC(" ISO 2022 escape sequence - has been found. - FM -1997-10-16 -* Tweaks to recognition of Japanese (better recognize x-euc-*), and to - the mechanism in GridText.c keeping track of which encoding is used for - Japanese. The state for this is now reset on explicit '\n' and '\r' - received by the HText object in addition to space chars. - KW -* Tweaks in HTTP.c to avoid access to uninitialized memory and pacify - paranoid dbx. - KW -* Try to more consistently remember the charset in effect for a document - when going to SOURCE view, using new LYUC{Push,Pop}Assumed functions. - Note that this is only in effect immediately when switching to SOURCE - view; any later reloading while within SOURCE view (including those - caused by RELOAD, RAW_TOGGLE and other keys, or by Options Screen changes) - may still revert to the usual assumption about charset, which means a - charset specified in a META tag may be forgotten at that point; this may - be considered a feature... - KW -* Refer to TagSoup and SortaSGML parsing (coined by FM), rather than "old" - and "new" DTD. - KW -* Made some of the changes concerning and removal and location changes of - files proposed by HN. - KW -* Restored LYCheckForCSI example function to its previous form, with a check - added and comments added. - KW -1997-10-15 -* Changed the order of display character set entries for the options menu - popup. "ISO Latin 1" and its "DosLatin1 (cp850)" and "WinLatin1 (cp1252)" - equivalents come first, then the system-based charsets (note that I - changed "IBM PC character set" to "DosLatinUS (cp437)"), then the CJK - and Vietnamese charsets, then "Other ISO Latin" (probably don't need - that one any more), then the known ISO 8859-# charsets with their - homologs (e.g, Dos and Win Cyrillic and KOI8-R) in groups, then - "UNICODE UTF 8" and the Unicode mnemonic charsets. - FM -* Various fixes for color style code, should prevent memory corruption. - KW -* Some LYCharUtils.c cleanup. - KW -* Added some of the changes from fotemods to SGML.c, especially handling of - ‌ as allowing a line break, and conversion to UNICODE UTF-8. - KW -* Mods in code handling mailcap lines, to avoid access to invalid memory. - KW -1997-10-12 -* Added LYLeakSACopy and LYLeakSACat to LYLeaks.c. Running Lynx compiled - with LY_FIND_LEAKS defined will now give the source locations where - StrAllocCopy and StrAllocCat are used, if those create leaks. Added - missing include of LYLeaks.h in LYCookie.c. - KW -* More heavy tweaks in LYCharUtils.c. Associated changes in HTChunk.c - (new functions), small change for -raw (in connection with attribute - values) in SGML_character. LYCharUtils.c is still a work in - progress... - KW -* Tweaks to allow some chars as data input (0x97, 0x9b, 0xa0) if the - current display character set seems to have those values as printable - characters (by testing LYlowest_eightbit[]). - KW -1997-10-11 -* Mods in HTFTP.c to recognize NetPresenz server (variation of AppleShare - claiming to be Peter Lewis server?, try current ftp://www.unicode.org/), - and to show server's identification from initial greeting on info - screen for FTP URLs. Other cosmetic changes in HTFTP.c. - KW -* Fixed various memory leaks. - KW -* Some more minor cleanup tweaks for color style code. - KW -* Avoid unnecessary pauses if TRACE is on and a Trace Log file is in use. - KW -1997-10-10 -* Renamed lynx_help/keystroke_commands/ directory to lynx_help/keystrokes/ - for the benefit of DOS, and changed references accordingly. - KW -* Changed parsing of command line options for -lss file, it should now - be used and override the default from userdefs.h or environment variables - as advertised. - KW -* More tweaks and cleanup in HText_SubmitForm. - KW -* Code to recover from memory exhaustion, sometimes. The requests for - dynamic memory which heuristically most often fail for lack of memory - when rendering large documents are the calloc() calls in split_line. - They are replaced by LY_check_calloc() which has the same calling - conventions as calloc() but additionally checks if "enough" memory is - available for the requested amount plus some margin and tries some - remedial action if this is not the case. The additional safety margins - are required to make it likely that other allocation requests in other - places of the program won't fail before the next check. The actions - which may be taken in order to avoid exiting if low memory is detected: - (1) Try to unload cached documents (other than the one currently being - loaded), until we seem to have enough memory. (2) If that fails (or - there are no other documents cached in memory), try to fake a 'Z' key - interruption; this will have the same effect as if the user had pressed - 'Z' so it will only detected if some other part of the program tests - HTCheckForInterrupt() and acts on it. (3) If this seems not to be - sufficient to stop loading, halt appending of normal text data to the - document structure (A warning *** MEMORY EXHAUSTED *** is appended - instead). - KW -* A tweak of color style memory allocation. - KW -1997-10-09 -* Some more tweaks from FM for VMS build - KW -* For DJGPP compilation, src/chrtrans/makefile.dos - WS (Bill Schiavo - <Wschiavo@concentric.net>) -* Some cleanup in Hext_SubmitForm (needs more). Start using ACCEPT-CHARSET - (doesn't recognize list yet, only recognized if on the INPUT field that - causes submission). - KW -* Added two test files for iso-8859-2 charset. - KW -* Tweaks in LYMainLoop.c for various keys that page up, to better preserve - keep the current link selected if possible and to correct a glitch with - UP_LINK. - KW -* Reorder text/html and text/plain to the beginning of HTPresentations list, - so they will be found more quickly and will appear at the beginning of - Accept request header fields. - KW -1997-10-08 -* add logic to implement mouse button 2 "previous document" for - ncurses configuration. - TD -* add dependencies on 'lynx' to top-level 'all' and 'install' rules - in makefile.in - TD -* add osf4.0 to special case compiler options using -g3 in place of - -O -g, for Heikki Kantola <hezu@iki.fi>. - TD -* correct some of the uninitialized-variable warnings. - TD -* Removed the compilation of the old libwww-FM HTAlert.c module for VMS, - as previously removed for Unix. - FM -* Added comments and tweaks of build.com, build-slang.com and libmake.com, - (and a complementary tweak of tcp.h) to make more clear how compiler - definitions and compiler and linker options can be added. - FM -1997-10-07 -* Changed PROBLEMS file for ^Z and for "forgetting emphasis of link text" - problem (which shouldn't occur any more). - KW -1997-10-05 -* Changed SGML.c parsing of unrecognized and invalid start tags. If the - '<' character in HTML is followed by a 7-bit letter character, we now - do tag parsing even if the element name is not recognized, instead of - going to 'S_junk_tag' mode, so that a '>' embedded in an attribute value - (which may also be part of a CJK character's encoding) will not - prematurely end the tag. (But "soft double-quotes parsing" mode is - recognized.) Treat a '<' followed by most other 7-bit chars as data, - i.e., recover it and the following char. - KW -1997-10-04 -* Corrected check for empty string at beginning of LYUnEscapeEntities. - KW -* Squeezed option for "Assume charset if unknown:" into Options screen. - It is selected with a control char (^A), is only available in Advanced User - mode, and the value is currently not saved into .lynxrc with '>', i.e. - for a persistent change lynx.cfg has to be modified (or use an alias or, - for DOS, a batch file to call lynx with -assume_charset=...). The - interaction with the Raw M(O)de setting may be confusing (or confused :) ), - and it is possible to set nonsensical values that have no effect. - KW -* Changed order and criteria of transformation attempts in HTPlain.c to - be more like SGML.c. For plain text KOI8-R would use 8-bit stripping - to early. HTPlain_write still is too different from SGML_character... - KW -* Reinstate the slash after special interpretation of /~ at beginning of - file URL path for DOSPATH - DK -* Changed SGML_character to not try to convert attribute values to UTF-8 - if HTCJK is in effect (arrggh!) - KW -* Changed effect of -raw / '@' for CJK display character sets: it now toggles - the effective charset assumption between that specified with ASSUME_CHARSET - or -assume_charset (or iso-8859-1 if none given) and the charset that - corresponds to the selected display character set, as for non-CJK. An - exception is made if both charsets are CJK charsets, so that the toggle - will still have the function of toggling CJK mode on and off. Explicitly - specifying a CJK charset as assumed is currently not very useful, since we - cannot translate from that to other character sets. - KW -* Oh, by the way: compilation without defining EXP_CHARTRANS won't work any - more. Regard #ifdef EXP_CHARTRANS as some strange kind of comment for - now, until it goes away. - KW -* Write comment at top of .lynxrc file to make clear that it is different - from lynx.cfg, suggested by LV. - KW -1997-09-30 -* Changed order of display character sets on options screen a bit, and - corrected charset listings in lynx.cfg and userdefs.h files - KW -* Added comment on lynx.lss in userdefs.h, moved it. - KW -1997-09-27 -* Made TRACE messages which correspond to BAD_HTML_USE_TRACE warnings stand - out more by decorating them with ***** characters, so that users who - follow the BAD_HTML_USE_TRACE advice can more easily find the relevant - messages. - KW -* Reworked LYUnEscapeEntities() while loop into a (hopefully) more - understandable and consistent state-based switch, and integrated - LYUnEscapeToLatinOne functionality. - KW -* Non-ASCII characters in URLs and similar strings encountered in the HTML.c - processing (previously handled by LYUnEscapeToLatinOne) are now generally - URL-encoded, instead of doing this just for 8-bit characters which are - the result of entity expansion. There is no clear standard definition what - non-ASCII characters in URLs in HTML attributes (HREF etc.) actually mean, - especially if the transmission character encoding is something else than - iso-8859-1. Leaving them as the raw byte values as received runs against - the HTML i18n view that the transmission encoding is distinct from the - document character set and has to be (conceptually at least) decoded before - SGML parsing. It also won't work in general for entities that expand to - to Unicode characters which cannot be expressed at all in the currently - effective (or assumed) charset, and would lead to problems with displaying - URLs on the statusline or representing them in auxiliary screens or bookmark - files. So now we try to first transform to the document charset "as usual" - (undo the transmission encoding), then translate the Unicode value into a - sequence of (one or more) byte values which are then URL-encoded. Since - character values > 255 cannot be expressed in a byte, always use UTF-8 - for them. It may not be what the author intended, but should be at least - consistent between internal (fragment) HREFs and NAME (or ID) attributes - in the same document or set of documents. Since this is dealing with - bytes currently disallowed in URLs, it falls under error recovery. But - the handling should be roughly in line with current Internet Drafts - (draft-masinter-url-i18n-00.txt, draft-duerst-query-i18n-00.txt, - draft-ietf-ftpext-intl-ftp-02.txt). - For character values < 256 (but > 127) this isn't currently consistently - done, we may still be URL-escaping the byte value without UTF-8 encoding -KW -1997-09-25 -* Integrated the attribute and form field translation stuff from separate - code line. This is still a rough attempt. Needs testing and refinement, - for various character set situations, expect glitches and bugs. - KW -1997-09-24 -* Removed the compilations of the old libwww-FM HTInit.c and HTFWriter.c - modules for VMS, as previously removed for Unix. - FM -* Added other changes from FM's feedback for VMS. - KW -* Fixed a bug in the SGML unescaping of OPTION values. - FM -* Fixed a bug in the SGML unescaping of TEXTAREA text. - KW -1997-09-23 -* Fixed file 'E'dit command from dired directory listing, which I had - broken in 2.7.1ac-0.69. - KW -* Added -width=NUMBER option to specify line width for non-interactive - formatting (-dump output). Also used by -preparsed source mode. - KW -* Changed suffix mapping mechanism to deal with "real" content-encoding - parameters (gzip, compress) in addition to 7bit, 8bit, and binary. Added - a new field for brief descriptive text, so that the MIME type doesn't have - to be abused for this purpose, but left most settings in HTInit.c unchanged - for now. - KW -* Changes in HTFWriter.c and HTFile.c so that we don't forget the file type - and encoding information we already have for a compressed file when passing - control to HTLoadFile (possibly after uncompression). - KW -* Introduced FNAMES_8_3 symbol (for DOS 8+3 file system), and HTML_SUFFIX - which should be defined as ".htm" for DOS and ".html" otherwise. Various - tweaks to deal with systems with 8+3 restricted filenames, in general and - in connection with uncompression. - KW -* Applied diffs from FM for VMS, compared with recent fotemods. - KW -1997-09-21 -* Use 0.01 rather than 0.001 as the q value for inserted iso-8859-1 and - us-ascii charset parameters in Accept-Charset headers. - FM -* Added internal buffering of I.value elements in HTML_start_element() - of HTML.c. - FM -1997-09-20 -* Show HTTP header for all 2xx status codes (including 204-206) if requested - with HEAD or -head. - KW -1997-09-19 -* Modified the Unix "strange character" filter in exec_ok() of LYGetFile.c - to allow '+', '&' and '=' characters. - FM -* minor ifdef/declaration fixes required to build on IRIX 6.2, - SunOS (K&R) and VAX C. - TD -1997-09-18 -* Try again after interrupted waitpid() in LYLoadCGI(), as in LYExecv() - KW -* Tweak in LYKeymap.c to bypass the isalpha() test for non-ASCII values, - including values > 255 mapped to arrow keys, etc., when generating the - 'k'eymap display. - KW -* Changes to prevent many (but not all) compiler warnings about `const'. - Not that this is different from TD's recent changes. Also some other minor - tweaks relating to (gcc) compiler warnings. - KW -1997-09-17 -* Mods in GridText.c to use HTEscapeSP() for space-to-plus conversions of - name fields, and not just value fields, in submitted form content. Note - that some CGI scripts may still be doing plus-to-space restorations only - for value fields, and only hex unescaping for name fields, while others - may not be hex unescaping the name fields, so we may as well follow the - specs fully (and cross our fingers :). - KW, FM -* merge symbols 'has_color' and 'lynx_has_color' to simplify ifdef's, - and correct a problem building color-style configuration. - TD -* add configure symbol for ifdef'ing presence of waitpid, which - was stopping build on HP-UX. - TD -* correct the symbol that is defined by CF_SIZECHANGE test, noted - by failure to build SCO version after making an include for - <sys/ioctl.h> ifdef'd according to configure test. - TD -* corrected check for broken (pre-1.9.9g) ncurses versions so that - they can build with color support. - TD -* cache state of CF_NETLIBS so that rerunning configure will yield - the same results for network libraries. - TD -* Add configure test for HP-UX -lHcurses library. - TD -* Minor adjustments to names of configure-script variables, to make - them the same as other programs (e.g., tin-unoff). - TD -1997-09-16 -* Added code to JKT's and KW's mods in LYPrint.c to also handle VMS, i.e., - set the document's title as a logical on VMS (can be accessed via - f$trnlnm("LYNX_PRINT_TITLE") in scripts). - FM -* Smaller cleanups here and there - FM, KW -1997-09-15 -* Recover from bad sequence "<=" in SGML.c by outputting those characters - literally. - KW -* Try again after interrupted waitpid() in LYExecv(). - JED -* Some tweaks in new DTD, some doc typo corrections. - KW -1997-09-13 -* Changes in LYConvertToURL() for better handling of the case when the - pathname of the current directory (when Lynx is invoked) contains - unusual, URL-reserved characters (especially '#') and we test for - a relative but URL-encoded path. (no change for VMS) - KW -1997-09-13 -* Changes in LYStrings.c to enable keypad() processing for non-NCURSES - if HAVE_KEYPAD is defined. - KW -1997-09-12 -* Correct mismatch/omission of HAVE_TYPE_UNIONWAIT symbol from - change for wait vs waitpid. - TD -1997-09-11 -* Tweaks in HTMLGen.c for display of special characters and line breaking - with -preparsed. - KW -* Got rid of use of underlining together with reverse for non-current - links for (n)curses if color is not used. - KW -* Small HTMLDTD.c changes for new parsing. - KW -* Change in SGML.c to always recognize SOFT HYPHEN when given as ­. - KW -1997-09-10 -* Modify CF_WITH_PATH to allow substitution of --libdir and other - configure options pathnames, e.g., for --with-cfg-file. - TD -* Include lynx_cfg.h in userdefs.h to resolve redefinition reported by - AAC. - TD -* Remove Ultrix/sony_news -specific ifdef's for curses headers, - replace with configure-tests. - TD -* Remove AIX/NeXT/sony_news -specific ifdef's for wait vs waitpid, - replace with configure-tests. - TD -* Add/use CF_HELP_MESSAGE macro to visually break down the very long - help message into sections. - TD -* Move the development options to the beginning of the configure script, - to facilitate adjustment of compiler options (especially for Ultrix) - to reduce the number of spurious warnings from miscombining -g/-O - options. - TD -* Correct misplaced assignment to cf_cv_ncurses_header in configure.in, - which caused misconfigure against vendor curses, reported by Hynek Med - (Ultrix) and Roger Hill (HP-UX 10.x). - TD -1997-09-09 -* Added arguments to the multinet_htons() and multinet_ntohs() declarations - in tcp.h. - FM -* Tweak of the this_MIMEcharset[] and this_LYNXcharset[] checks in - makeuctb.c. - FM -* Replaced the index() and bcopy() with strchr() and memcpy() in the - putenv() for NeXT in LYUtils.c. - FM -1997-09-08 -* Added a -preparsed flag, to be used with -source or with SOURCE view. - When invoked with this flag, show HTML text as it is output from the SGML - parsing stage, regenerated via HTMLGen.c functions, rather than the usual - more raw rendering (in SOURCE view) or the original byte stream (as with - the -source flag, possibly with BASE information prepended). Lynx will - attempt to wrap the text to screen width (or 80 cols for the -source flag), - but will not always succeed. Unrecognized tags and attributes as well as - comments are dropped, attributes reordered, missing end tags supplied, - abd other changes made, showing how Lynx internally treats the document's - structure. This is probably most useful for debugging (of either Lynx's - parsing or of HTML documents, although a real validator should be used for - the latter!). It can also be instructive to switch the DTD parsing mode - (with the ^V key) while viewing preparsed source. - Note that this doesn't work so well now with character translations and - entity expansion don't work well now, showing some of the same problems - which appear for rendered documents and dropping some characters. Making - those problems of parsing more directly visible was one of the motivations - for this flag. Also note that META tags which may contain charset info - are never interpreted when using -source (with or without the -preparsed - flag), but when interactively switching to SOURCE view, Lynx MAY remember - that charset info from the previous non-SOURCE full parsing (again this - applies with or without -preparsed); the INFO screen should always show - the assumption currently in effect. - KW -* Updated some HTMLGenerator functions to use line wrapping logic found in - newer libwww versions, and further mods in HTMLGen.c. - KW -* Tweaks to use of chartrans stages, should now better preserve charset - info from META tags even in compressed HTML files. - KW -* Fixed a problem with LYCheckForCSI which could lead to crashes. - KW -1997-09-06 -* Modifications to allow the Lynx lynxcgi feature to process - PATH_INFO in addition to QUERY_STRINGS in URLs. DOCUMENT_ROOT - may be set by the user in lynx.cfg and is then passed as well. - If DOCUMENT_ROOT is set, then PATH_TRANSLATED is calculated and - passed as well. - JKT (J Kevin Ternes <jkternes@mindspring.com>) -* Changes to LYPrint.c to put the variable LYNX_PRINT_TITLE - into the system()'ed environment for use by post-Lynx, pre-lp - formatting scripts. LYNX_PRINT_TITLE is simply generated by - calling HText_GetTitle(). - JKT -* Corrections to JKT's mods (to avoid memory leaks etc.). Avoid - unnecessary stat() calls. Other fixes in LYCgi.c. Make - setting of HTTP_ACCEPT_CHARSET actually work. Now URL-unescape - the path in lynxcgi URLs before doing anything with it. - Better logic for when to check for restrictions, the previous checking - for !reloading could be easily circumvented. Also check whether - the full path including a possible PATH_INFO passes the restrictions - test by exec_ok(), to catch "../" segments. Don't try to handle - a non-executable lynxcgi URL as a file URL if there was a PATH_INFO - part, it gets too confusing. Strip '#' fragments from the lynxcgi - path, but leave the interpretation of '#' characters after a '?' as - before so that they are still regarded as part of the query or search - string. If PATHINFO is present, unescaped '#' characters in it will - still be rejected by exec_ok(). - KW -* added a bit of text about running ./configure to INSTALLATION - file - David Combs (<dkcombs@netcom.com>), KW -* Added a translation table for Vietnamese (VISCII), and associated code - changes. See the file viscii_uni.tbl. - KW -1997-09-05 -* Mods in LYGetFile.c to retain a fragment on redirection if the redirection - URL does not include a fragment. - FM -1997-09-04 -* Correct ifdef'ing for getbkgd function calls. - TD -* Correct ifdef'ing for remaining inline chmod calls. - TD -* Consolidate various logic for opening secure files into utility - functions, correcting portability problems as well. - TD -* Add configure option --with-cfg-file to override default location of - Lynx configuration file (requested by Laura Eaves). - TD -* Strip -g option from CFLAGS for the non-debug version of Ultrix - configuration (requested by Hynek Med). - TD -* Add configure test for HP "color" curses (noting that this cannot - possibly comply with XPG4 due to naming conventions, we'll expect - other problems with it). - TD -* Add checks to configure test for COLOR_CURSES to work around bug - report for HP-UX. - TD -* Don't cache configure options except where essential (e.g., the - setting of 'screen'). - TD -* Change some configure options to disable/enable for consistency. - TD -1997-09-03 -* Tweaks in HTML_put_string() and LYUnEscapeEntities() to deal with line- - breaks within attributes more consistently, and more independently of - which convention is used (CRLF, CR, or LF). - KW -* Tweaks to prevent a few compiler warnings. - KW -* Tweaks of the iso06_uni.tbl and iso08_uni.tbl files now compiled in. - Note that a replacement character or string to replace invalid or - unrecognized characters can be defined by mapping the Unicode value - U+FFFD, which is done here (for testing, and because these two charsets - have a lot of undefined code points). Also some mods in default 7-bit - table for some Hebrew characters and points. - KW -1997-09-02 -* Mods to include "ISO 8859-6 Arabic" and "ISO 8859-8 Hebrew" in the display - character set options (Note, though, that Lynx presently has no code to - deal overtly with non-Latin directionalities.). - DK, FM -1997-08-31 -* Mod of HTMIME.c to ignore any Content-Encoding header with a value of - "identity" (case insensitive). Shouldn't happen, but better safe than - sorry. - FM -1997-08-28 -* Correct a quoting error in CF_RECHECK_FUNC macro. - TD -1997-08-27 -* Further refine/correct configure macros for finding network and curses - libraries, adding CF_RECHECK_FUNC to simplify CF_NETLIBS. - TD -* Rename #define for NCURSESHEADER to HAVE_NCURSES_H, for consistency. - TD -* Add-back test for -lm to support slang shared libraries. - TD -* Modify test for disentangling ncurses library from mytinfo on FreeBSD - to workaround linker limitation. - AAC -1997-08-22 -* Fixed typo in LYReadCFG.c when checking for a NOVICE mode default. - JN - (Note that this and other lynx.cfg defaults which have 'o'ptions settings - are overridden when the 'o'ptions are saved to the RC file. - FM) -1997-08-21 -* Tweak to LYHistory.c to better remember last position on page. - KW -* Eliminated two more MIME types (application/html and text/x-sgml) from - the Accept header generated by default by setting the q-value to 2.0, - since there are more standard alternatives for these names. - KW -* Lower maximum length for generated Accept header lines from 1000 to 252, - to accommodate an incompetent Windows HTTP server. - KW -* Changed order of some functions in LYCharUtils.c (no other change there - yet). - KW -1997-08-20 -* Modify top-level install rule to depend on 'all'. - TD -* Suppress check for ANSI compiler when we are using gcc. - TD -* Use -g3 option in place of -O -g for Ultrix compiler --debug configuration - (request by Hynek Med). - TD -* Drop "-lm" library from slang configuration, since it does not seem to - be used. - TD -* Add configure --includedir and --oldincludedir values to header search - path for ncurses and slang. - TD -* Modify configure checks for ncurses and slang libraries to generate - -L options as required, using new macros CF_FIND_LIBRARY and - CF_LIBRARY_PATH. - TD -* Add substitution for CPP in src/makefile.in so that .c.i rule works. - TD -* Add configure test for lint program. - TD -* Add "make depend" target to generated makefiles. This is intended only - for use in editing/developing, since many of the header dependencies in - chrtrans are generated during the build process and cannot be determined - by makedepend in advance. - TD -* Add configure option --with-zlib. - TD -1997-08-19 -* Tweak of highlight() in LYUtils.c to ensure that split link names with a - soft hyphen are handled identically for slang, VMS curses and Unix curses - when such links are made current. - FM -1997-08-17 -* Use 0.01 rather than 0.001 as the q value for the global wildcard in - Accept headers. - FM -* Put up correct makefile for dos port (oops) - WB -1997-08-16 -* Mini tweaks for the win-dos ports. One fix for the pull down boxes - and the rest mostly maintenance. - WB -* Fixed a bug in LYNews.c which caused overwriting of the first three - characters in the Subject for a followup. - FM -1997-08-15 -* Hack in highlight() to preserve a '-' character at the end of line - within anchor text, which can result from splitting at the position - of a ­ or <SHY> or SOFT HYPHEN character. - KW -* Tweaks in print_wwwfile_to_fd print_crawl_to_fd to output a soft hyphen - character if it is present at the end of a line. For -dump, a raw - ISO 8859 SOFT HYPHEN character may be written if the Display Character - Set (default from lynx.cfg or saved value in .lynxrc) is an ISO 8859 - character set, but this may be overridden with the -raw toggle. - Otherwise represent soft hyphen with '-' as usual. - KW -* Modified the news gateway to try XGTITLE for wildcarded lists of - available newsgroups (e.g., news:bionet.* for the bionet hierarchy, - or news:* for all of its served newsgroups). If that fails, Lynx - retries with the old behavior of using LIST NEWSGROUPS and parsing - the reply itself for the desired groups. Note that LIST NEWSGROUPS - can take a wildcarded argument for some nntp servers, but not all, - so we don't risk it. - FM -* Fixed a bug in HTHandleAuthInfo() of yesterday's HTNews.c which could - yield an infinite while() loop. - FM -* Various tweaks in HTNews.c to HTHandleAuthInfo() and elsewhere, to - keep connections open more often in some common cases of non-fatal - errors, and also avoid trying to use the network socket after some - recognized case of closing by the server. Only based on some testing - with INN's nnrpd, not on any written specs. - KW -1997-08-14 -* Added nntp authorization (AUTHINFO) handling to the news gateway. - FM -* Added a "Loading cfg file '%s'." trace message in LYMain.c to indicate - the absolute path of the configuration (lynx.cfg) file which was used - at startup (if Lynx is invoked with the -trace command line switch). - FM -* Added code in HTFWriter.c to avoid calling HTLoadFile() on the temporary - file which results from decompression of a temporary file created by - HTCompressed(), if this would just result in making a copy of the file - and then invoking an external viewer. Instead the viewer command is - now invoked directly from the HTFWriter_free of the HTCompressed() - stream after decompression. - KW -* Added code in HTFWriter.c, HTFile.c, and HTFormat.c to support reading - of gzipped local files directly, using functions from the zlib library. - Note that gzipped files from remote servers are still first copied to - a temporary file before lynx can process them further, and an external - GZIP_PATH command is still needed at least for passing such files to an - external viewer, as well as for various DIRED_SUPPORT File menu functions. - To activate this code, the symbol USE_ZLIB has to be defined, it is - currently not set by the auto-config script. The zlib library may be - already installed on your system (probably called libz.a or libz.so.1 - or similar, the required header files are zlib.h and zconf.h), otherwise - it is available through <http://www.cdrom.com/pub/infozip/zlib/>, it - appears to support all platforms for which lynx is available (including - VMS, DOS, MS Win32). Note that this library would probably also be - needed if in the future support for the HTTP/1.1 "deflate" content-coding - is added. - KW -* Don't send MIME types in Accept headers whose q values are outside of the - allowed range 0.0 <= q <= 1.0 - KW -* Tweaks in HTInit.c to use the official names for image/png and image/tiff, - but still support the image/x-* forms. - KW -1997-08-13 -* Tweaks of LYConvertToURL() in LYUtils.c and HTParseInet() in HTTCP.c - to deal more coherently with 'z'ap attempts during gethostbyname() - calls. - FM -* Tweaks of split_line() and HText_endAppend() in GridText.c to handle - trimming of spaces from the tails of link names more effectively. - FM -* Expanded the OL nesting depth and type counters to track up to 12 list - depths before punting to the lowest negative number. Note that the - indentations still are limited to 6 nested depths, so use the TYPE - attribute to distinguish OLs with deeper nestings. - FM -1997-08-12 -* Mods of LYMainLoop.c to maintain treatment of a local startfile as - text/html source when it does not have a suffix mapped to that MIME - type and the -force_html switch was used. - FM -* Added .phtml to the default suffix mappings for text/html. - FM -* Mods of LYCurses.c to avoid using /dev/tty arbitrarily for stdin on - Unix when compiling with slang versions greater than 0.99-35, based - on JED's suggestion to lynx-dev. - FM -* Tweaks of HTCheckFnameForCompression() in GridText.c to avoid warnings - from some compilers. - FM -1997-08-09 -* Changed the code of 1997-08-06 which modifies suggested filenames for a - 'D'ownload to be more cautious: don't remove a '.gz', '.Z' etc. suffix - if there is no header indication that we have a compressed file. Not - all servers and gateways (including the internal FTP gateway) detect - and label compressed content reliably. - KW -1997-08-08 -* Mods of HTTP.c so that download requests are converted to presentation - requests for interactive users, and traversal requests are converted to - cancels, when servers return non-success statuses with bodies which - should be displayed to interactive users. - FM -* Added the "DosCyrillic (cp866)" display character set to the chartrans - support, and tweaked the other Cyrillic charset tables. - AAC, KW -* Tweaked MULTI_SUFFIX support in HTFile.c, so that it now somewhat - works. Dunno whether it's useful for anybody. - KW -1997-08-07 -* Tweaks of yesterdays mods in GridText.c. - FM -* Correct storage class of variables in UCMap.h, from -warn-common linker - option. - TD -* Refine configure tests for acs_map, ttytype to accommodate broken linker - on FreeBSD 2.1.5 - TD -* Modify README.configure to indicate the associated definitions for - each configure option, as suggested by Klaus Weide. - TD -* Correct duplicate declaration of Current_Attr, which Linux linker ignores - (reported by Hynek Med). - TD -* Add -G7 option to Ultrix compiler options (request by Hynek Med - <xmedh02@lada.vse.cz>). - TD -* Add include for <sys/types.h> to utmp configure test (reported by Andrey - A. Chernov). - TD -* Add check for FreeBSD library mytinfo (reported by Andrey A. Chernov - <ache@null.net>). - TD -* Modify ./makefile.in so that 'all', the default target, will build the - Lynx executable. The old 'all' target is retained as "make help". - TD -* Modify src/makefile.in to allow development compiles within the src - directory. - TD -* Mask spaces in the bkgd (background attribute) calls for color curses to - make the color-style code work better with SVr4 curses. - TD -* Change workaround for 8-bit acs characters by adding to the initialization - a loop forcing the entries of acs_map[] to 8-bits. - TD -* Many minor tweaks for the DJGPP version by DK - WB -* A rename of about_lynx_dev.html to lynx_dev.html for 8.3 systems - WB -1997-08-06 -* Modified HTMIME.c and LYCharUtils.c so that setting of suggested filenames - via a filename=value pair in Content-Disposition headers and META elements - is not restricted to the file disposition type. - FM -* Mods in GridText.c, LYGetFile.c and HTAnchor.c so that suggested filenames - will have appropriate suffixes when 'd'ownloading, based on whether or not - the file is gzipped or Unix compressed. - FM -1997-08-05 -* Mods of the lead relative symbolic element stripping for http/https - URLs in cases for which they would persist when resolved to an - absolute URL. The latest URL draft is ambiguous about whether this - should be considered an error, and leaves the handling of it up to the - UA. So we now get rid of all lead relative symbolic elements from the - resolved http/https URLs, but no others, and still issue a Bad Partial - Reference statusline message. - FM -* Tweaks of title handling in LYMainLoop.c and LYShowInfo.c so that the - known title, or link name associated with ACTIVATE-ion, form submission, - or a HEAD request, will be used in the INFO ('=') display. - FM, 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 -* The IETF has indicated intent to adopt KW's "status 307" proposal for - dealing with the status 302 problems, so HTTP.c and HTAlert.c implement - that now. The 302 status is "General (temporary) Redirection" which - can be handled as 303 at the UA's discretion, so we do that in all cases, - rather than prompting the user whether to do that when the 302 is for - a POST submission. The 307 (and 305) for POST submissions invokes a - prompt whether to P)roceed or C)ancel, without the Use G)ET option. - The 301 is treated as permanent, normally, but for POST submissions - still is treated as temporary and invokes a prompt which includes the - Use G)ET option, because scripts written to empirical behavior may - still be expecting that (it's virtually never encountered in redirections - of POSTs, though, because the document containing the form typically - is redirected, so the user only sees the form if a local copy has been - made, and it would be best to C)ancel and get a new local copy of the - document from the correct http/https URL, to serve as a BASE for the - form's ACTION). - FM -* Changed the typedef for HTCoord in HTStyle.h from float to int, for - significant speedup of rendering on machines without floating-point - hardware based on DW's, KW's, BL's analyses. Note that this should - be taken into account when/if external style sheet support is added - for page formatting (e.g., for optimum handling by speech synthesizers - and braille interfaces), beyond the current emphasis on colorizing. - FM -1997-08-02 -* The cookie pre-draft has been adopted as an IETF ID, see - ftp://ds.internic.net/internet-drafts/draft-ietf-http-state-man-mec-03.txt - so the code for combining Set-Cookie and Set-Cookie2 headers has been - eliminated in LYCookie.c (see mods for 1997-07-31). - FM -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 -* Avoid traversing the full list of anchors each time when HText_endAnchor() - is called with a non-zero anchor number, if that number corresponds to - the last anchor added to the HText structure. It is is the most common case - that HText_endAnchor() refers to the last anchor, and the only case that - could be handled correctly before FM's changes of 1997-05-13. Avoiding - the loop over the list of anchor can improve loading time significantly, - especially for large files with thousands of anchors. - KW -* Add progress display and 'z'appability for loading of local files. - They are activated only after a few hundred k bytes have been read. - Added define for HT_PARTIAL_CONTENT to HTUtils.h, used in above. - (The WWW Library 5.x uses HTTP-ish status codes like this throughout. - I find it much less confusing than -29998 and so on, and there's no - conflict in this case. - KW -* Minor LYUtils.c tweaks. - KW -1997-07-27 -* Changed code for checks in LYGetFile.c for URL schemes which should - be rejected when received as redirections, added checks for more - schemes. - FM -* Rename top-level Makefile to Makefile.old (it's obsolete) - TD -* Reduce top-level targets to one, 'lynx' - TD -* Move comments describing DirEd to README.configure from makefile.in, - leaving only the definitions that haven't been integrated yet. - TD -* Add configure options to enable/disable DirEd and its associated modes. - TD -* Add configure option to enable/disable char-trans support. - TD -* Correct sense of autoconf'd symbol for size-change. - TD -* Accommodate systems with obsolete ncurses.h in configure tests. - TD -1997-07-26 -* Changed the variable hline in LYUtils.c to hLine, so as not to conflict - with a curses function or macro. - FM -* Fixed an esoteric glitch in highlight() of LYUtils.c which could cause - the last character of a current link to receive WHEREIS search target - emphasis if it happened to be the first character of the target (though - perfection is unattainable, we should strive to achieve it :). - FM -* Changed the default value for STRIP_DOTDOT_URLS (lynx.cfg) to TRUE. - KW -* Made some of the additional checks introduced yesterday in LYMainLoop.c - for invalid links to internal dired URLs more strict, as they probably - were intended. - KW -* Added checks for some internal URL types, which should be rejected - if received in a server redirection, to LYGetFile.c. Maybe more types - should be added to the list. - KW -1997-07-25 -* Map charsets of the form "ibmNNN<...>" to "cpNNN<...>" in UCdomap.c - if not already recognized. Also recognize "windows-1252". - KW -* Compared the handling of 4-way "show color (&)" in the 'o'ptions menu - against FM's implementation, and made some changes (mostly in formatting, - variable and constant names and usage, ordering of statements) to aid - further comparison. The logic is still messy and needs further cleanup - and simplification, but seems to do what it should. Note that this - also handles color-curses, in a (hopefully) reasonable way. Command - line flags -nocolor and (if using slang) -color override a preference - found in the RC file. See updated "Lynx Users Guide" file and the - comments written to the RC file. - Documentation changes adapted from FM's changes. - KW -* Mods of the DIRED_SUPPORT to check the actual URLs of temporary files - rather than just their titles when filtering for spoofing attempts via - external files with internal URLs. Also recast the PRIVATE my_spawn() - to a PUBLIC LYExecv(), so that it can be used by any module (though - presently it's still used only by LYLocal.c functions). - FM -* Tweaks of LYCharUtils.c to handle Set-Cookie HTTP-EQUIVs in META elements - without risking crashes in LYCookie.c or HTParse.c. - FM -1997-07-24 -* Made "show color" option a 4-way choice, if compiled with color support - and if saving of options to a .lynxrc file is allowed. - KW -* Made changing file permissions with DIRED_SUPPORT work again; one of - the recently added checks in LYMainLoop.c was too restrictive. - Added protection to permit_location in LYLocal.c, similar to the changes - of 1997-06-24 to LYDownload.c. - KW -* Generate CANCELLED message when editing of a string value on the Options - Screen has been cancelled (typically with ^G), instead of an - inappropriate VALUE_ACCEPTED statusline. - KW -1997-07-23 -* Tweaks of the strtok() calls for textarea values in HTML.c, so that they - will never be repeated after NULL has been returned, and thus won't cause - linux-alpha to crash. - FM -* Make -nocolor command line flag work if compiled with slang. Note that - -nocolor is strong, it overrides all other reasons that might otherwise - turn color on. - KW -* Tweaks in LYCurses.c to ensure that slang library and Lynx flags for - whether color support is on stay in register. - FM -* Change the default in userdefs.h for SHOW_COLOR to FALSE for USE_SLANG. - Because of the different logic used for LYShowColor in the curses code - vs. slang code, setting SHOW_COLOR to TRUE makes it difficult to invoke - a binary compiled with slang so that color is not used on startup - (except by using -nocolor). - Note that reading show_color from .lynxrc is still commented out. - KW -* There is now a "trailing comment" handler in LYReadCFG.c. It treats '#' - as a comment token only if it is somewhere after the last colon for the - lynx.cfg entry and is preceded by a space or tab. - FM -* Added TT to the Utterly Tag and Attribute Soup group of HTML elements. - FM - (applies only to "old" DTD in this code set, as usual - KW) -1997-07-22 -* Modify curses popups in LYForms.c and LYOptions.c to use background color - from main window - TD -* Ifdef'd out the logic that saves "show color" to .lynxrc, since it is - deemed to be confusing to users - TD -* Merged FM's changes to the "show color (&)" toggle to save to .lynxrc, - support slang, update online documentation - TD -* Add error message to show actual context in error-checking for color - parsing suggested by Filip M Gieszczykiewicz - TD -* Check for/suppress duplicate -lsocket in network library configure - TD -* Remove HP-UX snake2/snake3 targets from makefile.in - TD -* Add configure script case for 'sequent', drop ptx, ptx2 targets from - makefile.in - TD -* Add logic to configure script handling of slang to suppress spurious - -Ipredefined when header location is given in $CFLAGS - TD -1997-07-21 -* Check for lynx_uses_color and LYShowColor in lynx_start_status_color() - and lynx_stop_status_color() of LYCurses.c so that the statusline - will appear reverse (or otherwise highlighted if the terminal doesn't - support reverse), if color support is compiled in but not currently - used. - KW -* Added comments on color usage to lynx.cfg. - KW -1997-07-20 -* Added command-line option "-nocolor" to disable color on terminals that - would otherwise support it. Added options toggle for colors, tested - with ncurses. - TD -* Remove option value from configure option "--with-color-styles". - TD -* Correct background of popups in LYOptions.c - TD -* Add configure check for compiler options to enable prototypes - TD -* Remove IRIX "-cckr" compiler flags. - TD -* Correct whitespace as per LPS: LYCurses.c, LYOptions.c - TD -* Tweaks of LYMainLoop.c in the code controlling how the document is reloaded - due to any changes in the 'o'ption menu which require a new rendering of - the document (but still without forcing a proxy cache refresh when that is - inappropriate; see the 1997-05-26 mods). - FM -1997-07-18 -* Mods in LYexit.c and LYCurses.c to ensure restoration of stderr (if it - was changed for output to the trace log) on all exits. - BL, FM -* Include an unsigned char typecast in the HASH_FUNCTION definition for - HTAtom.c - CK -* Modified change to is_url() of 1997-07-13 to check for the slash after - stripping any lead space characters. - FM -1997-07-16 -* Added the Windows Cyrillic display character set. - AAC - (Andrey A. Chernov <ache@null.net>) -1997-07-15 -* Added support for a commentURL attribute in cookies. This attribute is - under discussion in the HTTP-WG and not presently in the draft (see the - 1997-07-09 mods for the draft's URL), but would be extremely advantageous - for multi-lingual and non-English-speaking sites because the comment - attribute can have only ASCII characters in its value, whereas a request - for the comment via a URL in turn allows use of charset and language - negotiation for what the server returns. The value of the commentURL is - resolved and retained only if it's scheme points to a server (i.e., file - and special lynx URLs are rejected), and if it is retained, is included - as a link in the Cookie Jar Page. If commentURL is not ultimately - included in the revised State Management RFC, sites which wish to use - it could do a User-Agent check for Lynx (and any other browsers which - implement it). - FM -* Fixed a typo in HTCompressed() of HTFWriter.c so that the last dot in a - tentative temporary filename is sought via strrchr(), as is done for - HTSaveAndExecute() and HTSaveToFile(). - KW -1997-07-14 -* Yet more tweaks of the cookie support. We include $PATH and/or $DOMAIN - attribute/value pairs in Cookie request headers only when their values - were set explicitly via a server's Set-Cookie and/or Set-Cookie2 reply - headers (and the cookies are $VERSION="1" or greater). - FM -* Added support for IFRAME homologous (but not identical) to that for FRAME. - It is handled as a block with a blank line before and after style, and - with margins and default alignment inherited from the containing block, - division, or span. The IFRAME rendition always begins with an emphasized - "IFRAME: " label followed by the NAME attribute's value, if present, or - the URL for the SRC attribute, serving as a link for the SRC, followed - on a new line by any rendered IFRAME content. - FM -* Added handling of LEGEND elements. The content is rendered in place, - as for CAPTION elements, since we don't have multiple pass inlining - capabilities. Hopefully, if the LEGEND is intended to be ALIGN-ed at - the "top" or "bottom" of the associated insert, the author will place - the LEGEND element above or below it, respectively. Note that LABEL - elements similarly are rendered in place, and will be displayed - interpretably only if the INPUT to which the LABEL's "for" attribute - refers, immediately follows the LABEL element. - FM -* Added recognition of BUTTON elements, and handling of them (sorta :) - when they are TYPE="submit" or TYPE="reset" in forms. The default - "submit" or "reset" string, or the value of a VALUE attribute, if - present, is embedded in parentheses and used for the link, and the - content is simply rendered and displayed in place. Until we see what - kind of markup the real world puts in such elements, it's too risky - to try to use that rendition as the link. Also, the W3C's HTML 4.0 - draft presently is very fuzzy about whether, and if so, when, an IMG - element in the BUTTON content should be treated as an image map, so - the present code doesn't try to cast any submitted BUTTON name/value - pairs into the format for INPUTs with TYPE="image". When the BUTTON - is a script control rather than submit or reset button, a "[BUTTON]" - pseudo-ALT is inserted to warn users of its presence, but the form - is not disabled. The W3C's HTML 4.0 draft makes scripting intrinsic, - with no SGML-based fallbacks if it is not available or is disabled by - security-conscious sites. Dave Raggett of the W3C replied to criticisms - of this in www-html@w3c.org by saying that he wished it have been - otherwise, but "market forces" prevailed (Sigh...) - FM -1997-07-13 -* Changed is_url() to return immediately if the string to check starts with - a slash character. This prevents some false positives if the string - contains ':' characters. - KW -* Added support for "MACOS AppleShare IP FTP Server" to HTFTP.c. - Only based on and tested with (the current incarnation of) - <ftp://www.unicode.org/>. - KW -1997-07-12 -* Correct some build issues with the merge (ifdefs for the curses modules) - as well as minor fix for makefile distclean rule. - TD -* More refinements of the cookie support in relation to recent discussions - in the HTTP-WG, and for more fully effective protection against denial - of service attacks. If the same attribute appears more than once for - the same cookie, ensure that the first instance will be used. Limit - the total number of cookies across Set-Cookie and Set-Cookie2 headers - to 50 per server reply, and each cookie to a maximum of 4096 bytes. - FM -1997-07-11 -* Added support for hexadecimal character references (&#xH;) as proposed - in the W3C HTML 4.0 draft. - FM -1997-07-10 -* Synchronized the development code against the fotemods patches up to - 1997-07-06 (relevant changes listed below, as usual). Note that FM - has now included the chartrans code, but has eliminated conditional - compilation of it; however, in this code set setting "-DEXP_CHARTRANS" - at compile time is still necessary (but compilation without it has not - been tested). - KW -* Fixed character counting logic in display_line() for lines where - soft hyphens (­ or <SHY> or a soft-hyphen character) are used - for their intended purpose. - KW - NOTE: The W3C HTML 4.0 draft explicitly specifies handling of ­, - ­ (and now also ­) in the manner long implemented by Lynx - (i.e., as a truly soft hyphen), and not in the brain-dead manner - implemented by Netscape and MSIE. - FM -* Various tweaks of the cookie support to handle likely (based on past - experience in the real world :) abuses of Set-Cookie and Set-Cookie2 - headers from servers. Most importantly, apply sanity checks to the - values of port attributes so that any unquoted port list will not be - misinterpreted as the start of a new cookie within the port list. - Also added code to fold (CR LF TAB) Cookie request headers if they - contain a long sequence of cookies which would exceed 1024 bytes on - one line, since some servers suffer buffer overruns and crash in such - cases. - FM -* Modified HTNews.c to use HTmmdecode() and HTrjis() for the Subject and - Author strings in listings of news articles when using a Japanese display - character set. - HN -1997-07-09 -* Massive updating and revamping of the cookie support in accordance with - http://www.ics.uci.edu/pub/ietf/http/draft-ietf-http-state-man-mec-02.txt - which is scheduled to replace RFC 2109 on July 15, 1997. Noteworthy - changes are that (1) the blanket port restriction is now lifted, and - sharing of cookies among servers with matching domains but different - ports is blocked only if a port attribute was included in the - Set-Cookie2 header (or Set-Cookie header, though it's not expected - there), with a value which defaults to the request's port, but can - be a comma separated list of ports, and (2) the blanket restriction - on sharing of SSL-encrypted (https) cookies with http servers is - lifted, and normally depends on the Set-Cookie or Set-Cookie2 header - having included a secure attribute. However, a configuration option - (see lynx.cfg) to FORCE_SSL_COOKIES_SECURE is now available, and the - compilation or configuration default can be toggled via a -force_secure - command line switch. - FM -* Make NOCACHE ('x' key) work as expected from history list for internal - links. - KW -* Removed bogus checking for a config file in home directory which had - been introduced into the development code. - KW -1997-07-08 -* Synchronized the development code against the fotemods patches up to - 1997-06-24 - TD, KW -1997-07-06 -* Implemented popup windows for the 'o'ptions menu, homologous to those - for SELECT blocks in forms. They are implemented when select_popups - is on, and include WHEREIS search and 123[g,p] features (very useful - for navigating the choice list of 28 display character sets :). Use - the F_LINK_NUM command ('0') to invoke the prompt for a choice list - number when in NUMBERS_AS_ARROWS mode. The popups are not invoked for - the simple, binary choice options. Also modified the options menu so - that the cursor is positioned to the left of choices when show_curser - is on (but it is still positioned initially at the endings of strings - when the line editor is invoked for options that have user-entered - values). - FM -1997-07-04 (KaBoom! :) -* Mods of HTMIME.c and HTFile.c to ignore Content-Type parameters other - than charset when charset is not present, as we do when it is present - and we know we can handle it. - FM -* Fixed bug in LYNews.c which could cause Lynx to crash when posting or - sending followups to news groups and the Organization header was - obtained from the /etc/organization file. - FM -* Fixed bug in LYEdit.c which could cause Lynx to crash when an editor - to which a line number is passed as an argument is used and there are - no links on the current page of the document to be edited. - FM -* Added information about the new $USER feature to the comments about - TEMP_SPACE in userdefs.h. - FM -1997-07-03 -* Tweaks of change_sug_filename() in LYUtils.c to make protections against - buffer overruns explicit within the function. - FM -* Tweaks of the #ifdef'ing in HTTCP.c. - FM -1997-07-02 -* Mods in LYDownload.c and LYPrint.c to treat a suggested output file - entry of "/dev/null" on Unix, and "nl:" or "/nl/" paths on VMS (case - insensitive), as a cancel (^G). - FM -* Mods in LYGetFile.c to include URLs with content from a form submission - with method GET in the group for which Referer headers are never sent, - because the content might include private (e.g., password or credit - card) information which should not be visible in Referer logs. - FM -* Added -G 7 to the LYFLAGS and MCFLAGS for the ultrix and ultrix-slang - Makefile targets when using the native ultrix compiler. - HM -* Added -DNSL_FORK to the LYFLAGS for all of the solaris2 and Linux - targets in Makefile. - FM -* The above two changes don't affect the makefile used by auto-config - KW -1997-06-30 -* Removed a redundant declaration in UCdomap.c which was causing some - compilers to balk. - FM -* Fixed typos in SGML.c which could cause echoing of numeric character - references for some of the display character sets. - FM -1997-06-29 -* Updated lynx.hlp, lynx.man and the online 'h'elp concerning the chartrans - support. - FM -1997-06-26 -* Tweak of the "tag and attribute soup" parsing mods in HTML.c so that the - PLAIN attribute works for UL blocks again. - FM -* More tweaks of LYMainLoop.c to issue informative statusline messages - about attempts to ACTIVATE, DOWNLOAD, or submit URLs or ACTIONs which - are disallowed in the current context and destined to fail, rather than - acting on them and generating actual failures. - FM -* Mods of LYmktime() in LYUtils.c to support dd-mm-yyyy format for expires - headers and cookie attributes. - FM -* Oops, hadn't included checks for whether there are links on the page - in this morning's LYMainLoop.c mods to ensure appropriate statusline - messages for attempts to bookmark special URLs that can't be bookmarked, - which could yield a crash it there aren't any. The checks are in there - now. - FM -* Added ability to bookmark links from the Lynx List Page, as from the - Visited Links Page, but not for those pages, themselves, since they - are temporary files. Note that Lynx List Page links will not have - the documents' titles, as do those in the Visited Links Page, unless - you've visited them before invoking the Lynx List Page. - FM -* Added explicit protections against buffer overruns in the LYDownload.c - handling of suggested filenames. - FM -* Changes in LYCurses.c, GridText.c, HTML.c, and LYUtils.c, and smaller - changes to some other files, to fix problems with RP's style code. - Color leaking should now be at least much reduced, and some possible - crashes avoided. - KW -1997-06-24 -* Mods in LYDownload.c to check whether the File= field in a LYNXDOWNLOAD - URL has the value that was inserted into the URL via the most recent - download options menu. This prevents spoofing with arbitrary LYNXDOWNLOAD - URLs entered via the 'g'oto or ECGOTO commands, or ACTIVATE-ed in a file - other than the most recent download options menu which was created by - Lynx internally. - FM -* Mods in LYMainLoop.c to ignore LYNXCOOKIE, LYNXDIRED, LYNXDOWNLOAD, and - LYNXPRINT URLs if entered via a 'g'oto or ECGOTO command, and to issue - a statusline message explaining that the special URL is not allowed as a - goto. This is just for informational purposes, and the above anti-spoof - mod is not dependent on it. - FM -1997-06-23 -* remove "Styles" identifier from Lynx version string in userdefs.h - since it causes "patch-o-matic" to choke. - JES -1997-06-20 -* Now that we add or subtract attributes for Unix FANCY_CURSES, as for VMS - curses and slang, the 1997-05-30 mods based on LE's patch for keeping track - of whether links occur in an underlining context, and if so, restoring it - when a current link is made non-current, should be extended to FANCY_CURSES - as well. So they are extended, now, in highlight() of LYUtils.c. - FM -* Added code in LYNewsPost() of LYNews.c for converting any EUC or SJIS to - JIS (ISO-2022-JP) in posts or followups to Usenet news groups if the - display character set is "Japanese (EUC)" or "Japanese (SJIS)". The mods - need testing by Japanese users, because the TO_JIS() function I added - long ago in SGML.c has not actually been used before. - FM -* Modified the hack in LYPrint.c for mailing HTML source so that it never - appends a charset parameter to the "text/html" value of the Content-Type - header if compiled without chartrans enabled. - FM, KW -1997-06-18 -* Added a check for nonsense LINES and COLS values in setup() of LYCurses.c, - homologous to the check in size_change() of LYUtils.c, and set LYlines and - LYcols to the 80x24 default if they're nonsense. The slang library and - most curses implementations do the equivalent themselves, but we may as - well make sure it's done. - FM -* Tweaks of the anti-spoof mods in HTFWriter.c for additional protection - against extra %s entries in viewer command mappings. - FM -1997-06-17 -* Came up with a low overhead way to restore the emphasis for WHEREIS - search targets when links are made current or non-current and the - target string starts before and/or extends past the end of the link - name (hightext or hightext2) string (see 1997-06-14 mods), so the - restoration works in that case as well, now. - FM -1997-06-14 -* Fixed a longstanding bug in highlight() of LYUtils.c which caused seeking - of a column position less than 0 and strange behavior when a link is made - current, if show_cursor is on and the link begins at column 0 (as can - happen in PRE blocks). We now position the cursor on the first character - of such links, so the current link will remain clear for those with speech - or braille interfaces. - FM -* Added functions in LYCurses.c, along the lines of those in the development - code, so that the [w]start_foo() and [w]stop_foo() functions no longer - just replace character attributes for Unix FANCY_CURSES, but now add or - subtract them as for VMS curses and slang. - FM -* More mods in GridText.c and LYUtils.c so that the handling of WHEREIS - search target emphasis when links are made current and non-current is the - full equivalent for Unix FANCY_CURSES of that for VMS curses and slang. - Note that the restoration of search target emphasis does not succeed if - the hit started before or extends beyond the link name (hightext or - hightext2 string). What it would take to succeed in that case as well - doesn't seem worth the overhead, but I'm still thinking about it. Also - note that we still do not emphasize search target hits, but only do link - or page re-positioning, for Unix curses when only standout() and standin() - are supported. In that case, standout() is being used for all links, - including the current (with the latter indicated via cursor position by - turning show_cursor on), so we don't want to create a totally confusing - situation by using standout() for search target hits as well. The code - is still designed to degrade gracefully when the terminal does not have - the capabilities of the curses or slang with which Lynx was built. - FM -1997-06-13 -* Tweak of yesterday's LYGetFile.c mods. Lost a lynx_edit_mode = FALSE - statement that is still needed when DIRED_SUPPORT is defined. - FM -* Mods in LYForms.c so that the cursor is positioned at the left of the - current option in select popup windows when show_cursor is on, as when - the cursor is used to indicate the current link in the main document. - This is important when Lynx is used with a speech or braille interface, - or a terminal which does not respond to the highlighting/color for the - current option. When show_cursor is off, the cursor is still positioned - to the right of the current option for curses, and is fully "hidden" in - the lower right corner for slang, so that the highlighting or color of - the current option can be used without the distraction of a blinking - cursor in the left-to-right reading field. - FM -* Added ability to change the show_cursor setting via the 'o'ptions menu - and to save that as the default in the RC file (otherwise, the default - is still that set in userdefs.h or lynx.cfg). The -show_cursor command - line switch toggles the default, however obtained, homologously to the - -popup toggle. Updated the online 'h'elp accordingly (option_help.html - and Lynx_users_guide.html). - FM -1997-06-12 -* Tweaks of the 1997-06-04 mods for restoring emphasis of WHEREIS search - targets in link names when they are changed to the current link or again - made non-current. When the link is made current, the first and last - characters of the link name never are emphasized, so they'll retain the - attributes/color for the current link, and the user can see (if sighted) - that the link was made current. With this change, the restoration of - emphasis also is interpretable with Unix FANCY_CURSES, so the block for - that is lifted. Note that I figured out why the bold+reverse+underline - combination doesn't work for that. The vanilla and this Lynx code are - not adding or subtracting attributes for their start_foo() and stop_foo() - functions (as is done for slang and VMS curses), but are replacing them, - so you always end up with the last attribute in a series of start_foo() - calls (underlining for the search target emphasis). I don't know if - ability to sum attributes applies to all Unix curses flavors for which - FANCY_CURSES is defined in the Makefile, so I left the Unix, non-slang - start_foo() and stop_foo() functions the way they are, for now. - FM -* Mods in LYGetFile.c so that any '~' in file URLs is handled as when in - startfile, home page, or 'g'oto commands. Only the first '~' is converted - to Home_Dir(), and only for the first symbolic element in the URL, and if - it is followed by a username, that username is stripped (so that the - "~username" becomes a reference to the home of the account running Lynx, - as if only '~' had been used, and can't be used as a reference for an - arbitrary home). Note that we don't do this stripping for ftp URLs, - because the ftp server should decide, itself, whether to grant access to - arbitrary homes, based on the username and password that were used to - log in. Note, also, that if the account running Lynx is allowed access - to the root of the file system for its home, then access to any arbitrary - home in that file system can be gained from there. Access to the root - never is allowed for file URLs in the for-VMS code, but depends on the - root's protection in the for-Unix code. Also, any arbitrary path in file - URLs will be attempted if it is specified as an absolute path. The - stripping of the username from "~username" in most cases on Unix only - protects against probing for homes in other file systems, without the - user knowing the corresponding absolute path. - FM -1997-06-11 -* Mods in HTAABrow.c, HTTP.c and HTAlert.c so that auth_proxy is no - longer a module wide global, and the structures which handle/create - authentication/authorization headers maintain separate setup trees - for proxy authentication/authorization versus for protected limbs of - http/https data trees (realms) on the same server. This ensures that - each proxy's template, which is the global '*' for all paths (that are - in fact full URLs) in its proxying requests, are kept distinct from - the templates for true paths of the protected limbs on the same saver, - even if the user fails to include that proxy in the no_proxy list, or - the server's WebMaster fails to do the equivalent configuration for - the server, and the realm names overlap. Also modified the prompt - strings for the username and password to be encrypted for protected - document requests versus for proxy access so that they indicate - explicitly whether the user's entries will be used for one or the - other. - FM -* Added a -pauth=id:pw switch for proxy servers, homologous to the - -auth=id:pw switch for protected documents, along the lines of AJL's - patch. Note that the -pauth value is used only for authorization - headers to the first protected proxy server encountered, and the -auth - value is used only for the authorization headers in document requests - for the first protected limb encountered. Now that we have an explicit - switch for proxy authentication, it should be used explicitly for that, - instead of still allowing use of the -auth=id:pw switch for either - (IMHO). Also, there's no serious need to make inclusion of the code - for handling these switches a compilation option, because they are only - available to users with shell access. Updated the help files concerning - these switches, and included advice to make sure any script files which - use these switches have restricted access. - FM -1997-06-09 -* More refinements of the code in GridText.c, HTML.c and LYCharUtils.c - for handling visible versus hidden links, blank lines, stripping of - the numbered brackets for links, and the interactions of these things - with soft hyphens. - FM -1997-06-06 -* Fixed typos in LYrcFile.c which caused failure to start two comments - on new lines when writing to the RC file. - FM -* Fixed a typo in the lead dot pair stripping code in LYLegitimizeHREF() - of LYCharUtils.c. - FM -* Tweak of code in GridText.c for handling soft hyphens so that we don't - display a hyphen if it's the first character in the line, or is preceded - by a space, even if it is followed by a newline. - FM -* Mods of the hidden link handling and numbered bracket stripping code in - GridText.c so that it succeeds no matter how many blank lines are in - the anchor content. - FM -1997-06-04 -* Mods in LYLegitimizeHREF() of LYCharUtils.c for dealing more effectively - with fragments which have illegal characters, as is becoming common due - to authoring tools such as Microsoft's Frontpage and Netscape's HTML - editor. The actual URL-reference is still handled so as to yield a - fully legitimate absolute URL, without any unescaped spaces, but the - fragment is checked only for problem characters such as tab or newline, - and otherwise is unmodified. (Try the vanilla versus modified code with - the http://www.cnib.org/library/ww_flw96.htm atrocity, brought to you - discourtesy of Frontpage. :) - FM -* Worked into the fotemods code use of bold+reverse+underline highlighting - of WHEREIS search hits for VMS curses, and slang on both VMS and Unix (with - or without the color mode on), and added code in highlight() of LYUtils.c - for restoring that highlighting when links are made current or non-current - if the string for the hit was contained within the string for the link (won't - be restored if the hit's string starts before or extends past the link's - string). Couldn't get any of this to work with curses and the solaris2 - target, so for Unix curses the hit string still is just underlined and - not restored when links are made current or non-current. - FM -* Fixed typo in the 1997-06-01 LYOptions.c mods. - FM -1997-06-03 -* Mods in LYList.c to skip setting up a list block for visible links if - the document has only hidden links, and in HTML.c to include a notice - about this with a suggestion to use the 'l'ist command. Try it with - the http://www.sony.com/ atrocity. - FM -* Tweak in LYMainLoop.c to fix a longstanding bug which would cause the - curdoc.line and curdoc.link numbers to be mishandled, and thus cause - the wrong page and current link to be restored on return to the document - via PREV_DOC or the History Page, if the document was fetched originally - with a fragment and a link on its first page had been activated. - FM -* Tweaks in GridText.c so that returns from image map menus to parent - documents are not treated as if a different document is being sought, - and thus any no-cache directives associated with the parent will be - ignored unless another fetch is initiated within the parent or via - another, externally existing document. - FM -* Added SEEK_FRAG_MAP_IN_CUR and SEEK_FRAG_AREA_IN_CUR configuration - (lynx.cfg) options for how to resolve USEMAP attribute values in - IMG or OBJECT tags and HREF attribute values in AREA tags when they - consist solely of a fragment (USEMAP="#frag" or HREF="#frag"). The - compilation default is TRUE, i.e., they are resolved with respect - to the current document's URL, even if the base is different, as is - being done for the HREF attribute values of Anchors and LINKs. The - compilation default seems to be working out, even though most of the - currently deployed browsers still use the base. - FM -1997-06-02 -* Mods in LYMain.c so as not to require that a lone "-" argument for - invoking input of command line arguments from stdin be the only - argument on the actual command line. That requirement preluded use - of this feature when the command for invoking Lynx was aliased so - as to include arguments, because the lone "-" then could not be the - only argument. Also tweaked the code so that any stdin-derived - arguments which need to be processed early in main() are so processed. - The vanilla code had severely flawed logic in this respect. The - security considerations associated with switch handling have gotten - hairy beyond reasonable bounds, but I think I've thought it all through - (we'll see :), and have plugged some holes in the vanilla code for - this feature. Redirection of stdout and/or stderr to a file now also - works reliably in conjunction with this feature. - FM -* Added an explanation in the PROBLEMS file of the bad getsockname() and - getpeername() functions within SOCKETSHR 0.9D which affect the ftp - gateway, and the URLs for Andy Harper's (A.HARPER@kcl.ac.uk) fixes of - the SOCKETSHR 0.9D sources. - FM -* Cast LYLocal.c into the Lynx programming style. - FM -1997-06-01 -* Added support for numbered form fields, and options in SELECT popups, - based on LE's patch. The LINKS_AND_FORM_FIELDS_ARE_NUMBERED keypad - mode can be defined in userdefs.h and via the 'o'ptions menu. When - in SELECT popups, the F_LINK_NUM ('0') command can be used in any mode - to invoke a "Select option (or page) number:" prompt, which can take - 'g' or 'p' suffixes, homologously to the - "Follow link (or goto link or page) number:" - prompt in the main document with popups retracted. Note that when in - the main document, the F_LINK_NUM command has an implied 'g' suffix - for form links (i.e., will position you on the form link, not, for - example, ACTIVATE a submit button), but *not* in popup windows (i.e., - without a 'g' suffix, the option corresponding to the number will be - selected, and the popup will be retracted, as if you had pressed - ACTIVATE when positioned on that option). The 123p feature is quite - useful in popups with a very large number of options, and supplements - the HOME, END and WHEREIS functions for seeking positions in the list - (again, regardless of keypad mode, if F_LINK_NUM is used to invoke - the prompt). A "page" is defined as the number of lines within the - vertical dimension of the popup box. - FM -* Mods in LYEdit.c to seek the current page and line when the editor - is sedt on VMS. - FM -* Updated the online 'h'elp concerning the "Follow link (or page) number:" - and "Select option (or page) number:" features (Lynx_users_guide.html, - follow_help.html, keystroke_help.html and other_help.html). - FM -* changes to help files to reflect the different prompt string. - KW -1997-05-30 -* Worked in LE's patch for keeping track of whether links occur in an - underlining context, and if so, restore it when slang color is on and - a current link is made non-current, thereby actually dealing with the - longstanding bug discussed in the 1997-05-27 mods (This is just a hobby, - and I always reserve the right to change my mind! :). - FM -* Mods of LYForms.c and LYStrings.c to deal with form field values too - long to fit in the line editor's buffer (such as long TEXTAREA values - which have no newlines in them). As much of the tail as fits in the - buffer is offered for editing, with statusline messages explaining the - situation. If the tail is modified, it is combined with the unmodified - head when the form field is made non-current. The result can be edited - further by making the form field current again. If the form has a - Reset button, it can be used to restore the original value. The - vanilla code would crash on buffer overflow (Ugh! A potential - security hole.). - FM -1997-05-29 -* Restored underlining in conjunction with reversing for the current link - with slang when colors are being used, but not otherwise. - FM -* The 1997-05-26 mods to bypass screen redraws on retractions of SELECT - popups when the selected OPTION was not changed worked properly only - for VMS curses. Tweaked the for-slang code so that it now works like - VMS curses (though not as efficiently). However, with Unix curses, - the delwin() - refresh() sequence does not restore what was there - before the popup was invoked, and none of the tweaks I tried got that - to work, so the poor Unix folks using Unix curses are now stuck again - with screen redraws for every popup retraction. - FM -1997-05-27 -* Eliminated in the fotemods code underlining in conjunction with reversing - for the current link with slang, to avoid the longstanding bug of - underlining being lost (and distracting color changes occurring) when that - link ceases to be current and it was embedded in an underlined region of - text. The attributes of the current link can be better handled in the - development code based on configurable style sheets, so there's no - point letting this bug ride, nor trying to deal with it through - temporary internal mods, in the fotemods code set. - FM -1997-05-26 -* Mods of display_title() in GridText.c to eliminate the "format" - mask as in KW's 1997-05-14 development code mods, and to make the - memory management more efficient. - FM -* Mods of change_form_link() in LYForms.c to bypass the screen redraw - on retraction of a SELECT popup if the SELECT block is DISABLE-ed - or the selected OPTION was not changed. Note that the complete - elimination of the screen redraw in the 1997-05-20 development code - mods, i.e., even when the selected OPTION was changed, results in - the change not being made evident to the user in the retracted popup - unless the screen is redrawn fortuitously (e.g., due to subsequent - paging). - FM -* Modified the caching-related changes of 1997-05-15 to LYMainLoop.c, - handling automatic reloading after a change of the User-Agent string - like after comparable other option changes. - We force a reload if "preferred document lan(G)uage" - or "preferred document c(H)arset" are changed via the 'o'ptions menu, - and to set the "reloading" flag for forcing a proxy cache refresh if - those or "user (A)gent" are changed and the current document has an - http, https or lynxcgi scheme, but not force a proxy cache refresh if - we're reloading due to an INLINE_TOGGLE, IMAGE_TOGGLE, or RAW_TOGGLE - command. - KW, FM -1997-05-25 -* Mods in LYMain.c to convert $USER if present in the TEMP_SPACE - definition or LYNX_TEMP_SPACE environment variable to the string - returned by getenv("USER"). - FM -* Fixed two typos for me->inFONT settings in HTML.c - TD -* Added chmod(file, 0600) calls for most files created by Lynx. - FM -1997-05-24 -* integrate patch JED's mods which support mouse for slang as well as add - new functions to encapsulate differences between slang/curses. - TD -1997-05-21 -* Mods in HTML.c and LYCharUtils.c so that TABLE blocks are treated - as divisions in the DIV nest, with a default alignment of HT_LEFT - if the TABLE start tag lacks an ALIGN attribute, and otherwise, - that attribute's value. Nested TABLEs extend the DIV nest. This - avoids the problem in the vanilla code of TABLE content inheriting - the alignment of a containing CENTER or DIV which is intended for - alignment of the TABLE as a whole. Also added support for ALIGN - attributes in TR elements. If the TR has no ALIGN attribute, it - inherits that of the current division, which should be that of the - current TABLE. This, of course, still does not yield true TABLEs - for truly tabular content, but makes TABLEs used for formatting - more readable. - FM -1997-05-20 -* correct 2 occurrences of "me->inFONT == TRUE;" in HTML.c - TD -* add configure --with-color-style option to merge RP's alpha changes for - color styles (this works only with ncurses, since it does not initialize - the window background, leaving it null, thereby exploiting a bug in - ncurses which sets null backgrounds to a space). Also some whitespace - (and renamed CS to make this build w/o ncurses) - TD -* test-built with ncurses 1.8.7, 1.9.4, 1.9.9e and 4.0, as well as bsd 4.4 - curses and slang - TD -* Tweak of HTFWriter.c so that it does the anti-spoof tests normally - done by tempname() (see the 1997-05-19 mods) in all cases for which - it changes the temporary file suffix from any of those checked by - tempname() itself. At this point, every way I've thought of for - trying to spoof Lynx via links for temporary files is blocked, but - people should beat on today's code to see if there's any spoofing - strategy I haven't yet blocked. - FM -* Modified the Lynx Trace Log handling so that it doesn't use actual - redirection of stderr via freopen() calls, and restores the original - value of stderr during any escape to shell. This avoids the problem - on Unix that sh and ksh send their prompt strings to stderr, and that - bash sends both its prompt and command line echo to stderr, so they - end up in the log instead of being visible. I had tested the initial - design on VMS and with csh on Unix, and thus didn't notice this - foolishness for the other Unix shells. Anyway, it's OK for all of - them now. - FM -* Tweaked SIGTSTP interrupt handler in the USE_SLANG for-unix code, so - that it gets set to SIG_DFL when stop_curses() is called, to prevent - strange interferences experienced when ^Z is used while a helper - process is in the foreground. - KW -* Change in LYForms.c to prevent forced screen refresh after selection - from a popup box. - KW -1997-05-19 -* Recognize Linux console F1 key in LYgetch() (applies if "-DNO_KEYPAD" - is in effect, as for all binaries built with slang). - KW -* Protect LYgetch() against returning raw values of keypad() symbols - which are invalid when used later as an index into keymap[], - override[], etc. - KW -* in the USE_SLANG for-unix start_curses(), honor the no_suspend flag - if set. This implements -restrictions=suspend handling for slang - (although it was intended for curses implementations which have - problems with ^Z within Lynx; see the PROBLEMS file). - Note that the no_suspend flag cannot be suspected to have - the desired effect if lynx is executed from a shell script, unless - the shell process forked for the script also ignores the SIGTSTP - signal generated (usually) by the ^Z key. Also if the user is - allowed to execute any helper process (VIEWER, PRINTER, etc.) which - does allow suspending while no_suspend is in effect for the Lynx - parent process (by overriding the SIG_IGN setting done by Lynx or by - other means), then suspending may still be possible, in addition to - strange effects either immediately or when the process or process group - is continued (wrong tty and screen state, zombie processes, total - hang of the session without any way to interrupt - you get the idea...). - Trying to use the suspend restriction in order to prevent users from - getting a shell prompt doesn't make much sense anyway when they are - allowed access to execute commands which may be interrupted or allow - escaping to a shell... - KW -* Tweak of HTFile.c so that we no longer lose an LYforce_HTML_mode - directive if the file is gzipped or compressed and the uncompressed - suffix is not mapped to text/html. - FM -* Modified tempname() in LYUtils.c so that it checks whether files - with the current PID and target count already exist, and if so, - increments the count until a name for a non-existing file has been - created. - FM -1997-05-18 -* Mods in LYMainLoop.c and LYClean.c so that Control-G is treated as - a synonym for 'n'o in quit confirmation prompts. - FM -* Mods in LYPrint.c to strip any gzip or compress suffix from the - suggested filename, on the assumption that we're deal with a text/html - or text/plain file that had a corresponding Content-Encoding and no - Content-Disposition: file; filename=name.suffix header indicating - the appropriate filename after uncompression. This assumption does - apply for our current ftp gateway, and for most present-day http - servers. This mod in turn ensures that text/html files which are - not being printed as source will have their uncompressed suffixes - converted to .txt, indicated that they are rendered. - FM -1997-05-17 -* Fixed long-standing bug in display_page() of GridText.c. When it - was updating the links structures, it wasn't re-initializing the - form element if the links structure is not for a form field. - FM -* Mods in HTML.c to deal more effectively with H# headers used instead - of LH in lists. We now, in effect, treat them fully as if they were - LH, so that their left indentations are in register with the current - list nesting depth, and we apply better error recovery in cases where - the author is mis-using H# for a FONT change rather than as an actual - header. - FM -1997-05-16 -* Changed the line where a WHEREIS search target should preferably be - displayed to the 4th line (not counting the title line). This can - be changed by redefining SEARCH_GOAL_LINE in userdefs.h. - SEARCH_GOAL_LINE can also be a simple expression in terms of the - variable display_lines, e.g., `#define SEARCH_GOAL_LINE (display_lines/3)', - this should then automatically adapt to screen size changes (provided the - display system can deal with that...) - Note that this this goal line will normally not be used if the next - target, according to the algorithm Lynx uses, is already on the displayed - screen. Also, when the displayed page changes to show a search result, - there is no guarantee that it will end up on the line set by - SEARCH_GOAL_LINE. It should rather be regarded as a maximum. - For example the presence of anchors on the line with the target or on - the preceding lines will change the positioning. - KW -* The SEARCH_GOAL_LINE line will also be used for "going to" a link with - 'g' suffix at the "Follow link ..." prompt, although the algorithm is - quite different. As for a search target, this only applies when Lynx - has to position to a different page of the document, and then is only - a maximum. - KW -* Enabled the no-cache setting for the pseudo document Lynx creates for - a client-side image map in LYMap.c, for now. - KW -* Minor typo fix for the proxy authentication mods. - FM -* Tweak of PRE block handling in HTML.c to ensure an implied paragraph - after the block if it is in a list and not followed by an LI. - FM -* Tweaks of SGML.c and LYCharUtils.c to allow any non-digit to terminate - a numeric character reference once at least one digit has been found in - the reference. - FM -* Change in LYUnEscapeToLatinOne() to use isdigit() instead of isalnum() - for recognizing numeric character references like LYUnEscapeEntities() - does. - KW -1997-05-15 -* Worked in JED's mods for taking a suspend into account during select() - calls. - FM -* Mods in LYMainLoop.c to not force a cache refresh on a proxy any more - when INLINE_TOGGLE, IMAGE_TOGGLE, RAW_TOGGLE are used. On the other - hand, do force a proxy cache refresh after one of the variables relevant - for content negotiation `language' or `pref_charset' has been changed - from the Options screen, if the current document is from a http, https, or - lynxcgi resource. - KW -* Set HTTP_ACCEPT_CHARSET environment variable for the child process in - LYCgi.c if pref_charset is not NULL. - KW -* (chartrans) Write a META tag with the current display character sets to - the files generated for Bookmarks, List, Info, History, and Visited Links - pages, so title strings contained in those files will (hopefully) not - get erroneously translated again. Use new function LYaddMETAcharsetToFD() - in LUCharUtils for this purpose. - KW -* (chartrans) makeuctb now sets RawUni to UCT_ENC_8BIT if not otherwise set - and if there are char values above 127. - KW -* (chartrans) Change in HTuncache_current_document() to prevent caching of - UCStages info which should be discarded. Still allow caching for this - in the node_anchor for source display, so that a META tag in the parsed - HTML can influence the display after using the SOURCE '\' key. - KW -1997-05-14 -* Don't use title in showlist() if it is empty, to prevent "hidden links" - on the List Page itself caused by documents with <TITLE></TITLE>. - KW -* Changed display_title() in GridText.c to not rely on sprintf() to get - the number of blanks right. - KW -* (chartrans) Added new lynx.cfg symbols ASSUME_CHARSET, - ASSUME_LOCAL_CHARSET, and ASSUME_UNREC_CHARSET. They are only - recognized if compiled with -DEXP_CHARTRANS. They correspond to the - command line options -assume_charset, -assume_local_charset, and - -assume_unrec_charset. - The default for ASSUME_CHARSET is iso-8859-1 (corresponding to display - character set "ISO Latin 1"). If no ASSUME_LOCAL_CHARSET is set, - the explicit or default value for ASSUME_CHARSET will also be used for - local files. ASSUME_UNREC_CHARSET has no default. See added text - in lynx.cfg. - KW -* (chartrans) Changes in LYCharSets.c to HTMLSetCharacterHandling() and - HTMLSetUseDefaultRawMode() to support (hopefully) more consistent - and user-friendly handling of raw mode and its default. - Note that the following description does not apply if the display - character set is one of the CJK settings. In that case, -raw and - the corresponding Options setting is used as a CJK toggle as before. - Note that the -raw flag is a toggle. It changes the "raw mode" - setting from the default. The current setting of "raw mode" can be - seen on the Options screen, and is also shown in a statusline message - when the RAW_TOGGLE key (normally '@') is used. - The default depends on the display character set (as previously) - but now also on the ASSUME_CHARSET setting (as determined by a setting - in lynx.cfg, possibly overridden by -assume_charset on the command - line, or the default iso-8859-1). When the display character set - corresponds to the ASSUME_CHARSET, the default for "raw mode" is ON, - otherwise it is OFF. - The effect of "raw mode" on the interpretation of documents which have - no explicit charset label (from HTTP headers, a META tag, or otherwise) - is as follows. There is an internal "assume charset" which may differ - from the user-specified ASSUME_CHARSET value. When "raw mode" is set - ON, the internal variable is set to correspond to the display character - set. When "raw mode" is set OFF, the internal variable changes to - the user-specified ASSUME_CHARSET or, if that also corresponds to the - display character set (so that otherwise there would be no change), - reverts back to the iso-8859-1 Web default. - Raw mode doesn't imply total rawness. HTML character entities may - be expanded and translated with either setting, 8-bit characters which - are inappropriate for the display character set will not be sent to - the terminal. For a "more raw" setting, try the "Transparent" pseudo - display character set. - KW -1997-05-13 -* Changed the compilation default in userdefs.h for USE_TRACE_LOG - to FALSE, for now. - KW -* Code for "fixing" of relative http and https URLs which start with a - ../ segment from FM added, but it has to be enabled with the new - lynx.cfg symbol STRIP_DOTDOT_URLS (default currently set to FALSE). - See FM's description under 1997-04-23. - KW -* Changed the test for dot segment fixing in LYLegitimizeHREF() so - that now (if enabled) it also applies when the http or https base URL - in effect does have a non-empty path but without any slashes in it - (beyond the initial one between host and path). The test was too narrow - before and did not recognize this case, so that an unmodified URL with - ../ in it would still be sent to the server and without generating a - statusline message. - KW -* Tweak of case LYK_REFRESH: in LYMainLoop.c so that the REFRESH command - still invokes an obligatory, complete refresh of the screen for slang - on Unix with the new LY_SLclear() function (see 1997-05-09 mods), - by using scrollok() if USE_SLANG is defined. - FM -* Changed the local variable name, lines, in follow_link_number() of - LYGetFile.c to nlines, to deal with the AIX 4.2 bug of treating lines - as a macro. Also changed the variable name, pages, to npages for - logical complementarity (they both refer to the total number). - FM -* Mods in HTML.c, LYCharUtils.c and GridText.c to deal with links for - positioning, specified via NAME or ID attributes, when they are embedded - in Anchors which have an HREF, so that they now don't force premature - closing of those Anchors. Also tweaked the code for creating links for - the sources of images or other for-GUI embedded objects when clickable - images ('*') is toggled on, so they use those mods as well, when - possible. Note, however, that the clickable images feature is creating - Anchors with HREFs which aren't actually there, and still can create - technically invalid markup, on occasion, when the non-doctored markup - actually is valid. The latter mods still need some improvements in the - formatting, but are OK to use for now, and my brain hurts from trying - to think through all the possible markup we might encounter. - FM -* Tweaks of the Lynx Trace Log handling to deal with reloads when the - HText structure for the log has been dumped. Made the first letter - of the filename uppercase (Lynx.trace), complementary to Lynx.leaks. - Eliminated the log from the Visited Links Page so it can't be sought - there as a forward link. Use the History Page if you want to 'd'ownload - the log, or use the 'p'rint option while viewing the log. Note that - suffix maps do tail matching, and thus the so-called suffixes need not - begin with a dot. If you want to use an external viewer for the log, - you can put: - SUFFIX:Lynx.trace:application/x-LynxTrace - VIEWER:application/x-LynxTrace:most +s %s - in your lynx.cfg, or their equivalents in your mime.types and mailcap - files. - FM -* Tweaks in LYMainLoop.c to set newdoc.title for various special pages - generated by Lynx (History Page, Info Page, etc.) and when following - a link. - FM -* Small change to the heuristics for New_DTD in start_element() - in SGML.c (try a bit more to close containing element if it's the - same tag) - KW -1997-05-12 -* Added support for proxy authentication. - AJL, FM -* Updated follow_help.html to indicate that 0 is the universal - F_LINK_NUM mapping for invoking the "Follow link (or ...) number:" - prompt. - FM -1997-05-11 -* Tweaks in LYMainLoop.c to ensure that the LYforce_HTML_mode flag is - reset reliably, so it doesn't carry over to requests for text/plain - documents, as it was doing under some circumstances in the vanilla - code, e.g., when a bookmark file was used as the startfile via a - file://localhost/path URL rather than via the -book switch. - FM -* Very minor change in Lynx_users_guide.html, added two words - KW -1997-05-10 -* Fixed a typo in statusline() of LYUtils.c. The check for whether - the string is zero length before bothering to convert CJK multi-bytes - was checking a holding buffer instead of the string. - FM -* Fixed a bug in LYHandleMETA() of LYCharUtils.c. The check for a - URL following the SECONDS value in REFRESH directives was not - taking into account that an EOL might follow the digits for the - SECONDS value. - FM -* Changed the behavior of boolean_choice() in LYOptions.c so that the - cursor is positioned immediately at the option display line instead - of staying at the statusline instructions until an initial entry is - made, and modified the statusline instructions accordingly. - LE, FM -* Added a check for a NULL pointer in the LYCookie.c code for blocking - sharing of SSL encrypted cookies with http servers, based on a patch - from RT, and added a comment on why code for a block based on the - scheme is there, despite its being redundant with the current blanket - restriction based of the ports. - FM -* Mapped 0 to F_LINK_NUM (as suggested by KW), so that 0 invokes the - "Follow link (or goto link or page) number:" prompt under all - circumstances (but with the 0 not treated as the first digit of - the number entry). That's a better way - to do it, because then the F_LINK_NUM command and explanation always - appears in the "Current Key Map" display, and only the mappings of - numbers to functions drop out when going from NUMBERS_AS_ARROWS to - LINKS_ARE_NUMBERS mode (as they should, 'cuz the numbers no longer - are mapped to functions; though maybe they should stay mapped to - functions now that we have an explicit command key for invoking the - prompt; something to think about...). - FM -* Updated the PROBLEMS file to indicate that you should try changing - -lresolve to -lbind if you have upgraded to the bind-8.1 or later - library on a Sun system and keep getting the message "Alert!: Unable - to connect to remote host". - FM -1997-05-09 -* Typo fix in follow_help.html. - FM -* Added an LY_SLclear() function in LYCurses.c as a more efficient - substitute for slang of the curses clear(), based on a patch from - JED. - FM -* Added a USE_TRACE_LOG compilation (userdefs.h) symbol and -tlog command - line toggle of the compilation default (normally TRUE), for directing - syserr messages to a lynx.trace file in the user's home directory when - TRACE mode has been turned on (either via the -trace command line switch, - or the TOGGLE_TRACE (Control-T) command. Also added a TRACE_LOG command - (normally ';') for viewing the "Lynx Trace Log" (lynx.trace) at any time, - if one has been initiated during the current session. The trace log - feature is disabled automatically in anonymous or validation accounts, - and should not be used in any account which could have different users - simultaneously. The mods work well to the extent I've exercised them - thus far on VMS and for the solaris2 target, but possibly need more - refinements, depending on the behavior for other Unix flavors of - freopen(), which is used for redirecting stderr to the log. Updated - lynx.man, lynx.hlp, and the online 'h'elp to describe these new - features. - FM -1997-05-08 -* Made the handling of hidden links dependent on a new command line - option. With -hiddenlinks=listonly hidden links are only shown on - 'l'ist screens and listings generated by -dump or from the 'p'rint - menu, but appear separately at the end of those lists. - With -hiddenlinks=ignore they don't appear even in listings. - With -hiddenlinks=merge hidden links are treated as before, - i.e., they show up as bracketed numbers if LINKS_ARE_NUMBERED is on, - and are numbered together with other links in the sequence of their - occurrence in the document. The default is -hiddenlinks=listonly. - Changed the new follow_help.html file accordingly. - This may help obviate an apparent need to call something a bug which - others regard as a feature... - KW -* Function HText_AreDifferent() updated as in FM's code, but still - unused. - KW -1997-05-07 -* Added another argument in follow_link_number() of LYGetFile.c for - returning the number entered at the "Follow link (or page) number:" - prompt to the mainloop(), and modified the statusline error messages - that may be issued from the mainloop() in conjunction the with 'g' or - 'p' suffixes so that they report that number when appropriate. - FM -* Changed the prompt to "Follow link (or goto link or page) number:" - KW -* Tweaked case HTML_DD: in HTML.c so that it checks whether a wrap - has just occurred naturally before imposing a newline for DD start - tags. Without that check, seemingly random, extra newlines could - occur in the DL/DT/DD blocks. - FM -* Created a follow_help.html for the keystroke_commands subdirectory - of the online 'h'elp, describing the "Follow link (or page) number:" - features, and added links to it in Lynx_users_guide.html and - keystroke_help.html. - FM -* Changed the help description according to what is implemented here - KW -1997-05-06 -* Further tweaked KW's mainloop() tweak (see yesterday's entry), so that - newdoc.link is reinitialized properly when we're going to, but not - ACTIVATE-ing, a link in the current page due to a 'g' suffix for a - "Follow link (or page) number:" entry. Otherwise, if the number with - a 'g' suffix was used to make the last link on the current page the - current link, and then a NEXT_LINK command was used, one could end - up on a link beyond the first one in the next page. Also added a - statusline message if the 'g' suffix is used with a number which - corresponds to a link that already is current. - FM -* Tweaked yesterday's LYList.c mods so that an OL with the CONTINUE - attribute is used when a "Hidden links:" list is appended to a - "Visible links:" list and NUMBERS_AS_ARROWS mode is on. This allows - you to see the number to enter at "Follow link (or page) number:" - prompts, as when LINKS_ARE_NUMBERED mode is on. - FM -* Mods in HTML.c for LI and LH handling so that a pointless wrap will not - occur at the spacer following the bullet in UL blocks or the Arabic - number, Roman numeral, or upper- or lowercase letter in OL blocks if - the subsequent text has no spaces, itself, up to the right margin. - In such cases, that text now stays on the initial LI or LH line, and - wraps at the right margin to the left indentation for a second or - greater line in the LI or LH. - FM -* Changes to avoid memory leaks in LYCookie.c - KW -* Escape '<' and '>' characters (using the LYEntify functions) in URL - strings written to the temporary files for LIST and INFO screens, to - avoid invalid HTML and corrupted display as a result of URLs which - contain these characters (although they shouldn't) and have not been - escaped earlier. - KW -* Changed the label for the currently selected link from "Filename:" - to "URL:", and fixed an alignment glitch for the 9th item on the - History and Visited Links pages. - KW -* Changed an "8-bit" occurring in HtInit.c to "8bit", tweaked LYKeymap.c - comments. - KW -1997-05-05 -* Added HText_AddHiddenLink(), HText_HiddenLinkCount(), and - HText_HiddenLinkAt() functions in GridText.c for keeping track of the - addresses (URL, plus fragment if present) for links that were converted - to hidden by HText_endAnchor() due to their having no visible link name, - and modified showlist() and printlist() in LYList.c so that if any hidden - links were create during the rendition, the "References in this document:" - menu for the 'l'ist command or appendix on dumps segregates and clearly - labels the visible versus hidden links. - FM -* Plugged a memory leak in LYEntify() of LYCharUtils.c. - FM -* Modified experimental DTD info to not close anchors when an invalid - P, H1-H6, or ADDRESS start tag is encountered, and to change error - recovery for P and MAP. - KW -* Modified experimental DTD info and HTML.c to not close PRE when - an invalid FORM start tag is encountered, and to use the appropriate - handling for preformatted text if PRE is in effect but is not the top - element on HTML.c's stack. The HTStyle structure's freeFormat (which - wasn't used anywhere before) is now used as one test whether we are - within preformatted text, also corrected the style setting of freeFormat - for PRE in DefaultStyle.c. - KW -* Changed internal gateways (in HTNews.c, HTFile.c, HTWAIS.c, HTWSRC.c) - to end LI, DT, and DD elements if they are not declared SGML_EMPTY, - so that HTML.c's stack won't get overloaded in this case. - KW -* Tweaks in mainloop() handling of DO_GOTOLINK_STUFF and DO_GOTOPAGE_STUFF. - Going to a link with the 'g' suffix and then immediately ACTIVATing that - link could previously show the wrong page of the new document, since - newdoc.line was not being reset. - KW -1997-05-03 -* (chartrans) Now always check for LYlowest_eightbit[current_char_set] - near the top of HText_appendCharacter(), to prevent writing C1 control - chars to the terminal if they are not valid as displayable characters - according to the selected "display character set" Option. - All this should be handled earlier in processing, and this check may - disappear again for testing, but somebody asked for it... - KW -* (chartrans) Small changes to README files. - KW -* In the section of HTUtils.h for non-autoconf builds, don't set - HAVE_KEYPAD or HAVE_TTYTYPE if USE_SLANG is defined. - KW -* Modified HText_LinksInLines() to not count hidden form fields. - KW -* Added support for setting an anchor's no_cache element based on a - comparison between Expires and Date headers if both were received - and we didn't set it based on a Cache-Control directive. Also - added equivalent support for a comparison between an Expires value - from a META tag and a Date header. We still compare Expires header - or META values versus the system time if no Date header was received, - and still do not accept Date values from META tags because they are - unlikely to be reliable. - FM -1997-05-02 -* Fixed a bug in LYAddImageMap() of LYMap.c which could cause multiple - insertions of the same MAP into the LynxMaps structure, and crashes - on some systems due to the consequent multiple FREE()'s at exit. - FM -1997-05-01 -* More mods in HTML.c, LYCharUtils.c and GridText.c for rational handling - of potentially wrapped form fields in PRE blocks. We now artificially - wrap the line if the form field would start within 6 columns from the - right margin. This makes sure that editing windows and the highlighted - segments of submit or reset buttons will not ever be ridiculously short, - and is homologous to our use of a collapsible space before input fields - and buttons when not in PRE blocks to promote a wrap there instead of - within the fields or buttons. - FM -* Expanded the WHEREIS query support so that it also locates the values - of form fields within the current document and repositions or pages - accordingly, as for normal (Anchor) links and for text strings. Note - that if the hit was for an OPTION value in a retracted SELECT popup, - you are positioned on the retracted window, and must pop it up and - search again to be positioned on the OPTION value with the hit, unless - it already is the selected OPTION. The mods are hairy enough without - trying to do the latter automatically, at least for now. - FM -1997-04-30 -* Quote the URL for external command (not for VMS or DOS or Windows) - to avoid dangerous chars and shell spoofing. - KW -* Escape characters properly when constructing URLs from filenames - in LYConvertToURL. If a string given for startfile, home page, or - a goto command which does not already have the form of an absolute - URL starting with an URL scheme and which does not start with '~' - (but may start with '/') specifies an existing file or directory in - valid Unix-like format for the native filesystem, i.e., without using - escaping, it gets URL-escaped, otherwise it is assumed to already - be URL-escaped. - KW -1997-04-29 -* Updated RP Styles 0.2 code, don't allow comma as separator between - fg and bg colors after all, fix the LYNX_VERSION string generation - in userdefs.h to have `-Styles' appended *within* the quoted string. - KW -* Added support for a 'p' suffix, like the 'g' suffix for making a link - number the current link rather than ACTIVATE-ing it, - but for displaying the page indicated by the number preceding the - 'p' suffix entered at the "follow link (or goto link or page) number:" - prompt. [...] If the number - entered at the prompt is '1' or less followed by the 'p' suffix, or only - 'p' is entered, you get the same behavior as for the HOME command. If - the number is equal to or greater than the number of pages, you get the - last page displayed as you would if you had used successive PAGE_DOWN - commands from the HOME position to reach it. This differs from the END - command, which fills the screen with lines from the end of the document - if you are not already displaying the end of the document. Note that if - you enter a number without a suffix (to ACTIVATE the link with that number) - or with the 'g' suffix (to make the link with that number the current link) - it must correspond to a valid link number or an error statusline message - will be issued, in contrast to the 'p' suffix for which an out of range - number is treated as a request to display the first or last actual page in - the current document. - FM -* Fixed some typos in lynx.man. - LV -* More modifications of the anchor counting code for HTGetLinkInfo() in - GridText.c so that it properly skips hidden form fields and anchors - without selectable text. - KW -* More modifications in GridText.c and HTML.c so that it deals rationally - with submit or reset button values, and the underscore placeholders for - other form fields, when in versus not in PRE blocks. The entire submit - or reset button values are now always displayed, whether or not a portion - of it was wrapped, but we still can only highlight the portion before the - wrap to indicate a link for submission of the form or for resetting the - form field values. - FM -* Undid some mysterious changes in SIGHUP setting (SIG_IGN vs. SIG_DFL) - which had sneaked in in connection with adding the NOSIGHUP - conditional. - KW -* Tweaks to New DTD's extra info for CENTER and H1..H6 - KW -* New function HText_AreDifferent() from FM added to GridText.c, but - not used yet. - KW -* Tweaks to WB's additions for external command: use strncasecomp, add - LYExtern.o to src/makefile.in, changed test for empty command. - KW -* Changed LYKeymap.h and LYKeymap.c so they agree about the symbols - assigned to the new keys (SWITCH_DTD, EXTERN). - KW -* correct minor syntax err that caused SCO 3.x to fail make-include - autoconf test. also, eliminate whitespace before '#' that causes - compile-fail on K&R compilers. - TD -1997-04-28 -* Updated lynx_url_support.html so as to make clear that the offer to - include the currently displayed document with right-angle-bracket - prefixing for mailto, newsreply, and snewsreply URLs is made only if - the user has defined an external editor via the Options Menu, and that - the user is expected to edit this inclusion so that it retains only - those passages relevant to the email or followup message which the - user will add. - FM -* Tweak of INPUT handling in HTML.c so that we use nbsp instead of any - spaces when loading a submit or reset button's actual value instead - of a series of underscores into the HText structure, so that we - still promote a wrap, if needed, at the space we ensured would be - present before each INPUT. - FM -* Made first_option a structure member rather than a static variable - in HTML.c - KW -1997-04-27 -* Tweak of Control-C and Control-G handling for popup_options() in - LYForms.c. They were being sought improperly as command keys rather - than as raw keyboard entries. Note that only Control-G should be - used as "cancel" within popup windows on Unix, because Control-C - is not being trapped to a handler as on VMS. - LE, FM -* Tweak of the anchor counting code for HTGetLinkInfo() in GridText.c - so that it takes form fields into account when making a link current - based on a "Follow link number" entry with the 'g' suffix. - Also added comments to that code. - KW -1997-04-25 -* Added information in the "Lynx bookmarks" section of the Users Guide - about appropriate versus unsupported modifications when editing the - bookmark files. - FM -* RP Styles 0.2 fixed a bit and brought up to current experimental code - level (no autoconfig or simple-curses, only older version of Wayne's - mods, maybe something else is missing, too). No documentation, no - detailed checking, no real cleanup. Makefile slightly adapted, - but still needs changing for new systems - see comments there. - KW -1997-04-24 -* Tweaks for enhanced mouse support in Win32 and hooks for 386 which - doesn't have mouse support yet. - WB -* External command added. See LYExtern.* in src and lynx.cfg. - You need to define USE_EXTERNALS to compile this in. - WB -1997-04-23 -* Modified LYCharUtils.c, HTML.c and LYMessages_en.h so that if a - partial reference (HREF or SRC value) would be resolved to an http - or https URL which has only two dots as the first symbolic element in - the path (e.g., http://host/../foo.html), such that the server would - reject the request, that element is excluded from the resultant URL, - but a statusline message is issued (once per document) about a bad - partial reference, as immediate feedback which might lead to the - document provider correcting the bad partial reference(s). We still - retain that first symbolic element, in compliance with the IETF RFCs - and IDs for resolving URLs, with other URL schemes (e.g., ftp). - FM -* Added a skip_stack int to the HTML.h struct _HTStructured, to use - for flagging that the next call to HTML_start_element or - HTML_end_element is an internal shortcut and should skip pushing - or popping the HTML.c paragraph style stack even for elements - that are not declared SGML_EMPTY. Added a SET_SKIP_STACK macro - to HTML.c to set the flag, use it. - KW -* Changes to HTML.c to better deal with a number of elements which may - or may not have been declared SGML_EMPTY in HTMLDTD.c: - if the last stacked element is HTML_OPTION, treat text as for - HTML_SELECT in HTML_put_character and HTML_put_character and - HTML_put_string. Added handling code for </P> to HTML_end_element - (similar but not identical to that for P in HTML_start_element). - Added check whether a SELECT is still open to FORM handling in - HTML_end_element. Added check whether a FORM is open to SELECT - handling in HTML_end_element. Added cases for end tags of - TABLE-related elements (TR, THEAD, TFOOT, TBODY, COLGROUP, TH, TD) - and of DT, DD, LH, LI, FONT, OVERLAY to the switch in - HTML_end_element, currently just break from the switch. - KW -* Some tweaks and corrections to the additional element info and - to the content types used with New_DTD, in HTMLDTD.c. Made - OPTION non-empty. - KW -* Now changed the tags_old[] in HTMLDTD.c, which is used with the - switchable "old" SGML parsing, to follow the changes for A, B, - BLINK, CITE, EM, FONT, I, STRONG, and U mentioned in the entry - of 1997-04-15. These, together with FORM and P, are all declared - as SGML_EMPTY now when the "old" SGML parsing is in effect, but - not with new parsing. - KW -* Changes to LYMail.c and LYPrint.c to send Content-Transfer-Encoding - headers and/or a charset parameter when mailing, based on idea from - Hynek Med. Don't use charset if we only have 7-bit characters - anyway. If compiled with EXP_CHARTRANS, use MIME name corresponding - to display character set if it looks valid (not "x-"), otherwise - only an explicitly given document charset. In the chartrans case, - don't send charset parameter for CJK since it may be wrong... - KW -* Added TRACE output to UCAuto.c - HM -1997-04-22 -* refined check for slang libraries/headers by checking if $CFLAGS has been - set so that slang.h is in the search path - TD -* add check to allow use of broken ncurses 1.9.9e's color - TD -* add check for NGROUPS, TRUE, FALSE macro definitions - TD -* remove top-level makefile.in targets that can be combined with the generic - target (more work required on the remaining ones) - TD -* Plugged memory leak in deleteLinks() of HTAnchor.c. - KW -* When dumping or outputting a rendered document via the 'p'rint menu, - Lynx would use the underscore placeholders for submit/image/reset - buttons as for other INPUT fields. We now load the values of - submit/image/reset buttons instead of placeholders into the HText - structure, so the values will be seen when dumping or outputting - via the 'p'rint menu. See the comments under case HTML_INPUT: in - HTML.c for the still less than optimal things that happen if a - wrap occurs within the INPUT value or placeholder strings, as might - happen in PRE blocks, or for strings wider than the screen. - LE, FM -* SGML_abort() did not free memory used by the SGML.c parser stack. - Now it does, but still doesn't call HTML_end_element() for the - stacked elements (it's an abort after all...) - KW -1997-04-21 -* Tweaks of the 1997-04-11 and 1997-04-09 mods in HText_endAnchor() of - GridText.c so as to take possible wrapping of Anchor content into - account when deciding whether or not to implement the Anchor as an - ACTIVATE-able link. - FM -* New SGML.c parser, and new HTMLDTD.c with additional element info. - Extra content information for each tag is now included in the - HTTag structure, and given in an extended tags_new[] table in - HTMLDTD.c. Modified start_element() and end_element() in SGML.c - to perform some heuristic wind-downs of the parsing stack, based - on the extra element info. - KW -* Revert treatment of some tags which were treated as SGML_EMPTY - before to their "natural" content model. No changes made to - HTML.c to accommodate this change, so results may differ where - HTML.c relies on previous hacks or has now handling code for - end tags of elements which were previously SGML_EMPTY. - KW -* Made SGML parsing switchable between old and new HTMLDTD info - and SGML.c code, controlled by a New_DTD global variable and - LYK_SWITCH_DTD toggle key. Use (temporarily?) ^V for the toggle key. - This is not yet changeable via command line, lynx.cfg, etc., and the - default is New_DTD==YES (so that it gets tested :-) ). - KW -* Made some of the error messages before exit in LYMainLoop.c and - LYMain.c go to stderr instead of stdout, but only for UNIX and, - in the case of the LYMainLoop.c messages, only if - dump_output_immediately was in effect. - KW -1997-04-20 -* Tweaks in LYCharUtils.c to bind META CONTENT to a header value only - via an HTTP-EQUIV attribute (i.e., not via a NAME attribute). - FM -* Mod in HTAccess.c to ignore the anchor's no_cache element if we're - seeking a position in the currently loaded document. - FM -* Commented out the above change in HTAccess.c. There's a more complete - mechanism for it already in this code... - KW -* Fixed a typo in the bookmark file lead text. - DK (Doug Kaufman - <dkaufman@rahul.net>) -1997-04-19 -* Changed the inappropriate StrAllocCat() to StrAllocCopy() for - loading the XLOADIMAGE_COMMAND in LYReadCFG.c. - PC -1997-04-18 -* Based on recent discussions in www-html@w3.org, added HY and SHY - to the DTD (treated as synonyms; one or the other is most likely - to be used in future HTML specs, so for now, we support both), as - markup equivalent to the named entity ­ and numeric character - reference ­ (soft hyphen). Note that Lynx implements soft - hyphens as specified in IETF RFC 2070 (link "HTML i18n" in the - Users Guide). Use of a tag instead of entity is preferable for - a soft hyphen because browsers which do not support soft hyphen - will ignore it as an "unknown tag" instead of inappropriately - inserting a hyphen or displaying the raw entity. Also added WBR, - which is handled like soft hyphen (indicating a permissible wrap - point), but does not insert a hyphen at the wrap. - FM -1997-04-17 -* Mods in HTML.c, HTML.h, and LYMessages_en.h to issue an HTML stack - overrun message only once per document, and as a statusline message - if not in TRACE mode, and to check in HTML_end_element() for - correspondence between the SGML and HTML stacks if an overrun should - occur. - FM -* Corrections in HTML.c for the bounds checks associated with DIV and - CENTER nesting levels, and for an HTML stack underrun. - KW -* Plugged a memory leak under case HTML_IMG: of HTML_start_element() in - HTML.c, and removed an inappropriate if(){} in HText_endAnchor() of - GridText.c. - FM, KW -* Modified the lead text created for bookmark files in LYBookmark.c so - that it indicates that an editor can be used to delete or reorder - the links, but that the format within lines should not be changed, - nor other HTML markup added. Note that the new lead text will be - used only when new bookmark files are created via the 'a'dd bookmark - link command. A new bookmark file is not created if the one being - sought already exists, so existing ones will still have the old - lead text. - FM -1997-04-16 -* Extensive changes to try to keep track of whether a document (or - a location within it) was reached by an internal (fragment-only) - URL reference or not. The basic idea is to be serious about I-D - (currently) draft-fielding-url-syntax-04.txt. - URL references starting with '#' are always to the current - document (from which the reference is made). This leads to a - lot of hackery in HTML.c, LYMainLoop.c, LYHistory.c, etc. etc... - to distinguish a doc that was reached by an "internal" reference - from others. But it seems necessary to keep track of how the - reference to a fragment was specified, whether with a non-empty - "real" URL (possibly relative) preceding the '#' or without it, - all the way way from the HTML parsing to the mainloop. Only then - can the mainloop decide to not start a new retrieval for an internal - reference without skipping a new retrieval if a full URL reference - with fragment is made to a location in the same document (which - may be non-cachable or the result of a POST)... - This code prevents unnecessary/inappropriate POST form resubmissions - on following an internal link in a POST response, as they are - present for example in WebTechs validation results. - KW -* A "Goto numbered link" feature. The user interface could be improved... - Start typing the link number, then add 'g' before hitting enter - KW -* Some improvements to WHEREIS search. Will not always position - found string on first line (details depend on whether anchors are - present, usually will position in top third of screen), and avoid - some unnecessary screen updates. - KW -1997-04-15 -* Miscellaneous additional tweaks in HTML.c for more robust error recovery - from bad HTML involving emphasis or style elements (B, BLINK, CITE, EM, - FONT, I, STRONG, and U), or HREF-less NAME-ed Anchors without matching - end tags. - FM -* Modified the declarations in HTMLDTD.c and code in SGML.C, HTML.c, and - GridText.c to handle A, B, BLINK, CITE, EM, FONT, I, STRONG, and U - container elements homologously to the modified handling of FORM (see - 1997-04-05 mods) so that if they are invalidly interdigitated or have - spurious end tags in the markup, substitutions of the "expected" end - tags by the SGML.c stack-based parser will not be made, and without - messing up the HTML.c stack-based parser. Appears to work reliably - for all of the elements, and to be reasonably crash safe (hopefully - as safe as the vanilla v2.7.1), but there are no guarantees. - FM -* Only *some* (most?) of the changes described in the above two - entries are used, as far as they change HTML.c. Not yet using the - changes to HTMLDTD.c and SGML.c. - KW -* refined logic of SVr4 curses color support to test the no_color_video - attribute - TD -* ifdef'd NCURSES_MOUSE_VERSION logic to allow build with ncurses 1.9.4 - TD -* ifdef'd wgetbkgd misspelling to allow build with ncurses prior to 1.9.9g - TD -* document USE_MOUSE configuration-option - TD -* modify configure script and makefile.in templates to make BSDI_Makefile - obsolete - TD -* rename config.h to lynx_cfg.h to minimize conflict when configuring against - ncurses or slang in nonstandard locations - TD -* new autoconf macro CF_HEADER_PATH is used to make header-search for slang - the same as ncurses - TD -* modify CF_CURSES_LIBS, CF_NCURSES_LIBS and CF_SLANG_LIBS to accommodate - predefinition of $LIBS variable - TD -* corrected autoconf'd compiler flags for Ultrix - TD -* add config.guess & config.sub to allow specialized host-type checks - TD -* guard against redefinition of NO_FILIO_H - TD -* use new autoconf macro CF_SYSTEM_MAIL_FLAGS -JES -1997-04-14 -* Tweaked LYAddImageMap() in LYMap.c so that it removes all pre-existing - AREA element entries when updating MAP element content, and set the - no_cache anchor element in LYLoadIMGmap() so that the updated MAPs - always will be used when rendering. - FM -* Not using the no_cache change from last entry, until further - investigation. - KW -* Removed two spurious lines under case LYK_PRINT: in LYMainLoop.c - (from an old cut and paste from case LYK_HISTORY: done too late - at night 8-). - FM -1997-04-13 -* Modified the handling of BASE for resolving HREFs in relation to MAP - and AREA elements, and USEMAPs in IMG and OBJECT elements. The - formally released code was treating such links equivalently to the - handling of fragments for positioning the display to ID-ed elements - or NAME-ed Anchors, and assuming they're in the same document if the - associated HREF value begins with a '#', rather than resolving versus - the BASE, and was always resolving versus the BASE for MAP ID or NAME - attributes, and for the AREA HREFs in MAP content. We now always - resolve the MAP ID or NAME attributes versus the current stream's - address (since the MAP must be in it or we wouldn't be handling it) - [...] According to the - original draft and the current HTML 3.2 Proposed Standard, - MAPs need not be in the same document as the IMG or OBJECT elements - which specify links to the MAPs. Because MAPs are "deferred objects", - they logically should be placed above any IMG or OBJECT elements which - reference them in the same document (as is done for SCRIPTs), but this - isn't stated in the specs, nor always done in practice. [...] - ([A]uthors who place the MAPs further down in the same document should be - informed about "deferred objects" and encouraged to move them up 8-). - FM -* Use logical extension of the rules for HREF references also for - USEMAP references to MAPs: relative URL references are resolved with - respect to a BASE element if one is present in the document where they - occur, unless they are URL references without a URL, i.e., only a - fragment starting with '#'. In the latter case they are taken as - internal references referring to a MAP in the same document where - the USEMAP occurs, whether the MAP occurs before the USEMAP (as it - should, according to previous entry) or after the USEMAP. - HREF's in AREA elements follow the same rules. - KW -* Fixed bug in HTML_free() for the case when LYMapsOnly is set. We - didn't create an HText structure for the stream (just scanned it for - MAPs and processed them into LYMap.c's LynxMaps structure), nor do - we want to create a blank one (as was being done) since we didn't - render the stream, nor would we have a me->target set. So we just - free any me elements that might still be allocated (though they - should have been freed already), and return rather than continuing - through the rest of the HTML_free() code. - FM -1997-04-11 -* Fixed bugs in Gridtext.c and HTML.c which could cause mishandling - of anchors in LINKS_ARE_NUMBERS mode if a line wrap occurred in - the numbered bracket or the anchor content following the bracket, - and failures to suppress the numbered bracket if the anchor content - was empty due to ALT="" in an IMG tag, or if Lynx was configured or - toggled to suppress the link for the server-side image map if both - ISMAP and USEMAP attibutes were present in the IMG tag. - FM -* Only using the number-removing code under additional conditions: - ISMAPs which appear together with USEMAPs and which are suppressed - with LYNoISMAPifUSEMAP in LINKS_ARE_NUMBERS mode. - KW -* Extended the disk_save restriction to the print menu as well as - the download menu, and accordingly updated lynx.hlp, lynx.man, and - Lynx_users_guide.html. - HN, FM -1997-04-09 -* Many changes to further the Win32 and 386 ports. An emulation of - the HTVMS_ calls was used to try and cover all the DOS'izms. - A specialized ifdef for pdcurses color mapping added. Some keypad - tweaks. More generalized process spawning. .lynxrc is lynx.rc for 386 - WB -* Tweak to ensure that a newline isn't inserted by virtue of a - FORM start tag if it's in the first line of a list element and - no text precedes it other than a UL's bullet or OL's number - on that line. - FM -* Added pauses for the "Bad HTML" statusline messages under cases - HTML_HTML and HTML_BODY in HTML_end_element(), and eliminated - their checks for an unclosed FORM because we no longer expect - that to cause a serious problem. - LE, FM -* Added a NO_ISMAP_IF_USEMAP configuration symbol and -ismap - command line toggle for suppressing inclusion of a link for the - server-side-image-map if an IMG or OBJECT element has both ISMAP - and USEMAP attributes such that a client-side-image-map link is - created. Updated lynx.man, lynx.hlp and Lynx_users_guide.html - accordingly. - FM -* Fixed a glitch in HText_endAnchor() of Gridtext.c which could - cause dangling Anchors in LINKS_ARE_NUMBERED mode if the Anchor's - content was handled in a manner which caused it to become zero - length. - FM -* Moved handling for NEWS_POSTING in LYReadCFG.c to the right place, - so that it can actually have an effect. - LV -* Typo fixes for the comment concerning NO_ANONYMOUS_EMAIL in - userdefs.h - HN, FM -1997-04-08 -* New translation table koi8r_uni for KOI8-R charset. Lynx can now - translate between iso-8859-5 and KOI8-R, at least for the Cyrillic - characters present in both. - KW -* New translation table def7_uni with default 7-bit mappings - (replacement representation). Based on RFC1345 and mnemonic,ds - from ftp://dkuug.dk/i18n/ and previous Lynx replacements - in LYCharSets.c and IPA FAQ convention and stuff for Ethiopic and - KOI8-R. It maps many of the accented Latin characters present in - Unicode to their unaccented counterparts. This table is now - used for the "7 bit approximations" display "character set". - KW -* Entities for Latin2 characters added to HTMLDTD.c These also - include many entity names for ASCII characters, and characters - which are in both iso-8859-1 and iso-8859-2. - Hynek Med -* Changes to the non-chartrans translation tables in LYCharSets.c - for Đ, Ð, and ð. Treat Đ more like - an entity for the (Latin-2) Unicode character U+0110, since - that seems to be SGML standard usage. - KW -* Added mappings for some "smart quote" characters to several - translation tables. - KW -* Make makeuctb slightly more flexible (accept unicode range for - mapping to single code point). - KW -1997-04-07 -* Took out special-case handling in the curses-color code for underlining - when lynx is running under Linux using the linux console with color. - The code was introduced on 1997-03-12 and would ignore "smul" capability - info from terminfo or termcap under those circumstances, always using - bold instead of underline. - KW -* Slightly modified the FORM handling patch of 1997-04-05, as follows: - Use a generic test for a non-SGML_EMPTY element for bypassing the - stack pop in HTML_end_element() of HTML.c instead of an explicit - test for HTML_FORM. - KW -1997-04-06 -* Patch for IMG elements which have both ISMAP and USEMAP in effect. - In HTML_start_element() don't generate the "[ISMAP]-" string for - output in this case, unless clickable_images is set TRUE. - KW -1997-04-05 -* Patch for Lynx v2.7.1 to handle invalidly interdigitated container - elements or spurious container end tags without substitutions of - "expected" FORM end tags by the SGML.c stack-based parser, and - without messing up the HTML.c stack-based parser. Reliably succeeds - in not closing FORMs before all of the FORM elements, including - submit buttons, have been processed. Should be reasonably crash - safe (hopefully as safe as the vanilla v2.7.1), but there are no - guarantees. - FM -1997-04-04 -============================================================================ ---- Release of Lynx2-7 + BUGFIXES as Lynx v2.7.1 (April 4, 1997) by FM --- -============================================================================ -* Note that 2.7.1 was not a release from this code set, but all 2.7 -> 2.7.1 - bugfixes and other changes are also included in this code set, in either - identical or equivalent form. Therefore the entries below this point - comprise the 2.7 -> 2.7.1 changes, and additionally other changes made to - the development code set during that time. - KW -1997-04-02 -* add Andrew Kuchling's patch to support mouse-clicks with ncurses. - TD -* refine tests that address porting problems to SCO (detecting struct winsize, - workaround for misdefinition of 'remove') - TD -* refine CF_COLOR_CURSES test to avoid ncurses 1.9.9e bugs. - TD -* refine CF_PATH_PROG to allow for machines that haven't the given programs, - by using only the program name and added configure option - --disable-full-paths to enforce this behavior. - TD -* fixes for some gcc compiler warnings (missing prototypes, unused variables, - uninitialized variables, shadowed variables). - TD -* Fixed typos in LYHistory.c, LYMail.c and LYMain.c which caused - failures of flag setting in the distributed code. - TD -* correct cast in HTFWriter.c that may break if atoi() is not prototyped. - TD -* add top-level makefile target 'maintainer-clean', use this to remove - Lynx.prj - TD -1997-03-31 -* Added a missing check for whether the fragment token is NULL in - LYConvertToURL() of LYUtils.c. Without the check, the for-Unix code - could crash if a local file spec was entered as a startfile or goto - with escaped characters. - KW -* Mod in HTML.c to retain "[INLINE]" as the default ALT string if an - IMG element has an ISMAP attribute but is not in Anchor content such - that it could not in fact function as a server-side image map. - FM -1997-03-27 -* In mainloop(), after the call to HText_pageDisplay() following a change - of the document view, ensure that curdoc.link does not remain set to -1 - if there are any links on the screen. This would otherwise happen if - a document is pushed to the history stack while there are no links, and - later popped (and refreshed) after one or more links have been created. - This change prevents segmentation faults which occurred after creation - of a new file in a previously empty directory via the DIRED menu. The - access to invalid memory only occurred if the screen showing the empty - directory did not have a parent dir reference link (which is always the - case if NO_PARENT_DIR_REFERENCE was specified at compilation time). - KW -* In LYLocal.c, modified the code handling DIRED_MENU to do more careful - checking of the selected file. In addition to "TAG", "FILE", and "DIR", - DIRED_MENU definitions in lynx.cfg now also recognize LINK as a type. - DIRED_MENU definitions with a type field of "LINK" are only used if the - current selection is a symbolic link ("FILE" and "DIR" definitions are - not used in that case). The default menu definitions have been updated - to reflect this change, and to avoid the showing of menu items whose - action would always fail - KW -* Some cleanup to eliminate compiler warnings, remove some unused - variables - KW -* Fixed a typo and added comments for the code in LYMainLoop.c which - decides whether to load the URLs for homepage and/or startfile into - the goto buffer at startup. The typo in the distributed code caused - the startfile URL always to be added to the goto buffer, even if - it had POST content such that it could be resent inappropriately - as a GET request via the goto buffer. - FM -* Added a bsdi-slang target to the Makefile. - Laura Eaves -1997-03-26 -* Changed highlighting of strings found by a WHEREIS ('/') search. - Now uses Christmas tree attribute combination ("all bits are on"), - which with color support translates to COLOR:7. - KW -* Modified the HTStream structure and associated code in src/HTFWriter.c - so that we save and use the relevant content of the associated - HTPresentation structure as two HTFormat elements rather than via a - pointer to the HTPresentation structure itself, because the latter - structure might not be valid under some circumstances when - HTFWriter_free() is called. The distributed code might indirectly - result in segmentation faults during downloading on Linux and some - other flavors of Unix (though they don't occur for most flavors, or - on VMS). - KW -1997-03-23 -* Further reduction of top-level makefile.in by moving definitions out of - WWW/Implementation/*/Makefile, so only one is needed for autoconfigured - build (i.e., WWW/Implementation/unix/Makefile). This highlights the - remaining differences between the top-level targets - TD -* Make configure script generate Unix makefiles in subdirectories, a step - toward being able to run make from any directory, for development - TD -* Add autoconf tests for paths of programs, including sendmail vs mmdf - TD -* Add configure script options for development (--disable-echo, --enable-debug, - --enable-find-leaks, --enable-warnings) - TD -* Allow user to override search path for ncurses header by setting $CFLAGS or - $CPPFLAGS - TD -* Correct array limit in LYCurses.c for SVr4 color support - TD -* Use addstr rather than printw in popup-forms to address concern about 8-bit - characters - TD -1997-03-21 -* Changes in auto config handling of ncurses header location, function - used for reading terminal input, some other system dependent tweaks - (including SCO broken remove, time.h) - TD -* Fix for popup handling with late ncurses versions (uses wprintw - instead of waddstr in LYForms.c) - TD -* Mods in LYPrint.c to use ".txt" as the output file extension for - all rendered text/html files regardless of their original extension. - The distributed code was doing this only for ones with an extension - of ".html". The original extension still is retained if the file - is being output as source. - FM -* Added protection against passing a NULL pointer for path_url to - render_item() from dired_options() in LYLocal.c. - GN -1997-03-20 -* Tweaked the protection against URLs directed to port 19 or port 25 so - that it can't be circumvented via lead zeros in the port numbers. - FM -* Changed the compilation default so as not to send From MIME headers to - http or https servers. The default can still be changed via lynx.cfg. - Replaced the -nofrom disabling switch to a -from switch for toggling - the compilation or configuration default. Sending the From header - has become widely regarded as an invasion of privacy risk, particularly - in conjunction with cookie support. - FM -* Corrected a typo in the lynx.cfg comments concerning TRUSTED_LYNXCGI - rules. - KW -1997-03-17 -* Mods of LYNews.c and LYMail.c to prepend a "-- " separator before - appending the LYNX_SIG_FILE signature file to news and email - messages. - FM -* Made the installation mode 755 in the top-level Makefile. The - distributed code used 555, and some install commands were unable - to do the strip. - LV -1997-03-14 -* Corrected typos and expanded the comments concerning lynxcgi symbols - in userdefs.h and lynx.cfg. - FM -* Modified SGML.c to handle the numeric character reference ™ as - the named entity ™ also in the non-chartrans case. The - trademark character (given by ™ or ™) will be shown as - "(TM)" as the ASCII substitution unless the current display character - has a code point for the trademark character or unless overridden by a - chartrans translation table. The code of 1997-02-25 prevented showing - the trademark sign as "(R)" but did not work in all non-chartrans - cases. - KW -* Include time.h via tcp.h for SVR4 systems. The tcp.h header does include - sys/time.h for Unix systems, but this apparently doesn't get struct tm - and extern char * ctime() declared for SVR4. - FM -1997-03-13 -* Added protection in LYGetFile.c against connections to the port 25 - ESMTP service. - FM -1997-03-12 -* (chartrans) Make compilation in src/chrtrans less verbose, no more - generating automatic *.h_old backup copies. - KW -* Refinement to the SVr4 (ncurses) color support, allowing it - to more closely model the slang support. - TD -1997-03-11 -* Tweak for command line parsing of files with no URL in LYUtils.c. - Also added ability to pass partial domain names in the DJGPP version. - WB -* Added the closing function for Win32 TCP in LYExit.c (did anyone see a - difference?!). - WB -* Altered LYCurses.c so that the DJGPP version could spawn other programs - without certain death. - WB -* Ignoring the whole ~/lynx.cfg problem (expanding '~') entirely for the - Win32 version for now. - WB -* Some other tweaks for Win32 and DJGPP - WB -* Added protection in LYGetFile.c against denial of service attacks via - the port 19 CHARGEN service. The distributed code left Lynx or proxies - vulnerable to such attacks via direct or redirection URLs. - FM -1997-03-10 -* Fixed error in the handling of numeric character references with values - greater than 255 in SGML.c. The distributed code was breaking after - substitutions instead of falling through to reset the string chunk and - recycle the terminator if not a semi-colon. - FM -1997-03-09 -* Integrated (simple) color, auto-configure patches with 2.7 following - chrtrans patch - TD (T.Dickey), JES (J.Spath) -1997-03-08 -* Fixed error in the switch positioning of checks for XLOADIMAGE_COMMAND - and wais_proxy in LYReadCFG.c. The distributed code had them reversed - under case 'W' versus case 'X'. - PDS -* Expanded the copyright and licensing statements in the -version - output. - FM -1997-03-04 -* Corrected the offset computation in textsearch() of LYSearch.c so that - WHEREIS searches repeated on a page with no links seek the target - starting at the line immediately following the last displayed. The - distributed code was setting a greater offset. - JES -1997-03-02 -* Don't entify post content for the showinfo display, now that we are - making it an XMP block in that display to handle all of the supported - enctypes. - FM -* Patches to fix mail and FTP for Win32 (LYMail.c, HTFile.c). - WB -* Makefiles to compile chartrans code for Win32. - WB -* (chartrans) Minor cleanups (makeuctb.c, chrtrans/Makefile, HTPlain.c) - to enable successful compilation on Win32. - KW -1997-02-28 -* Changed all references to "image/*" to just "image" in the userdefs.h - and lynx.cfg comments about XLOADIMAGE_COMMAND. The "/*" within the - userdefs.h comments was generating warnings from some compilers. - FM -* Added a snake-slang target to the Makefile, and added -DUNIX to the - LYFLAGS for the snake3 and snake3-slang targets (HP-UX apparently does - not define "unix" itself with the -Ae switch, and thus needs to have - that definition forced via -DUNIX). - HL -* Merged with patches and makefiles from Wayne Buttles - (buttles@wsb.champlain.edu) to enable compilation in two new environments: - Win32 (95/NT) with Borland C++ 4.52 compiler, and 386 DOS with DJGPP - compiler. To add ports for Win32 (95/NT) and 386 DOS computers with a - packet driver, four new defines were created: _WINDOWS (Defined for Win32 - specific code - Mostly TCP related), DJGPP (Defined for 386 specific code - - Mostly TCP related), DOSPATH (Defined for any DOS'ish computer), and - NOSIGHUP (Defined for computers not supporting sighup signal calls). - Separate utility programs needed for compiling and running Lynx on those - platforms are available from Wayne at - <http://www.fdisk.com/doslynx/wlynx/>. - WB, KW -* Fixed Telnet for Win32 - WB -* (chartrans) Small correction in SGML.c (set_chartrans_handling) - KW -1997-02-26 -* Close both descriptors of the pipe() for the NSL_FORK enabled code - in HTTCP.c. The distributed code was closing only one of them on - completed gethostbyname() calls, and neither on 'z'aps. - FM -* Changed the HREF for the "Lynx FAQ" link in the online 'h'elp to - its new URL (http://www.slcc.edu/lynx/faq.html). - FM -1997-02-25 -* More reverse engineering to cope with Netscape's bogus cookie header - parsing. The parser must not require an '=' between the expires - attribute name and value, because Set-Cookie headers are being - transmitted without it (e.g., by http://law.agps.gov.au). So Lynx - now treats that as another special case. - FM -* Cope with invalid use of expires attributes in Version 1 cookies. - An -06 State Management draft recommends that for "backward - compatibility", and has been severely criticized in the HTTP-WG, - but it would be foolish not to assume Netscape will do that. See the - expanded comments in LYSetCookie() of LYCookie.c for more information. - Note that "expires" thus cannot be used as a Version 1 cookie name, but - a provider would be foolish to use that, anyway. Note also that the - possibility of using different header names for Version 1 versus - Version 0 (a.k.a., "Netscape") cookies is being discussed in the - HTTP-WG, which might have been better to do in the first place, but - the -05 draft has been approved as RFC 2109: - http://info.internet.isi.edu/in-notes/rfc/files/rfc2109.txt - so it would be a while before that were done, if ever. - FM -* chartrans code for translation of character sets, handling of Unicode, - and i18n updated for Lynx 2.7. Support for CHARSET attribute on A - tags. New directory src/chrtrans with table files. Compilation flags - -DEXP_CHARTRANS, -DEXP_CHARTRANS_AUTOSWITCH (for Linux), - -DSLANG_MBCS_HACK (for raw unicode console). - New command line options when compiled with -DEXP_CHARTRANS, i.e., - "-assume_charset", "-assume_local_charset", "-assume_unrec_charset". - See README.chartrans and README files in src/chrtrans for more info. - INFO screen shows of effective charset even if not given explicitly. - Translation routines in LYCharUtils.c not chartrans-ified at this point - KW -* No showing of ™ or ™ as (R) any more, use (TM) instead. - KW -* Prefer HTTP-EQUIV over NAME in META tags. - KW -1997-02-22 -* Fixed a memory management glitch which could cause a crash if the - MIME type of a reply to a FORM submission with METHOD=POST caused a - download offer to be invoked. - FM -* Don't simplify ftp URLs by trimming trailing slashes if the URL is - being proxied. The Netscape proxy server for some unknown reason - can return redirection for ftp URLs with the slash appended, and - trimming it can result in a redirection loop. Based on a posted - patch from KW. - FM -* Fixed two typos in the checks for HTPassHighCtrlRaw in LYExpandString() - of LYCharUtils.c. - KW -* Fixed typo in the equality check on line 1553 in HTGopher.c. - FM -1997-02-19 -* Reset the host string after an '@', if present, when trimming default - ":port" fields in the new code aimed at compliance with the Masinter - and Fielding URL drafts, expected to replace RFCs 1738 and 1808. The - distributed code neglected to do that, and was ending up on a ":password" - field, if present, instead of on the ":port" field, causing the username - to be treated as the host name. - FM -* Expand the default port trimming so as to include all of the registered - URL schemes which support a port field in the v2.7 release. - FM -* Correctly uncache the current directory listing when invoking an 'u'pload, - so that it will be updated to include the uploaded file if placed in the - current directory. The released code attempted to do this in a manner - which prevented a pop, so that the directory listing couldn't be restored - on return from the uploader menu. - FM -* Recognize a bookmark file used as the startfile, whether it resides in the - home directory or in a subdirectory off home. The released code failed if - the file was in home, and not in a subdirectory, unless the -book switch - was used instead of a startfile entry or WWW_HOME variable. - FM |