revert back to fuse (the filesystem) 2.4.2-2 ; pfj overwrote is

accidentally (second part)
This commit is contained in:
Thorsten Leemhuis 2006-01-15 10:16:27 +00:00
parent 388ee543b2
commit 511cd65e2a
9 changed files with 188 additions and 33 deletions

View File

@ -1,20 +0,0 @@
HOW TO USE THE Z88SDK WITH FUSE
-------------------------------
Using the Z88 SDK with fuse is a very simple operation. Grab a copy of the rpm, install and write your code, as you would, in C.
Next, compile and target the ZX Spectrum
zcc +zx <your-source>.c -o <output-name>.bin -lndos
Assuming all is well, your code will be generated. THIS IS NOT AN EXECUTABLE!
Load up Fuse. Click on File, move to "Open Binary Data". The usual filer window opens. Select the file you've just compiled and click "Open". The filer closes and you're presented with another window asking for a start address. You can enter any number from about 25000. For this explaination, I would use 32768. Click OK. Your .bin file is now in memory.
To run the code, press the following keys
T, ctrl + shift (the cursor turns to a white on black E), L 32768 return.
On screen you will see the words RANDOMISE USR 32768 before you press return. When you press return, the code will be executed.
That's about it!

17
fuse-README.fedora Normal file
View File

@ -0,0 +1,17 @@
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.

1
fuse-makedev.d-fuse Normal file
View File

@ -0,0 +1 @@
c 660 root fuse 10 229 1 1 fuse

23
fuse-mount.fuse.patch Normal file
View File

@ -0,0 +1,23 @@
diff -u util.org/mount.fuse util/mount.fuse
--- util.org/mount.fuse 2005-11-02 20:52:12.000000000 +0100
+++ util/mount.fuse 2005-11-02 20:59:51.000000000 +0100
@@ -5,6 +5,7 @@
# Thanks to Miklos Szeredi <miklos@szeredi.hu>
# to kick me to the right way
#
+export PATH
VERSION="0.0.1"
PRGNAME=`basename $0`
@@ -40,9 +41,9 @@
shift
shift
-OPTIONS="$@"
+# If there is a better regex that can remove all user from a sting like "-o user,rw,noexec,user,nosuid,nodev,user" tell me, thx
+OPTIONS="`echo $@ | sed 's|,user$|| ; s| user,| | ; s|,user,|,|'`"
-export PATH
${FSTYPE} ${MOUNTPATH} ${MOUNTPOINT} ${OPTIONS}

View File

