/* goodG2B() - use GoodSource and BadSink */ private static void GoodG2B() { StringBuilder data; /* FIX: hardcode data to non-null */ data = new StringBuilder(); LinkedList <StringBuilder> dataLinkedList = new LinkedList <StringBuilder>(); dataLinkedList.AddLast(data); dataLinkedList.AddLast(data); dataLinkedList.AddLast(data); CWE476_NULL_Pointer_Dereference__StringBuilder_73b.GoodG2BSink(dataLinkedList); }
/* goodB2G() - use BadSource and GoodSink */ private static void GoodB2G() { StringBuilder data; /* POTENTIAL FLAW: data is null */ data = null; LinkedList <StringBuilder> dataLinkedList = new LinkedList <StringBuilder>(); dataLinkedList.AddLast(data); dataLinkedList.AddLast(data); dataLinkedList.AddLast(data); CWE476_NULL_Pointer_Dereference__StringBuilder_73b.GoodB2GSink(dataLinkedList); }
public override void Bad() { StringBuilder data; /* POTENTIAL FLAW: data is null */ data = null; LinkedList <StringBuilder> dataLinkedList = new LinkedList <StringBuilder>(); dataLinkedList.AddLast(data); dataLinkedList.AddLast(data); dataLinkedList.AddLast(data); CWE476_NULL_Pointer_Dereference__StringBuilder_73b.BadSink(dataLinkedList); }