Annotation of libwww/Library/src/WWWHTTP.html, revision 2.11

2.1       frystyk     1: <HTML>
                      2: <HEAD>
2.11    ! frystyk     3:   <TITLE>W3C Reference Library libwww HTTP Client/Server Module</TITLE>
2.1       frystyk     4: </HEAD>
                      5: <BODY>
2.11    ! frystyk     6: <H1>
        !             7:   Declaration of W3C Reference HTTP Module
        !             8: </H1>
2.1       frystyk     9: <PRE>
                     10: /*
                     11: **     (c) COPYRIGHT MIT 1995.
                     12: **     Please first read the full copyright statement in the file COPYRIGH.
                     13: */
                     14: </PRE>
2.11    ! frystyk    15: <P>
        !            16: This is the include file for all HTTP access including the
        !            17: <A HREF="HTTPServ.html">server side</A> and the <A HREF="HTTP.html">client
        !            18: side</A>. It can be used together with the <A HREF="WWWCore.html">core of
        !            19: the W3C Reference Library</A>. It contains all HTTP specific modules which
        !            20: are required to compile and build the HTTP DLL.
2.1       frystyk    21: <PRE>
                     22: #ifndef WWWHTTP_H
                     23: #define WWWHTTP_H
                     24: </PRE>
                     25: <PRE>
                     26: #ifdef __cplusplus
                     27: extern "C" { 
                     28: #endif
                     29: </PRE>
2.11    ! frystyk    30: <H3>
        !            31:   System dependencies
        !            32: </H3>
        !            33: <P>
2.9       frystyk    34: The <A HREF="sysdep.html">sysdep.h</A> file includes system-specific include
2.11    ! frystyk    35: files and flags for I/O to network and disk. The only reason for this file
        !            36: is that the Internet world is more complicated than Posix and ANSI.
        !            37: <PRE>#include "<A HREF="sysdep.html">sysdep.h</A>"
        !            38: </PRE>
        !            39: <H3>
        !            40:   Basic HTTP definitions and utilities
        !            41: </H3>
        !            42: <P>
        !            43: A small set of very basic HTTP stuff
        !            44: <PRE>
        !            45: #include "<A HREF="HTTPUtil.html">HTTPUtil.h</A>"
        !            46: </PRE>
        !            47: <H3>
        !            48:   HTTP Client State Machine
        !            49: </H3>
        !            50: <P>
        !            51: The client statue machine handles the client side of HTTP generating requests
        !            52: and parsing responses.
        !            53: <PRE>#include "<A HREF="HTTP.html">HTTP.h</A>"
        !            54: </PRE>
        !            55: <H3>
        !            56:   HTTP Server State Machine
        !            57: </H3>
        !            58: <P>
        !            59: The HTTP module also contains a very simple server module which can be used
        !            60: for experimenting but which is not a full blown server.
        !            61: <PRE>#include "<A HREF="HTTPServ.html">HTTPServ.h</A>"                 /* HTTP server state machine */
        !            62: </PRE>
        !            63: <H3>
        !            64:   General HTTP Header Stream
        !            65: </H3>
        !            66: <P>
        !            67: The HTTP Request stream generates a HTTP request header and writes it to
        !            68: the target which is normally a HTWriter stream.
        !            69: <PRE>#include "<A HREF="HTTPGen.html">HTTPGen.h</A>"
        !            70: </PRE>
        !            71: <H3>
        !            72:   Client-side Request Generator Stream
        !            73: </H3>
        !            74: <P>
        !            75: The HTTP Request stream generates a HTTP request header and writes it to
        !            76: the target which is normally a HTWriter stream.
        !            77: <PRE>#include "<A HREF="HTTPReq.html">HTTPReq.h</A>"
        !            78: </PRE>
        !            79: <H3>
        !            80:   Server-side Response Generator Stream
        !            81: </H3>
        !            82: <P>
        !            83: The HTTP response stream generates a HTTP response header and writes it to
        !            84: the target which is normally a HTWriter stream.
        !            85: <PRE>#include "<A HREF="HTTPRes.html">HTTPRes.h</A>"
        !            86: </PRE>
        !            87: <H3>
        !            88:   Chunked Encoding and Decoding
        !            89: </H3>
        !            90: <P>
        !            91: Chunked transfer encoding and decoding is new in HTTP/1.1. It allows applications
        !            92: to use persistent connections while not knowing the content length a priori
        !            93: to the response header is generated.
        !            94: <PRE>#include "<A HREF="HTTChunk.html">HTTChunk.h</A>"
        !            95: </PRE>
        !            96: <H3>
        !            97:   HTTP Extensions and PEP
        !            98: </H3>
        !            99: <P>
        !           100: The <A HREF="HTPEP.html">PEP Manager</A> is a registry for <I>PEP Protocols</I>
        !           101: that follow the generic syntax defined by the
        !           102: <A HREF="../../Protocols/">HTTP</A> <I>PEP protocol</I> headers. All <I>PEP
        !           103: Protocols</I> are registered at run-time in form of a <I>PEP Module</I>.
        !           104: A <I>PEP Module</I> consists of the following:
        !           105: <PRE>#include "<A HREF="HTPEP.html">HTPEP.h</A>"
        !           106: </PRE>
        !           107: <H3>
        !           108:   Generic Authentication
        !           109: </H3>
        !           110: <P>
        !           111: The <A HREF="HTAAUtil.html">Authentication Manage</A><I>r</I> is a registry
        !           112: for <I>Authentication Schemes</I> that follow the generic syntax defined
        !           113: by the <A HREF="../../Protocols/">HTTP</A> <CODE>WWW-authenticate</CODE>
        !           114: and <CODE>Authorization</CODE> headers. Currently, the only scheme defined
        !           115: is <I>Basic Authentication</I>, but <I>Digest Authentication </I>will soon
        !           116: follow. All <I>Authentication Schemes</I> are registered at run-time in form
        !           117: of an <I>Authentication Module</I>. An <I>Authentication Module</I> consists
        !           118: of the following:
        !           119: <PRE>#include "<A HREF="HTAAUtil.html">HTAAUtil.h</A>"
        !           120: </PRE>
        !           121: <H3>
        !           122:   Client Side Authentication
        !           123: </H3>
        !           124: <P>
        !           125: Contains code for parsing challenges and creating credentials for basic and
        !           126: digest authentication schemes. See also the <A HREF="HTAAUtil.html">HTAAUtil
        !           127: module</A> for how to handle other authentication schemes. 
        !           128: <PRE>#include "<A HREF="HTAABrow.html">HTAABrow.h</A>"
2.9       frystyk   129: </PRE>
2.11    ! frystyk   130: <P>
2.1       frystyk   131: End of HTTP module
                    132: <PRE>
                    133: #ifdef __cplusplus
                    134: } /* end extern C definitions */
                    135: #endif
                    136: 
                    137: #endif
                    138: </PRE>
2.11    ! frystyk   139: <P>
        !           140:   <HR>
2.8       frystyk   141: <ADDRESS>
2.11    ! frystyk   142:   @(#) $Id: WWWHTTP.html,v 2.10 1996/04/18 01:41:53 frystyk Exp $
2.8       frystyk   143: </ADDRESS>
2.11    ! frystyk   144: </BODY></HTML>

Webmaster