Bug #75315 [NEW]: curl cutting off post data
| From: | j dot wessel at nolis dot de | Date: | Thu, 05 Oct 2017 12:22:06 +0000 |
| Subject: | Bug #75315 [NEW]: curl cutting off post data | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-211530@lists.php.net to get a copy of this message | ||
From: j dot wessel at nolis dot de
Operating system: Debian 9
PHP version: 7.1.10
Package: cURL related
Bug Type: Bug
Bug description:curl cutting off post data
Description:
------------
Tested with: PHP 7.1.10, PHP 5.6.31 and curl 7.56.0
The script works with curl 7.55.0 correctly.
Test script:
---------------
curl.php
--------------------------------------------------------------------------------------
<?php
//generate string data
function getStr($num) {
$bstring = 'abcdefghijklmnopqrstuvxyz0123456789';
$str = '';
for($i = 0; $i < $num; $i++) {
$str .= $bstring;
}
return $str;
}
$json = [
'json1' => getStr(200),
'json2' => getStr(200),
'json3' => getStr(200),
'json4' => getStr(200),
];
$post = [
'test1' => 'a',
'test2' => 'b',
'test3' => 'c',
'test4' => json_encode($json) //or use print_r or var_dump with return
parameter
];
$ch = curl_init();
//send encoded json-data to service
curl_setopt($ch, CURLOPT_URL, 'https://localhost/service.php');
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec ($ch);
curl_close($ch);
var_dump($result);
?>
service.php
--------------------------------------------------------------------------------------
<?php
//get the post data and write into request.log
$result = file_put_contents('request.log', print_r($_REQUEST, true));
var_dump($result);
//the content of $_REQUEST is wrong, json1 is repeated, content is
cutted off
//expected result: correct content in $_REQUEST
?>
Expected result:
----------------
Correct post data in $_REQUEST.
Actual result:
--------------
the content of $_REQUEST is wrong, json1 is repeated, content is cutted
off, the post data is corrupt
--
Edit bug report at https://bugs.php.net/bug.php?id=75315&edit=1
--
Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=75315&r=trysnapshot54
Try a snapshot (PHP 5.5): https://bugs.php.net/fix.php?id=75315&r=trysnapshot55
Try a snapshot (trunk): https://bugs.php.net/fix.php?id=75315&r=trysnapshottrunk
Fixed in SVN: https://bugs.php.net/fix.php?id=75315&r=fixed
Fixed in release: https://bugs.php.net/fix.php?id=75315&r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=75315&r=needtrace
Need Reproduce Script: https://bugs.php.net/fix.php?id=75315&r=needscript
Try newer version: https://bugs.php.net/fix.php?id=75315&r=oldversion
Not developer issue: https://bugs.php.net/fix.php?id=75315&r=support
Expected behavior: https://bugs.php.net/fix.php?id=75315&r=notwrong
Not enough info: https://bugs.php.net/fix.php?id=75315&r=notenoughinfo
Submitted twice: https://bugs.php.net/fix.php?id=75315&r=submittedtwice
register_globals: https://bugs.php.net/fix.php?id=75315&r=globals
PHP 4 support discontinued: https://bugs.php.net/fix.php?id=75315&r=php4
Daylight Savings: https://bugs.php.net/fix.php?id=75315&r=dst
IIS Stability: https://bugs.php.net/fix.php?id=75315&r=isapi
Install GNU Sed: https://bugs.php.net/fix.php?id=75315&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=75315&r=float
No Zend Extensions: https://bugs.php.net/fix.php?id=75315&r=nozend
MySQL Configuration Error: https://bugs.php.net/fix.php?id=75315&r=mysqlcfg