fcurl is fread and friends for URLs
This whole family of functions, fopen, fread, fwrite, fgets, fclose and more are defined in the C standard since C89. You can’t really call yourself a C programmer without knowing them and probably...
View ArticleReducing 2038-problems in curl
tldr: we’ve made curl handle dates beyond 2038 better on systems with 32 bit longs. libcurl is very portable and is built and used on virtually all current widely used operating systems that run on...
View ArticleQUIC and missing APIs
I trust you’ve heard by now that HTTP/3 is coming. It is the next destined HTTP version, targeted to get published as an RFC in July 2019. Not very far off. HTTP/3 will not be done over TCP. It will...
View ArticleThe future of HTTP Symposium
This year’s version of curl up started a little differently: With an afternoon of HTTP presentations. The event took place the same week the IETF meeting has just ended here in Prague so we got the...
View ArticleThis is your wake up curl
curl_multi_wakeup() is a new friend in the libcurl API family. It will show up for the first time in the upcoming 7.68.0 release, scheduled to happen on January 8th 2020. Sleeping is important One of...
View ArticleImagining a thread-safe curl_global_init
libcurl is thread-safe That’s the primary message that we push and that’s important to remember. You can write a multi-threaded application that does concurrent Internet transfers with libcurl in as...
View ArticleHeading towards curl eight
There’s plan for version 8 being forged! Let me just take you back a bit in time first.. The early days When we first created libcurl, we bumped the major version number of the project from the...
View ArticleYou wanted WebSockets?
WebSockets has been one of the most requested features and protocol to add to curl and libcurl in the annual user survey. Repeatedly, over the last few years. WebSockets is not perfectly suitable to...
View ArticleA headers API for libcurl
For many years we’ve had this outstanding idea to add a new API to libcurl that would offer applications easy access to HTTP response headers. Applications could already retrieve the headers using...
View ArticleMaking libcurl init more thread-safe
Twenty-one years ago, in May 2001 we introduced the global initialization function to libcurl version 7.8 called curl_global_init(). The main reason we needed this separate function to get called...
View Article