summaryrefslogtreecommitdiff
path: root/ext/curl/php_curl.h
Commit message (Collapse)AuthorAgeFilesLines
* Allow PHP_CURL_APIs to be imported by DLLsChristoph M. Becker2020-11-241-1/+5
| | | | Closes GH-6438.
* Private/public split curl headerNikita Popov2020-09-071-138/+1
| | | | | | | | | To allow exporting the php_curl.h header containing curl class entries, split off a separate curl_private.h header with all the implementation details. We may move or expose additional APIs in php_curl.h on an as-needed basis.
* Remove some unnecessary HAVE_EXTNAME guardsNikita Popov2020-09-071-12/+1
| | | | | | | | A recurring pattern in old extension: Putting the whole source code behind HAVE_EXTNAME. This is pointless, as the code is only compiled if the extension is enabled. This removes a couple of them, but not all.
* Also allow casting CurlMultiHandlesNikita Popov2020-06-221-0/+1
|
* Convert CURL resources to objectsMáté Kocsis2020-06-171-16/+23
| | | | | | Closes GH-5402 Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
* Fix [-Wundef] warning in cURL extensionGeorge Peter Banyard2020-05-161-1/+1
|
* Generate function entries from stubs for a couple of extensionsMáté Kocsis2020-04-041-46/+0
| | | | Closes GH-5347
* Merge branch 'PHP-7.4'Christoph M. Becker2020-02-041-0/+3
|\ | | | | | | | | * PHP-7.4: Fix #79019: Copied cURL handles upload empty file
| * Fix #79019: Copied cURL handles upload empty fileChristoph M. Becker2020-02-041-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To cater to `curl_copy_handle()` of cURL handles with attached `CURLFile`s, we must not attach the opened stream, because the stream may not be seekable, so that we could rewind, when the same stream is going to be uploaded multiple times. Instead, we're opening the stream lazily in the read callback. Since `curl_multi_perfom()` processes easy handles asynchronously, we have no control of the operation sequence. Since duplicated cURL handles may be used with multi handles, we cannot use a single arg structure, but actually have to rebuild the whole mime structure on handle duplication and attach this to the new handle. In order to better test this behavior, we extend the test responder to print the size of the upload, and patch the existing tests accordingly.
* | Remove mention of PHP major version in Copyright headersGabriel Caruso2019-09-251-2/+0
|/ | | | Closes GH-4732.
* Merge branch 'PHP-7.3' into PHP-7.4Nikita Popov2019-07-181-0/+3
|\
| * Merge branch 'PHP-7.2' into PHP-7.3Nikita Popov2019-07-181-0/+2
| |\
| | * Fixed bug #77946Abyr Valg2019-07-181-0/+2
| | | | | | | | | | | | Save multi_info_read() result into easy handle.
| | * year++Xinchen Hui2018-01-021-1/+1
| | |
* | | Extend CURLFile to support streamsChristoph M. Becker2019-04-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to former restrictions of the libcurl API, curl multipart/formdata file uploads supported only proper files. However, as of curl 7.56.0 the new `curl_mime_*()` API is available (and already supported by PHP[1]), which allows us to support arbitrary *seekable* streams, which is generally desirable, and particularly resolves issues with the transparent Unicode and long part support on Windows (see bug #77711). Note that older curl versions are still supported, but CURLFile is still restricted to proper files in this case. [1] <http://git.php.net/?p=php-src.git;a=commit;h=a83b68ba56714bfa06737a61af795460caa4a105>
* | | Remove yearly range from copyright noticeZeev Suraski2019-01-301-1/+1
|/ /
* | Remove unused Git attributes identPeter Kokot2018-07-251-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The $Id$ keywords were used in Subversion where they can be substituted with filename, last revision number change, last changed date, and last user who changed it. In Git this functionality is different and can be done with Git attribute ident. These need to be defined manually for each file in the .gitattributes file and are afterwards replaced with 40-character hexadecimal blob object name which is based only on the particular file contents. This patch simplifies handling of $Id$ keywords by removing them since they are not used anymore.
* | Bump libcurl requirement to 7.15.5Nikita Popov2018-02-031-3/+0
| | | | | | | | | | | | | | | | | | | | The existence of the following functions is now guaranteed: * curl_escape() * curl_unescape() * curl_multi_setopt() libcurl 7.15.5 has been released 11.5 years ago and is available even in RHEL 5.
* | year++Xinchen Hui2018-01-021-1/+1
| |
* | Bump libcurl requirement to 7.12.1Nikita Popov2017-12-191-4/+0
|/ | | | | | | | | | | The existence of the following functions is now guaranteed: * curl_reset() * curl_strerror() * curl_multi_strerror() * curl_share_strerror() libcurl 7.12.1 has been released more than 13 years ago and is available even in RHEL 4.
* Update copyright headers to 2017Sammy Kaye Powers2017-01-021-1/+1
|
* Implement curl server pushDavey Shafik2016-06-271-1/+9
|
* Refactor setup of handlers on copied curl handlesDavey Shafik2016-06-271-0/+1
|
* Add curl_multi/share_errno() curl_share_strerror()Pierrick Charron2016-06-261-0/+10
| | | | | | | | | Add 3 new functions : - curl_multi_errno() - curl_share_errno() - curl_share_strerror() https://wiki.php.net/rfc/new-curl-error-functions
* Merge branch 'PHP-5.6' into PHP-7.0Lior Kaplan2016-01-011-1/+1
|\ | | | | | | | | * PHP-5.6: Happy new year (Update copyright to 2016)
| * Happy new year (Update copyright to 2016)Lior Kaplan2016-01-011-1/+1
| |
| * bump yearXinchen Hui2015-01-151-1/+1
| |
* | Fixed bug #70330 (Segmentation Fault with multiple "curl_copy_handle")Xinchen Hui2015-08-231-1/+1
| |
* | Reorder fields of curlXinchen Hui2015-05-081-31/+31
| |
* | cleaning up the version macrosAnatol Belski2015-03-231-0/+3
| |
* | Remove unsafe curl file uploadsNikita Popov2015-03-091-1/+0
| | | | | | | | The option CURLOPT_SAFE_UPLOAD still exists, but cannot be disabled.
* | bump yearXinchen Hui2015-01-151-1/+1
| |
* | remove the thread ctx from curlAnatol Belski2014-12-171-1/+0
| |
* | first shot remove TSRMLS_* thingsAnatol Belski2014-12-131-4/+4
| |
* | Add smart_str_append for appending zend_stringsNikita Popov2014-09-211-1/+1
| | | | | | | | Also replaces usages in Zend/ and ext/standard
* | Move smart_str implementation into Zend/Nikita Popov2014-09-211-1/+1
| | | | | | | | | | | | | | | | So we can use it there as well... For now I've retained the zend_smart_str_public.h header, though it would probably be better to just move that one struct into zend_types.h.
* | s/PHP 5/PHP 7/Johannes Schlüter2014-09-191-1/+1
| |
* | master renames phase 2Anatol Belski2014-08-251-1/+1
| |
* | Use zend_string for better performanceXinchen Hui2014-05-091-2/+1
| |
* | Fixed clone refcountXinchen Hui2014-05-091-1/+1
| |
* | Refactoring ext/curl (only compilable now)Xinchen Hui2014-05-091-29/+29
|/
* Allow NULL as value for CURLOPT_CUSTOMREQUEST option.datibbaw2014-02-281-1/+1
| | | | | | | | | | | Added test case. Refactored the code to isolate the string handling. Fixed return values to use SUCCESS and FAILURE. Removed unused error variable. Indentation fix. Removed the ugly goto.
* Bump yearXinchen Hui2014-01-031-1/+1
|
* Merge branch 'PHP-5.4' into PHP-5.5Adam Harvey2013-08-191-1/+1
|\ | | | | | | | | | | | | | | * PHP-5.4: Track created curl_slist structs by option so they can be updated in situ. Conflicts: ext/curl/interface.c
| * Track created curl_slist structs by option so they can be updated in situ.Adam Harvey2013-08-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | At present, when curl_setopt() is called with an option that requires the creation of a curl_slist, we simply push the new curl_slist onto a list to be freed when the curl handle is freed. This avoids a memory leak, but means that repeated calls to curl_setopt() on the same handle with the same option wastes previously allocated memory on curl_slist structs that will no longer be read. This commit changes the zend_llist that was previously used to track the lists to a HashTable keyed by the option number, which means that we can simply update the hash table each time curl_setopt() is called. Fixes bug #65458 (curl memory leak).
| * Happy New YearXinchen Hui2013-01-011-1/+1
| |
* | Remove curl wrappersPierrick Charron2013-04-231-32/+0
| |
* | Implement fix for bug #46439 - add CURLFile class for safer uploadsStanislav Malyshev2013-01-281-1/+16
| |
* | Improve resource management for curl handlePierrick Charron2013-01-051-1/+0
| | | | | | | | | | | | Previous implementation was using its own refcounting (uses field of the php_curl struct). zend_list_add/remove already implements its own refcount, so we don't need to use an other one.
* | Remove passwd handler from struct when not neededPierrick Charron2013-01-011-0/+2
| | | | | | | | | | CURLOPT_PASSWDFUNCTION was removed in cURL 7.15.5, the passwd field will not be used for version greater than this one