From a804a17937f35b009787760034caed43dd4dcb0a Mon Sep 17 00:00:00 2001
From: Florian Weimer <fweimer@redhat.com>
Date: Wed, 7 Dec 2022 15:20:48 +0100
Subject: [PATCH] Fix fuse_mount function argument probing

The test did not check the number of arguments with certain
fuse headers because they declare fuse_mount in <fuse.h>,
not <fuse_lowlevel.h>.  If the compile supports implicit
function declarations, the test always succeeds (regardless
of parameter count).  If it does not, it always fails.
---
 m4/squashfuse_fuse.m4 | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/m4/squashfuse_fuse.m4 b/m4/squashfuse_fuse.m4
index e429168b..88c37a46 100644
--- a/m4/squashfuse_fuse.m4
+++ b/m4/squashfuse_fuse.m4
@@ -260,7 +260,9 @@ AC_DEFUN([SQ_FUSE_API_VERSION],[
 		AC_CACHE_CHECK([for two-argument fuse_unmount],
 				[sq_cv_decl_fuse_unmount_two_arg],[
 			AC_LINK_IFELSE(
-				[AC_LANG_PROGRAM([#include <fuse_lowlevel.h>],
+				[AC_LANG_PROGRAM([
+				#include <fuse.h>
+				#include <fuse_lowlevel.h>],
 					[fuse_unmount(0,0)])],
 				[sq_cv_decl_fuse_unmount_two_arg=yes],
 				[sq_cv_decl_fuse_unmount_two_arg=no])
