updates and fixes
authorDaniel Stenberg <daniel@haxx.se>
Thu, 16 Mar 2000 11:32:53 +0000 (11:32 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 16 Mar 2000 11:32:53 +0000 (11:32 +0000)
CONTRIBUTE
FAQ
FEATURES
FILES
INSTALL
README
README.curl
TODO

index e268d4e..5550d7f 100644 (file)
@@ -1,4 +1,10 @@
- Date: 1999-08-04
+                                  _   _ ____  _     
+                              ___| | | |  _ \| |    
+                             / __| | | | |_) | |    
+                            | (__| |_| |  _ <| |___ 
+                             \___|\___/|_| \_\_____|
+
+CONTRIBUTE
 
 To Think About When Contributing Source Code
 
diff --git a/FAQ b/FAQ
index dea807e..5496057 100644 (file)
--- a/FAQ
+++ b/FAQ
@@ -1,4 +1,4 @@
-Date: 19 November 1999
+Date: 15 March 2000
 
              Frequently Asked Questions about Curl
 
@@ -29,3 +29,12 @@ Date: 19 November 1999
   I am very interested in once and for all getting some kind of report or
   README file from those who have used libcurl in a threaded environment,
   since I haven't and I get this question more and more frequently!
+
+4. Why doesn't my posting using -F work?
+
+  You can't simply use -F or -d at your choice. The web server that will
+  receive your post assumes one of the formats. If the form you're trying to
+  "fake" sets the type to 'multipart/form-data', than and only then you must
+  use the -F type. In all the most common cases, you should use -d which then
+  causes a posting with the type 'application/x-www-form-urlencoded'.
+
index 303e884..11d75f8 100644 (file)
--- a/FEATURES
+++ b/FEATURES
@@ -1,7 +1,16 @@
+                                  _   _ ____  _     
+                              ___| | | |  _ \| |    
+                             / __| | | | |_) | |    
+                            | (__| |_| |  _ <| |___ 
+                             \___|\___/|_| \_\_____|
+
+FEATURES
+
 Misc
  - full URL syntax
  - custom maximum download time
  - custom least download speed acceptable
+ - custom output result after completion
  - multiple URLs
  - guesses protocol from host name unless specified
  - uses .netrc
@@ -21,6 +30,7 @@ HTTP
  - follow redirects
  - custom HTTP request
  - cookie get/send
+ - understands the netscape cookie file
  - custom headers (that can replace internally generated headers)
  - custom user-agent string
  - custom referer string
diff --git a/FILES b/FILES
index a461382..abf1d24 100644 (file)
--- a/FILES
+++ b/FILES
@@ -1,3 +1,4 @@
+BUGS
 CHANGES
 CONTRIBUTE
 FEATURES
diff --git a/INSTALL b/INSTALL
index a2e3894..d96bb8b 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -6,6 +6,32 @@
 
                                 How To Compile
 
+Curl has been compiled and built on numerous different operating systems. The
+way to proceed is mainly devided in two different ways: the unix way or the
+windows way.
+
+If you're using Windows (95, 98, NT) or OS/2, you should continue reading from
+the Win32 header below. All other systems should be capable of being installed
+as described un the the UNIX header.
+
+PORTS
+=====
+   Just to show off, this is a probably incomplete list of known hardware and
+   operating systems that curl has been compiled for:
+
+        Sparc Solaris 2.4, 2.5, 2.5.1, 2.6, 7
+        Sparc SunOS 4.1.*
+        i386 Linux 1.3, 2.0, 2.2
+        MIPS IRIX
+        HP-PA HP-UX
+        PowerPC Mac OS X
+        - Ultrix
+        i386 OpenBSD
+        m68k OpenBSD
+        i386 Windows 95, 98, NT
+        i386 OS/2
+        m68k AmigaOS 3
+
 UNIX
 ====
 
diff --git a/README b/README
index ccd5380..5abbf32 100644 (file)
--- a/README
+++ b/README
@@ -26,3 +26,19 @@ README
         Sweden --  ftp://ftp.sunet.se/pub/www/utilities/curl/
         Germany -- ftp://ftp.fu-berlin.de/pub/unix/network/curl/
         China --   http://www.pshowing.com/curl/
+
+  To download the very latest source off the CVS server do this:
+
+        cvs -d :pserver:cvs@curl.sourceforge.net/curl login
+
+        (just press enter when asked for password)
+
+        cvs -d :pserver:cvs@curl.sourceforge.net/curl co .
+
+        (now, you'll get all the latest sources downloaded into your current
+        directory. Note that this does not create a directory named curl or
+        anything)
+
+        cvs -d :pserver:cvs@curl.sourceforge.net/curl logout
+        
+        (you're off the hook!)
index 3daca8c..7cddbca 100644 (file)
@@ -122,33 +122,37 @@ UPLOADING
 
  FTP
 
-   Upload all data on stdin to a specified ftp site:
+  Upload all data on stdin to a specified ftp site:
 
         curl -t ftp://ftp.upload.com/myfile
 
-   Upload data from a specified file, login with user and password:
+  Upload data from a specified file, login with user and password:
 
         curl -T uploadfile -u user:passwd ftp://ftp.upload.com/myfile
 
-   Upload a local file to the remote site, and use the local file name remote
-   too:
+  Upload a local file to the remote site, and use the local file name remote
+  too:
  
         curl -T uploadfile -u user:passwd ftp://ftp.upload.com/
 
-   NOTE: Curl is not currently supporing ftp upload through a proxy! The reason
-   for this is simply that proxies are seldomly configured to allow this and
-   that no author has supplied code that makes it possible!
+  Upload a local file to get appended to the remote file using ftp:
+
+        curl -T localfile -a ftp://ftp.upload.com/remotefile
+
+  NOTE: Curl does not support ftp upload through a proxy! The reason for this
+  is simply that proxies are seldomly configured to allow this and that no
+  author has supplied code that makes it possible!
 
  HTTP
 
-   Upload all data on stdin to a specified http site:
+  Upload all data on stdin to a specified http site:
 
         curl -t http://www.upload.com/myfile
 
-   Note that the http server must've been configured to accept PUT before this
-   can be done successfully.
+  Note that the http server must've been configured to accept PUT before this
+  can be done successfully.
 
-   For other ways to do http data upload, see the POST section below.
+  For other ways to do http data upload, see the POST section below.
 
 VERBOSE / DEBUG
 
@@ -457,9 +461,9 @@ FTP and firewalls
 
 HTTPS
 
-  Secure HTTP requires SSLeay to be installed and used when curl is built. If
-  that is done, curl is capable of retrieving and posting documents using the
-  HTTPS procotol.
+  Secure HTTP requires SSL libraries to be installed and used when curl is
+  built. If that is done, curl is capable of retrieving and posting documents
+  using the HTTPS procotol.
 
   Example:
 
@@ -472,9 +476,10 @@ HTTPS
   browsers (Netscape and MSEI both use the so called PKCS#12 format). If you
   want curl to use the certificates you use with your (favourite) browser, you
   may need to download/compile a converter that can convert your browser's
-  formatted certificates to PEM formatted ones. Dr Stephen N. Henson has
-  written a patch for SSLeay that adds this functionality. You can get his
-  patch (that requires an SSLeay installation) from his site at:
+  formatted certificates to PEM formatted ones. This kind of converter is
+  included in recent versions of OpenSSL, and for older versions Dr Stephen
+  N. Henson has written a patch for SSLeay that adds this functionality. You
+  can get his patch (that requires an SSLeay installation) from his site at:
   http://www.drh-consultancy.demon.co.uk/
 
   Example on how to automatically retrieve a document using a certificate with
@@ -601,6 +606,34 @@ ENVIRONMENT VARIABLES
 
   The usage of the -x/--proxy flag overrides the environment variables.
 
+NETRC
+
+  Unix introduced the .netrc concept a long time ago. It is a way for a user
+  to specify name and password for commonly visited ftp sites in a file so
+  that you don't have to type them in each time you visit those sites. You
+  realize this is a big security risk if someone else gets hold of your
+  passwords, so therefor most unix programs won't read this file unless it is
+  only readable by yourself (curl doesn't care though).
+
+  Curl supports .netrc files if told so (using the -n/--netrc option). This is
+  not restricted to only ftp, but curl can use it for all protocols where
+  authentication is used.
+
+  A very simple .netrc file could look something like:
+
+        machine curl.haxx.nu login iamdaniel password mysecret
+
+CUSTOM OUTPUT
+
+  To better allow script programmers to get to know about the progress of
+  curl, the -w/--write-out option was introduced. Using this, you can specify
+  what information from the previous transfer you want to extract.
+
+  To display the amount of bytes downloaded together with some text and an
+  ending newline:
+
+        curl -w 'We downloaded %{size_download} bytes\n' www.download.com
+
 MAILING LIST
 
   We have an open mailing list to discuss curl, its development and things
diff --git a/TODO b/TODO
index 63a3ab7..2520cda 100644 (file)
--- a/TODO
+++ b/TODO
@@ -24,18 +24,17 @@ TODO
 
  * HTTP Pipelining/persistant connections
 
- - I'm gonna introduce HTTP "pipelining". Curl should be able
-   to request for several HTTP documents in one connect. It is the beginning
-   for supporing more advanced functions in the future, like web site
+ - We should introduce HTTP "pipelining". Curl could be able to request for
+   several HTTP documents in one connect. It would be the beginning for
+   supporing more advanced functions in the future, like web site
    mirroring. This will require that the urlget() function supports several
    documents from a single HTTP server, which it doesn't today.
 
- - When curl supports fetching several documents from the same
-   server using pipelining, I'd like to offer that function to the command
-   line. Anyone has a good idea how? The current way of specifying one URL
-   with the output sent to the stdout or a file gets in the way. Imagine a
-   syntax that supports "additional documents from the same server" in a way
-   similar to:
+ - When curl supports fetching several documents from the same server using
+   pipelining, I'd like to offer that function to the command line. Anyone has
+   a good idea how? The current way of specifying one URL with the output sent
+   to the stdout or a file gets in the way. Imagine a syntax that supports
+   "additional documents from the same server" in a way similar to:
 
      curl <main URL> --more-doc <path> --more-doc <path>
 
@@ -52,12 +51,11 @@ TODO
    And some friendly person's server source code is available at
     http://hopf.math.nwu.edu/digestauth/index.html
 
-   Then there's the Apache mod_digest source code too of course.
-   It seems as if Netscape doesn't support this, and not many servers
-   do. Although this is a lot better authentication method than the more
-   common "Basic". Basic sends the password in cleartext over the network,
-   this "Digest" method uses a challange-response protocol which increases
-   security quite a lot.
+   Then there's the Apache mod_digest source code too of course.  It seems as
+   if Netscape doesn't support this, and not many servers do. Although this is
+   a lot better authentication method than the more common "Basic". Basic
+   sends the password in cleartext over the network, this "Digest" method uses
+   a challange-response protocol which increases security quite a lot.
 
  * Different FTP Upload Through Web Proxy
    I don't know any web proxies that allow CONNECT through on port 21, but
@@ -88,3 +86,8 @@ TODO
    (http://search.ietf.org/internet-drafts/draft-murray-auth-ftp-ssl-05.txt)
 
  * HTTP POST resume using Range:
+
+ * Make curl capable of verifying the server's certificate when connecting
+   with HTTPS://.
+
+ * Make the timeout work as expected!