Пример #1
0
        public static void Request(string MAC)
        {
            MAC_IP_Pairs newItem = new MAC_IP_Pairs();

            if (serverActual.ContainsKey(MAC))
            {
                //MAC címnek már van érvényes foglalása?
                //Stop
            }
            else
            {
                //MAC cím szerepel a fenntartások között?
                if (reserved.ContainsKey(MAC))
                {
                    //IP cím=foglalások listában a MAC-hez tartozó cím
                    newItem.IP = reserved[MAC];
                    //newItem.MAC=MAC;
                    if (serverActual.ContainsValue(newItem.IP))
                    {
                        //IP cím ki van már osztva? (szerepel a bérelt címek között)
                    }
                    else
                    {
                        serverActual.Add(MAC, newItem.IP);
                    }
                }
                else
                {
                    int  lastByte = 100;
                    bool success  = false;
                    newItem.IP = "192.168.10." + Convert.ToString(lastByte);
                    do
                    {
                        if (serverActual.ContainsValue(newItem.IP) && Excluded(newItem.IP) && reserved.ContainsValue(newItem.IP))
                        {
                            lastByte++;
                            newItem.IP = "192.168.10." + Convert.ToString(lastByte);
                            if (lastByte > 199)
                            {
                                Console.WriteLine("sikertelen IP cím kiosztás");
                            }
                        }
                        else
                        {
                            success = true;
                            serverActual.Add(MAC, newItem.IP);
                        }
                    } while (lastByte > 199 && !success);
                    if (!success)
                    {
                        //saját kivétel
                    }
                }
            }
        }
Пример #2
0
        public static void FileOpenAndRead()
        {
            //***********	excluded.csv
            FileStream   fsEx = new FileStream(@"excluded.csv", FileMode.Open);
            StreamReader srEx = new StreamReader(fsEx, Encoding.Default);

            //string sor="";
            while (!srEx.EndOfStream)
            {
                /*
                 * sor=srEx.ReadLine();
                 * excluded.Add(sor);
                 */
                excluded.Add(srEx.ReadLine());
            }
            srEx.Close();
            Console.WriteLine("Excluded IP's (Nem kiosztható IP-k):");
            foreach (var i in excluded)
            {
                Console.WriteLine(i);
            }
            //**********	reserved.csv
            FileStream   fsRe = new FileStream(@"reserved.csv", FileMode.Open);
            StreamReader srRe = new StreamReader(fsRe, Encoding.Default);
            MAC_IP_Pairs elem = new MAC_IP_Pairs();

            string[] rowArray;
            while (!srRe.EndOfStream)
            {
                rowArray = srRe.ReadLine().Split(';');

                /*
                 * elem.MAC=rowArray[0];
                 * elem.IP=rowArray[1];
                 * reserved.Add(elem.MAC,elem.IP);
                 */
                reserved.Add(rowArray[0], rowArray[1]);
            }
            srRe.Close();
            Console.WriteLine("Reserved IP's (Fenntartott IP-k):");
            foreach (var i in reserved)
            {
                Console.WriteLine("{0} {1}", i.Key, i.Value);
            }
            //***********	dhcp.csv	******	szerver aktuális állapota
            FileStream   fsDHCP = new FileStream(@"dhcp.csv", FileMode.Open);
            StreamReader srDHCP = new StreamReader(fsDHCP, Encoding.Default);

            //rowArray,elem nem kell új
            while (!srDHCP.EndOfStream)
            {
                rowArray = srDHCP.ReadLine().Split(';');

                /*
                 * elem.MAC=rowArray[0];
                 * elem.IP=rowArray[1];
                 * serverActual.Add(elem.MAC,elem.IP);
                 */
                serverActual.Add(rowArray[0], rowArray[1]);
            }
            srDHCP.Close();
            Console.WriteLine("Actual IP's (szerver jelenlegi állapota, bérelt címek):");
            foreach (var i in serverActual)
            {
                Console.WriteLine("{0} {1}", i.Key, i.Value);
            }
            //***********	test.csv
            FileStream   fsTest = new FileStream(@"test.csv", FileMode.Open);
            StreamReader srTest = new StreamReader(fsTest, Encoding.Default);
            //rowArray
            TestCommand oneCommand = new TestCommand();

            while (!srTest.EndOfStream)
            {
                rowArray = srTest.ReadLine().Split(' ');
                oneCommand.testCommand = rowArray[0];
                oneCommand.testParam   = rowArray[1];
                test.Add(oneCommand);
            }
            srTest.Close();
            Console.WriteLine("Végrehajtandó parancsok:");
            foreach (var i in test)
            {
                Console.WriteLine("{0} {1}", i.testCommand, i.testParam);
            }
        }