diff --git a/README.z88sdk b/README.z88sdk deleted file mode 100644 index dc79f20..0000000 --- a/README.z88sdk +++ /dev/null @@ -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 .c -o .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! diff --git a/fuse-README.fedora b/fuse-README.fedora new file mode 100644 index 0000000..26034c2 --- /dev/null +++ b/fuse-README.fedora @@ -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. diff --git a/fuse-makedev.d-fuse b/fuse-makedev.d-fuse new file mode 100644 index 0000000..c71ea7b --- /dev/null +++ b/fuse-makedev.d-fuse @@ -0,0 +1 @@ +c 660 root fuse 10 229 1 1 fuse diff --git a/fuse-mount.fuse.patch b/fuse-mount.fuse.patch new file mode 100644 index 0000000..7901ee2 --- /dev/null +++ b/fuse-mount.fuse.patch @@ -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 + # 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} + + diff --git a/fuse-sound.patch b/fuse-sound.patch deleted file mode 100644 index 330dd97..0000000 --- a/fuse-sound.patch +++ /dev/null @@ -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). diff --git a/fuse-udev.nodes b/fuse-udev.nodes new file mode 100644 index 0000000..a517c48 --- /dev/null +++ b/fuse-udev.nodes @@ -0,0 +1 @@ +fuse diff --git a/fuse-udev_rules.patch b/fuse-udev_rules.patch new file mode 100644 index 0000000..d641c4a --- /dev/null +++ b/fuse-udev_rules.patch @@ -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" diff --git a/fuse.png b/fuse.png deleted file mode 100644 index d0a89c5..0000000 Binary files a/fuse.png and /dev/null differ diff --git a/fuse.spec b/fuse.spec new file mode 100644 index 0000000..8468f56 --- /dev/null +++ b/fuse.spec @@ -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 - 2.4.2-1 +- Use dist + +* Wed Nov 23 2005 Thorsten Leemhuis - 2.4.2-1 +- Update to 2.4.2 (solves CVE-2005-3531) +- Update README.fedora + +* Sat Nov 12 2005 Thorsten Leemhuis - 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 - 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 - 2.4.1-1 +- Initial RPM release.