summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierrick Charron <pierrick@php.net>2018-12-08 15:09:43 -0500
committerPierrick Charron <pierrick@php.net>2018-12-08 15:09:43 -0500
commitb3a6ca90af54482e88f714ef1062c84d36322167 (patch)
tree37f6d0fd3f7241ab6cf973bfcc9339c9910c6fb2
parentcb3a1df94668a740548ca1dcaa062d949356be71 (diff)
downloadphp-git-b3a6ca90af54482e88f714ef1062c84d36322167.tar.gz
Fix 77264: curl_getinfo returning microseconds, not seconds
Since curl 7.55.0, libcurl introduced new constants to return more sensible variable types with curl_getinfo. When curl_getinfo with no option was called, and curl >= 7.55.0, some of the result were returned as int when they where returned as float in previous versions. This commit remove this BC Break. If someone still want to use more sensible variable types, it's always possible to call curl_getinfo with newer constants. CURLINFO_CONTENT_LENGTH_DOWNLOAD => CURLINFO_CONTENT_LENGTH_DOWNLOAD_T CURLINFO_CONTENT_LENGTH_UPLOAD => CURLINFO_CONTENT_LENGTH_UPLOAD_T CURLINFO_SIZE_DOWNLOAD => CURLINFO_SIZE_DOWNLOAD_T CURLINFO_SIZE_UPLOAD => CURLINFO_SIZE_UPLOAD_T CURLINFO_SPEED_DOWNLOAD => CURLINFO_SPEED_DOWNLOAD_T CURLINFO_SPEED_UPLOAD => CURLINFO_SPEED_UPLOAD_T CURLINFO_APPCONNECT_TIME => CURLINFO_APPCONNECT_TIME_T CURLINFO_CONNECT_TIME => CURLINFO_CONNECT_TIME_T CURLINFO_NAMELOOKUP_TIME => CURLINFO_NAMELOOKUP_TIME_T CURLINFO_PRETRANSFER_TIME => CURLINFO_PRETRANSFER_TIME_T CURLINFO_REDIRECT_TIME => CURLINFO_REDIRECT_TIME_T CURLINFO_STARTTRANSFER_TIME => CURLINFO_STARTTRANSFER_TIME_T CURLINFO_TOTAL_TIME => CURLINFO_TOTAL_TIME_T
-rw-r--r--NEWS4
-rw-r--r--ext/curl/interface.c39
2 files changed, 11 insertions, 32 deletions
diff --git a/NEWS b/NEWS
index 34c1fbba50..f274e621bf 100644
--- a/NEWS
+++ b/NEWS
@@ -8,6 +8,10 @@ PHP NEWS
. Fixed bug #76046 (PHP generates "FE_FREE" opcode on the wrong line).
(Nikita)
+- CURL:
+ . Fixed bug #77264 (curl_getinfo returning microseconds, not seconds).
+ (Pierrick)
+
- COM:
. Fixed bug #77177 (Serializing or unserializing COM objects crashes). (cmb)
diff --git a/ext/curl/interface.c b/ext/curl/interface.c
index 4e6bd0792a..ef0eee9578 100644
--- a/ext/curl/interface.c
+++ b/ext/curl/interface.c
@@ -3294,52 +3294,27 @@ PHP_FUNCTION(curl_getinfo)
CAAS("scheme", s_code);
}
#endif
-#if LIBCURL_VERSION_NUM >= 0x073700 /* Available since 7.55.0 */
- if (curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_LENGTH_DOWNLOAD_T, &co) == CURLE_OK) {
- CAAL("content_length_download", co);
- }
- if (curl_easy_getinfo(ch->cp, CURLINFO_CONTENT_LENGTH_UPLOAD_T, &co) == CURLE_OK) {
- CAAL("content_length_upload", co);
- }
- if (curl_easy_getinfo(ch->cp, CURLINFO_SIZE_DOWNLOAD_T, &co) == CURLE_OK) {
- CAAL("size_download", co);
- }
- if (curl_easy_getinfo(ch->cp, CURLINFO_SIZE_UPLOAD_T, &co) == CURLE_OK) {
- CAAL("size_upload", co);
- }
- if (curl_easy_getinfo(ch->cp, CURLINFO_SPEED_DOWNLOAD_T, &co) == CURLE_OK) {
- CAAL("speed_download", co);
- }
- if (curl_easy_getinfo(ch->cp, CURLINFO_SPEED_UPLOAD_T, &co) == CURLE_OK) {
- CAAL("speed_upload", co);
- }
-#endif
-#if LIBCURL_VERSION_NUM >= 0x073b00 /* Available since 7.59.0 */
- if (curl_easy_getinfo(ch->cp, CURLINFO_FILETIME_T, &co) == CURLE_OK) {
- CAAL("filetime", co);
- }
-#endif
#if LIBCURL_VERSION_NUM >= 0x073d00 /* Available since 7.61.0 */
if (curl_easy_getinfo(ch->cp, CURLINFO_APPCONNECT_TIME_T, &co) == CURLE_OK) {
- CAAL("appconnect_time", co);
+ CAAL("appconnect_time_us", co);
}
if (curl_easy_getinfo(ch->cp, CURLINFO_CONNECT_TIME_T, &co) == CURLE_OK) {
- CAAL("connect_time", co);
+ CAAL("connect_time_us", co);
}
if (curl_easy_getinfo(ch->cp, CURLINFO_NAMELOOKUP_TIME_T, &co) == CURLE_OK) {
- CAAL("namelookup_time", co);
+ CAAL("namelookup_time_us", co);
}
if (curl_easy_getinfo(ch->cp, CURLINFO_PRETRANSFER_TIME_T, &co) == CURLE_OK) {
- CAAL("pretransfer_time", co);
+ CAAL("pretransfer_time_us", co);
}
if (curl_easy_getinfo(ch->cp, CURLINFO_REDIRECT_TIME_T, &co) == CURLE_OK) {
- CAAL("redirect_time", co);
+ CAAL("redirect_time_us", co);
}
if (curl_easy_getinfo(ch->cp, CURLINFO_STARTTRANSFER_TIME_T, &co) == CURLE_OK) {
- CAAL("starttransfer_time", co);
+ CAAL("starttransfer_time_us", co);
}
if (curl_easy_getinfo(ch->cp, CURLINFO_TOTAL_TIME_T, &co) == CURLE_OK) {
- CAAL("total_time", co);
+ CAAL("total_time_us", co);
}
#endif
if (ch->header.str) {