Example #1
0
 /* goodB2G() - use badsource and goodsink */
 private static void GoodB2G()
 {
     count = int.MinValue; /* Initialize count */
     /* Read data using an outbound tcp connection */
     {
         try
         {
             String stringNumber = "";
             /* Read data using an outbound tcp connection */
             using (TcpClient tcpConn = new TcpClient("host.example.org", 39544))
             {
                 /* read input from socket */
                 using (StreamReader sr = new StreamReader(tcpConn.GetStream()))
                 {
                     /* POTENTIAL FLAW: Read count using an outbound tcp connection */
                     stringNumber = sr.ReadLine();
                 }
             }
             if (stringNumber != null) /* avoid NPD incidental warnings */
             {
                 try
                 {
                     count = int.Parse(stringNumber.Trim());
                 }
                 catch (FormatException exceptNumberFormat)
                 {
                     IO.Logger.Log(NLog.LogLevel.Warn, exceptNumberFormat, "Number format exception parsing count from string");
                 }
             }
         }
         catch (IOException exceptIO)
         {
             IO.Logger.Log(NLog.LogLevel.Warn, exceptIO, "Error with stream reading");
         }
     }
     CWE400_Uncontrolled_Resource_Consumption__sleep_Connect_tcp_68b.GoodB2GSink();
 }
Example #2
0
 /* goodG2B() - use goodsource and badsink */
 private static void GoodG2B()
 {
     /* FIX: Use a hardcoded number that won't cause underflow, overflow, divide by zero, or loss-of-precision issues */
     count = 2;
     CWE400_Uncontrolled_Resource_Consumption__sleep_Connect_tcp_68b.GoodG2BSink();
 }