]> granicus.if.org Git - php/commitdiff
test for bug #67198
authorFerenc Kovacs <tyrael@php.net>
Mon, 5 May 2014 14:25:15 +0000 (16:25 +0200)
committerFerenc Kovacs <tyrael@php.net>
Mon, 5 May 2014 14:25:15 +0000 (16:25 +0200)
tests/basic/bug67198.phpt [new file with mode: 0644]

diff --git a/tests/basic/bug67198.phpt b/tests/basic/bug67198.phpt
new file mode 100644 (file)
index 0000000..d28a292
--- /dev/null
@@ -0,0 +1,44 @@
+--TEST--
+php://input is empty when enable_post_data_reading=Off
+--INI--
+allow_url_fopen=1
+--SKIPIF--
+<?php
+include __DIR__."/../../sapi/cli/tests/skipif.inc"; 
+?>
+--FILE--
+<?php
+require __DIR__."/../../sapi/cli/tests/php_cli_server.inc";
+
+$code =
+<<<'FL'
+ if(!ini_get('enable_post_data_reading')){
+  if($_SERVER['REQUEST_METHOD']=='POST'){
+   exit(file_get_contents('php://input'));
+  }
+ }else{
+  exit('Please SET php.ini: enable_post_data_reading = Off');
+ }
+FL;
+
+$postdata = "PASS";
+
+$opts = array('http' =>
+    array(
+        'method'  => 'POST',
+        'header'  => 'Content-type: application/x-www-form-urlencoded',
+        'content' => $postdata
+    )
+);
+
+$context  = stream_context_create($opts);
+
+php_cli_server_start("exit(file_get_contents('php://input'));", false, "-d enable_post_data_reading=Off");
+
+var_dump(file_get_contents("http://" . PHP_CLI_SERVER_ADDRESS, false, $context));
+var_dump(file_get_contents("http://" . PHP_CLI_SERVER_ADDRESS, false, $context));
+--XFAIL--
+67198 is open
+--EXPECT--
+string(4) "PASS"
+string(4) "PASS"