1--TEST-- 2Check for TCP RPC Malfromaled response (Not enough payload recved) 3--SKIPIF-- 4<?php 5if (!extension_loaded("yar")) { 6 die("skip"); 7} 8?> 9--INI-- 10yar.packager=php 11--FILE-- 12<?php 13include "yar.inc"; 14 15yar_tcp_server_start(); 16 17$header = array( 18 "id" => 0, 19 "magic_num" => YAR_PROTOCOL_MAGIC_NUM, 20 "provider" => str_pad("PHP ILL Server", 32, " "), 21 "reserved" => 0, 22 "token" => str_pad(" ", 32, " "), 23 "version" => 0, 24 "body_len" => 0 25); 26 27$body = array( 28 "i" => 0, 29 "s" => 0x40, 30 "e" => "exception", 31 "r" => "", 32 "o" => "", 33); 34 35$header["body_len"] = strlen(serialize($body)) + 8 + 32/* Extra len */; 36 37$client = new Yar_Client(YAR_TCP_ADDRESS); 38try { 39 $client->raw($header, $body); 40} catch (Yar_Client_Exception $e) { 41 var_dump($e->getMessage()); 42} 43?> 44--EXPECTF-- 45string(36) "server closed connection prematurely" 46