Example #1
0
        private void filter_opt_Click(object sender, EventArgs e)
        {
            FilterDlg    dlg = new FilterDlg();
            DialogResult dr  = dlg.ShowDialog();

            if (dr == DialogResult.OK)
            {
                // User changed the filter
                // Restart capture using new filter if we are capturing now
                if (worker != null)
                {
                    object[] ctrls = new object[2];
                    ctrls[0] = frames;
                    ctrls[1] = clear_cap;

                    frames.Items.Clear();

                    if (!IsOffline)
                    {
                        worker.StopCapture();

                        PacketSniffer.ResetDetailsDumper();
                        worker.StartOfflineCapture(null, ctrls);

                        int deviceIndex = device_opt.SelectedIndex;
                        worker.StartCapture(deviceIndex, ctrls);
                    }
                    else
                    {
                        PacketSniffer.ResetDetailsDumper();
                        worker.StartOfflineCapture(OfflineDumpFile, ctrls);
                    }
                }
            }
        }
Example #2
0
        private void DoCapture(object deviceIndex)
        {
            packetSniffer = new PacketSniffer((int)deviceIndex);
            String Error = null;

            packetSniffer.StartCapture(UpdateFrames, out Error);
        }
Example #3
0
        private void DoOfflineCapture(object param)
        {
            string file = (string)param;

            IsBadDumpFile = false;

            PacketSniffer.StartOfflineCapture(file, UpdateFrames, ref IsBadDumpFile);
        }
Example #4
0
        private void open_file_Click(object sender, EventArgs e)
        {
            // Update tool strip status
            start_cap.Enabled  = false;
            stop_cap.Enabled   = false;
            filter_opt.Enabled = false;
            open_file.Enabled  = false;

            IsOffline = true;

            DialogResult rs = open_dlg.ShowDialog(this);

            OfflineDumpFile = null;
            if (rs == DialogResult.OK)
            {
                string path = open_dlg.FileName;
                OfflineDumpFile = path;

                if (worker == null)
                {
                    worker = new CaptureWorker();
                }

                frames.Items.Clear();
                f_details.Items.Clear();
                h_details.ResetText();

                object[] ctrls = new object[2];
                ctrls[0] = frames;
                ctrls[1] = clear_cap;

                this.Cursor = Cursors.WaitCursor;
                try {
                    PacketSniffer.ResetDetailsDumper();
                }
                catch (Exception) {
                }
                bool status = worker.StartOfflineCapture(path, ctrls);

                if (!status)
                {
                    MessageBox.Show(this, "Bad dump file format", "Sniffer.NET",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

                this.Cursor = Cursors.Arrow;
            }

            // Update tool strip status
            if (device_opt.Items.Count != 0)
            {
                start_cap.Enabled = true;
            }
            filter_opt.Enabled = true;
            open_file.Enabled  = true;
        }
Example #5
0
        private void clear_cap_Click(object sender, EventArgs e)
        {
            frames.Items.Clear();
            f_details.Items.Clear();
            h_details.Clear();

            if (worker != null)
            {
                worker.FrameId = 1;
            }

            PacketSniffer.ResetDetailsDumper();

            clear_cap.Enabled = false;
        }
Example #6
0
        /// <summary>
        /// Show details about a frame when selected
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void frames_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
        {
            if (e.IsSelected)
            {
                int  id;
                bool rs = int.TryParse(e.Item.Text, out id);
                if (!rs)
                {
                    return;
                }

                object[] param = new object[2];
                param[0] = f_details;
                param[1] = h_details;

                PacketSniffer.RetrievePacketDetails(id, param);
            }
        }
Example #7
0
        public static void UpdateFrameUI(object ctrl, object[] param)
        {
            ListView     frames = (ListView)ctrl;
            ListViewItem item   = (ListViewItem)param[0];

            frames.Items.Add(item);

            ToolStripButton btn = (ToolStripButton)param[1];

            if (frames.Items.Count != 0)
            {
                btn.Enabled = true;
            }
            else
            {
                btn.Enabled = false;
            }

            Packet packet = (Packet)param[2];

            PacketSniffer.DumpDetailsPacket(packet);
        }
Example #8
0
 public CaptureWorker()
 {
     captureThread = null;
     packetSniffer = null;
     frame_id      = 1;
 }
		private void DoCapture(object deviceIndex)
		{
			packetSniffer = new PacketSniffer((int)deviceIndex);
			String Error = null;
			packetSniffer.StartCapture(UpdateFrames, out Error);
		}
		public CaptureWorker()
		{
			captureThread = null;
			packetSniffer = null;
			frame_id = 1;
		}