X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=docs%2Flibcurl%2Fcurl_easy_recv.3;h=3560cc511a89f7866e8b3b28dec7bcbeedb8888e;hb=88d478478059f53e6de0d1267c3a1e6b02c4273f;hp=7a812dd004c384541277ef01340f2f5723b909fe;hpb=e9bdad71c8277e20607fa1eaf0027d53a0dc1f37;p=platform%2Fupstream%2Fcurl.git diff --git a/docs/libcurl/curl_easy_recv.3 b/docs/libcurl/curl_easy_recv.3 index 7a812dd..3560cc5 100644 --- a/docs/libcurl/curl_easy_recv.3 +++ b/docs/libcurl/curl_easy_recv.3 @@ -46,21 +46,12 @@ calling \fIcurl_easy_perform(3)\fP or \fIcurl_multi_perform(3)\fP. Note that \fIcurl_easy_recv(3)\fP does not work on connections that were created without this option. -The call will return \fBCURLE_AGAIN\fP if there is no data to read - the -socket is used in non-blocking mode internally. When \fBCURLE_AGAIN\fP is -returned, use your operating system facilities like \fIselect(2)\fP to wait -for data. The socket may be obtained using \fIcurl_easy_getinfo(3)\fP with -\fICURLINFO_ACTIVESOCKET(3)\fP. - -Wait on the socket only if \fIcurl_easy_recv(3)\fP returns \fBCURLE_AGAIN\fP. -The reason for this is libcurl or the SSL library may internally cache some -data, therefore you should call \fIcurl_easy_recv(3)\fP until all data is -read which would include any cached data. - -Furthermore if you wait on the socket and it tells you there is data to read, -\fIcurl_easy_recv(3)\fP may return \fBCURLE_AGAIN\fP if the only data that was -read was for internal SSL processing, and no other data is available. - +You must ensure that the socket has data to read before calling +\fIcurl_easy_recv(3)\fP, otherwise the call will return \fBCURLE_AGAIN\fP - +the socket is used in non-blocking mode internally. Use +\fIcurl_easy_getinfo(3)\fP with \fICURLINFO_ACTIVESOCKET(3)\fP to obtain the +socket; use your operating system facilities like \fIselect(2)\fP to check if +it has any data you can read. .SH AVAILABILITY Added in 7.18.2. .SH RETURN VALUE @@ -69,13 +60,13 @@ On success, returns \fBCURLE_OK\fP, stores the received data into On failure, returns the appropriate error code. -The function may return \fBCURLE_AGAIN\fP. In this case, use your operating -system facilities to wait until data can be read, and retry. +If there is no data to read, the function returns \fBCURLE_AGAIN\fP. Use your +operating system facilities to wait until the data is ready, and retry. -Reading exactly 0 bytes indicates a closed connection. +Reading exactly 0 bytes would indicate a closed connection. If there's no socket available to use from the previous transfer, this function -returns \fBCURLE_UNSUPPORTED_PROTOCOL\fP. +returns CURLE_UNSUPPORTED_PROTOCOL. .SH EXAMPLE See \fBsendrecv.c\fP in \fBdocs/examples\fP directory for usage example. .SH "SEE ALSO"