On Fri, 8 Oct 2010 18:53:19 -0300 Raphael Kubo da Costa <[email protected]>
said:
this is actually a good q... shouldnt it be unsigned long at any rate? (tho to
be honest int is probably enough... but as u have to send in 1 go... 2gb might
possibly be a limiting factor?)
> This signature change follows libcurl's behaviour more closely:
> CURLOPT_POSTFIELDSIZE expects a long, and a value of -1 means that
> content length calculation is forwarded to libcurl, which performs a
> strlen() on CURLOPT_POSTFIELD.
> ---
> src/lib/ecore_con/Ecore_Con.h | 2 +-
> src/lib/ecore_con/ecore_con_url.c | 19 ++++++++-----------
> 2 files changed, 9 insertions(+), 12 deletions(-)
>
> diff --git a/src/lib/ecore_con/Ecore_Con.h b/src/lib/ecore_con/Ecore_Con.h
> index 7d9ca12..201986d 100644
> --- a/src/lib/ecore_con/Ecore_Con.h
> +++ b/src/lib/ecore_con/Ecore_Con.h
> @@ -481,7 +481,7 @@ EAPI Eina_Bool ecore_con_url_httpauth_set
> (Ecore_Con_Url *url_con, const char *password,
> Eina_Bool safe);
> EAPI Eina_Bool ecore_con_url_send(Ecore_Con_Url *url_con,
> - const void *data, size_t length,
> + const void *data, long length,
> const char *content_type);
> EAPI void ecore_con_url_time(Ecore_Con_Url *url_con,
> Ecore_Con_Url_Time condition,
> diff --git a/src/lib/ecore_con/ecore_con_url.c
> b/src/lib/ecore_con/ecore_con_url.c index 73a8519..3c60253 100644
> --- a/src/lib/ecore_con/ecore_con_url.c
> +++ b/src/lib/ecore_con/ecore_con_url.c
> @@ -785,13 +785,13 @@ ecore_con_url_httpauth_set(Ecore_Con_Url *url_con,
> const char *username, *
> * @param url_con Connection object to perform a request on, previously
> created
> * with ecore_con_url_new() or ecore_con_url_custom_new().
> - * @param data Payload (data sent on the request)
> - * @param length Payload length
> + * @param data Payload (data sent on the request)
> + * @param length Payload length. If @c -1, rely on automatic length
> + * calculation via @c strlen() on @p data.
> * @param content_type Content type of the payload (e.g. text/xml)
> *
> * @return #EINA_TRUE on success, #EINA_FALSE on error.
> *
> - *
> * @see ecore_con_url_custom_new()
> * @see ecore_con_url_additional_headers_clear()
> * @see ecore_con_url_additional_header_add()
> @@ -800,7 +800,7 @@ ecore_con_url_httpauth_set(Ecore_Con_Url *url_con, const
> char *username,
> * @see ecore_con_url_response_headers_get()
> */
> EAPI Eina_Bool
> -ecore_con_url_send(Ecore_Con_Url *url_con, const void *data, size_t length,
> +ecore_con_url_send(Ecore_Con_Url *url_con, const void *data, long length,
> const char *content_type)
> {
> #ifdef HAVE_CURL
> @@ -830,17 +830,14 @@ ecore_con_url_send(Ecore_Con_Url *url_con, const void
> *data, size_t length,
> if (data)
> {
> - curl_easy_setopt(url_con->curl_easy, CURLOPT_POSTFIELDS, data);
> - curl_easy_setopt(url_con->curl_easy, CURLOPT_POSTFIELDSIZE, length);
> -
> - if (content_type && (strlen(content_type) < 200))
> + if ((content_type) && (strlen(content_type) < 200))
> {
> - sprintf(tmp, "Content-type: %s", content_type);
> + snprintf(tmp, sizeof(tmp), "Content-Type: %s", content_type);
> url_con->headers = curl_slist_append(url_con->headers, tmp);
> }
>
> - sprintf(tmp, "Content-length: %zu", length);
> - url_con->headers = curl_slist_append(url_con->headers, tmp);
> + curl_easy_setopt(url_con->curl_easy, CURLOPT_POSTFIELDS, data);
> + curl_easy_setopt(url_con->curl_easy, CURLOPT_POSTFIELDSIZE, length);
> }
>
> switch (url_con->condition)
> --
> 1.7.3.1
>
>
> ------------------------------------------------------------------------------
> Beautiful is writing same markup. Internet Explorer 9 supports
> standards for HTML5, CSS3, SVG 1.1, ECMAScript5, and DOM L2 & L3.
> Spend less time writing and rewriting code and more time creating great
> experiences on the web. Be a part of the beta today.
> http://p.sf.net/sfu/beautyoftheweb
> _______________________________________________
> enlightenment-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
--
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler) [email protected]
------------------------------------------------------------------------------
Download new Adobe(R) Flash(R) Builder(TM) 4
The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly
Flex(R) Builder(TM)) enable the development of rich applications that run
across multiple browsers and platforms. Download your free trials today!
http://p.sf.net/sfu/adobe-dev2dev
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel