Upgrade of W3C Reference Library

We now have a small upgrade release ready which incorporates a set of new 
features that were discussed on the <www-lib@w3.org> mailing list. Most 
noticeable in this release is the support for posting data objects from memory 
and the server model implemented by the mini server is now in place. The full 
list of new features is listed below or you can get it from


Also, please remember that the Library does not do automatic redirection 
anymore as many applications do not want this. Instead you can register a 
HTNet callback function to handle redirection. You can find examples in both 
the Command line tool and the Line Mode browser.

Also, Eric and I have now solved the problems of getting the Line Mode Browser 
to compile on Windows 95. The problem was that the asynchronous window handles 
has to be treated differently from earlier versions.

The distribution files are available from


Comments are welcome!

Henrik & Eric

                          \ /
-- CLIP -- CLIP -- CLIP -- x -- CLIP -- CLIP -- CLIP -- CLIP -- CLIP -- CLIP --
                          / \

Release 4.0D February 12 1996

    * Optimized HTTP request header by taken away an "Accept:" line pr accepted
      content type and instead use the comma notation.

    * Introduced HTMemory as dynamic memory handler. This module is a part of
      the WWWUtils interface and it handles better management of dynamic 
      You can find a full description at


    * We have an updated list of all public functions exported from the
      Library. It's available as wwwlist.txt
    * We also present an updated list of all public interfaces available in the
      Library. You can find it in the Library Internals.
    * PUT and POST from memory is implemented. You can now post data from
      memory using the POSTWeb model as for posting remote data objects. The
      Interface is described in HTAccess module. There is a very small dummy
      test implemented in the Line Mode browser. You can activate it if you
      type edit from the command line.
    * The Mini server now runs (although crude) as a proxy. It is capable of
      serving data as a HTTP/HTTP proxy. It is based on the internal Library
      event loop and is therefore highly portable. It is not intended to be a
      full featured server but a test implementation which shows how to use the
      Library in server applications.
    * Bug fixed that caused the following problem: If there hasn't been made a
      connection between the net->target and the request->output_stream then
      the latter is not freed if the request is interrupted.
    * The referer URL header can now contain a unlimited length URL
    * A resolver callback function has been introduced in the HTTee stream.
      This allows the caller to assign a callback function to resolve conflicts
      between the return codes of the two streams.
    * The request object as been added as a calling parameter to the HTFWrite
      stream creation method. This allows errors from writing to a file to
      propagate back to the request object.
    * The three streams HTSaveLocally, HTSaveAndExecute and HTSaveAndCallBack

    * have been optimized and they now all use the HTFWrite stream creation
    * We have a new module called HTTPGen. It generates general HTTP headers.
      These headers were a part of the MIME header generator, but by isolating
      them, we can use the MIME header as a generic MIME entity header
    * Created HTErrorStream which always returns HT_ERROR. It replaces the
      HTBlackHole has been replace with HTErrorStream in many places in order
      to speed up performance
    * Made HTTP response stream (which parses the response line only) into a
      converter so that we can forward the output exactly as received from the
      remote HTTP server. This is important for proxy applications and other
      applications that want to see the output untouched.
    * The HTChunk module has been made more solid and the amount of memory
      allocations has been limited.
    * Memory cleanup fixed in content length counter stream and FTP module
    * Introducing HT_CLOSED and HT_PAUSE for handling streams. This was 
      especially after HTTP supports persistent connections where a document is
      not delimited by a closed connection.


Henrik Frystyk Nielsen, <frystyk@w3.org>
World-Wide Web Consortium, MIT/LCS NE43-356
545 Technology Square, Cambridge MA 02139, USA