]> granicus.if.org Git - curl/commitdiff
opts: provide more and updated examples
authorDaniel Stenberg <daniel@haxx.se>
Tue, 21 Oct 2014 11:40:38 +0000 (13:40 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Tue, 21 Oct 2014 11:40:38 +0000 (13:40 +0200)
docs/libcurl/opts/CURLOPT_RANGE.3
docs/libcurl/opts/CURLOPT_RESUME_FROM.3
docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3
docs/libcurl/opts/CURLOPT_SSLVERSION.3
docs/libcurl/opts/CURLOPT_UPLOAD.3
docs/libcurl/opts/CURLOPT_USE_SSL.3
docs/libcurl/opts/CURLOPT_VERBOSE.3

index 25c3f6502a2505e515d42d52856a814f84127822..f5dd555ce19d2536506f425f963b9fbf683c4d03 100644 (file)
@@ -46,7 +46,7 @@ NULL
 HTTP, FTP, FILE, RTSP and SFTP.
 .SH EXAMPLE
 .nf
-curl = curl_easy_init();
+CURL *curl = curl_easy_init();
 if(curl) {
   curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
 
index c61fd3b659e0ccfcbd385de22eed302f49a936ef..c25c6466b3b5d61184386dfa9ac9126ca649f79d 100644 (file)
@@ -45,10 +45,28 @@ If you need to resume a transfer beyond the 2GB limit, use
 .SH PROTOCOLS
 HTTP, FTP, SFTP, FILE
 .SH EXAMPLE
-TODO
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com");
+
+  /* resume upload at byte index 200 */
+  curl_easy_setopt(curl, CURLOPT_RESUME_FROM, 200L);
+
+  /* ask for upload */
+  curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+
+  /* set total data amount to expect */
+  curl_easy_setopt(curl, CURLOPT_INFILESIZE, size_of_file);
+
+  /* Perform the request */
+  curl_easy_perform(curl);
+}
+.fi
 .SH AVAILABILITY
 Always
 .SH RETURN VALUE
 Returns CURLE_OK
 .SH "SEE ALSO"
 .BR CURLOPT_RESUME_FROM_LARGE "(3), " CURLOPT_RANGE "(3), "
+.BR CURLOPT_INFILESIZE "(3), "
index 59c83107b57ee3d850d019c42019d7e2a8590aff..bcb30af4eb252480a4506683a65aa9198a043672 100644 (file)
@@ -44,10 +44,31 @@ source file to the remote target file.
 .SH PROTOCOLS
 HTTP, FTP, SFTP, FILE
 .SH EXAMPLE
-TODO
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_off_t resume_position = GET_IT_SOMEHOW;
+  curl_off_t file_size = GET_IT_SOMEHOW_AS_WELL;
+
+  curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com");
+
+  /* resuming upload at this position, possibly beyond 2GB */
+  curl_easy_setopt(curl, CURLOPT_RESUME_FROM_LARGE, resume_position);
+
+  /* ask for upload */
+  curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+
+  /* set total data amount to expect */
+  curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, file_size);
+
+  /* Perform the request */
+  curl_easy_perform(curl);
+}
+.fi
 .SH AVAILABILITY
 Added in 7.11.0
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
 .BR CURLOPT_RESUME_FROM "(3), " CURLOPT_RANGE "(3), "
+.BR CURLOPT_INFILESIZE_LARGE "(3), "
index 095897bb31881ce381572084fa24e0ab1e04e2b7..9b558f495bc335860333e17df2f736e64daf599d 100644 (file)
@@ -55,7 +55,7 @@ CURL_SSLVERSION_DEFAULT
 All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
 .SH EXAMPLE
 .nf
-curl = curl_easy_init();
+CURL *curl = curl_easy_init();
 if(curl) {
   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
 
index 8d815906d832b27620a5c9c153576555ac630d72..d24bd289e1a2909faff5f9b39e68090b0ab2fc43 100644 (file)
@@ -47,7 +47,28 @@ must specify the size.
 .SH PROTOCOLS
 Most
 .SH EXAMPLE
-TODO
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  /* we want to use our own read function */
+  curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* enable uploading */
+  curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+
+  /* specify target */
+  curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/dir/to/newfile");
+
+  /* now specify which pointer to pass to our callback */
+  curl_easy_setopt(curl, CURLOPT_READDATA, hd_src);
+
+  /* Set the size of the file to upload */
+  curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)fsize);
+
+  /* Now run off and do what you've been told! */
+  curl_easy_perform(curl);
+}
+.fi
 .SH AVAILABILITY
 Always
 .SH RETURN VALUE
index 81e6752f2b4f425ea9b184fae5f82769ef8034d9..348f1b0c8d7dacc9dcfd339d22b91bb9c2ac8965 100644 (file)
@@ -48,6 +48,18 @@ CURLUSESSL_NONE
 .SH PROTOCOLS
 FTP, SMTP, POP3, IMAP
 .SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/dir/file.ext");
+
+  /* require use of SSL for this, or fail */
+  curl_easy_setopt(curl, CURLOPT_USE_SSL, CURLUSESSL_ALL);
+
+  /* Perform the request */
+  curl_easy_perform(curl);
+}
+.fi
 .SH AVAILABILITY
 Added in 7.11.0. This option was known as CURLOPT_FTP_SSL up to 7.16.4, and
 the constants were known as CURLFTPSSL_*
index 4841a7b9f7430790dd5b93cbd16d292eb04a49d8..732b8c4151a0bdf5977eceaea5b664de54c00d17 100644 (file)
@@ -44,14 +44,14 @@ To also get all the protocol data sent and received, consider using the
 All
 .SH EXAMPLE
 .nf
-curl = curl_easy_init();
+CURL *curl = curl_easy_init();
 if(curl) {
   curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
 
-  /* ask libcurl to show us the verbose output */ 
+  /* ask libcurl to show us the verbose output */
   curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
 
-  /* Perform the request */ 
+  /* Perform the request */
   curl_easy_perform(curl);
 }
 .fi