Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package bindfs for openSUSE:Factory checked in at 2023-11-02 20:20:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/bindfs (Old) and /work/SRC/openSUSE:Factory/.bindfs.new.17445 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "bindfs" Thu Nov 2 20:20:54 2023 rev:27 rq:1121595 version:1.17.4 Changes: -------- --- /work/SRC/openSUSE:Factory/bindfs/bindfs.changes 2023-07-05 15:30:27.982532959 +0200 +++ /work/SRC/openSUSE:Factory/.bindfs.new.17445/bindfs.changes 2023-11-02 20:20:58.926758741 +0100 @@ -1,0 +2,6 @@ +Wed Nov 1 10:51:54 UTC 2023 - Jan Engelhardt <jeng...@inai.de> + +- Update to release 1.17.4 + * MacOS-specific updates only + +------------------------------------------------------------------- Old: ---- bindfs-1.17.3.tar.gz New: ---- bindfs-1.17.4.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ bindfs.spec ++++++ --- /var/tmp/diff_new_pack.BquIPX/_old 2023-11-02 20:20:59.654785529 +0100 +++ /var/tmp/diff_new_pack.BquIPX/_new 2023-11-02 20:20:59.654785529 +0100 @@ -17,7 +17,7 @@ Name: bindfs -Version: 1.17.3 +Version: 1.17.4 Release: 0 Summary: Filesystem for mapping directories with alternate permissions License: GPL-2.0-or-later ++++++ bindfs-1.17.3.tar.gz -> bindfs-1.17.4.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/ChangeLog new/bindfs-1.17.4/ChangeLog --- old/bindfs-1.17.3/ChangeLog 2023-06-03 09:55:22.000000000 +0200 +++ new/bindfs-1.17.4/ChangeLog 2023-07-15 15:53:04.000000000 +0200 @@ -1,3 +1,10 @@ +2023-07-15 Martin Pärtel <martin dot partel at gmail dot com> + + * MacOS and FreeBSD socket file support (PR #132, + thanks @slonopotamus) + * MacOS fuse-t support (thanks @slonopotamus) + * Released 1.17.4 + 2023-06-03 Martin Pärtel <martin dot partel at gmail dot com> * Added MacOS statfs_x implementation (issue #130, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/Makefile.in new/bindfs-1.17.4/Makefile.in --- old/bindfs-1.17.3/Makefile.in 2023-06-03 09:55:25.000000000 +0200 +++ new/bindfs-1.17.4/Makefile.in 2023-07-15 15:53:07.000000000 +0200 @@ -297,6 +297,8 @@ fuse3_LIBS = @fuse3_LIBS@ fuse_CFLAGS = @fuse_CFLAGS@ fuse_LIBS = @fuse_LIBS@ +fuse_t_CFLAGS = @fuse_t_CFLAGS@ +fuse_t_LIBS = @fuse_t_LIBS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/config.h.in new/bindfs-1.17.4/config.h.in --- old/bindfs-1.17.3/config.h.in 2023-06-03 09:55:25.000000000 +0200 +++ new/bindfs-1.17.4/config.h.in 2023-07-15 15:53:06.000000000 +0200 @@ -15,6 +15,9 @@ /* Have FUSE >= 3.0 */ #undef HAVE_FUSE_3 +/* Have FUSE >= 1.0.0 */ +#undef HAVE_FUSE_T + /* Define to 1 if you have the `getxattr' function. */ #undef HAVE_GETXATTR diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/configure new/bindfs-1.17.4/configure --- old/bindfs-1.17.3/configure 2023-06-03 09:55:24.000000000 +0200 +++ new/bindfs-1.17.4/configure 2023-07-15 15:53:06.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for bindfs 1.17.3. +# Generated by GNU Autoconf 2.71 for bindfs 1.17.4. # # Report bugs to <martin.par...@gmail.com>. # @@ -621,8 +621,8 @@ # Identity of this package. PACKAGE_NAME='bindfs' PACKAGE_TARNAME='bindfs' -PACKAGE_VERSION='1.17.3' -PACKAGE_STRING='bindfs 1.17.3' +PACKAGE_VERSION='1.17.4' +PACKAGE_STRING='bindfs 1.17.4' PACKAGE_BUGREPORT='martin.par...@gmail.com' PACKAGE_URL='' @@ -662,6 +662,8 @@ am__EXEEXT_TRUE LTLIBOBJS LIBOBJS +fuse_t_LIBS +fuse_t_CFLAGS fuse3_LIBS fuse3_CFLAGS fuse_LIBS @@ -823,7 +825,9 @@ fuse_CFLAGS fuse_LIBS fuse3_CFLAGS -fuse3_LIBS' +fuse3_LIBS +fuse_t_CFLAGS +fuse_t_LIBS' # Initialize some variables set by options. @@ -1372,7 +1376,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures bindfs 1.17.3 to adapt to many kinds of systems. +\`configure' configures bindfs 1.17.4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1443,7 +1447,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bindfs 1.17.3:";; + short | recursive ) echo "Configuration of bindfs 1.17.4:";; esac cat <<\_ACEOF @@ -1502,6 +1506,9 @@ fuse3_CFLAGS C compiler flags for fuse3, overriding pkg-config fuse3_LIBS linker flags for fuse3, overriding pkg-config + fuse_t_CFLAGS + C compiler flags for fuse_t, overriding pkg-config + fuse_t_LIBS linker flags for fuse_t, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. @@ -1570,7 +1577,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bindfs configure 1.17.3 +bindfs configure 1.17.4 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -1788,7 +1795,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by bindfs $as_me 1.17.3, which was +It was created by bindfs $as_me 1.17.4, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -3058,7 +3065,7 @@ # Define the identity of the package. PACKAGE='bindfs' - VERSION='1.17.3' + VERSION='1.17.4' printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h @@ -12641,6 +12648,9 @@ + + + if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. @@ -13084,6 +13094,90 @@ fi else $as_nop + if test "x$with_fuse_t" == "xyes" +then : + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + + as_fn_error $? "FUSE-T not found" "$LINENO" 5 + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + as_fn_error $? "FUSE-T not found" "$LINENO" 5 + +else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + +else $as_nop pkg_failed=no { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse3 >= 3.4.0" >&5 @@ -13261,6 +13355,65 @@ # Put the nasty error message in config.log where it belongs echo "$fuse_PKG_ERRORS" >&5 + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + as_fn_error $? "FUSE not found" "$LINENO" 5 elif test $pkg_failed = untried; then @@ -13269,6 +13422,107 @@ as_fn_error $? "FUSE not found" "$LINENO" 5 else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + + as_fn_error $? "FUSE not found" "$LINENO" 5 + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + as_fn_error $? "FUSE not found" "$LINENO" 5 + +else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +else fuse_CFLAGS=$pkg_cv_fuse_CFLAGS fuse_LIBS=$pkg_cv_fuse_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -13342,6 +13596,65 @@ # Put the nasty error message in config.log where it belongs echo "$fuse_PKG_ERRORS" >&5 + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + as_fn_error $? "FUSE not found" "$LINENO" 5 elif test $pkg_failed = untried; then @@ -13350,6 +13663,107 @@ as_fn_error $? "FUSE not found" "$LINENO" 5 else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + + as_fn_error $? "FUSE not found" "$LINENO" 5 + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + as_fn_error $? "FUSE not found" "$LINENO" 5 + +else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +else fuse_CFLAGS=$pkg_cv_fuse_CFLAGS fuse_LIBS=$pkg_cv_fuse_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -13498,6 +13912,150 @@ # Put the nasty error message in config.log where it belongs echo "$fuse_PKG_ERRORS" >&5 + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + + as_fn_error $? "FUSE not found" "$LINENO" 5 + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + as_fn_error $? "FUSE not found" "$LINENO" 5 + +else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + as_fn_error $? "FUSE not found" "$LINENO" 5 elif test $pkg_failed = untried; then @@ -13506,6 +14064,22 @@ as_fn_error $? "FUSE not found" "$LINENO" 5 else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +else fuse_CFLAGS=$pkg_cv_fuse_CFLAGS fuse_LIBS=$pkg_cv_fuse_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -13579,6 +14153,65 @@ # Put the nasty error message in config.log where it belongs echo "$fuse_PKG_ERRORS" >&5 + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + as_fn_error $? "FUSE not found" "$LINENO" 5 elif test $pkg_failed = untried; then @@ -13587,6 +14220,107 @@ as_fn_error $? "FUSE not found" "$LINENO" 5 else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +pkg_failed=no +{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fuse-t >= 1.0.0" >&5 +printf %s "checking for fuse-t >= 1.0.0... " >&6; } + +if test -n "$fuse_t_CFLAGS"; then + pkg_cv_fuse_t_CFLAGS="$fuse_t_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_CFLAGS=`$PKG_CONFIG --cflags "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$fuse_t_LIBS"; then + pkg_cv_fuse_t_LIBS="$fuse_t_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"fuse-t >= 1.0.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "fuse-t >= 1.0.0") 2>&5 + ac_status=$? + printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_fuse_t_LIBS=`$PKG_CONFIG --libs "fuse-t >= 1.0.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + fuse_t_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + else + fuse_t_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "fuse-t >= 1.0.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$fuse_t_PKG_ERRORS" >&5 + + as_fn_error $? "FUSE not found" "$LINENO" 5 + +elif test $pkg_failed = untried; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5 +printf "%s\n" "no" >&6; } + as_fn_error $? "FUSE not found" "$LINENO" 5 + +else + fuse_t_CFLAGS=$pkg_cv_fuse_t_CFLAGS + fuse_t_LIBS=$pkg_cv_fuse_t_LIBS + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +printf "%s\n" "yes" >&6; } + + +printf "%s\n" "#define HAVE_FUSE_T 1" >>confdefs.h + + +printf "%s\n" "#define FUSE_USE_VERSION 34" >>confdefs.h + + +fi + + +else fuse_CFLAGS=$pkg_cv_fuse_CFLAGS fuse_LIBS=$pkg_cv_fuse_LIBS { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -13634,6 +14368,8 @@ fi +fi + ac_config_files="$ac_config_files Makefile src/Makefile tests/Makefile tests/internals/Makefile" cat >confcache <<\_ACEOF @@ -14163,7 +14899,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by bindfs $as_me 1.17.3, which was +This file was extended by bindfs $as_me 1.17.4, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -14231,7 +14967,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -bindfs config.status 1.17.3 +bindfs config.status 1.17.4 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/configure.ac new/bindfs-1.17.4/configure.ac --- old/bindfs-1.17.3/configure.ac 2023-06-03 09:55:22.000000000 +0200 +++ new/bindfs-1.17.4/configure.ac 2023-07-15 15:53:04.000000000 +0200 @@ -1,4 +1,4 @@ -AC_INIT([bindfs],[1.17.3],[martin.par...@gmail.com]) +AC_INIT([bindfs],[1.17.4],[martin.par...@gmail.com]) AM_INIT_AUTOMAKE([foreign serial-tests]) AC_CONFIG_HEADERS([config.h]) @@ -88,11 +88,25 @@ )] ) +AC_DEFUN([CHECK_FUSE_T], + [PKG_CHECK_MODULES([fuse_t], [fuse-t >= 1.0.0], + [ + AC_DEFINE([HAVE_FUSE_T], [1], [Have FUSE >= 1.0.0]) + AC_DEFINE([FUSE_USE_VERSION], [34], [FUSE API VERSION = 3.4]) + ], + [$1] + )] +) + + AS_IF([test "x$with_fuse2" == "xyes"], [CHECK_FUSE2([AC_MSG_ERROR([FUSE 2 not found])])], [AS_IF([test "x$with_fuse3" == "xyes"], [CHECK_FUSE3([AC_MSG_ERROR([FUSE 3 not found])])], - [CHECK_FUSE3([CHECK_FUSE2([AC_MSG_ERROR([FUSE not found])])])] + [AS_IF([test "x$with_fuse_t" == "xyes"], + [CHECK_FUSE_T([AC_MSG_ERROR([FUSE-T not found])])], + [CHECK_FUSE3([CHECK_FUSE2([CHECK_FUSE_T([AC_MSG_ERROR([FUSE not found])])])])] + )] )] ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/src/Makefile.am new/bindfs-1.17.4/src/Makefile.am --- old/bindfs-1.17.3/src/Makefile.am 2023-06-03 09:55:22.000000000 +0200 +++ new/bindfs-1.17.4/src/Makefile.am 2023-07-15 15:53:04.000000000 +0200 @@ -5,8 +5,8 @@ noinst_HEADERS = debug.h permchain.h userinfo.h arena.h misc.h usermap.h rate_limiter.h bindfs_SOURCES = bindfs.c debug.c permchain.c userinfo.c arena.c misc.c usermap.c rate_limiter.c -AM_CPPFLAGS = ${my_CPPFLAGS} ${fuse_CFLAGS} ${fuse3_CFLAGS} +AM_CPPFLAGS = ${my_CPPFLAGS} ${fuse_CFLAGS} ${fuse3_CFLAGS} ${fuse_t_CFLAGS} AM_CFLAGS = ${my_CFLAGS} -bindfs_LDADD = $(fuse_LIBS) ${fuse3_LIBS} ${my_LDFLAGS} +bindfs_LDADD = ${fuse_LIBS} ${fuse3_LIBS} ${fuse_t_LIBS} ${my_LDFLAGS} man_MANS = bindfs.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/src/Makefile.in new/bindfs-1.17.4/src/Makefile.in --- old/bindfs-1.17.3/src/Makefile.in 2023-06-03 09:55:25.000000000 +0200 +++ new/bindfs-1.17.4/src/Makefile.in 2023-07-15 15:53:07.000000000 +0200 @@ -109,7 +109,7 @@ bindfs_OBJECTS = $(am_bindfs_OBJECTS) am__DEPENDENCIES_1 = bindfs_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) AM_V_lt = $(am__v_lt_@AM_V@) am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) am__v_lt_0 = --silent @@ -305,6 +305,8 @@ fuse3_LIBS = @fuse3_LIBS@ fuse_CFLAGS = @fuse_CFLAGS@ fuse_LIBS = @fuse_LIBS@ +fuse_t_CFLAGS = @fuse_t_CFLAGS@ +fuse_t_LIBS = @fuse_t_LIBS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ @@ -339,9 +341,9 @@ top_srcdir = @top_srcdir@ noinst_HEADERS = debug.h permchain.h userinfo.h arena.h misc.h usermap.h rate_limiter.h bindfs_SOURCES = bindfs.c debug.c permchain.c userinfo.c arena.c misc.c usermap.c rate_limiter.c -AM_CPPFLAGS = ${my_CPPFLAGS} ${fuse_CFLAGS} ${fuse3_CFLAGS} +AM_CPPFLAGS = ${my_CPPFLAGS} ${fuse_CFLAGS} ${fuse3_CFLAGS} ${fuse_t_CFLAGS} AM_CFLAGS = ${my_CFLAGS} -bindfs_LDADD = $(fuse_LIBS) ${fuse3_LIBS} ${my_LDFLAGS} +bindfs_LDADD = ${fuse_LIBS} ${fuse3_LIBS} ${fuse_t_LIBS} ${my_LDFLAGS} man_MANS = bindfs.1 all: all-am diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/src/bindfs.c new/bindfs-1.17.4/src/bindfs.c --- old/bindfs-1.17.3/src/bindfs.c 2023-06-03 09:55:22.000000000 +0200 +++ new/bindfs-1.17.4/src/bindfs.c 2023-07-15 15:53:04.000000000 +0200 @@ -91,6 +91,12 @@ #include "userinfo.h" #include "usermap.h" +/* Socket file support for MacOS and FreeBSD */ +#if defined(__APPLE__) || defined(__FreeBSD__) +#include <sys/socket.h> +#include <sys/un.h> +#endif + /* Apple Structs */ #ifdef __APPLE__ #include <sys/param.h> @@ -904,10 +910,36 @@ mode = permchain_apply(settings.create_permchain, mode); - if (S_ISFIFO(mode)) + if (S_ISFIFO(mode)) { res = mkfifo(real_path, mode); - else +#if defined(__APPLE__) || defined(__FreeBSD__) + } else if (S_ISSOCK(mode)) { + struct sockaddr_un su; + int fd; + + if (strlen(real_path) >= sizeof(su.sun_path)) { + errno = ENAMETOOLONG; + return -1; + } + fd = socket(AF_UNIX, SOCK_STREAM, 0); + if (fd >= 0) { + /* + * We must bind the socket to the underlying file + * system to create the socket file, even though + * we'll never listen on this socket. + */ + su.sun_family = AF_UNIX; + strncpy(su.sun_path, real_path, sizeof(su.sun_path)); + res = bind(fd, (struct sockaddr*)&su, sizeof(su)); + close(fd); + } else { + res = -1; + } +#endif + } else { res = mknod(real_path, mode, rdev); + } + if (res == -1) { free(real_path); return -errno; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/tests/Makefile.in new/bindfs-1.17.4/tests/Makefile.in --- old/bindfs-1.17.3/tests/Makefile.in 2023-06-03 09:55:25.000000000 +0200 +++ new/bindfs-1.17.4/tests/Makefile.in 2023-07-15 15:53:07.000000000 +0200 @@ -352,6 +352,8 @@ fuse3_LIBS = @fuse3_LIBS@ fuse_CFLAGS = @fuse_CFLAGS@ fuse_LIBS = @fuse_LIBS@ +fuse_t_CFLAGS = @fuse_t_CFLAGS@ +fuse_t_LIBS = @fuse_t_LIBS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/tests/internals/Makefile.in new/bindfs-1.17.4/tests/internals/Makefile.in --- old/bindfs-1.17.3/tests/internals/Makefile.in 2023-06-03 09:55:25.000000000 +0200 +++ new/bindfs-1.17.4/tests/internals/Makefile.in 2023-07-15 15:53:07.000000000 +0200 @@ -312,6 +312,8 @@ fuse3_LIBS = @fuse3_LIBS@ fuse_CFLAGS = @fuse_CFLAGS@ fuse_LIBS = @fuse_LIBS@ +fuse_t_CFLAGS = @fuse_t_CFLAGS@ +fuse_t_LIBS = @fuse_t_LIBS@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/tests/test_bindfs.rb new/bindfs-1.17.4/tests/test_bindfs.rb --- old/bindfs-1.17.3/tests/test_bindfs.rb 2023-06-03 09:55:22.000000000 +0200 +++ new/bindfs-1.17.4/tests/test_bindfs.rb 2023-07-15 15:53:04.000000000 +0200 @@ -25,13 +25,17 @@ require 'common.rb' require 'etc' +require 'socket' require 'tempfile' include Errno $have_fuse_3 = Proc.new do system("pkg-config --exists fuse3") - $?.success? + $?.success? || Proc.new do + system("pkg-config --exists fuse-t") + $?.success? + end.call end.call $have_fuse_3_readdir_bug = $have_fuse_3 && Proc.new do system("pkg-config --max-version=3.10.1 fuse3") @@ -922,6 +926,19 @@ assert_exception(EPERM) { chmod(0777, 'mnt/file') } end +# Issue #132 / PR #133 +testenv("", :title => "socket files") do + UNIXServer.open("mnt/sock") do |server| + UNIXSocket.open("mnt/sock") do |client| + socket = server.accept + socket.write("hello") + socket.close + result = client.read + assert { result == "hello" } + end + end +end + # FIXME: this stuff around testenv is a hax, and testenv may also exit(), which defeats the 'ensure' below. # the test setup ought to be refactored. It might well use MiniTest or something. # TODO: support FreeBSD in this test (different group management commands) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/bindfs-1.17.3/vagrant/debian9/Vagrantfile new/bindfs-1.17.4/vagrant/debian9/Vagrantfile --- old/bindfs-1.17.3/vagrant/debian9/Vagrantfile 2023-06-03 09:55:22.000000000 +0200 +++ new/bindfs-1.17.4/vagrant/debian9/Vagrantfile 1970-01-01 01:00:00.000000000 +0100 @@ -1,25 +0,0 @@ -# -*- mode: ruby -*- -# vi: set ft=ruby : - -Vagrant.configure("2") do |config| - config.vm.box = "roboxes/debian9" - - config.vm.synced_folder ".", "/vagrant", disabled: true - config.vm.synced_folder "../../", "/bindfs", - type: "rsync", - rsync__auto: false, - rsync__exclude: ["vagrant"], - rsync__args: ["-av", "--delete-after"] - - config.vm.provider "virtualbox" do |v| - v.name = "bindfs-debian9" - end - - config.vm.provision "shell", reboot: true, inline: <<-SHELL - export DEBIAN_FRONTEND='noninteractive' - apt-get update - apt-get install -y fuse libfuse-dev build-essential pkg-config ruby valgrind - apt-get clean - echo user_allow_other > /etc/fuse.conf - SHELL -end