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