From e49d720081d5875bc7d13121e919633293dedb8e Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Fri, 1 Oct 2004 06:51:34 +0000 Subject: [PATCH] - Check if struct sockaddr_un has a sun_len member. - Check if mknod() can make a fifo file. - Check if mknod() can make a socket file. --- configure.in | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/configure.in b/configure.in index 47089de1..b964efe7 100644 --- a/configure.in +++ b/configure.in @@ -409,6 +409,15 @@ AC_CHECK_MEMBER([struct sockaddr_in.sin_len], #include ]) +AC_CHECK_MEMBER([struct sockaddr_un.sun_len], + [ AC_DEFINE(HAVE_SOCKADDR_UN_LEN, 1, [Do we have sockaddr_un.sun_len?]) ], + [], + [ +#include +#include +#include +]) + AC_MSG_CHECKING(struct sockaddr_storage) AC_TRY_COMPILE([#include #include ], @@ -625,6 +634,34 @@ if test x"$rsync_cv_REPLACE_INET_ATON" = x"yes"; then AC_DEFINE(REPLACE_INET_ATON, 1, [ ]) fi +AC_CACHE_CHECK([if mknod creates FIFOs],rsync_cv_MKNOD_CREATES_FIFOS,[ +AC_TRY_RUN([ +#include +#include +#include +main() { int rc, ec; char *fn = "fifo-test"; +unlink(fn); rc = mknod(fn,S_IFIFO,0600); ec = errno; unlink(fn); +if (rc) {printf("%d %d\n",rc,ec); return ec;} +return 0;}], + rsync_cv_MKNOD_CREATES_FIFOS=yes,rsync_cv_MKNOD_CREATES_FIFOS=no,rsync_cv_MKNOD_CREATES_FIFOS=cross)]) +if test x"$rsync_cv_MKNOD_CREATES_FIFOS" = x"yes"; then + AC_DEFINE(MKNOD_CREATES_FIFOS, 1, [Define to 1 if mknod() can create FIFOs.]) +fi + +AC_CACHE_CHECK([if mknod creates sockets],rsync_cv_MKNOD_CREATES_SOCKETS,[ +AC_TRY_RUN([ +#include +#include +#include +main() { int rc, ec; char *fn = "sock-test"; +unlink(fn); rc = mknod(fn,S_IFSOCK,0600); ec = errno; unlink(fn); +if (rc) {printf("%d %d\n",rc,ec); return ec;} +return 0;}], + rsync_cv_MKNOD_CREATES_SOCKETS=yes,rsync_cv_MKNOD_CREATES_SOCKETS=no,rsync_cv_MKNOD_CREATES_SOCKETS=cross)]) +if test x"$rsync_cv_MKNOD_CREATES_SOCKETS" = x"yes"; then + AC_DEFINE(MKNOD_CREATES_SOCKETS, 1, [Define to 1 if mknod() can create sockets.]) +fi + # # The following test was mostly taken from the tcl/tk plus patches # -- 2.34.1