diff options
Diffstat (limited to 'agent/src/main/java/com/code_intelligence/jazzer/autofuzz/Meta.java')
-rw-r--r-- | agent/src/main/java/com/code_intelligence/jazzer/autofuzz/Meta.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/agent/src/main/java/com/code_intelligence/jazzer/autofuzz/Meta.java b/agent/src/main/java/com/code_intelligence/jazzer/autofuzz/Meta.java index 54a4a4fe..246ec9ea 100644 --- a/agent/src/main/java/com/code_intelligence/jazzer/autofuzz/Meta.java +++ b/agent/src/main/java/com/code_intelligence/jazzer/autofuzz/Meta.java @@ -144,8 +144,13 @@ public class Meta { } else if (type.isInterface() || Modifier.isAbstract(type.getModifiers())) { List<Class<?>> implementingClasses = implementingClassesCache.get(type); if (implementingClasses == null) { - try (ScanResult result = - new ClassGraph().enableClassInfo().enableInterClassDependencies().scan()) { + ClassGraph classGraph = + new ClassGraph().enableClassInfo().enableInterClassDependencies().rejectPackages( + "jaz.*"); + if (!isTest()) { + classGraph.rejectPackages("com.code_intelligence.jazzer.*"); + } + try (ScanResult result = classGraph.scan()) { ClassInfoList children = type.isInterface() ? result.getClassesImplementing(type) : result.getSubclasses(type); implementingClasses = @@ -225,6 +230,11 @@ public class Meta { } } + static boolean isTest() { + String value = System.getenv("JAZZER_AUTOFUZZ_TESTING"); + return value != null && !value.isEmpty(); + } + static boolean isDebug() { String value = System.getenv("JAZZER_AUTOFUZZ_DEBUG"); return value != null && !value.isEmpty(); |