コード例 #1
0
ファイル: Form1.cs プロジェクト: andrey199520/sabakas
/// Парсим полученный массив байтов в читабельный вид
        private void ParseData(byte[] byteData, int nReceived)
        {
            IPHeader ipHeader  = new IPHeader(byteData, nReceived);
            AddRowIP AddRowIP2 = new AddRowIP(OnAddRowIP);

            dgvPackets.Invoke(AddRowIP2, new object[] { byteData, nReceived });

            //switch (ipHeader.ProtocolType)
            //{
            //    case Protocol.TCP:

            //        TCPHeader tcpHeader = new TCPHeader(ipHeader.Data, ipHeader.MessageLength);
            //        AddRowTCPProtocol RowTCPProtocol = new AddRowTCPProtocol(MakeTCP);
            //        dgvParamProt.Invoke(RowTCPProtocol, new object[] { tcpHeader });
            //      if (tcpHeader.DestinationPort == "53" || tcpHeader.SourcePort == "53")
            //        {
            //            AddRowDNSProtocol RowDNSProtocol = new AddRowDNSProtocol(MakeDNS);
            //            dgvParamProt.Invoke(RowDNSProtocol, new object[] { tcpHeader.Data, (int)tcpHeader.MessageLength });
            //        }

            //        break;

            //    case Protocol.UDP:

            //        UDPHeader udpHeader = new UDPHeader(ipHeader.Data,              //IPHeader.Data stores the data being
            //            //carried by the IP datagram
            //                                           (int)ipHeader.MessageLength);//Length of the data field

            //        AddRowUDPProtocol RowUDPProtocol = new AddRowUDPProtocol(MakeUDP);
            //        dgvParamProt.Invoke(RowUDPProtocol, new object[] { udpHeader });


            //        //If the port is equal to 53 then the underlying protocol is DNS
            //        //Note: DNS can use either TCP or UDP thats why the check is done twice
            //       if (udpHeader.DestinationPort == "53" || udpHeader.SourcePort == "53")
            //       {
            //           AddRowDNSProtocol RowDNSProtocol = new AddRowDNSProtocol(MakeDNS);
            //           dgvParamProt.Invoke(RowDNSProtocol, new object[] { udpHeader.Data, Convert.ToInt32(udpHeader.Length) - 8 });
            //        }

            //        break;

            //    case Protocol.Unknown:
            //        break;
            //}
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: Kirito2105/sabakas
        /// Парсим полученный массив байтов в читабельный вид 
        private void ParseData(byte[] byteData, int nReceived)
        {
            IPHeader ipHeader = new IPHeader(byteData, nReceived);
            AddRowIP AddRowIP2 = new AddRowIP(OnAddRowIP);
            dgvPackets.Invoke(AddRowIP2, new object[] {byteData, nReceived });

            //switch (ipHeader.ProtocolType)
            //{
            //    case Protocol.TCP:

            //        TCPHeader tcpHeader = new TCPHeader(ipHeader.Data, ipHeader.MessageLength);
            //        AddRowTCPProtocol RowTCPProtocol = new AddRowTCPProtocol(MakeTCP);
            //        dgvParamProt.Invoke(RowTCPProtocol, new object[] { tcpHeader });
            //      if (tcpHeader.DestinationPort == "53" || tcpHeader.SourcePort == "53")
            //        {
            //            AddRowDNSProtocol RowDNSProtocol = new AddRowDNSProtocol(MakeDNS);
            //            dgvParamProt.Invoke(RowDNSProtocol, new object[] { tcpHeader.Data, (int)tcpHeader.MessageLength });
            //        }

            //        break;

            //    case Protocol.UDP:

            //        UDPHeader udpHeader = new UDPHeader(ipHeader.Data,              //IPHeader.Data stores the data being
            //            //carried by the IP datagram
            //                                           (int)ipHeader.MessageLength);//Length of the data field

            //        AddRowUDPProtocol RowUDPProtocol = new AddRowUDPProtocol(MakeUDP);
            //        dgvParamProt.Invoke(RowUDPProtocol, new object[] { udpHeader });

            //        //If the port is equal to 53 then the underlying protocol is DNS
            //        //Note: DNS can use either TCP or UDP thats why the check is done twice
            //       if (udpHeader.DestinationPort == "53" || udpHeader.SourcePort == "53")
            //       {
            //           AddRowDNSProtocol RowDNSProtocol = new AddRowDNSProtocol(MakeDNS);
            //           dgvParamProt.Invoke(RowDNSProtocol, new object[] { udpHeader.Data, Convert.ToInt32(udpHeader.Length) - 8 });
            //        }

            //        break;

            //    case Protocol.Unknown:
            //        break;
            //}
        }