summaryrefslogtreecommitdiff
path: root/sys-fs
diff options
context:
space:
mode:
authorStefan Schweizer <genstef@gentoo.org>2005-11-19 23:23:15 +0000
committerStefan Schweizer <genstef@gentoo.org>2005-11-19 23:23:15 +0000
commitd5886e1f1c3120434a12352c1170525ceca8ee2b (patch)
treeef3a764c802c137d7600692324e860211141069e /sys-fs
parentSRC_URL location changed. bug #112362 (diff)
downloadgentoo-2-d5886e1f1c3120434a12352c1170525ceca8ee2b.tar.gz
gentoo-2-d5886e1f1c3120434a12352c1170525ceca8ee2b.tar.bz2
gentoo-2-d5886e1f1c3120434a12352c1170525ceca8ee2b.zip
Fix bug 112902
(Portage version: 2.0.53_rc7)
Diffstat (limited to 'sys-fs')
-rw-r--r--sys-fs/fuse/ChangeLog8
-rw-r--r--sys-fs/fuse/Manifest15
-rw-r--r--sys-fs/fuse/files/digest-fuse-2.4.1-r11
-rw-r--r--sys-fs/fuse/files/fusermount.patch42
-rw-r--r--sys-fs/fuse/fuse-2.4.1-r1.ebuild52
5 files changed, 111 insertions, 7 deletions
diff --git a/sys-fs/fuse/ChangeLog b/sys-fs/fuse/ChangeLog
index 7cc17c684841..68e387788a92 100644
--- a/sys-fs/fuse/ChangeLog
+++ b/sys-fs/fuse/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for sys-fs/fuse
# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-fs/fuse/ChangeLog,v 1.30 2005/11/19 13:38:05 blubb Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/fuse/ChangeLog,v 1.31 2005/11/19 23:23:15 genstef Exp $
+
+*fuse-2.4.1-r1 (19 Nov 2005)
+
+ 19 Nov 2005; Stefan Schweizer <genstef@gentoo.org>
+ +files/fusermount.patch, +fuse-2.4.1-r1.ebuild:
+ Fix bug 112902
19 Nov 2005; Simon Stelling <blubb@gentoo.org> fuse-2.3.0.ebuild:
stable on amd64
diff --git a/sys-fs/fuse/Manifest b/sys-fs/fuse/Manifest
index 8c7c17aa9bb8..2fc8f18047fa 100644
--- a/sys-fs/fuse/Manifest
+++ b/sys-fs/fuse/Manifest
@@ -1,9 +1,12 @@
-MD5 68f3f4105febbf0e6ecf6cf7c8991ace ChangeLog 4432
-MD5 6e89ba8198764bfd079a0cfa18dca593 metadata.xml 264
+MD5 14c7f94b2631c53b1af928e902815d42 ChangeLog 4583
+MD5 660a7ef5693ad494967fec4297c6dfce files/digest-fuse-2.3.0 62
+MD5 ffd57aad8c33e3452bcb35543a59e75a files/digest-fuse-2.4.0 62
+MD5 ad233d63810d8501e80affb6e4b8f40f files/digest-fuse-2.4.1 62
+MD5 ad233d63810d8501e80affb6e4b8f40f files/digest-fuse-2.4.1-r1 62
+MD5 c1ef6366ba5892111ddef08887328663 files/fuse-fix-lazy-binding.patch 398
+MD5 341eb75e58827ef58b4c5b445c721362 files/fusermount.patch 1300
MD5 5837867b4d824f957ac809f45e468957 fuse-2.3.0.ebuild 1446
MD5 fb6a3ca988d45aaf47a66ae5569c5ad4 fuse-2.4.0.ebuild 1451
+MD5 adc6dd9d60c27300bbd45da65d57fec7 fuse-2.4.1-r1.ebuild 1488
MD5 7ab7607d812aadafaf30e1a038f16d10 fuse-2.4.1.ebuild 1451
-MD5 ffd57aad8c33e3452bcb35543a59e75a files/digest-fuse-2.4.0 62
-MD5 c1ef6366ba5892111ddef08887328663 files/fuse-fix-lazy-binding.patch 398
-MD5 660a7ef5693ad494967fec4297c6dfce files/digest-fuse-2.3.0 62
-MD5 ad233d63810d8501e80affb6e4b8f40f files/digest-fuse-2.4.1 62
+MD5 6e89ba8198764bfd079a0cfa18dca593 metadata.xml 264
diff --git a/sys-fs/fuse/files/digest-fuse-2.4.1-r1 b/sys-fs/fuse/files/digest-fuse-2.4.1-r1
new file mode 100644
index 000000000000..74dd1a50f700
--- /dev/null
+++ b/sys-fs/fuse/files/digest-fuse-2.4.1-r1
@@ -0,0 +1 @@
+MD5 553bd9c5a4f3cd27f3e2b93844711e4c fuse-2.4.1.tar.gz 384631
diff --git a/sys-fs/fuse/files/fusermount.patch b/sys-fs/fuse/files/fusermount.patch
new file mode 100644
index 000000000000..7bd930e46a29
--- /dev/null
+++ b/sys-fs/fuse/files/fusermount.patch
@@ -0,0 +1,42 @@
+Index: util/fusermount.c
+===================================================================
+RCS file: /cvsroot/fuse/fuse/util/fusermount.c,v
+retrieving revision 1.69
+diff -u -r1.69 fusermount.c
+--- util/fusermount.c 11 Oct 2005 10:12:08 -0000 1.69
++++ util/fusermount.c 18 Nov 2005 20:32:26 -0000
+@@ -120,6 +120,23 @@
+ }
+ }
+
++/* Glibc addmntent() doesn't encode '\n', misencodes '\t' as '\n'
++ (version 2.3.2), and encodes '\\' differently as mount(8). So
++ let's not allow those characters, they are not all that usual in
++ filenames. */
++static int check_name(const char *name)
++{
++ char *s;
++ for (s = "\n\t\\"; *s; s++) {
++ if (strchr(name, *s)) {
++ fprintf(stderr, "%s: illegal character 0x%02x in mount entry\n",
++ progname, *s);
++ return -1;
++ }
++ }
++ return 0;
++}
++
+ static int add_mount(const char *fsname, const char *mnt, const char *type,
+ const char *opts)
+ {
+@@ -128,6 +145,10 @@
+ struct mntent ent;
+ FILE *fp;
+
++ if (check_name(fsname) == -1 || check_name(mnt) == -1 ||
++ check_name(type) == -1 || check_name(opts) == -1)
++ return -1;
++
+ fp = setmntent(mtab, "a");
+ if (fp == NULL) {
+ fprintf(stderr, "%s: failed to open %s: %s\n", progname, mtab,
diff --git a/sys-fs/fuse/fuse-2.4.1-r1.ebuild b/sys-fs/fuse/fuse-2.4.1-r1.ebuild
new file mode 100644
index 000000000000..663caa8ec684
--- /dev/null
+++ b/sys-fs/fuse/fuse-2.4.1-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-fs/fuse/fuse-2.4.1-r1.ebuild,v 1.1 2005/11/19 23:23:15 genstef Exp $
+
+inherit linux-mod eutils
+
+MY_P=${P/_/-}
+DESCRIPTION="An interface for filesystems implemented in userspace."
+HOMEPAGE="http://fuse.sourceforge.net"
+SRC_URI="mirror://sourceforge/fuse/${MY_P}.tar.gz"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE=""
+S=${WORKDIR}/${MY_P}
+
+CONFIG_CHECK="@FUSE_FS:fuse"
+MODULE_NAMES="fuse(fs:${S}/kernel)"
+BUILD_PARAMS="majver=${KV_MAJOR}.${KV_MINOR}
+ fusemoduledir=${ROOT}/lib/modules/${KV_FULL}/fs"
+BUILD_TARGETS="all"
+ECONF_PARAMS="--with-kernel=${KV_OUT_DIR}"
+FUSE_FS_ERROR="We have detected FUSE already built into the kernel.
+We will continue, but we wont build the module this time."
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ epatch ${FILESDIR}/fuse-fix-lazy-binding.patch
+ epatch ${FILESDIR}/fusermount.patch
+}
+
+src_compile() {
+ einfo "Preparing fuse userland"
+ econf --disable-kernel-module --disable-example || \
+ die "econf failed for fuse userland"
+ emake || die "emake failed"
+
+ sed -i 's/.*depmod.*//g' ${S}/kernel/Makefile.in
+ convert_to_m ${S}/kernel/Makefile.in
+ linux-mod_src_compile
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ dodoc AUTHORS ChangeLog Filesystems README README-2.4 \
+ README.NFS NEWS doc/how-fuse-works
+ docinto example
+ dodoc example/*
+
+ linux-mod_src_install
+}