This manual page is for Mac OS X version 10.6

If you are running a different version of Mac OS X, view the documentation locally:

  • In Terminal, using the man(1) command

Reading manual pages

Manual pages are intended as a quick reference for people who already understand a technology.

  • For more information about the manual page format, see the manual page for manpages(5).

  • For more information about this technology, look for other documentation in the Apple Reference Library.

  • For general information about writing shell scripts, read Shell Scripting Primer.



curl_easy_recv(3)                              libcurl Manual                              curl_easy_recv(3)



NAME
       curl_easy_recv - receives raw data on an "easy" connection

SYNOPSIS
       #include <curl/easy.h>

       CURLcode curl_easy_recv( CURL *curl, void *buffer, size_t buflen, size_t *n);

DESCRIPTION
       This  function  receives  raw  data  from  the  established  connection. You may use it together with
       curl_easy_send(3) to implement custom protocols using libcurl. This functionality can be particularly
       useful if you use proxies and/or SSL encryption: libcurl will take care of proxy negotiation and con-nection connection
       nection set-up.

       buffer is a pointer to your buffer that will get the received data. buflen is the maximum  amount  of
       data  you can get in that buffer. The variable n points to will receive the number of received bytes.

       To establish the connection, set CURLOPT_CONNECT_ONLY  option  before  calling  curl_easy_perform(3).
       Note that curl_easy_recv(3) does not work on connections that were created without this option.

       You must ensure that the socket has data to read before calling curl_easy_recv(3), otherwise the call
       will return CURLE_AGAIN - the socket is used in  non-blocking  mode  internally.  Use  curl_easy_get-info(3) curl_easy_getinfo(3)
       info(3)  with  CURLINFO_LASTSOCKET  to  obtain  the socket; use your operating system facilities like
       select(2) to check if it has any data you can read.

AVAILABILITY
       Added in 7.18.2.

RETURN VALUE
       On success, returns CURLE_OK, stores the received data into buffer, and the number of bytes it  actu-ally actually
       ally read into *n.

       On failure, returns the appropriate error code.

       If  there  is no data to read, the function returns CURLE_AGAIN. Use your operating system facilities
       to wait until the data is ready, and retry.

EXAMPLE
       See sendrecv.c in docs/examples directory for usage example.

SEE ALSO
       curl_easy_setopt(3), curl_easy_perform(3), curl_easy_getinfo(3), curl_easy_send(3)



libcurl 7.18.2                                  29 April 2008                              curl_easy_recv(3)

Reporting Problems

The way to report a problem with this manual page depends on the type of problem:

Content errors
Report errors in the content of this documentation with the feedback links below.
Bug reports
Report bugs in the functionality of the described tool or API through Bug Reporter.
Formatting problems
Report formatting mistakes in the online version of these pages with the feedback links below.