Mantis - Quercus
Viewing Issue Advanced Details
3317 block always 02-04-09 11:34 02-04-09 15:55
koreth  
nam  
normal  
closed 4.0.0  
fixed  
none    
none 4.0.0  
0003317: stream_context_create / fopen mangles headers
<?php
$server_addr = 'http://api.facebook.com/restserver.php'; [^]
$user_agent = 'test client';
$content = 'abcdefg';
$content_length = strlen($content);
$context = array('http' =>
                   array('method' => 'POST',
                         'user_agent' => $user_agent,
                         'header' => "Content-Type: text/plain\r\n" .
                                     "Content-Length: $content_length",
                         'content' => $content));
$context_id = stream_context_create($context);
$sock = fopen($server_addr, 'r', false, $context_id);
fclose($sock);

Run this with a packet sniffer. Regular PHP sends an HTTP header like

Content-Type: text/plain
Content-Length: 7
Host: api.facebook.com
User-Agent: test client

but Quercus sends

Host: api.facebook.com
User-Agent: test client
content-typ: text/plain
Content-Length: 7

Note the mangling of the Content-Type: line.

Notes
(0003801)
nam   
02-04-09 15:55   
php/164p