--- configure.ac | 4 ++++ src/utils.c | 13 +++++++++++++ 2 files changed, 17 insertions(+) diff --git a/configure.ac b/configure.ac index 3381955..0b0f233 100644 --- a/configure.ac +++ b/configure.ac @@ -138,6 +138,10 @@ AC_CHECK_HEADERS([\ sys/prctl.h \ sys/procctl.h]) +dnl Check for functions in libc, all optional. +AC_CHECK_FUNCS([\ + get_current_dir_name]) + dnl Check support for setsockcreatecon_raw (part of SELinux). AC_CHECK_LIB([selinux], [setsockcreatecon_raw], [], [:]) diff --git a/src/utils.c b/src/utils.c index 636e483..0e48d52 100644 --- a/src/utils.c +++ b/src/utils.c @@ -40,11 +40,24 @@ #include <inttypes.h> #include <string.h> #include <unistd.h> +#include <limits.h> #include <termios.h> #include <errno.h> #include "internal.h" +#ifndef HAVE_GET_CURRENT_DIR_NAME +static char * +get_current_dir_name (void) +{ + char *ret = malloc (PATH_MAX); + + ret = getcwd (ret, PATH_MAX); + ret = realloc (ret, strlen (ret) + 1); + return ret; +} +#endif + char * nbdkit_absolute_path (const char *path) { -- 2.18.0