public PcapWriter(Stream stream, bool nanoseconds = false, bool reverseByteOrder = false) { CustomContract.Requires <ArgumentNullException>(stream != null, "stream cannot be null"); SectionHeader sh = SectionHeader.CreateEmptyHeader(nanoseconds, reverseByteOrder); Initialize(stream, sh); }
public PcapWriter(string path, bool nanoseconds = false, bool reverseByteOrder = false) { CustomContract.Requires <ArgumentNullException>(!string.IsNullOrWhiteSpace(path), "path cannot be null or empty"); CustomContract.Requires <ArgumentException>(!File.Exists(path), "file exists"); SectionHeader sh = SectionHeader.CreateEmptyHeader(nanoseconds, reverseByteOrder); Initialize(new FileStream(path, FileMode.Create), sh); }
public static void SectionHeader_ConvertToByte_Test() { SectionHeader pre = SectionHeader.CreateEmptyHeader(false, false); using (MemoryStream stream = new MemoryStream(pre.ConvertToByte())) { using (BinaryReader br = new BinaryReader(stream)) { SectionHeader post = SectionHeader.Parse(br); Assert.AreEqual(pre.MagicNumber, post.MagicNumber); Assert.AreEqual(pre.ReverseByteOrder, post.ReverseByteOrder); Assert.AreEqual(pre.MajorVersion, post.MajorVersion); Assert.AreEqual(pre.MinorVersion, post.MinorVersion); Assert.AreEqual(pre.LinkType, post.LinkType); Assert.AreEqual(pre.MaximumCaptureLength, post.MaximumCaptureLength); Assert.AreEqual(pre.NanoSecondResolution, post.NanoSecondResolution); Assert.AreEqual(pre.SignificantFigures, post.SignificantFigures); Assert.AreEqual(pre.TimezoneOffset, post.TimezoneOffset); } } }