Changes since Lynx 2.8 release
================================================================================
1998-09-25 (2.8.1pre.2)
* fixed forms submission charset: was broken by me in dev26 (HText_SubmitForm()
in GridText.c) - LP
* documentation updates for verbose images - LP
* minor fix for trace message in TrimHightext() -LP
* add compatibility with 2.8/2.7.2 lynx.cfg and (especially) .lynxrc - old
"character_set" parameter now acceptable - LP
* add OUTGOING_MAIL_CHARSET symbol to lynx.cfg to make mail more recognizable
by remote recipient, it may be "US-ASCII" for 7 bit approximation as the
safest case or any other value. If blank, use display character set
(default, compatibility). Currently implemented only for "subject" in
"print-to-email" - LP
* fix SGML.c so invalid characters are not dispalayed in hex UHHHH but just
omitted as already done for plain/text mode - LP
* fix download' suggested file name (8bit) - LP
* correct logic error in "Change Location" command, and allow "~" there in
addition to the existing "~/" prefix (reported by Ismael Cordeiro) - TD
* ifdef'd out "don't replace '\n' with ' ' if Chinese or Japanese" from dev.23,
with symbol EXP_JAPANESE_SPACES, FIX_JAPANESE_SPACES based on discussion with
HN, LP - TD
* correct missing '\' in generated sed-script for "make install-help" rule,
which changed a couple of "/html" substrings to ".html" (reported by BL) - TD
* modify cfg_defs.sh script to handle empty token in config.cache, e.g., a line
such as "foo=${foo=}" (reported by Philip Chong <pchong@boopsie.ml.org>) - TD
* modify so that lynx_cfg_infopage() and lynx_compile_opts() pages are not
invoked when Lynx is running -anonymous - TD
1998-09-22 (2.8.1pre.1)
* correct logic error in parse_restrictions() which caused infinite loop,
probably from changes in dev.8 (reported by HN) - TD
* add SHOW_KB_RATE symbol to lynx.cfg to allow user to control whether
HTReadProgress should show KB/sec or bytes/sec - TD
* modify HTReadProgress to allow user to display KB/sec or bytes/sec - BL
* add/use new function LYstyles(), to force initialization of styles[] array
when it is used outside HTML.c; fixes a problem with Lynx not using styles
for files listed on the command line - TD
* correct keymap strings for F1 and DO_KEY - TD
* add keymap table entries for F1, to accommodate slang which appears to ignore
terminal description when keymaps are defined - TD
1998-09-20 (2.8.1dev.29)
* add checks/warnings for user agent string in forms-options menu - TD
* change render_item to force a '/' before substituted path or directory strings
if (as in OS/2 EMX) absolute filenames do not normally begin with a '/' -TD
* modify HTnameOfFile_WWW() to interpret an empty acc_method as a local file,
allowing its use in permit_location(), making OS/2 EMX dired-mode change
permissions work - TD
* make download and print menus a little more compact in intermediate/advanced
user modes - TD
* correct filename shown in download menu - LP
* change behavior of configure --enable-forms-options switch. By default, both
old and new options menu are available via a command-line toggle
"-forms_options" or lynx.cfg statement "FORMS_OPTIONS:TRUE/FALSE". Configure
--enable-forms-options now _disables_ old-style code, which is
ifdef'ed with "#ifndef EXP_FORMS_OPTIONS" - LP
* add more pointer-checks in GridText.c so that "lynx LYNXDOWNLOAD://" does
not crash (reported by Wilson Cheung) - TD
* add special case to handle NNTPSERVER environment variable, which had been
lowercased as part of LYReadCFG.c cleanup (reported by Wilson Cheung
<wcheung@netcom.com>) - TD
* modify info-page to add link to new internal page showing the noncomment
lines from lynx.cfg - LP, TD
* use function wwwName to reduce clutter - LP
* create "lynx.cfg Information" page, comments skipped, "include" OK.
The link is available from '='InfoPage and 'O'ptions menu.
Since DJGPP/Win32 binary have no built-in absolute path for distributions
lynx.cfg those ports will look for a copy of lynx.cfg in lynx_help/
for most advanced info/comments (if you made http:// depository for lynx help
please care of it) - LP
* tweak helpfilepath URL (for DOSPATH only) - LP
* some cleanup of cp852, cp850, cp775 - LP
1998-09-17 (2.8.1dev.28)
* minor fix to make PRCS ProjectDate print in "dd mmm yyyy" form - TD
1998-09-17 (2.8.1dev.27)
* minor fixes for recent (dev24 and dev25) chartrans changes - LP
* add LYNX_DATE definitions in userdefs.h; Info Page now shows the date of your
lynx along with version number and a link to the latest sources. - LP
* use ECHO_CC symbol in install-help rule to control whether the sed commands
are echoed - TD
* corrected install-help rule to avoid getting compress-suffix repeated in
the generated/updated files - TD
* documentation nit for COLLAPSE_BR_TAGS (Michael Warner)
* use getsockname_s rather than getsockname for djgpp (from patch by Gisle
Vanem) - DK
* add .bz2 suffix to lynx.cfg and HTInit.c, for bzip2 utility - DK
* modify store_cookie to suppress warning message for invalid domain if Lynx is
setup to accept all cookies - LV
* modify/expand LYLocalFileToURL() function, getting rid of most places where
inline concatenation is used for "file://localhost/<filename>", as well
as eliminating a number of static buffers - TD
* move fallback definitions for POSIX S_ISLNK, etc., out of NeXT ifdef's, to
make this compile on Apollo (reported by David Eaton) - TD
* restructured pathname-tests in LYLocal.c, using common utility functions
ok_stat, ok_lstat, ok_file_or_dir to simplify freeing pointer allocated
by HTfullURL_toFile - TD
* modify HTLocalName, making it a macro around a more flexible function
HTnameOfFile_WWW, to reuse logic for stripping off "file://localhost" and
"file:" prefixes, fixing some places where a spurious '/' would be left in
EMX local filenames (other macros: HTfullURL_toFile, HTpartURL_toFile) - TD
* modify configure script macro CF_PATH_PROGS for OS/2 EMX, so that compiled-in
utility pathnames work - TD
* use HTDOS.c module for OS/2 EMX, since it has similar device syntax - TD
* correct logic for wrapping long lines, to not use the rightmost column of the
screen, fixes a problem with duplicated character (reported by LP) - TD
* correct logic for dumping screen to file, so that blank lines are retained,
not counted in the logic for pruning soft-newlines which supports wrapped
lines - TD
* add info and user messages to traces - TD
1998-09-12 (2.8.1dev.26)
* change behavior of NSL_FORK and related I/O (patch by BL)
- Make URL guessing (www.huh.com? www.huh.org? www.huh.net?) interruptible.
- Make URL guessing from the command line interruptible.
- Use select() instead of FIONREAD. This makes it work on OSes where
previously it only *looked* like it was working.
- select() on stdin as well as the child pipe, when using [n]curses (not
SLANG). This allows interrupt to be processed instantly, without
up-to-1-second delay.
- While looping, 1 second at a time, bail out after "too many" (currently 50)
loops: just in case something weird happens, like select() returning some
unexpected error that we ignore.
- Make sure child processes are always killed and reaped.
- Close pipe ends as soon as possible.
- Now write the length down the pipe (using a known-to-the-program length of
sizeof(int)) first -- this both helps workaround old CMU TCP bugs and the
fact that select() doesn't let us get number of bytes ready, like FIONREAD
does.
* change default for NO_ANONYMOUS_EMAIL to TRUE (patch by HN)
* use url for "W3C HTML Validation Service" rather than "A Kinder, Gentler HTML
Validator"
* update url for HTML Quick Reference Guide (report by LE) - TE
* modify verbose images to show ISMAPs and USEMAPs (patch by LE).
* fix typos in AttrList.h, LYStrings.h (reported by LV & HN) - TD
* Chartrans recovery and cleanup: by introducing an invariant
"current_char_set and UCLYhndl_for_unspec always valid charsets" we solve
possible problems with invalid/undeclared charsets. Use
'safeUCGetLYhndl_byMIME()' for reading charset information from
lynx.cfg/userdefs.h/command line switches to recover possible typos by
fallback to ISO-8859-1; If UCLYhndl_for_unrec or UCLYhndl_HTFile_for_unspec
not set explicitely - now fallback to UCLYhndl_for_unspec (was before, but
not clear in certain places). Add comments to UCMap.h, add comments on
chartrans initialization in LYMain.c. UCAssume_localMIMEcharset and
UCAssume_unrecMIMEcharset now removed (UCLYhandl_* do all the stuff). - LP
* LYCharSets.c: LYRawMode code simplified and comments added. It was realized
that UCAssume_MIMEcharset may differ from its handler as LYRawMode history.
Also: HTMLSetRawModeDefault() moved into HTMLUseCharacterSet() to reduce
clutter, declare HTMLSetCJKCharacterSet() as PRIVATE. - LP
* more "big5" bugs fixed (in HTMIME.c and HTFile.c); function Set_HTCJK() added
to LYCharSets.c - LP
* LYCharUtils.c: META charset code corrected against 2.7.2, obsolete code
removed - LP
* partial mode now repaint the screen in one stage with a complete display
('display_lines' received, fix in HTPartialDisplay()). Incremental rendering
of the first page may be annoying on slow connection (reported by Nelson
Henry Eric <nelsonhe@nara.kindai.ac.jp>) - LP
* temp fix for HText_trimHightext side effect from partial mode by introducing
a flag in HText_beginInput(), so this side effect still only happens for long
documents with forms input mixed with normal href= link. - LP
* print menu: fixed document URL near the top (was temp file name) - LP
* forms-options menu: fixed screen size in Novice mode - LP
* limit length of strings copied via tok_values[] in LYCookies.c - TD
* clean up a few memory leaks in cookie_add_acceptlist() and
cookie_add_rejectlist() in LYCookie.c. These were leaking 4 bytes for each
entry in COOKIE_ACCEPT_DOMAINS - BJP
* fix to LYLoadCookies() which was causing duplicate invalid cookies to be
loaded - BJP
* split out install-doc rule in top-level makefile to install extra documentation
files in $(libdir)/lynx_doc (request by HN) - TD
* improved algorithm to set 'secure_value', used in forms-options to circumvent
spoofing (based on comments from Mike Castle) - TD
* integrate WB's mouse changes (see 1997-04-24) for page-up/down into the Unix
flavors of mouse support (e.g., ncurses and slang) - TD
* use ncurses define_key to implement lynx-keymaps (see dev.10) - TD
* modify slang keymap code to work with slang 0.99-38 - TD
* replace several ifdef'd pathname constructions to use LYAddPathToHome() - TD
* make keymaps file consistently named on Unix and VMS - TD
* remove redundant "Lynx" from internal-page titles (suggested by LP) - TD
* remove install-log makefile target, generate cfg_defs.h file directly from
lynx_cfg.h and config.cache, to compile-in the configuration-definitions
rather than rely on external file lynx_site.txt - TD
1998-09-06 (2.8.1dev.25)
* corrected compiled-in path for lynx_site.txt - TD
* implement logic for exec-links in forms-options page - TD
* add configure options --enable-exec-links and --enable-exec-scripts - TD
* correct logic for show-color in forms-options page (reported by DK) - TD.
* implement logic to set $DISPLAY in forms-options page - TD
* add/use functions LYsetXDisplay() and LYgetXDisplay() to reduce clutter - TD
* retain help-link on internal pages only for those where the pages would be
pushed onto the history stack, and only in novice mode - TD
* absorb LYSystem.h into LYUtils.h, adding LYSystem() and LYSysShell functions
to LYUtils.c to hide djgpp clutter - TD
* limit strings passed to mailer in LYMail.c to 7-bit ASCII, converting other
characters to '?'. This guards against trash on the end of the mailing
address in a mailto link (from Duncan Simpson <dps@io.stargate.co.uk>).
* add fallback definitions for <sys/stat.h> S_xxx macros to tcp.h (from report
by Francisco A Tomei Torres <fatomei@sandburg.unm.edu> that OpenStep 4.0
lacks definition for S_IWOTH) - TD
* modify quote_pathname() so that for DJGPP it does not put single-quotes
around the result - DK
* correct a missing assignment to turn bold off in split_line (GridText.c) - LE
* Fixed: forms input in display_partial mode! Previously hightext was printed
at wrong positions while loading was in process (try -debug_partial to see
the bug). Fix made in HText_pageDisplay: we call HText_trimHightext() which
was the main part of HText_endAppend() before. Seems no more problems
reported from incremental rendering mode! - LP
* set PARTIAL mode ON by default, unless it disabled in lynx.cfg or by
configure --disable-partial option - LP
* restore temporary -debug_partial switch, broken in dev.23. - LP
* made trace in HText_appendCharacter() a little more readable
for lynx special characters - LP
* chartrans: human-readable character set names in Options Menu now changed
according to Netscape 4.x style - "language (MIMEname)", it looks more useful
and reduce chaos in people's heads. Documentation corrected
(option_help.html/Lynx_User_guide.html). Minor tip: "Central and Eastern
European" was truncated to "Eastern European" because of space limitation in
popup menu. (Changes in chrtrans/*.tbl, LYCharSets.c, also docs including
userdefs.h/lynx.cfg). Since names were changed, users on display other than
iso-8859-1 should go to options menu and resave .lynxrc (and probably correct
lynx.cfg - character_set now uses MIME notation in sync with other charset
settings, although complete name string is still acceptable for this field).
- LP
* an attempt made to tweak the code replacing lynx internal 'main' charset '0'
(iso-8859-1 in fact) with its MIME name. - LP
* rename ifdef EXP_8BIT_TOUPPER in favor of lynx.cfg switch FORCE_8BIT_TOUPPER
- LP
* remove a lot of "(char **)" casts from HTML.c which obscured some type
mismatches - TD
* add/use functions LYIsHtmlSep, LYAddHtmlSep, LYTrimHtmlSep, LYIsPathSep,
LYAddPathSep, LYTrimPathSep to reduce clutter - TD
* fix a bug, present at least since dev.17, where lynx can't download files if
it is started from one of the root directories of a disk drive, since it is
trying to write to "c:\\file.ext", rather than "c:\file.ext" - DK
* correct a comment in userdefs.h; commercial Japanese sites are named with
co.jp, not com.jp (LV).
* correct some debug messages in LYCookie.c - BJP
* fix a missing </h1> in ShowInfo.c - SKY
* modified '+'->' ' conversion to allow Unix commands to have '+' beginning
options - TD
* sorted all option items (i.e., static variables, postoptions(), gen_options())
according to the sections they are in - SKY
* added '+'->' ' conversion for forms-options values - SKY
* centered 'save to disk' and put a dash between 'accept' and 'reset' for
clarity - SKY
* add "-cookie_file=" commandline option to specify cookie file - BJP
* add "cookie_file=" option to .lynxrc - BJP
* add "cookie_file:" option to lynx.cfg - BJP
* change default cookie file to "Home_Dir()/cookies" (or sys$login:cookies
for VMS, which may or may not work, DOS also needs to be checked) - BJP
* add cookies switch to options menu - LP
* Security considerations and form-based options: items restricted in
gen_options() should be ALSO restricted under the same conditions in
postoptions() to prevent a limited access user to edit option's HTML code
manually and submit a restricted items. This may be not a good idea to have
two functions in sync but those functions are synchronized anyway. Please
read comments inside the functions if change something! - LP
* add new functions BeginInternalPage and EndInternalPage to reduce clutter in
code that sets up internal pages (email from LP).
* change version in makefile.in to 2-8-1 (reported by DK).
* the code in GridText that adds control characters to the current line
does not test for buffer overflow. Normally Lynx gets away with this because
it will wrap the current line as soon as the line exceeds the display width,
but if you have a file with nothing but control characters with no
displayable text in-between (a few thousand hidden links will do), then Lynx
bombs. Modified to silently ignore excess control characters as well as add
a few extra bytes when allocating the line buffer to allow for a bunch of
control characters followed by a kanji or utf-8 sequence. (patch by Dick
Wesseling <ftu@fi.uu.nl>)
* remove WWW/Library/Implementation/HTInit.c, which is not used, since
src/HTInit.c has this functionality - TD
* change ID="<number>" in Lynx_users_guide.html to ID="<name>" to appease
weblint; tested with IE&NS - TD.
* Al's convention of '#<number>' into '#<id name>' in Lynx_users_guide.html is
included - SKY
1998-08-31 (2.8.1dev.24)
* re-correct DH's patch for COLLAPSE_BR_TAGS (reported by LV) - TD
1998-08-29 (2.8.1dev.23)
* make interim fix for gzip'd html files until we can resolve portability
issues raised by SKY's renaming - TD
* implement LY_SOFT_NEWLINE, to mark places where wrapping is done in
HText_appendCharacter, to allow printing to join lines back together
(reported by LP) - TD
* correct missing assignment in change to HText_appendCharacter, fix a core
dump - TD
* removed SKY's change that attempted to skip help-links, since it causes a core
dump, e.g., when viewing source - TD
* use LYCloseTempFP in forms-options code and LYPrint.c where file was opened
with LYOpenTemp, to fix a core dump - TD
* All XYZ_TITLE defines of UIPs (User Interface Page) are collected in
LYMessages_en.h for multi language support - SKY
* Head and H1 of each UIP is standardized; reduced to 1 line. In this line a
context sensitive Help anchor introduced which is skipped by default; i.e.,
'd' will directly goto 'Save to Disk' not to the help anchor - SKY
* Download and Print UIPs are divided into 'Standard' and 'Local additions'.
Current and Suggested Filenames are printed on the page which was hidden on
the status line or accessed only by '=' - SKY
* Information page now has links to either development or lynx home pages
depending on LYNX_RELEASE define. Besides compile options can also be
accessed on this page: $helpdir/lynx_site.txt. A file derived from
'config.cache'. Its corresponding makefile macro is 'install-log' - SKY
* New Form-based options page is re-organized; logical sections are introduced
and sorted alphabetically (except for 'User Mode' - SKY
* All links in the help files are marked, i.e., each
'href="../_filename.html_#section"' is converted to
'href="../@FILENAME@#section"'. This is useful if a help filename or
link has to be changed through out whole package.
* 'lynx_help/help_files.txt' is introduced which contains
FILENAME=_filename.html_ definitions. Format and details are given in the
file - SKY
* All help files are renamed from '.html' -> '.html_' - SKY
* For context sensitive help links in UIPs 'src/LYHelp.h' is created with all
the filenames marked like the help files. It will be included from
LYGlobal.h. In 'src/makefile.in' necessary changes are done to load the
filenames from 'lynx_help/help_files.txt' - SKY
* To be able to compress help files '--enable-gzip-help' option is added in
configure script. In 'makefile' 'install-help:' is updated.
If COMPRESS_PROG and COMPRESS_EXT are *both* left empty (default) no
compression will be carried. For the moment compression is restricted only
to 'gzip'. Necessary updates are done in configure.in - SKY
* documentation fixes for nsl-fork, print screen - PW
* don't replace '\n' with ' ' if Chinese or Japanese - HN
* use title information rather than suggested filename as a subject line when
printing a page to email - LP
* add verbose_images to old-style options menu, and the .lynxrc - LE
* add verbose_images and useragent to forms-based options menu - LP
* disable download of "mailto:" links (reported by SKY (Sinan Kaan Yerli)
<sky@star.cpes.susx.ac.uk> ) - LP
* Change HTUserMsg to HTInfoMsg for "ALREADY_AT_BEGIN" and "ALREADY_AT_END"
messages to make it less annoying - LP
* reduce clutter in mainloop by inserting LYpop() in postoptions() - LP
* makefile.dos: split long lines - LP
* Fix bug with TAIPEI big5 charset in src/LYCharUtils.c
(this typo also found in lynx2.7.2: "big-5" instead of "big5"),
patch by Shou-Chuan Lai <chuan@cs.nthu.edu.tw> - LP
* Add -debug_partial command line switch so we got MessageSecs dely
between incremental rendering stages if partial display mode is ON.
(MessageSecs available from lynx.cfg and set to 2 sec by default).
The problem in incremental rendering of forms input was reported by SKY
(Sinan Kaan Yerli) <sky@star.cpes.susx.ac.uk> ), still not fixed
but now we may enter form-based options menu in -debug_partial mode
and rerender the page with Cntrl-R to see what is happening in fact. - LP
* Serious bug fixed for DISP_PARTIAL: two asynchronous processes synchronized.
HTDisplayPartial() synchronized by flag against HText_new() which create
the new HTMainText object. Otherwise HTDisplayPartial() sometimes was
matching old HTMainText (with its own line counter) and repaint previous doc,
not a new one. TRACE log now got a message from HText_pageDisplay - LP
* fixed last chartrans changes, lines such as
#0x99 #NOTDEFINED
should not be commented with leading comment symbol because they are ignored
by makeuctbl in fact - LP
* modify DH's patch for COLLAPSE_BR_TAGS to only modify the nonstandard case,
thereby making that more restrictive, and restoring standard behavior
(reported by HN) - TD
1998-08-21 (2.8.1dev.22)
* correct test for -std1 compiler option on Digital Unix (reported by Michael
Warner) - TD
* modify treatment of COLLAPSE_BR_TAGS, so that if it is set TRUE, two or more
concurrent BRs will be collapsed into a single blank line. Note that the
valid way to insert extra blank lines in HTML is via a PRE block with only
newlines in the block (David Henderson <davidh@psiphi.org>)
* clarification in userdefs.h - HN
* MS Windows codepages updated for EURO SIGN (0x20AC), from ftp.unicode.org - LP
* minor fix for DISP_PARTIAL, disable scrolling when HTTP request already sent
but the new document not displayed on the screen yet - LP
* ifdef DOS/WINDOWS to open lynx.trace in text mode - LP
* rearrange text in lynx.cfg concerning character_set - LP
* correct miscellaneous typos - LP
* Fixed: Verbose images now work with [IMAGE]-Submit. Also, fixed the core
dump when clickable_images is on. The problem was an oversight in
MakeNewTitle() - LE
* reviewed the INSTALLATION file as it relates to DOS and updated it for the
newly released version of PDCurses 2.3. Added the HAVE_GETBKGD define to
makefile.dos, fixes some of the unusual background color handling that was
present in the PDCurses DOS port - DK
* correct ifdef: LYOptions.c fails to build with -DEXP_FORMS_OPTIONS but
_without_ -DDIRED_SUPPORT (e.g. djgpp) - LP
* redesigned cookie_add_{accept,reject}list in LYCookie.c -- they work now - BJP
* added COOKIE_{ACCEPT,REJECT}_DOMAINS in .lynxrc handling to LYrcFile.c - BJP
* slight spacing fix in lynx.cfg - BJP
* added blurb in lynx.cfg about COOKIE_{ACCEPT,REJECT}_DOMAINS - BJP
* -accept_all_cookies on the commandline works as a toggle now (against
lynx.cfg value -- NOT against .lynxrc value) - BJP
* change HTAlert for bad partial reference to an HTUserMsg to make it less
annoying (request by Philip Webb, Jason McBrayer)
1998-08-15 (2.8.1dev.21)
* correct pathname for help file in forms-options screen - TD
* reduce clutter in LYOptions.c with SELECTED, DISABLED, NOTEMPTY macros,
PutOptValues, GetOptValues functions - TD
* modified LYOptions to include MBM support from form-based options,
by making a link href="LYNXOPTIONS://MBM_MENU" like it was in LYPrint.c and
calling edit_bookmarks() from postoptions() - LP
* add/use HTUserMsg to encapsulate most of the important messages - TD
* add/use HTInfoMsg to encapsulate most of the informational messages - TD
* make most of the alert messages use HTAlert, for consistency - TD
* exclude forms-options pages from Visited Links page - LP
* The current keymapping for the DOS Slang ports maps the keys directly to lynx
actions via keymap.c. There are several places in the code that test for
arrow keys, page up or down, home and end for special handling that depend on
the lynx definition of the keys. Hence, the keys in the DOS Slang ports were
failing the tests and not working as expected. The following patch now maps
these special keys. They can no longer be mapped individually via the KEYMAP
mechanism in lynx.cfg. Arrows should now work in GOTO fields. Tested the
patch against the binaries maade by makefile.dos, makefile.dsl, and
makefile.wsl - DK
* The wsl port seems to be working well with DISP_PARTIAL, make this the
default - DK
* correct spelling in lynx.cfg - DK
* modify HText_appendCharacter to wrap long lines when displaying HTML document
source - TD
* add configure option --enable-cgi-links - TD
* clarify discussion of no_proxy in lynx.cfg (Al Gilman).
* Multilingual bookmarks: now we store characters >127 in bookmark titles with
a more consistent and independent way, by keeping in unicode as &#UUUU
(NCR=numeric character reference). The idea belongs to Klaus Weide & Andrey
Chernov (long ago). It may be useful if we need switching display charset
frequently. This is the case when you use lynx on different platforms, e.g.
on UNIX and from remote PC, but want to keep common bookmarks file valid.
Compatibility: NCR as part of I18N and HTML4.0 specifications supported
starting with Lynx 2.7.2, Netscape 4.0 and MSIE 4.0. New option to lynx.cfg
added: NCR_IN_BOOKMARKS which is FALSE by default. - LP
* Tweak "print options menu" to exclude choises which are not available under
the certain conditions (print to the screen and lpansi on DOS/WINDOWS, print
to e-mail for local_host_only). - LP
* Forms options menu: add a link on option_help.html; synchronize
option_help.html against Lynx_User_guide.html and lynx.cfg. Rename label
"raw 8-bit or CJK Mode" with "CJK Mode" for CJK people and "raw 8-bit" for
others. Cleanup postoptions() by introducing flags. - LP
* Force HTuncache_current_document if gen_options() invoked. This is a
dirty fix until we uncache previous document only when necessary. - LP
* Add time/date in addition to X-URL and BASE (PrependBaseToSource), (request
by Hans-Joachim Gurt <gurt@nacamar.net>) - LP
* Turn partial_display off if we are not interactive (reported by Ari Moisio
<armoi@sci.fi>) - LP
* more fixes/refinements for auto-configuring socks5 on AIX (report by Brian
Hauber) - TD
1998-08-06 (2.8.1dev.20)
* rename eat_all_cookies to accept_all_cookies everywhere - BJP
* added ACCEPT_ALL_COOKIES lines to the dist lynx.cfg with the appropriate
description - BJP
* added COOKIE_ACCEPT_DOMAINS and COOKIE_REJECT_DOMAINS to lynx.cfg. These are
comma delimited lists of the domains to handle - BJP
* added cookie_add_acceptlist and cookie_add_rejectlist to LYCookie.c, which
are passed the list of domains from lynx.cfg and add them to the global
cookie list. These may be subject to change, as I might not be handling the
LYstrsep() right -- it works with dev19's LYstrsep(), but hasn't been tested
with Bela's... - BJP
* added a big ugly ifdef'd out section to LYrcFile.c with what I have so far on
the .lynxrc handling of COOKIE_{ACCEPT,REJECT}_DOMAINS. Don't use it. Makes
nasty segfaults - BJP (Brian J Pardy)
* fix a bug where the DJGPP_KEYHANDLER version doesn't allow movement by arrow
keys within a text area. Undo previous patch to LYGetFile.c, with LYgetch
now changed where it is defined in LYStrings.c, rather than at each place
where it is used. The patch in LYStrings.c regarding Windows should fix the
problem with keymapping that occurred when we got rid of RAWDOSKEYHACK - DK
* turn on DISP_PARTIAL in makefile.dos - DK
* correct typo in LYOptions.c - BL
* corrected logic of LYstrsep - BL
* Few minor typos and forgotten notes in man/hlp/cfg files; also quote Bela's
note on lynx.cfg INCLUDE facility - LP
* correct typos in makefile.wsl, makefile.dsl - LP
* correct typos, fix character set problems in recent changes of LYOptions.c
- LP
* move include for socks.h past tcp.h, to allow for redefinition of some
symbols on AIX (report by Brian Hauber) - TD
* adjust headers so that each can be compiled separately, eliminating order
dependencies - TD
* include tcp.h always from within HTUtils.h, to enforce ordering of headers
needed for socks5 definitions - TD
* use S_ISREG, S_ISDIR macros to reduce clutter - TD
* make test for OpenHiddenFile to overwrite user's file more stringent by
ensuring that the given pathname is not a link from a world-writable
directory (reported by BL, with suggested patch) - TD
* add/use LYPathLeaf() function to reduce clutter of pathname-leaf parsing - TD
* eliminate redundant definition of 'FREE() - TD
* ifdef'd LYOptions.c to reduce unneeded code wrt --enable-forms-options - TD
* check in OpenHiddenFile to ensure that we overwrite only regular files,
since we also force the file's permissions to 0600 - TD
1998-07-31 (2.8.1dev.19)
* modify OpenHiddenFile so that it can overwrite files owned by the real
user if the O_EXCL open fails because the file already exists - TD
* add experimental forms-based options screen (patch by Mike Castle), ifdef'd
with EXP_FORMS_OPTIONS and configured with --enable-forms-options.
* add option -eat_all_cookies and corresponding config variable
EAT_ALL_COOKIES (Brian J Pardy <posterkid@psnw.com>).
* correct spurious 'Content' string versus newline after X-URL in LYMail.c
(Bela Lubkin and LV).
* updated versions of config.guess and config.sub based on automake 1.3 - TD
* updated experimental persistent-cookie support based on RP's patch: Replaced
the call to strsep with a home-rolled one for those people who don't have it.
(Reported by Bela Lubkin, Mon, 27 Jul 1998 16:51:14 -0700 on the mailing
list.) Bela's modification to make some character arrays static is also
included.
* nits/spelling in LYPrint.c, LYUtils.c (reported by Mike Castle).
* changed LYGetFile.c to build lynx2.8.1dev.18 with SLANG and the
DJGPP_KEYHANDLER for DOS - DK
* fix a couple of places where the return-value of calloc was not checked
(reported by Mike Castle <dalgoda@ix.netcom.com>) - TD
* correct typo in command-line parsing of -lss option (reported by Chris
Kottaridis <chrisk@BSDI.COM>)
* define _AIX if needed for socks5 (request by Brian Hauber) - TD
* improved configure test for getgroups array type - TD
1998-07-24 (2.8.1dev.18)
* improved test for socks5, to account for special cases on AIX (reported by
Brian Hauber) - TD
* several changes to reduce the number of gcc cast-qual warnings, by adding
CONST, removing casts - TD
* add configure option --enable-syslog to enable system logging of requested
URL's - TD
* add RP's experimental persistent-cookie support, and configure option
--enable-persistent-cookies, ifdef'd with EXP_PERSISTENT_COOKIES - TD
* removed references to DOSRAWKEYHACK, which is no longer used. Modified the
dos makefile for libwww and makefile.dsl to default to using display_partial.
Modified INSTALLATION to reflect the successful use of slang with the dos
port and the now confusing alternatives when compiling the dos port, along
with some other updates - DK
* modify lynx_enable_mouse() for pdcurses configuration so that mouse support
is disabled unless -use_mouse is specified. This is ifdef'd with
__BORLANDC__ for the time being (WB).
* resync build-slang.com, against build.com - TD
* add $(MMSQUALIFIERS) to top-level descrip.mms, e.g., to use options such as
/FROM, /IGNORE, /NOACTION, etc., and $(INCLUDES) definitions to lower-level
descrip.mms files. Improve error-recovery in build.com (patches by Liam
Davis <ld@stian.demon.co.uk>)
* use memset to clear soc_in fields before doing a connect, needed for BSD/OS
(patch by Jeffrey C Honig <jch@bsdi.com>).
* remove spurious sprintf params when using FIXED_RECORD_COMMAND_MASK which has
only one parameter, change VMSsignal from void* to void (report by Mike Xun
Ma <mike@mira.concordia.ca> ) - TD
* use open(O_CREAT|O_EXCL) to open new hidden files - TD
* eliminate_*putenv_cmd variables used by LYReadCFG.c as placeholders for
putenv calls - TD
* disable include of <sys/filio.h> for VMS, from report by Chris Doran) - TD
* fixes for VMS: mismatched curly brace, etc., from CTRACE and buffer-overflow
changes (reported by chris.doran@gblis.mail.abb.com) - TD
* correct a loop in HTML_start_element that strips 7 leading characters from
an href, fixes a core-dump in traversing ".." to "/" - TD
* use new macro SetOutputMode to reduce some clutter - TD
* modify interface of LYCachedTemp so fileCache member is reset to null, fixes
bug in my recent cleanup of temp-files, which caused a core-dump - TD
* add kb/sec rate to HTReadProgress message - TD
* modify computation in HTReadProgress to interpolate rate - LP
* One more fix for DISP_PARTIAL: to avoid blinking while reloading document
with Newline_partial > 1 (say, we press '*' and noproxy) we repaint the page
only when Newline_partial <= HText_getNumOfLines(). - LP
* add "-verbose" command-line switch. - LP
* DOS fix: open stdout in TEXT mode for -help and startup error message. - LP
* correct use of $mapname variable in CF_ALT_CHAR_SET (Tomas Vanhala)
1998-06-25 (2.8.1dev.17)
* add configure option --with-socks5 (request by Brian Hauber
<bhauber@frenzy.com>) - TD
* define symbols HAVE_CURSESX_H, HAVE_JCURSES_H (report by Georg Schwarz
<schwarz@physik.tu-berlin.de>) - TD
* modify logic that reports progress of download to update screen no more than
once per second, fix an overrun problem (reported by Jacob Poon
<a324poon@cdf.toronto.edu>) - TD
1998-06-11 (2.8.1dev.16)
* modify configure script to check for special compiler options which are
assumed for particular platforms (suggested by BL) - TD
* modify display_page in GridText.c so that TRACE does not cause a repaint,
since that causes colors to be incorrectly rendered when tracing - TD
* fix a few of the signed/unsigned mismatch warnings in GridText.c - TD
* correct pathname in LYOpenScratch call for bookmarks (reported by DK) - TD
* DISP_PARTIAL: fix initialization of newdoc.line (case LYK_DOWNLOAD,
mainloop) to correct display while 'd'ownloading files (it was initialized
_after_ the download completed and was good enough without display_partial
mode). - LP
* correct some ifdef's for DISP_PARTIAL - LP
1998-06-04 (2.8.1dev.14)
* minor formatting fixes and documentation for upload screen - LP
* remove config.cache at beginning of configure script - TD
* eliminate cast for GetChar in LYStrings.c (from bug report by Michael Warner,
analysis by BL) - TD
* shorten logs from WWW/* by disabling echo of compiler options as in src/* - TD
* add configure test for types pid_t and uid_t - TD
* add configure test for array type used in getgroups call, to distinguish
between BSD and POSIX variations which use different sizes - TD
* modify configure script to compile DISP_PARTIAL code by default - TD
* fix compiler warnings dealing with unreached statements - TD
* change 'keymap[] array to unsigned char, move logic that relies on its size
into LYKeymap.c - TD
* make LYOpenScratch() work properly for 8.3 names (reported by DK) - TD
* DISP_PARTIAL: introduce separate variables Newline_partial and
NumOfLines_partial, initialize them in mainloop and synchronize with Newline
later when the reload completes (case NORMAL). To reduce the CPU usage while
downloading, call HText_pageDisplay only if NumOfLines_partial is in the
current display page or any Scroll key pressed by the user. We disable
partial_display if requested URL have #fragment, otherwise user will see the
top page first (yes, s/he will be moved to #fragment when the download
completed, but only if no scroll keys were pressed before!). Processing of
"END" key changed from MAXINT to real number of lines in the document
(important for display_partial mode) - LP.
* correct problem that caused DGJPP version built with slang 1.2.2 to lose its
socket whenever the rendering of a http URL is interrupted with "z". This is
in HTCheckForInterrupt in LYUtils.c (reported by John Lewis) - DK
* add files pdcurses.key, slang.key, djgpp.key to document the keybindings
used for DJGPP version - DK
* allow mapping of ALT and Function keys with the DOS port for both the
PDCurses version and the SLANG version with the DJGPP keyhandler. The
extended keys to be mapped have to be specified numerically according to the
definitions in curses.h (for PDCurses) or in keys.h (for SLANG with DJGPP
keyhandler). DJGPP maps keys up to 0x293, while PDCurses maps keys up to
0x1c0 - DK
* don't try to use -std1 option for gcc on Digital Unix (reported by Michael
Warner <warner@wsu.edu>) - TD
1998-05-23 (2.8.1dev.13)
* use new function LYLocalFileToUrl to cleanup some pathname references - TD
* eliminate 'tempname()' function, using LYNewTxtFile, etc., with new functions
LYOpenTemp, LYCloseTemp, etc., so that temporary files are opened with
appropriate permissions - TD
* correct use of cache variable in CF_ALT_CHAR_SET (reported by BL) - TD
* spell out the logic in HTPlain.c against 2.7.2: there was a certain problem
with chartrans in text/plain mode (LYRawMode was wrongly interferring,
problem reported by Jacob Poon & FM). - LP
* modify logic for zero-width spaces in conv_uni_to_pc to exclude 0x200a - LP
* supply missing "break", which was forcing raw utf-8 output in URLs (NOT hex
escaped) - LP
1998-05-14 (2.8.1dev.12)
* remove unneeded definition used in testing dev.11 from config.hin) - TD
1998-05-14 (2.8.1dev.11)
* fixes for function-keys with slang configuration on DOS (patch by DK).
* correct missing '&' in command-line options entry for syslog (reported by
HN) - TD
* correct initial value for NoColorvideo with PDCurses, from my error in
1998-05-10 integration (reported by DK) - TD
1998-05-10 (2.8.1dev.10)
* eliminate assignment to stderr for trace-file by making tfp a function. - TD
* added John Davis' keymaps/keysym patch (it really should be integrated with
the normal lynx.cfg file).
* tweak chartrans, "Convert the octet to Unicode": incoming symbols >127 but <
LYlowest_eightbit[IN-charset] now ignored, previously displayed as UFFFD.
(SGML.c, HTPlain.c, LYCharUtils.c) - LP
* removed conflicting/unused declaration of 'bzero()' from tcp.h (from report
by Ashraf Zorkani <zorkani@aucegypt.edu>) - TD
* modify the set/unset/toggle options to allow "on" and "off" values also - TD
* apply the "partial display" patch, modified from:
http://www.flora.org/lynx-dev/html/month0398/msg00993.html
The behavior is controlled by a compile-time option (DISP_PARTIAL), by a
command-line argument (-partial), and by a lynx.cfg option (PARTIAL). - BL
* extend command-line option processing of set/unset/toggle options
-toggle- (set that toggle to FALSE)
-toggle+ (set that toggle to TRUE)
e.g.,
lynx -show_cursor+ -case-
or with explicit 1/0 values, e.g.,
-toggle=0 (set that toggle to FALSE)
-toggle=1 (set that toggle to TRUE)
NOTE: this allows you to change a few flags that would previously have been
controlled by lynx.cfg, and are security-related, such as -locexec or
-telnet. I believe there is no issue, because if the user can control the
command line to Lynx, he could have run `lynx -cfg my_cfg_file` and
circumvented those settings anyway. - BL
* fix for buffer-overrun in LYMail.c when processing a mailto:very-log-address
URL - BL
* correct, for OS/2 EMX, a place in LYConvertToURL() which must not use
HTDOS_wwwName() (patch by Jason F. McBrayer <jmcbray@mailhost.tcs.tulane.edu>)
* similar changes to LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.wsl, for building
DOS version with slang - Bill Schiavo
* modify LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.dsl, for building
DOS version with slang - DK
* fix to improve reloading if user changed assume_charset in options menu
using ^A, which sometimes did not work - LP
* add several chartrans-related files to test/ directory: spaces.html,
c1.html, raw8bit.html - LP
* fixes to compile on SunOS with K&R compiler. - TD
1998-05-03 (2.8.1dev.9)
* correct missing counter increment in tempname(), from cleanup. - TD
1998-05-02 (2.8.1dev.8)
* Fix for CGI-related URLs processing (syntax: ?x=1&yz=2). To avoid interfere
with SGML we restrict '=' as terminator for a named entity, this only applied
for HREF= attribute translation (LYCharUtils.c). (reported by Alex Matulich
alex@unicorn.us.com & FM). - LP
* restore information in the INSTALLATION file for the DOS port on patching
tcplib. Also, clarifies the location of nullpkt. It also clarifies
that the PDCurses beta has incorporated some of the patches we made for
the lynx DOS port. - DK
* modify logic that updates bookmark file after removing a link to use copy
rather than rename, to solve file-ownership problems (patch by Paul
Gilmartin, though I kept the permissions check). - TD
* reduce a little of the clutter in tempname() with fmt_tempname, and
bad_tempname functions. Though this doesn't address the security problems it
does fix the problem with signed getpid values. - TD
* simplify LYUtils.c with compare_type() function - TD
* add/use string functions LYLowerCase, LYUpperCase, LYRemoveBlanks (replaces
collapse_spaces), LYTrimLeading, LYTrimTrailing (incidentally fixes core-dump
in LYCookie.c) - TD
* rewrite read_cfg function to make it more table-driven (reworked from a
patch by John Davis) - TD
* rewrite parse_arg function to make it more table-driven (reworked from a
patch by John Davis) - TD
* omit -Olimit compiler option on Digital UNIX 4.0 (patch by Tomas Vanhala).
* modify configure test for acs_map[] array to work on Digital UNIX 4.0
(reported by Jim Spath and Tomas Vanhala <vanhala@ling.helsinki.fi>). - TD
1998-04-23 (2.8.1dev.7)
* fix core-dump when pressing '.' on a page with no links (patch by
Jan Hlav\'{a}\v{c}ek <lahvak@math.ohio-state.edu>).
* initial changes to use macros CTRACE and tfp to replace explicit use of
stderr for the trace log. Remaining work is required for some complex
expressions, switching file pointers and for perror-substitute. - TD
* ifdef's for OS/2 EMX, mostly pathname tweaks (patch by Jason F. McBrayer
<jmcbray@mailhost.tcs.tulane.edu>).
1998-04-18 (2.8.1dev.6)
* correct misplaced ifdef in LYMail.c, which caused Cc to not work (patch
by LE).
* convert \x escapes to octal form (reported by Claude Soma). - TD
* modify configure script to check for cursesX before curses library, for
ultrix 4.3 (reported by Claude Soma <soma_c@decus.fr>). - TD
* incorporate lpansi into LYPrint.c (patch by HN).
* modify top-level makefile to use INSTALL_PROGRAM and INSTALL_DATA
consistently, rather than installbin and installdoc (reported by
<karl@deas.harvard.edu>). - TD
* modify treatment of -auth and -pauth options to allow setting a blank
password, e.g., -pauth=user: specifies a blank password, and -pauth=user
leaves the password unspecified (patch by Frederick P Herrmann
<fph@tiac.net>).
* Change documentation to indicate "Lynx.trace" file rather than "lynx.trace".
* Change default for USE_TRACE_LOG in userdefs.h to TRUE, to make behavior
consistent with 2.7.2 - TD
* Rename no_color_video symbol in LYCurses.c to NoColorVideo, to avoid conflict
with term.h, which is included by curses.h on some systems (reported by Paul
Gilmartin). - TD
* modify include-path in djgpp makefile to avoid conflicting tcp.h - DK
* Add -tagsoup option, for initializing parser directly to TagSoup. - TD
* Modify HTML.c, ifdef'ing some of the logic involved in unstacking tags. It
appears to be not completely necessary: makes Lynx a little faster, at the
cost of making the tagsoup parser do the wrong thing. Some entries in the
tagsoup DTD table versus the sortasgml table have SGML_EMPTY versus
SGML_MIXED. This information is used to control unstacking (in the
color-style configuration as well). There is still a problem evidenced
when toggling between the two parsers in the Lynx main help page, but that
appears to be missing logic in 2.8's version of the tagsoup parser. - TD
* Modify HTTCP.c to check the length returned from gethostbyname(), which
returns 0 on error on a SunOS 4 system (reported by Paul Gilmartin). - TD
1998-03-29 (2.8.1dev.5)
* Fixed my typo for FNAMES_8_3 define. WB
* Added SYSTEM_MAIL and SYSTEM_MAIL_FLAGS defines for DOSPATH target. WB
* Better kluge to set terminal type for DOSPATH. WB
* Restored DOSPATH kludge to get to root of directory. WB
* Added a bit of missing _WINDOWS_NSL ifdef'ing. WB
* Minor DOS dirent mod to work with Tom's rearrangements. WB
* Changed #if XYZ to #ifdef XYZ in tcp.h for dumb (?) compilers. WB
1998-03-25 (2.8.1dev.4)
* restore original string in LYUtils.c when user enters a badly formed or
nonexistent URL when prompted for Goto/history list (patch by Randall
<hezekiah@may98.rahul.net>). Otherwise Lynx would always attempt to load a
local file if the original string omits scheme:// prefix but guessing fails.
* tweak formatting of .message in HTFTP.c so it has leading/trailing blank
lines (patch by Ismael Cordeiro <ismael@CAM.ORG>)
* retested 'make depend' rule (for LV (Larry Virden)) - TD
* eliminate (except for absolute pathnames, as in VMS) quoted includes - TD
* remove WWW/Library/Implementation/HTAlert.[ch], since they conflict with
src/HTAlert.[ch], and are not used - TD
* replace the [LINK], [INLINE] and [IMAGE] comments (for images without ALT)
with filenames of these images. This feature can be enabled or disabled by
setting VERBOSE_IMAGES in lynx.cfg and/or userdefs.h (patches by
helen@voland.cc.huji.ac.il and wschiavo@concentric.net>)
* consistently use ${cf_cv_ncurses_header-curses.h} rather than
$cf_cv_ncurses_header in configure script, as noted by JS - TD
* tweak include of HTML.h in HTFile.h to fix compile problem on VMS (we really
should not use quote-style includes) - TD
* fixes to LYStyle.c to make color-style code work on Digital Unix 4.0 - TD
1998-03-20 (2.8.1dev.3)
* Added death for Win/DOS clients that don't have a TMP space defined. - WB
* Added _WINDOWS_NSL to provide interruptable lookups in Win32 per a
patch from afn06760@afn.org. (modified hopefully for borland AND cygwin and
hard defined in tcp.h). I had to recompile everything in multithread
mode for borland, including my zlib library. - WB
* Added _WINDOWS as a target for FNAMES_8_3 in userdefs.h to allow for 16
bit helper apps that can't handle LFN's. (report by afn06760@afn.org) - WB
1998-03-18 (2.8.1dev.1)
* correct an ifdef that caused inconsistent pathname separators on Windows
(reported by afn, patch by DK).
* correct a missing AC_MSG_RESULT in configure.in (also MM) - TD
* guard against illegal (e.g., zero) value for DEFAULT_CACHE_SIZE, when it is
read from lynx.cfg (reported by Martin Mokrejs
<mmokrejs@prfdec.natur.cuni.cz>) - TD
* implement simple 'include' facility for lynx.cfg - BL
* change TagClass and TagFlags to #define's to accommodate older compilers
which do not accept initialization of enums from data that do not correspond
to the declared values, e.g., CLIX (which complains) and Apollo (which fails
to compile, reported by Dave Eaton). - TD
* remove some obsolete definitions from userdefs.h, tcp.h and HTUtils.h - TD
* remove obsolete files from WWW/Library - TD
1998-03-12
* UPPER8: a separate function HTMLSetDisplayCharsetMatchLocale() introduced
(LYCharSets.c). Locale mismatch assumed for DOS/WINDOWS display charsets. - LP