diff --git a/tests/VoldFuzzer.cpp b/tests/VoldFuzzer.cpp index e91cce8..630a785 100644 --- a/tests/VoldFuzzer.cpp +++ b/tests/VoldFuzzer.cpp @@ -14,15 +14,27 @@ * limitations under the License. */ +#include #include #include "VoldNativeService.h" +#include "sehandle.h" using ::android::fuzzService; using ::android::sp; struct selabel_handle* sehandle; +extern "C" int LLVMFuzzerInitialize(int argc, char argv) { + sehandle = selinux_android_file_context_handle(); + if (!sehandle) { + LOG(ERROR) << "Failed to get SELinux file contexts handle in voldFuzzer!"; + exit(1); + } + selinux_android_set_sehandle(sehandle); + return 0; +} + extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { auto voldService = sp::make(); fuzzService(voldService, FuzzedDataProvider(data, size));