
09-28-2008, 09:49 PM
|
|
WHT Addict
|
|
Join Date: Aug 2001
Posts: 123
|
|
Here's the code:
Quote:
while ( ! feof($fp ) ) {
$buf .= fread($fp,1);
if ( strstr($buf, "\r\n\r\n") ) {
$split = split ("\r\n\r\n",$buf);
$data = $split[1];
var_dump($split);
while ( strlen($data) < 23) {
$data .= fread($fp,1);
}
break;
}
}
while(1){
$descrip = substr($data,0,15);
$ttl = ord($data[17]);
$hops = ord($data[18]);
$payload_len = substr($data,19, 22-19);
$plen = ord($payload_len);
$this->_log("hops: $hops; ttl: $ttl payload_len: $plen,$payload_len");
switch (ord($data[16])) {
case 0x00:
$this->_log('ping');
break;
case 0x01:
$this->_log('pong');
// $sin = fread($fp, $datasize);
break;
case 0x40:
$this->_log('push');
// $sin = fread($fp, $datasize);
break;
case 0x80:
$this->_log('query');
// $sin = fread($fp, $datasize);
break;
case 0x81;
$this->_log('queryhit');
// QueryResponseDataAvail($fp, $datasize);
break;
} // switch
fread($fp,$payload_len);
$data = '';
while ( strlen($data) < 23 ){
$data .= fread($fp,1);
}
}
|
|