Example #1
0
        /* goodB2G() - use BadSource and GoodSink */
        private static void GoodB2G()
        {
            long data;

            /* init data */
            data = 0;
            /* POTENTIAL FLAW: Read data from console with ReadLine*/
            try
            {
                string stringNumber = Console.ReadLine();
                if (stringNumber != null)
                {
                    data = long.Parse(stringNumber.Trim());
                }
            }
            catch (IOException exceptIO)
            {
                IO.Logger.Log(NLog.LogLevel.Warn, "Error with stream reading", exceptIO);
            }
            catch (FormatException exceptNumberFormat)
            {
                IO.Logger.Log(NLog.LogLevel.Warn, "Error with number parsing", exceptNumberFormat);
            }
            Dictionary <int, long> dataDictionary = new Dictionary <int, long>();

            dataDictionary.Add(0, data);
            dataDictionary.Add(1, data);
            dataDictionary.Add(2, data);
            CWE190_Integer_Overflow__Long_console_readLine_add_74b.GoodB2GSink(dataDictionary);
        }
Example #2
0
        /* goodG2B() - use GoodSource and BadSink */
        private static void GoodG2B()
        {
            long data;

            /* FIX: Use a hardcoded number that won't cause underflow, overflow, divide by zero, or loss-of-precision issues */
            data = 2;
            Dictionary <int, long> dataDictionary = new Dictionary <int, long>();

            dataDictionary.Add(0, data);
            dataDictionary.Add(1, data);
            dataDictionary.Add(2, data);
            CWE190_Integer_Overflow__Long_console_readLine_add_74b.GoodG2BSink(dataDictionary);
        }