Skip to content

Commit

Permalink
sys-fs/ntfs3g: Revision bump to 2016.2.22-r2 to add patch for CVE-201…
Browse files Browse the repository at this point in the history
…7-0358

Gentoo-Bug: 607912

Package-Manager: Portage-2.3.3, Repoman-2.3.1
  • Loading branch information
chutz committed Feb 1, 2017
1 parent 29906fa commit 63ab8f5
Show file tree
Hide file tree
Showing 2 changed files with 131 additions and 0 deletions.
40 changes: 40 additions & 0 deletions sys-fs/ntfs3g/files/ntfs3g-2016.2.22-CVE-2017-0358.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
diff --git a/src/lowntfs-3g.c b/src/lowntfs-3g.c
index 0bb38f97..c6d1dad3 100644
--- a/src/lowntfs-3g.c
+++ b/src/lowntfs-3g.c
@@ -3827,13 +3827,14 @@ static fuse_fstype load_fuse_module(void)
struct stat st;
pid_t pid;
const char *cmd = "/sbin/modprobe";
+ char *env = (char*)NULL;
struct timespec req = { 0, 100000000 }; /* 100 msec */
fuse_fstype fstype;

if (!stat(cmd, &st) && !geteuid()) {
pid = fork();
if (!pid) {
- execl(cmd, cmd, "fuse", NULL);
+ execle(cmd, cmd, "fuse", NULL, &env);
_exit(1);
} else if (pid != -1)
waitpid(pid, NULL, 0);
diff --git a/src/ntfs-3g.c b/src/ntfs-3g.c
index 268b0569..945fc0be 100644
--- a/src/ntfs-3g.c
+++ b/src/ntfs-3g.c
@@ -3612,13 +3612,14 @@ static fuse_fstype load_fuse_module(void)
struct stat st;
pid_t pid;
const char *cmd = "/sbin/modprobe";
+ char *env = (char*)NULL;
struct timespec req = { 0, 100000000 }; /* 100 msec */
fuse_fstype fstype;

if (!stat(cmd, &st) && !geteuid()) {
pid = fork();
if (!pid) {
- execl(cmd, cmd, "fuse", NULL);
+ execle(cmd, cmd, "fuse", NULL, &env);
_exit(1);
} else if (pid != -1)
waitpid(pid, NULL, 0);
91 changes: 91 additions & 0 deletions sys-fs/ntfs3g/ntfs3g-2016.2.22-r2.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=5
inherit eutils linux-info udev toolchain-funcs libtool

MY_PN=${PN/3g/-3g}
MY_P=${MY_PN}_ntfsprogs-${PV}

DESCRIPTION="Open source read-write NTFS driver that runs under FUSE"
HOMEPAGE="http://www.tuxera.com/community/ntfs-3g-download/"
SRC_URI="http://tuxera.com/opensource/${MY_P}.tgz"

LICENSE="GPL-2"
# The subslot matches the SONAME major #.
SLOT="0/87"
KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~arm-linux ~x86-linux"
IUSE="acl debug +external-fuse ntfsdecrypt +ntfsprogs static-libs suid xattr"

RDEPEND="!<sys-apps/util-linux-2.20.1-r2
!sys-fs/ntfsprogs
ntfsdecrypt? (
>=dev-libs/libgcrypt-1.2.2:0
>=net-libs/gnutls-1.4.4
)
external-fuse? ( >=sys-fs/fuse-2.8.0 )"
DEPEND="${RDEPEND}
sys-apps/attr
virtual/pkgconfig"

S="${WORKDIR}/${MY_P}"

DOCS="AUTHORS ChangeLog CREDITS README"

PATCHES=(
"${FILESDIR}"/${PN}-2014.2.15-no-split-usr.patch
"${FILESDIR}"/${PN}-2016.2.22-sysmacros.patch #580136
"${FILESDIR}"/${PN}-2016.2.22-CVE-2017-0358.patch #607912
)

pkg_setup() {
if use external-fuse && use kernel_linux; then
if kernel_is lt 2 6 9; then
die "Your kernel is too old."
fi
CONFIG_CHECK="~FUSE_FS"
FUSE_FS_WARNING="You need to have FUSE module built to use ntfs-3g"
linux-info_pkg_setup
fi
}

src_prepare() {
epatch "${PATCHES[@]}"
# Keep the symlinks in the same place we put the main binaries.
# Having them in / when all the progs are in /usr is pointless.
sed -i \
-e 's:/sbin:$(sbindir):g' \
{ntfsprogs,src}/Makefile.in || die #578336
# Note: patches apply to Makefile.in, so don't run autotools here.
elibtoolize
}

src_configure() {
tc-ld-disable-gold
econf \
--prefix="${EPREFIX}"/usr \
--exec-prefix="${EPREFIX}"/usr \
--docdir="${EPREFIX}"/usr/share/doc/${PF} \
$(use_enable debug) \
--enable-ldscript \
--disable-ldconfig \
$(use_enable acl posix-acls) \
$(use_enable xattr xattr-mappings) \
$(use_enable ntfsdecrypt crypto) \
$(use_enable ntfsprogs) \
$(use_enable ntfsprogs quarantined) \
--without-uuid \
--enable-extras \
$(use_enable static-libs static) \
--with-fuse=$(usex external-fuse external internal)
}

src_install() {
default

use suid && fperms u+s /usr/bin/${MY_PN}
udev_dorules "${FILESDIR}"/99-ntfs3g.rules
prune_libtool_files

dosym mount.ntfs-3g /usr/sbin/mount.ntfs #374197
}

0 comments on commit 63ab8f5

Please sign in to comment.