X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=blobdiff_plain;f=php_http_client_curl.c;h=fed92fc078f2c4a95649c53901f5393c8c05483a;hp=763525f968fc3f201d86d0e2a0bb3ea98c1d1b5c;hb=a0884cdb00bb323c3c793809bc39e76d46cd74d4;hpb=a9b5cbfc56a4fcb52e8cf4d353a8b64a8b9acbb2 diff --git a/php_http_client_curl.c b/php_http_client_curl.c index 763525f..fed92fc 100644 --- a/php_http_client_curl.c +++ b/php_http_client_curl.c @@ -2008,9 +2008,14 @@ static ZEND_RESULT_CODE php_http_client_curl_handler_prepare(php_http_client_cur * See also https://tools.ietf.org/html/rfc7231#section-5.1.1 */ if (PHP_HTTP_INFO(msg).request.method) { - if (!strcasecmp("PUT", PHP_HTTP_INFO(msg).request.method)) { + switch(php_http_select_str(PHP_HTTP_INFO(msg).request.method, 2, "HEAD", "PUT")) { + case 0: + curl_easy_setopt(curl->handle, CURLOPT_NOBODY, 1L); + break; + case 1: curl_easy_setopt(curl->handle, CURLOPT_UPLOAD, 1L); - } else { + break; + default: curl_easy_setopt(curl->handle, CURLOPT_CUSTOMREQUEST, PHP_HTTP_INFO(msg).request.method); } } else {