From 58636fd54e869f1b4c256529721a194ca6ce4e6d Mon Sep 17 00:00:00 2001 From: Jonathan Wilson Date: Tue, 27 Jul 2021 09:18:53 +0100 Subject: Update readme, minor tweaks --- frida_mode/test/osx-lib/harness.c | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) (limited to 'frida_mode/test/osx-lib/harness.c') diff --git a/frida_mode/test/osx-lib/harness.c b/frida_mode/test/osx-lib/harness.c index 4ffddbf6..3d427b4a 100644 --- a/frida_mode/test/osx-lib/harness.c +++ b/frida_mode/test/osx-lib/harness.c @@ -17,8 +17,9 @@ int LLVMFuzzerTestOneInput(const unsigned char* data, size_t size){ return 0; } -void run (int argc, const char * argv[]) +int main(int argc, const char * argv[]) { + for (int i = 1; i < argc; i++) { fprintf(stderr, "Running: %s\n", argv[i]); FILE *f = fopen(argv[i], "r"); @@ -34,20 +35,22 @@ void run (int argc, const char * argv[]) free(buf); fprintf(stderr, "Done: %s: (%zd bytes)\n", argv[i], n_read); } + + return 0; } -static int load() -{ +__attribute__((constructor())) +void constructor(void) { // handles to required libs void *dylib = NULL; - dylib = dlopen("./libcrashme.dylib", RTLD_LAZY); + dylib = dlopen("./libcrashme.dylib", RTLD_NOW); if (dylib == NULL) { printf("[-] Failed to load lib\n"); printf("[-] Dlerror: %s\n", dlerror()); - return 1; + exit(1); } @@ -58,20 +61,9 @@ static int load() { printf("[-] Failed to find function\n"); - return 1; + exit(1); } printf("[+] Found function.\n"); - return 0; -} - -int main(int argc, const char * argv[]) -{ - - if (load() != 0) { return 1; } - - run(argc, argv); - - return 0; } -- cgit 1.4.1