Пример #1
0
 /* goodG2B() - use goodsource and badsink */
 private static void GoodG2B()
 {
     int data;
     /* FIX: Use a hardcoded number that won't cause underflow, overflow, divide by zero, or loss-of-precision issues */
     data = 2;
     int[] dataArray = new int[5];
     dataArray[2] = data;
     CWE191_Integer_Underflow__int_File_multiply_66b.GoodG2BSink(dataArray  );
 }
Пример #2
0
 /* goodB2G() - use badsource and goodsink */
 private static void GoodB2G()
 {
     int data;
     data = int.MinValue; /* Initialize data */
     {
         try
         {
             /* read string from file into data */
             using (StreamReader sr = new StreamReader("data.txt"))
             {
                 /* POTENTIAL FLAW: Read data from a file */
                 /* This will be reading the first "line" of the file, which
                  * could be very long if there are little or no newlines in the file */
                 string stringNumber = sr.ReadLine();
                 if (stringNumber != null) /* avoid NPD incidental warnings */
                 {
                     try
                     {
                         data = int.Parse(stringNumber.Trim());
                     }
                     catch (FormatException exceptNumberFormat)
                     {
                         IO.Logger.Log(NLog.LogLevel.Warn, exceptNumberFormat, "Number format exception parsing data from string");
                     }
                 }
             }
         }
         catch (IOException exceptIO)
         {
             IO.Logger.Log(NLog.LogLevel.Warn, exceptIO, "Error with stream reading");
         }
     }
     int[] dataArray = new int[5];
     dataArray[2] = data;
     CWE191_Integer_Underflow__int_File_multiply_66b.GoodB2GSink(dataArray  );
 }