Ver. 2.7.3 without fuse usergroup

This commit is contained in:
Peter Lemenkov 2008-02-20 21:38:16 +00:00
parent fe33d75995
commit 7b0511aac1
8 changed files with 57 additions and 86 deletions

View File

@ -1 +1 @@
fuse-2.7.2.tar.gz
fuse-2.7.3.tar.gz

View File

@ -1,35 +0,0 @@
diff -up fuse-2.7.0/lib/fuse.c.patch1 fuse-2.7.0/lib/fuse.c
--- fuse-2.7.0/lib/fuse.c.patch1 2007-07-02 07:33:08.000000000 -0400
+++ fuse-2.7.0/lib/fuse.c 2007-08-29 17:16:54.000000000 -0400
@@ -628,16 +628,15 @@ static int fuse_compat_open(struct fuse_
{
int err;
if (!fs->compat || fs->compat >= 25)
- err = fs->op.open(path, fi);
+ err = (fs->op.open)(path, fi);
else if (fs->compat == 22) {
struct fuse_file_info_compat tmp;
memcpy(&tmp, fi, sizeof(tmp));
- err = ((struct fuse_operations_compat22 *) &fs->op)->open(path, &tmp);
+ err = (((struct fuse_operations_compat22 *) &fs->op)->open)(path, &tmp);
memcpy(fi, &tmp, sizeof(tmp));
fi->fh = tmp.fh;
} else
- err = ((struct fuse_operations_compat2 *) &fs->op)
- ->open(path, fi->flags);
+ err = (((struct fuse_operations_compat2 *) &fs->op)->open)(path, fi->flags);
return err;
}
diff -up fuse-2.7.0/lib/fuse_lowlevel.c.patch1 fuse-2.7.0/lib/fuse_lowlevel.c
--- fuse-2.7.0/lib/fuse_lowlevel.c.patch1 2007-08-29 17:17:13.000000000 -0400
+++ fuse-2.7.0/lib/fuse_lowlevel.c 2007-08-29 17:17:26.000000000 -0400
@@ -601,7 +601,7 @@ static void do_open(fuse_req_t req, fuse
fi.flags = arg->flags;
if (req->f->op.open)
- req->f->op.open(req, nodeid, &fi);
+ (req->f->op.open)(req, nodeid, &fi);
else
fuse_reply_open(req, &fi);
}

View File

@ -1,17 +0,0 @@
This fuse package for security reasons only allows members of the group "fuse"
to (u)mount fuse filesystems. If you for example want to allow the user "foo"
to mount fuse filesystems you have to add him to the fuse group by running
# /usr/sbin/usermod -a -G fuse foo
Or use tools like "system-config-users" to add user "foo" to the fuse group.
Note that the user has to re-login after he was added to the group.
If you don't want to add all users to the fuse group you can also run
# chmod 4755 /usr/bin/fusermount
to allow everyone to mount fuse filesystems. You have to re-run that command
after each fuse update.

View File

@ -0,0 +1,21 @@
--- util/init_script.patch2 2008-02-19 22:51:28.000000000 +0300
+++ util/init_script 2008-02-21 00:12:51.000000000 +0300
@@ -1,11 +1,16 @@
#! /bin/sh
+
+# Startup script for fuse
+#
+# chkconfig: 345 25 75
+
### BEGIN INIT INFO
# Provides: fuse
# Required-Start:
# Should-Start: udev
# Required-Stop:
-# Default-Start: S
-# Default-Stop:
+# Default-Start: 3 4 5
+# Default-Stop: 0 1 2 6
# Short-Description: Start and stop fuse.
# Description: Load the fuse module and mount the fuse control
# filesystem.

View File

@ -1,6 +1,6 @@
diff -up fuse-2.7.2/lib/fuse.c.BAD fuse-2.7.2/lib/fuse.c
--- fuse-2.7.2/lib/fuse.c.BAD 2008-01-21 09:55:42.000000000 -0500
+++ fuse-2.7.2/lib/fuse.c 2008-01-21 09:57:20.000000000 -0500
--- lib/fuse.c 2008-01-21 09:55:42.000000000 -0500
+++ lib/fuse.c 2008-01-21 09:57:20.000000000 -0500
@@ -633,17 +633,15 @@ static int fuse_compat_open(struct fuse_
{
int err;
@ -23,8 +23,8 @@ diff -up fuse-2.7.2/lib/fuse.c.BAD fuse-2.7.2/lib/fuse.c
}
diff -up fuse-2.7.2/lib/fuse_lowlevel.c.BAD fuse-2.7.2/lib/fuse_lowlevel.c
--- fuse-2.7.2/lib/fuse_lowlevel.c.BAD 2008-01-21 09:57:52.000000000 -0500
+++ fuse-2.7.2/lib/fuse_lowlevel.c 2008-01-21 09:58:15.000000000 -0500
--- lib/fuse_lowlevel.c 2008-01-21 09:57:52.000000000 -0500
+++ lib/fuse_lowlevel.c 2008-01-21 09:58:15.000000000 -0500
@@ -605,7 +605,7 @@ static void do_open(fuse_req_t req, fuse
fi.flags = arg->flags;

View File

@ -2,4 +2,4 @@
+++ util/udev.rules 2005-11-03 19:38:13.000000000 +0100
@@ -1 +1 @@
-KERNEL=="fuse", MODE="0666"
+KERNEL=="fuse", NAME="%k", MODE="0660",OWNER="root",GROUP="fuse"
+KERNEL=="fuse", NAME="%k", MODE="0666",OWNER="root",GROUP="root"

View File

@ -1,6 +1,6 @@
Name: fuse
Version: 2.7.2
Release: 2%{?dist}
Version: 2.7.3
Release: 1%{?dist}
Summary: File System in Userspace (FUSE) utilities
Group: System Environment/Base
@ -9,29 +9,26 @@ URL: http://fuse.sf.net
Source0: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Source1: fuse-udev.nodes
Source2: fuse-makedev.d-fuse
Source3: fuse-README.fedora
Patch0: fuse-udev_rules.patch
Patch1: fuse-2.7.2-openfix.patch
Patch2: fuse-2.7.0-chkconfig.patch
Patch1: fuse-openfix.patch
Patch2: fuse-chkconfig_support.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: kernel >= 2.6.14
Requires: which
Requires(pre): %{_sbindir}/groupadd
Requires(post): /sbin/MAKEDEV
Requires(postun): %{_sbindir}/groupdel
BuildRequires: libselinux-devel
Requires(post): /sbin/chkconfig
Requires(post): /sbin/MAKEDEV
Requires(preun): /sbin/chkconfig
Requires(preun): /sbin/service
Requires(postun):/sbin/service
%description
With FUSE it is possible to implement a fully functional filesystem in a
userspace program. This package contains the FUSE userspace tools to
mount a FUSE filesystem.
Note: For security reasons only members of the group "fuse" are allowed to
(u)mount fuse filesystems. You can find more details on this issue in
%{_docdir}/%{name}-%{version}/README.fedora
%package libs
Summary: File System in Userspace (FUSE) libraries
Group: System Environment/Libraries
@ -59,10 +56,9 @@ pgk-config) to develop FUSE based applications/filesystems.
%setup -q
#disable device creation during build/install
sed -i 's|mknod|echo Disabled: mknod |g' util/Makefile.in
%patch0 -b .patch0
%patch1 -p1 -b .patch1
%patch2 -p1
cp %{SOURCE3} README.fedora
%patch0 -p0 -b .patch0
%patch1 -p0 -b .patch1
%patch2 -p0 -b .patch2
%build
# Can't pass --disable-static here, or else the utils don't build
@ -99,29 +95,30 @@ ln -s /bin/ulockmgr_server ulockmgr_server
%clean
rm -rf $RPM_BUILD_ROOT
%pre
if [ $1 -eq 1 ]; then
%{_sbindir}/groupadd -r fuse &>/dev/null || :
fi
%post
/sbin/MAKEDEV fuse
/sbin/chkconfig --add fuse
%preun
if [ $1 = 0 ]; then
/sbin/service fuse stop >/dev/null 2>&1
/sbin/chkconfig --del fuse
fi
%postun
if [ $1 = 0 ]; then
%{_sbindir}/groupdel fuse || :
if [ "$1" -ge "1" ]; then
/sbin/service fuse condrestart >/dev/null 2>&1 || :
fi
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc AUTHORS ChangeLog COPYING FAQ Filesystems NEWS README README.NFS README.fedora
%doc AUTHORS ChangeLog COPYING FAQ Filesystems NEWS README README.NFS
/sbin/mount.fuse
%attr(4754,root,fuse) /bin/fusermount
/bin/fusermount
/bin/ulockmgr_server
%{_sysconfdir}/init.d/fuse
%{_sysconfdir}/makedev.d/z-fuse
@ -147,6 +144,11 @@ fi
%{_includedir}/fuse
%changelog
* Wed Feb 20 2008 Peter Lemenkov <lemenkov@gmail.com> 2.7.3-1
- Ver. 2.7.3
- Removed usergroup fuse
- Added chkconfig support (BZ#228088)
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.7.2-2
- Autorebuild for GCC 4.3

View File

@ -1 +1 @@
813782a4f23211386c1ea91dc0ac7ded fuse-2.7.2.tar.gz
98563fc7b265b7479a3178181cbcf59a fuse-2.7.3.tar.gz