diff --git a/src/configure.in b/src/configure.in index 5aa19b759f40f061593bc83ebbdd26013150fe25..70b4203dfebe514a0c70a0d733b0a22ea65cd053 100644 --- a/src/configure.in +++ b/src/configure.in @@ -673,7 +673,9 @@ case "$pike_cv_sys_os" in fi ;; Darwin*) + # macOS lacks prototypes for these with _POSIX_C_SOURCE ac_cv_func_getpagesize="no" + ac_cv_func_chroot="no" ;; esac @@ -4565,6 +4567,7 @@ AC_CHECK_FUNCS( \ _crypt \ poll \ accept4 \ + chroot \ closefrom \ crypt \ fdwalk \ diff --git a/src/modules/system/configure.in b/src/modules/system/configure.in index 91de08647349ecd4ac368565914ddd2406dade3c..4a19a8bcaa8a46fd741192f3b5af912d994d5913 100644 --- a/src/modules/system/configure.in +++ b/src/modules/system/configure.in @@ -91,7 +91,7 @@ AC_HAVE_FUNCS(syslog link symlink readlink resolvepath realpath chown lchown \ getpwnam getspnam getgrnam getpwuid getgrgid \ getgrent setgrent endgrent getpwent setpwent endpwent \ gethostname gethostbyname getservbyname \ - chroot fchroot uname sysinfo sync \ + fchroot uname sysinfo sync \ getgrnam_r getgrent_r getgrgid_r \ getpwnam_r getpwent_r getpwuid_r \ getspnam_r innetgr utime _utime lutimes sleep usleep nanosleep \ diff --git a/src/signal_handler.c b/src/signal_handler.c index dae00fb4d6a52557ecb0e6873d98ddcd37a982d8..39dedacf3b8ae3c92e0e6e49c5882ebd81b48c2f 100644 --- a/src/signal_handler.c +++ b/src/signal_handler.c @@ -4111,6 +4111,7 @@ void f_create_process(INT32 args) #endif /* _sys_nsig */ } +#ifdef HAVE_CHROOT if(mchroot) { if( chroot( mchroot ) ) @@ -4129,6 +4130,7 @@ void f_create_process(INT32 args) PROCERROR(PROCE_CHDIR, 1); } } +#endif if(tmp_cwd) {