2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-22 01:49:48 +00:00

[#3605] Razvan's fix for ASAN warnings in fuzzing

This commit is contained in:
Andrei Pavel 2024-10-22 10:50:35 +03:00
parent a96168e762
commit a4f4e30b3d
No known key found for this signature in database
GPG Key ID: D4E804481939CB21
2 changed files with 11 additions and 2 deletions

View File

@ -164,8 +164,9 @@ LLVMFuzzerTestOneInput(uint8_t const* data, size_t size) {
}
}
listener.stop();
io_service->poll();
client.stop();
run_io_service_timer.cancel();
io_service->poll();
MultiThreadingMgr::instance().setMode(false);
return 0;

View File

@ -6,14 +6,17 @@
#include <config.h>
#include <exceptions/exceptions.h>
#include <util/filesystem.h>
#include <fuzz.h>
#include <cassert>
#include <cstdio>
#include <cstring>
#include <fstream>
#include <iostream>
#include <list>
#include <memory>
#include <sstream>
#include <vector>
@ -22,6 +25,7 @@
#include <sys/types.h>
#include <unistd.h>
using namespace isc;
using namespace isc::util::file;
using namespace std;
@ -52,7 +56,11 @@ main(int, char* argv[]) {
list<string> files;
struct dirent *dp;
DIR *dfd(opendir(p.str().c_str()));
DIR *dfd(opendir(directory.c_str()));
if (!dfd) {
isc_throw(Unexpected, "opendir failed " << directory << ": " << strerror(errno));
}
std::unique_ptr<DIR, void(*)(DIR*)> defer(dfd, [](DIR* d) { closedir(d); });
while ((dp = readdir(dfd)) != nullptr) {
string file(dp->d_name);
if (file == "." || file == "..") {