blacklist -> ignore renaming

This commit is contained in:
van Hauser 2020-06-30 16:52:48 +02:00
parent 4b99ebbf22
commit 878b27af76
6 changed files with 13 additions and 13 deletions

View File

@ -44,13 +44,13 @@ char *getBBName(const llvm::BasicBlock *BB) {
}
/* Function that we never instrument or analyze */
/* Note: this blacklist check is also called in isInWhitelist() */
bool isBlacklisted(const llvm::Function *F) {
/* Note: this ignore check is also called in isInWhitelist() */
bool isIgnoreFunction(const llvm::Function *F) {
// Starting from "LLVMFuzzer" these are functions used in libfuzzer based
// fuzzing campaign installations, e.g. oss-fuzz
static const char *Blacklist[] = {
static const char *ignoreList[] = {
"asan.",
"llvm.",
@ -73,9 +73,9 @@ bool isBlacklisted(const llvm::Function *F) {
};
for (auto const &BlacklistFunc : Blacklist) {
for (auto const &ignoreListFunc : ignoreList) {
if (F->getName().startswith(BlacklistFunc)) { return true; }
if (F->getName().startswith(ignoreListFunc)) { return true; }
}
@ -107,8 +107,8 @@ void initWhitelist() {
bool isInWhitelist(llvm::Function *F) {
// is this a function with code? If it is external we dont instrument it
// anyway and cant be in the whitelist. Or if it is blacklisted.
if (!F->size() || isBlacklisted(F)) return false;
// anyway and cant be in the whitelist. Or if it is ignored.
if (!F->size() || isIgnoreFunction(F)) return false;
// if we do not have a whitelist return true
if (myWhitelist.empty()) return true;

View File

@ -33,7 +33,7 @@ typedef long double max_align_t;
#endif
char * getBBName(const llvm::BasicBlock *BB);
bool isBlacklisted(const llvm::Function *F);
bool isIgnoreFunction(const llvm::Function *F);
void initWhitelist();
bool isInWhitelist(llvm::Function *F);
unsigned long long int calculateCollisions(uint32_t edges);

View File

@ -562,7 +562,7 @@ struct InsTrimLTO : public ModulePass {
// if the function below our minimum size skip it (1 or 2)
if (F.size() < function_minimum_size) continue;
if (isBlacklisted(&F)) continue;
if (isIgnoreFunction(&F)) continue;
functions++;

View File

@ -196,7 +196,7 @@ bool AFLLTOPass::runOnModule(Module &M) {
// fprintf(stderr, "DEBUG: Function %s\n", F.getName().str().c_str());
if (F.size() < function_minimum_size) continue;
if (isBlacklisted(&F)) continue;
if (isIgnoreFunction(&F)) continue;
// whitelist check
AttributeList Attrs = F.getAttributes();

View File

@ -126,7 +126,7 @@ bool AFLwhitelist::runOnModule(Module &M) {
if (F.size() < 1) continue;
// fprintf(stderr, "F:%s\n", F.getName().str().c_str());
if (isBlacklisted(&F)) continue;
if (isIgnoreFunction(&F)) continue;
BasicBlock::iterator IP = F.getEntryBlock().getFirstInsertionPt();
IRBuilder<> IRB(&(*IP));

View File

@ -435,7 +435,7 @@ static u8 cmp_fuzz(afl_state_t *afl, u32 key, u8 *orig_buf, u8 *buf, u32 len) {
u32 fails;
u8 found_one = 0;
/* loop cmps are useless, detect and blacklist them */
/* loop cmps are useless, detect and ignores them */
u64 s_v0, s_v1;
u8 s_v0_fixed = 1, s_v1_fixed = 1;
u8 s_v0_inc = 1, s_v1_inc = 1;
@ -743,7 +743,7 @@ u8 input_to_state_stage(afl_state_t *afl, u8 *orig_buf, u8 *buf, u32 len,
afl->pass_stats[k].faileds ||
afl->pass_stats[k].total == 0xff)) {
afl->shm.cmp_map->headers[k].hits = 0; // blacklist this cmp
afl->shm.cmp_map->headers[k].hits = 0; // ignores this cmp
}