diff --git a/src/main.c b/src/main.c index a3378d5..c67cde4 100644 --- a/src/main.c +++ b/src/main.c @@ -122,14 +122,14 @@ int main(int argc, char *argv[]) { if(!quiet) fprintf(stderr, LOG_PREFIX "preloading %s/%s\n", prefix, dll_name); -#ifndef IS_MAC - snprintf(buf, sizeof(buf), "LD_PRELOAD=%s/%s", prefix, dll_name); - putenv(buf); -#else - snprintf(buf, sizeof(buf), "DYLD_INSERT_LIBRARIES=%s/%s", prefix, dll_name); - putenv(buf); +#ifdef IS_MAC putenv("DYLD_FORCE_FLAT_NAMESPACE=1"); +#define LD_PRELOAD_ENV "DYLD_INSERT_LIBRARIES" +#else +#define LD_PRELOAD_ENV "LD_PRELOAD" #endif + snprintf(buf, sizeof(buf), LD_PRELOAD_ENV "=%s/%s", prefix, dll_name); + putenv(buf); execvp(argv[start_argv], &argv[start_argv]); perror("proxychains can't load process....");