@ -1,13 +0,0 @@
--- sound.c 2005-10-17 23:20:45.000000000 +0100
+++ fuse-0.7.0/sound.c 2005-08-20 23:46:32.000000000 +0100
@@ -58,8 +58,8 @@
int sound_stereo_ay_abc=0; /* (AY stereo) true for ABC stereo, else ACB */
int sound_stereo_ay_narrow=0; /* (AY stereo) true for narrow AY st. sep. */
-static int sound_stereo_ay=0; /* local copy of settings_current.stereo_ay */
-static int sound_stereo_beeper=0; /* and settings_current.stereo_beeper */
+int sound_stereo_ay=0; /* local copy of settings_current.stereo_ay */
+int sound_stereo_beeper=0; /* and settings_current.stereo_beeper */
/* assume all three tone channels together match the beeper volume (ish).

1
fuse-udev.nodes Normal file
View File

@ -0,0 +1 @@
fuse

6
fuse-udev_rules.patch Normal file
View File

@ -0,0 +1,6 @@
diff -u util.org/udev.rules util/udev.rules
--- util.org/udev.rules 2005-11-03 19:38:05.000000000 +0100
+++ util/udev.rules 2005-11-03 19:38:13.000000000 +0100
@@ -1 +1 @@
-KERNEL="fuse", NAME="%k", MODE="0666"
+KERNEL="fuse", NAME="%k", MODE="0660",OWNER="root" GROUP="fuse"

BIN
fuse.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

140
fuse.spec Normal file
View File

@ -0,0 +1,140 @@
Name: fuse
Version: 2.4.2
Release: 2%{?dist}
Summary: File System in Userspace (FUSE) utilities
Group: System Environment/Base
License: GPL
URL: http://fuse.sf.net
Source0: http://dl.sourceforge.net/sourceforge/fuse/fuse-2.4.2.tar.gz
Source1: fuse-udev.nodes
Source2: fuse-makedev.d-fuse
Source3: fuse-README.fedora
Patch0: fuse-mount.fuse.patch
Patch1: fuse-udev_rules.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: kernel >= 2.6.14
Requires(pre): %{_sbindir}/groupadd
Requires(post): /sbin/MAKEDEV
Requires(postun): %{_sbindir}/groupdel
%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
License: LGPL
%description libs
Devel With FUSE it is possible to implement a fully functional filesystem in a
userspace program. This package contains the FUSE libraries.
%package devel
Summary: File System in Userspace (FUSE) devel files
Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
License: LGPL
%description devel
With FUSE it is possible to implement a fully functional filesystem in a
userspace program. This package contains development files (headers,
pgk-config) to develop FUSE based applications/filesystems.
%prep
%setup -q
#disable device creation during build/install
sed -i 's|mknod|echo Disabled: mknod |g' util/Makefile.in
%patch0 -b .patch0
%patch1 -b .patch1
cp %{SOURCE3} README.fedora
%build
%configure \
--disable-static \
--disable-kernel-module
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
find $RPM_BUILD_ROOT -type f -name "*.la" -exec rm -f {} ';'
install -D -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT/%{_sysconfdir}/udev/makedev.d/40-fuse.nodes
install -D -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT/%{_sysconfdir}/makedev.d/z-fuse
# change from 4755 to 0755 to allow stripping -- fixed later in files
chmod 0755 $RPM_BUILD_ROOT/%{_bindir}/fusermount
%clean
rm -rf $RPM_BUILD_ROOT
%pre
if [ $1 -eq 1 ]; then
%{_sbindir}/groupadd -r fuse &>/dev/null || :
fi
%post
/sbin/MAKEDEV fuse
%postun
if [ $1 = 0 ]; then
%{_sbindir}/groupdel fuse || :
fi
%post libs -p /sbin/ldconfig
%postun libs -p /sbin/ldconfig
%files
%doc AUTHORS ChangeLog COPYING FAQ Filesystems NEWS README README.NFS README.fedora
/sbin/mount.fuse
%attr(4754,root,fuse) %{_bindir}/fusermount
%{_sysconfdir}/makedev.d/z-fuse
%{_sysconfdir}/udev/rules.d/40-fuse.rules
%{_sysconfdir}/udev/makedev.d/40-fuse.nodes
%files libs
%doc COPYING.LIB
%{_libdir}/libfuse.so.*
%files devel
%defattr(-,root,root,-)
%{_libdir}/libfuse.so
%{_libdir}/pkgconfig/*.pc
%{_includedir}/fuse.h
%{_includedir}/fuse
%changelog
* Wed Nov 23 2005 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info> - 2.4.2-1
- Use dist
* Wed Nov 23 2005 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info> - 2.4.2-1
- Update to 2.4.2 (solves CVE-2005-3531)
- Update README.fedora
* Sat Nov 12 2005 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info> - 2.4.1-3
- Add README.fedora
- Add hint to README.fedora and that you have to be member of the group "fuse"
in the description
- Use groupadd instead of fedora-groupadd
* Fri Nov 04 2005 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info> - 2.4.1-2
- Rename packages a bit
- use makedev.d/40-fuse.nodes
- fix /sbin/mount.fuse
- Use a fuse group to restict access to fuse-filesystems
* Fri Oct 28 2005 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info> - 2.4.1-1
- Initial RPM release.