Only provide execvpe(3) when needed
Check for the existence of execvpe(3) and only provide the FreeBSD compat version if required. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Brooks Davis <brooks.davis@sri.com> Closes #15609
This commit is contained in:
parent
735ba3a7b7
commit
3e4bef52b0
|
@ -31,7 +31,7 @@ AC_DEFUN([ZFS_AC_CONFIG_USER], [
|
|||
ZFS_AC_CONFIG_USER_MAKEDEV_IN_MKDEV
|
||||
ZFS_AC_CONFIG_USER_ZFSEXEC
|
||||
|
||||
AC_CHECK_FUNCS([issetugid mlockall strlcat strlcpy])
|
||||
AC_CHECK_FUNCS([execvpe issetugid mlockall strlcat strlcpy])
|
||||
|
||||
AC_SUBST(RM)
|
||||
])
|
||||
|
|
|
@ -57,6 +57,8 @@
|
|||
extern size_t spl_pagesize(void);
|
||||
#define PAGESIZE (spl_pagesize())
|
||||
|
||||
#ifndef HAVE_EXECVPE
|
||||
extern int execvpe(const char *name, char * const argv[], char * const envp[]);
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
|
|
@ -38,7 +38,8 @@
|
|||
#define ZFS_KMOD "openzfs"
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef HAVE_EXECVPE
|
||||
/* FreeBSD prior to 15 lacks execvpe */
|
||||
static int
|
||||
execvPe(const char *name, const char *path, char * const *argv,
|
||||
char * const *envp)
|
||||
|
@ -192,6 +193,7 @@ execvpe(const char *name, char * const argv[], char * const envp[])
|
|||
|
||||
return (execvPe(name, path, argv, envp));
|
||||
}
|
||||
#endif /* !HAVE_EXECVPE */
|
||||
|
||||
static __thread char errbuf[ERRBUFLEN];
|
||||
|
||||
|
|
Loading…
Reference in New Issue