Exemple #1
0
        public MainForm()
        {
            InitializeComponent();
            log = LogWriter.Instance;
            db  = new Database.Database();
            db.EmptyFile();
            CreateColumnsInGrid("db");

            for (int x = 0; x <= filters.GetCountUserFilters() - 1; x++)
            {
                tree.Nodes[1].Nodes[0].Nodes.Add(filters.GetUserFilters(x).name);
                tree.Nodes[1].Nodes[0].Nodes[x].Tag = filters.GetUserFilters(x);
            }

            //Это на будущее
            tree.Nodes[1].Tag          = filters.GetSystemFilters(0);    //IP
            tree.Nodes[1].Nodes[0].Tag = filters.GetSystemFilters(1);    //TCP/UDP
            tree.Nodes[1].Nodes[1].Tag = filters.GetSystemFilters(2);    //ICMP
            tree.Nodes[1].Nodes[2].Tag = filters.GetSystemFilters(3);    //IGMP
            tree.Nodes[1].Nodes[3].Tag = filters.GetSystemFilters(5);    //OTHER
            tree.Nodes[2].Tag          = filters.GetSystemFilters(4);    //ARP


            tree.ExpandAll();

            tree.SelectedNode = tree.Nodes[1].Nodes[0];

            filteredRecords    = new List <int>();
            activeFilter       = new filters_struct();
            activeFilter.proto = PacketType.TCPandUDP;
            //filter.protocol = PacketType.TCPandUDP;
        }
Exemple #2
0
        private void tree_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
        {
            PacketType pt;

            if (Convert.ToString(e.Node.Tag) == "info")
            {
                return;
            }
            activeFilter    = (filters_struct)(e.Node.Tag);
            filteredRecords = new List <int>();
            if (!activeFilter.userFilter)
            {
                for (int i = 0; i <= db.GetCountRows() - 1; i++)
                {
                    pt = db.GetValueProto(i);
                    if ((pt == activeFilter.proto) || (activeFilter.proto == PacketType.TCPandUDP) && ((pt == PacketType.TCP) || (pt == PacketType.UDP)))
                    {
                        filteredRecords.Add(i);
                    }
                }
            }
            if (activeFilter.userFilter)
            {
                for (int i = 0; i <= db.GetCountRows() - 1; i++)
                {
                    if (filters.Check(activeFilter.id, Convert.ToInt32(db.GetValuePortIn(i)), Convert.ToInt32(db.GetValuePortOut(i))))
                    {
                        //if ((db.GetValuePortIn(i)==activeFilter.ports)||(db.GetValuePortOut(i)==activeFilter.ports))
                        filteredRecords.Add(i);
                    }
                }
            }


            if (grid.Rows.Count > 0)
            {
                grid.FirstDisplayedScrollingRowIndex = 0;
            }
            grid.RowCount = filteredRecords.Count;
            grid.Refresh();
        }