MTU used correctly

This commit is contained in:
Shoghi Cervantes Pueyo 2013-05-19 17:11:21 +02:00
parent e3de52ba8b
commit 04f0500822

View File

@ -1375,13 +1375,12 @@ class Player{
"sendtime" => microtime(true), "sendtime" => microtime(true),
"raw" => "", "raw" => "",
); );
$size = $this->MTU - 32; $size = $this->MTU - 31;
$buffer = str_split(chr($id).$buffer, $size); $buffer = str_split(chr($id).$buffer, $size);
$h = Utils::writeInt(count($buffer)).Utils::writeShort($this->bigCnt); $h = Utils::writeInt(count($buffer)).Utils::writeShort($this->bigCnt);
$this->bigCnt = ($this->bigCnt + 1) % 0x10000; $this->bigCnt = ($this->bigCnt + 1) % 0x10000;
foreach($buffer as $i => $buf){ foreach($buffer as $i => $buf){
$data["raw"] = Utils::writeShort(strlen($buf) << 3).strrev(Utils::writeTriad($this->counter[3]++)).$h.Utils::writeInt($i).$buf; $data["raw"] = Utils::writeShort(strlen($buf) << 3).$h.Utils::writeInt($i).$buf;
$this->counter[3] %= 0x1000000;
$count = $this->counter[0]++; $count = $this->counter[0]++;
if(count($this->recovery) >= PLAYER_RECOVERY_BUFFER){ if(count($this->recovery) >= PLAYER_RECOVERY_BUFFER){
reset($this->recovery); reset($this->recovery);
@ -1393,7 +1392,7 @@ class Player{
$this->recovery[$count] = $data; $this->recovery[$count] = $data;
$this->send(0x80, array( $this->send(0x80, array(
$count, $count,
0x50, //0b01010000 0x10, //0b01010000
$data, $data,
)); ));
} }
@ -1430,7 +1429,7 @@ class Player{
}else{ }else{
$data = new CustomPacketHandler($id, "", $data, true); $data = new CustomPacketHandler($id, "", $data, true);
$len = strlen($data->raw) + 1; $len = strlen($data->raw) + 1;
$MTU = $this->MTU - 32; $MTU = $this->MTU - 21;
if($len > $MTU){ if($len > $MTU){
$this->directBigRawPacket($id, $data->raw); $this->directBigRawPacket($id, $data->raw);
return; return;