public void WriteRecordStart(RecordSection recordType, Name name, RecordType type, uint ttl, RecordClass _class = RecordClass.Internet) { Debug.Assert(_recordStartPosition == 0); WriteName(name); WriteUInt16((ushort)type); WriteUInt16((ushort)_class); WriteUInt32(ttl); WriteUInt16(0); switch (recordType) { case RecordSection.Answer: _answerCount++; break; case RecordSection.Additional: _additionalCount++; break; case RecordSection.Authority: _authorityCount++; break; } _recordStartPosition = _stream.Position; }
public void WritePtrRecord(RecordSection recordType, Name name, Name ptrName, uint ttl, RecordClass _class = RecordClass.Internet) { WriteRecordStart(recordType, name, RecordType.PTR, ttl, _class); WriteRecordData(name); WriteRecordEnd(); }