diff --git a/.cvsignore b/.cvsignore index 5513c1f..aae9e14 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -fuse-2.7.2.tar.gz +fuse-2.7.3.tar.gz diff --git a/fuse-2.7.0-openfix.patch b/fuse-2.7.0-openfix.patch deleted file mode 100644 index d569bd8..0000000 --- a/fuse-2.7.0-openfix.patch +++ /dev/null @@ -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); - } diff --git a/fuse-README.fedora b/fuse-README.fedora deleted file mode 100644 index 26034c2..0000000 --- a/fuse-README.fedora +++ /dev/null @@ -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. diff --git a/fuse-chkconfig_support.diff b/fuse-chkconfig_support.diff new file mode 100644 index 0000000..a2162d8 --- /dev/null +++ b/fuse-chkconfig_support.diff @@ -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. diff --git a/fuse-2.7.2-openfix.patch b/fuse-openfix.patch similarity index 79% rename from fuse-2.7.2-openfix.patch rename to fuse-openfix.patch index abf0df2..c5a0b3d 100644 --- a/fuse-2.7.2-openfix.patch +++ b/fuse-openfix.patch @@ -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; diff --git a/fuse-udev_rules.patch b/fuse-udev_rules.patch index 6ea1408..91e8399 100644 --- a/fuse-udev_rules.patch +++ b/fuse-udev_rules.patch @@ -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" diff --git a/fuse.spec b/fuse.spec index 2cdecc6..586a1f1 100644 --- a/fuse.spec +++ b/fuse.spec @@ -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 -%postun +%preun if [ $1 = 0 ]; then - %{_sbindir}/groupdel fuse || : + /sbin/service fuse stop >/dev/null 2>&1 + /sbin/chkconfig --del fuse +fi + +%postun +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 2.7.3-1 +- Ver. 2.7.3 +- Removed usergroup fuse +- Added chkconfig support (BZ#228088) + * Tue Feb 19 2008 Fedora Release Engineering - 2.7.2-2 - Autorebuild for GCC 4.3 diff --git a/sources b/sources index 8e95f16..8e6bae6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -813782a4f23211386c1ea91dc0ac7ded fuse-2.7.2.tar.gz +98563fc7b265b7479a3178181cbcf59a fuse-2.7.3.tar.gz