Example #1
0
 protected override void ParseFrameList()
 {
     using (var process = new TSharkProcess(new FrameListQuery(NetworkTrace.FullName, mProtocols)))
     {
         CreateFrameList(process.StandartOutput.ReadAllLines());
     }
 }
Example #2
0
        private void ParseFrames()
        {
            using (var process = new TSharkProcess(new FramesQuery(NetworkTrace.FullName, mProtocols)))
            {
                var frames = process.StandartOutput.ReadAllFrames();
                var packer = new FramePacker(FrameList);

                int frameIndex      = 0;
                int frameListLength = FrameList.Count;

                foreach (var frame in frames)
                {
                    if (frameIndex < frameListLength - 1)
                    {
                        ++frameIndex;
                    }

                    SetStatusMessage(String.Format("Processing frame {0}/{1}", frameIndex, frameListLength));

                    bool isPacked = packer.PackFrame(frame);
                    //TODO remove frame from the FrameList if not packed

                    Progress = frameIndex * 90 / frameListLength;
                }
            }
        }
        public void Parse()
        {
            var frameList = new List <Frame>();

            using (var process = new TSharkProcess(new FrameListQuery(mParser.NetworkTrace.FullName, new[] { WSD_REQUEST_FILTER, WSD_RESPONSE_FILTER })))
            {
                frameList.AddRange(process.StandartOutput.ReadAllLines()
                                   .Select(line => line.Split('\t'))
                                   .Select(parts =>
                                           new Frame(int.Parse(parts[0]), mParser.NetworkTrace, parts[1], parts[2], String.Empty, String.Empty, "ws-discovery"))
                                   .Where(item => null != UnitSet.GetUnit(item.SourceMac)));
            }

            if (0 == frameList.Count)
            {
                return;
            }

            var frames = new List <String>();

            using (var process = new TSharkProcess(new WSDiscoveryQuery(frameList.Select(item => item.Number), mParser.NetworkTrace.FullName)))
            {
                frames.AddRange(process.StandartOutput.ReadAllLines().Select(HexToASCIIConverter.Convert));
            }

            var xmlList   = BuildXmlList(ref frames);
            var requests  = xmlList.Where(item => null != item.GetElementWithName("Probe")).ToList();
            var responses = xmlList.Where(item => null != item.GetElementWithName("ProbeMatches")).Distinct(new ProbeMatchesEqualityComparer()).ToList();

            var pairs = BuildPairs(frameList, xmlList, requests, responses);

            ProcessPairs(frameList, xmlList, pairs);
        }
Example #4
0
        private void btnFrames_Click(object sender, EventArgs e)
        {
            using (var process = new TSharkProcess(new FramesQuery(@"d:\!Work\Network Traces\ONVIF_traces_from_Bosch\ONVIF-Test\Hikvision.pcapng")))
            {
                tBOutput.Clear();

                foreach (var frame in GetFrames(process.StandartOutput))
                {
                    tBOutput.AppendText(frame);
                    tBOutput.AppendText(Environment.NewLine);
                }
            }
        }
Example #5
0
        private void btnFeatureList_Click(object sender, EventArgs e)
        {
            using (var process = new TSharkProcess(new FrameListQuery(@"d:\!Work\Network Traces\ONVIF_traces_from_Bosch\ONVIF-Test\Hikvision.pcapng",
                                                                      new[]
            {
                "http", "rtsp"
            })))
            {
                tBOutput.Clear();

                tBOutput.AppendText(process.StandartOutput.ReadToEnd());
            }
        }