Commit Graph

31 Commits (f86c4403ede15ff45775c245b49d7c8dd5d3b156)

Author SHA1 Message Date
Jean-Pierre André cf6f265069 Switch to using the standard autoconf AC_HEADER_MAJOR macro
Switch to the standard autoconf AC_HEADER_MAJOR macro which takes care
of the ugly details like when to use mkdev.h and when to use sysmacros.h.
(requires <sys/types.h> to be included)
Also include these in all files that use major/minor/makedev funcs.

(Contributed by Mike Frysinger)
2016-05-31 08:33:10 +02:00
Jean-Pierre André 08d3bcb2bf Ported patches to libfuse from the OpenIndiana variant
A few patches had been found useful to the OpenIndiana variant of libfuse
(2.7.6). Port them to libfuse-lite and restrict them to Solaris/OpenIndiana.
2016-05-04 10:15:35 +02:00
Jean-Pierre André a7ce195489 383 Fixed masks for major and minor in fuse-lite for OpenIndiana
On Solaris/OpenIndiana, the major and minor fields in st_rdev have to
be represented on 14 bits and 18 bits respectively. They must have
the same representation on 32-bit and 64-bit builds as the kernel
and the library do not know the word size of each other.
2016-05-04 10:08:06 +02:00
Jean-Pierre André fc666cb0b9 Fixed bad test in fuse mount
Apply a fix from the full fuse library
2016-04-06 09:42:16 +02:00
Jean-Pierre André 99cb156ae5 Ported clearing the environment when starting mount or umount
When starting mount or umount, the environment was not cleared and
could be used for privilege escalation (CVE-2015-3202).
This is a port of the fix to full fuse by using execle(3) instead
of execl(3)
2015-06-01 12:48:43 +02:00
Jean-Pierre André bd2c91d4a3 Packed/unpacked st_rdev transported as 32-bits on OpenIndiana 64-bits
On OpenIndiana 64-bits, st_rdev has major and minor as 32-bits wide each,
but the fuse protocol (common to 32-bit and 64-bit) has an st_rdev field
limited to 32-bit. For now, pack major and minor the same way as in the
32-bit variant (14 and 18 bits).
2015-04-17 11:22:49 +02:00
Jean-Pierre André 3d1c87d0d9 Fixed setting SIG_DFL on fuse session exit
This is a backport of a fix applied to the (external) fuse library
2015-04-17 11:14:36 +02:00
Jean-Pierre André 39c7d8538d Set the fuse protocol fall back to 7.12 when available
The support for ioctls has been added to fuse when using protocol 7.18,
and an equivalent upgrade has been done in fuse lite with commit [ae9aee].
For old kernels, a fall back to protocol 7.8 was implemented, but this
appears not to be supported in not-so-old kernels (e.g. 2.6.35).
With this patch, the fall back protocol is set to 7.12 or to the highest
level supported by the kernel.
2014-11-10 08:52:23 +01:00
Jean-Pierre André e1d2b7faa7 Silenced a const qualifier dropping (cosmetic) 2014-09-02 10:03:23 +02:00
Jean-Pierre André ae9aeebbbf Upgraded fuse-lite to support ioctls
This is backporting code from the full FUSE library in order to support
ioctls. The fuse protocol level negociated is now 7.18 instead of 7.8.
A fallback protocol to 7.8 is provided for compatibility with older kernels.

32-bit ioctls are not supported by a 64-bit library
2014-07-30 16:44:18 +02:00
Jean-Pierre André 2cbdba0c5c Silenced warnings by gcc >= 4.8 about non-checked return values
Added tests on the value returned by setuid() to avoid warnings by
gcc >= 4.8
2013-09-09 15:39:45 +02:00
Jean-Pierre André c5a11341b0 Removed obsoleted references to utime_omit_ok
When issuing an utimensat as a consequence of utime(2) or utimensat(2),
fuse had temporarily defined a flag utime_omit_ok to identify whether
the file system supports the values UTIME_OMIT and UTIME_NOW to mean
specific timestamp updatings. The flag has been obsoleted and all
file system are now supposed to comply with the convention.
2013-04-22 19:06:49 +02:00
Erik Larsson 72bea99a8f Fix compilation of libfuse-lite on Solaris/OpenIndiana.
The OpenSolaris port of libfuse, from which our Solaris-port of
libfuse-lite originated, had to be supplied with some additional
compiler flags in order to compile.
The configure script now detects whether it is running on a Solaris
system. If that is the case it passes the proper compiler flags to
libfuse-lite, so it can compile properly.

Tested on:
- OpenIndiana oi_151a3 / gcc 3.4.3
- OpenIndiana oi_151a7 / gcc 4.3.3
- Solaris 11.1 / gcc 4.5.2
2012-10-28 05:23:39 +01:00
Jean-Pierre André 9403b9e44f Allowed commas within option fsname on OpenIndiana
On OpenIndiana, the device names have commas in them. Do not interpret
commas as option separators within the option fsname. As a consequence
this option has to be the last one.
2012-08-22 11:08:20 +02:00
Jean-Pierre André 97342d05bc Merged libfuse for OpenIndiana into libfuse-lite
The libfuse used by OpenIndiana has the same features as libfuse-lite
though requiring some code variants. Merging them simplifies supporting
both.

Variants for OpenIndiana are selected when defining __SOLARIS__
2012-08-22 11:02:36 +02:00
Jean-Pierre André 9b5bd2cbbc Allowed building for kfreebsd (Robert Millan)
Extended several #ifdef's to account for "FreeBSD kernel"
2012-01-23 16:55:04 +01:00
Jean-Pierre André 0147a15e1e cosmetic : Removed an unneeded function in fuse_lowlevel.c (and a gcc 4.6 warning) 2011-08-04 15:49:35 +02:00
Jean-Pierre André d7926f72d0 Provided support for big writes 2011-07-05 12:17:30 +02:00
Jean-Pierre André f510c5cdf4 Got the target libs to build libntfs-3g and libfuse-lite if selected 2011-07-05 12:17:11 +02:00
Szaka f246d6ce97 Update ntfs-3g.org references 2011-03-27 15:29:48 +03:00
Jean-Pierre André b7fbd01ccd Fixed mounting with a SLinux context (from Fedora #502946) 2010-10-01 10:43:31 +02:00
Jean-Pierre André 84c93479d8 fixed a compilation issue with uClibc 2010-04-19 10:53:31 +02:00
jpandre 17a629229d Developed selective timestamp setting for utimensat(2) 2009-12-23 14:51:07 +00:00
jpandre 5c464acada Concealed a warning for unused result in fusermount 2009-12-10 13:28:30 +00:00
szaka 85f2ba96cc fix build: fix fuse-lite Makefile.am 2009-10-03 08:11:02 +00:00
szaka 34ac269f49 add missing fuse-lite files 2009-10-03 07:19:30 +00:00
jpandre b46c8daad5 Enabled Posix ACLs with older kernels 2009-09-18 19:40:59 +00:00
jpandre b725b77e88 Inserted conditions on fuse patches to avoid constraints on older kernels 2009-07-30 13:11:50 +00:00
jpandre fe18b65f95 Fixed most of compile-time warnings in fuse-lite 2009-07-06 10:59:34 +00:00
jpandre 06e553b04d Fixed permissions of created files when parent directory has a default ACL 2009-07-04 19:14:56 +00:00
jpandre e4a835076a Updating the source directory tree 2008-03-28 14:42:50 +00:00