NetworkPackets.Dns.Question.Question C# (CSharp) Method

Question() public method

Constructor when parsing a Dns Query
public Question ( MemBlock Data, int Start ) : Brunet
Data MemBlock must pass in the entire packet from where the question begins, after parsing, can check Data.Length to find where next container begins.
Start int
return Brunet
    public Question(MemBlock Data, int Start) {
      int idx = 0;
      QNameBlob = DnsPacket.RetrieveBlob(Data, Start, out idx);
      int qtype = (Data[idx++] << 8) + Data[idx++];
      QType = (DnsPacket.Types) qtype;

      int qclass = (Data[idx++] << 8) + Data[idx];
      QClass = (DnsPacket.Classes) qclass;

      if(QType == DnsPacket.Types.A || QType == DnsPacket.Types.AAAA) {
        QName = DnsPacket.HostnameMemBlockToString(QNameBlob);
      }
      else if(QType == DnsPacket.Types.Ptr) {
        QName = DnsPacket.PtrMemBlockToString(QNameBlob);
      }

      _icpacket = _packet = Data.Slice(Start, idx + 1 - Start);
    }
  }

Same methods

Question::Question ( String QName, DnsPacket QType, DnsPacket QClass ) : Brunet
Question