155 lines
3.8 KiB
PHP
155 lines
3.8 KiB
PHP
<?php
|
|
|
|
declare (strict_types=1);
|
|
/**
|
|
* Holds data associated with a decode operation
|
|
*
|
|
* PHP version 5.4
|
|
*
|
|
* @category LibDNS
|
|
* @package Decoder
|
|
* @author Chris Wright <https://github.com/DaveRandom>
|
|
* @copyright Copyright (c) Chris Wright <https://github.com/DaveRandom>
|
|
* @license http://www.opensource.org/licenses/mit-license.html MIT License
|
|
* @version 2.0.0
|
|
*/
|
|
namespace WP_Ultimo\Dependencies\LibDNS\Decoder;
|
|
|
|
use WP_Ultimo\Dependencies\LibDNS\Packets\Packet;
|
|
use WP_Ultimo\Dependencies\LibDNS\Packets\LabelRegistry;
|
|
/**
|
|
* Holds data associated with a decode operation
|
|
*
|
|
* @category LibDNS
|
|
* @package Decoder
|
|
* @author Chris Wright <https://github.com/DaveRandom>
|
|
*/
|
|
class DecodingContext
|
|
{
|
|
/**
|
|
* @var \LibDNS\Packets\Packet
|
|
*/
|
|
private $packet;
|
|
/**
|
|
* @var \LibDNS\Packets\LabelRegistry
|
|
*/
|
|
private $labelRegistry;
|
|
/**
|
|
* @var int
|
|
*/
|
|
private $expectedQuestionRecords = 0;
|
|
/**
|
|
* @var int
|
|
*/
|
|
private $expectedAnswerRecords = 0;
|
|
/**
|
|
* @var int
|
|
*/
|
|
private $expectedAuthorityRecords = 0;
|
|
/**
|
|
* @var int
|
|
*/
|
|
private $expectedAdditionalRecords = 0;
|
|
/**
|
|
* Constructor
|
|
*
|
|
* @param \LibDNS\Packets\Packet $packet
|
|
* @param \LibDNS\Packets\LabelRegistry $labelRegistry
|
|
*/
|
|
public function __construct(Packet $packet, LabelRegistry $labelRegistry)
|
|
{
|
|
$this->packet = $packet;
|
|
$this->labelRegistry = $labelRegistry;
|
|
}
|
|
/**
|
|
* Get the packet
|
|
*
|
|
* @return \LibDNS\Packets\Packet
|
|
*/
|
|
public function getPacket() : Packet
|
|
{
|
|
return $this->packet;
|
|
}
|
|
/**
|
|
* Get the label registry
|
|
*
|
|
* @return \LibDNS\Packets\LabelRegistry
|
|
*/
|
|
public function getLabelRegistry() : LabelRegistry
|
|
{
|
|
return $this->labelRegistry;
|
|
}
|
|
/**
|
|
* Get the number of question records expected in the message
|
|
*
|
|
* @return int
|
|
*/
|
|
public function getExpectedQuestionRecords() : int
|
|
{
|
|
return $this->expectedQuestionRecords;
|
|
}
|
|
/**
|
|
* Get the number of question records expected in the message
|
|
*
|
|
* @param int $expectedQuestionRecords
|
|
*/
|
|
public function setExpectedQuestionRecords(int $expectedQuestionRecords)
|
|
{
|
|
$this->expectedQuestionRecords = $expectedQuestionRecords;
|
|
}
|
|
/**
|
|
* Get the number of answer records expected in the message
|
|
*
|
|
* @return int
|
|
*/
|
|
public function getExpectedAnswerRecords() : int
|
|
{
|
|
return $this->expectedAnswerRecords;
|
|
}
|
|
/**
|
|
* Set the number of answer records expected in the message
|
|
*
|
|
* @param int $expectedAnswerRecords
|
|
*/
|
|
public function setExpectedAnswerRecords(int $expectedAnswerRecords)
|
|
{
|
|
$this->expectedAnswerRecords = $expectedAnswerRecords;
|
|
}
|
|
/**
|
|
* Get the number of authority records expected in the message
|
|
*
|
|
* @return int
|
|
*/
|
|
public function getExpectedAuthorityRecords() : int
|
|
{
|
|
return $this->expectedAuthorityRecords;
|
|
}
|
|
/**
|
|
* Set the number of authority records expected in the message
|
|
*
|
|
* @param int $expectedAuthorityRecords
|
|
*/
|
|
public function setExpectedAuthorityRecords(int $expectedAuthorityRecords)
|
|
{
|
|
$this->expectedAuthorityRecords = $expectedAuthorityRecords;
|
|
}
|
|
/**
|
|
* Get the number of additional records expected in the message
|
|
*
|
|
* @return int
|
|
*/
|
|
public function getExpectedAdditionalRecords() : int
|
|
{
|
|
return $this->expectedAdditionalRecords;
|
|
}
|
|
/**
|
|
* Set the number of additional records expected in the message
|
|
*
|
|
* @param int $expectedAdditionalRecords
|
|
*/
|
|
public function setExpectedAdditionalRecords(int $expectedAdditionalRecords)
|
|
{
|
|
$this->expectedAdditionalRecords = $expectedAdditionalRecords;
|
|
}
|
|
}
|