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);
}
}