                                  _   _ ____  _     
  Project                     ___| | | |  _ \| |    
                             / __| | | | |_) | |    
                            | (__| |_| |  _ <| |___ 
                             \___|\___/|_| \_\_____|


This document lists documents that specify standards used by curl, software
that extends curl, web pages with similar utilities and information pages that
describe some of the tools that we use to build/compile/develop curl.

Standards
---------

  RFC 959  - Defines how FTP works

  RFC 1635 - How to Use Anonymous FTP

  RFC 1738 - Uniform Resource Locators

  RFC 1777 - defines the LDAP protocol

  RFC 1808 - Relative Uniform Resource Locators

  RFC 1867 - Form-based File Upload in HTML

  RFC 1950 - ZLIB Compressed Data Format Specification

  RFC 1951 - DEFLATE Compressed Data Format Specification

  RFC 1952 - gzip compression format

  RFC 1959 - LDAP URL syntax

  RFC 2045-2049 - Everything you need to know about MIME! (needed for form
                  based upload)

  RFC 2068 - HTTP 1.1 (obsoleted by RFC 2616)

  RFC 2109 - HTTP State Management Mechanism (cookie stuff)
           - Also, read Netscape's specification at
             http://curl.haxx.se/rfc/cookie_spec.html

  RFC 2183 - The Content-Disposition Header Field

  RFC 2229 - A Dictionary Server Protocol

  RFC 2255 - Newer LDAP URL syntax document.

  RFC 2231 - MIME Parameter Value and Encoded Word Extensions:
             Character Sets, Languages, and Continuations

  RFC 2388 - "Returning Values from Forms: multipart/form-data"
             Use this as an addition to the RFC1867 

  RFC 2396 - "Uniform Resource Identifiers: Generic Syntax and Semantics" This
             one obsoletes RFC 1738, but since RFC 1738 is often mentioned
             I've left it in this list.

  RFC 2428 - FTP Extensions for IPv6 and NATs

  RFC 2577 - FTP Security Considerations

  RFC 2616 - HTTP 1.1, the latest

  RFC 2617 - HTTP Authentication

  RFC 2718 - Guidelines for new URL Schemes
             
  RFC 2732 - Format for Literal IPv6 Addresses in URL's
             
  RFC 2818 - HTTP Over TLS (TLS is the successor to SSL)
             
  RFC 2964 - Use of HTTP State Management
             
  RFC 2965 - HTTP State Management Mechanism. Cookies. Obsoletes RFC2109

Compilers
---------
  MingW32 - http://www.mingw.org/

  gcc     - http://www.gnu.org/software/gcc/gcc.html

Software
--------
  OpenSSL -  http://www.openssl.org/

  OpenLDAP - http://www.openldap.org/

  zlib -     http://www.cdrom.com/pub/infozip/zlib/

Similar Tools
-------------
  wget    - http://sunsite.dk/wget/

  snarf   - http://www.xach.com/snarf/

  lynx    - http://lynx.browser.org/ (well at least when -dump is used)

  swebget - http://www.uni-hildesheim.de/~smol0075/swebget/

  Kermit  - http://www.columbia.edu/kermit/ftpclient

  Pavuk   - http://www.idata.sk/~ondrej/pavuk/

  httpr   - http://zwolak.dhs.org/httpr/

  puf     - http://www.inf.tu-dresden.de/~ob6/sw/puf.html

Related Software
----------------
  ftpparse - http://cr.yp.to/ftpparse.html parses FTP LIST responses

  autoconf - http://www.gnu.org/software/autoconf/autoconf.html

  automake - http://www.gnu.org/software/automake/automake.html

  bison    - http://www.gnu.org/software/bison/bison.html

  gzip     - http://www.gnu.org/software/gzip/gzip.html

  tar      - http://www.gnu.org/software/tar/tar.html

  libtool  - http://www.gnu.org/software/libtool/libtool.html
