summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'perl-core/File-Temp')
-rw-r--r--perl-core/File-Temp/File-Temp-0.230.400-r1.ebuild20
-rw-r--r--perl-core/File-Temp/Manifest1
-rw-r--r--perl-core/File-Temp/files/File-Temp-0.230.0-symlink-safety.patch37
-rw-r--r--perl-core/File-Temp/metadata.xml10
4 files changed, 68 insertions, 0 deletions
diff --git a/perl-core/File-Temp/File-Temp-0.230.400-r1.ebuild b/perl-core/File-Temp/File-Temp-0.230.400-r1.ebuild
new file mode 100644
index 000000000000..fd0aa0efd33e
--- /dev/null
+++ b/perl-core/File-Temp/File-Temp-0.230.400-r1.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+MODULE_AUTHOR=DAGOLDEN
+MODULE_VERSION=0.2304
+inherit perl-module
+
+DESCRIPTION="File::Temp can be used to create and open temporary files in a safe way"
+
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE=""
+
+# bug 390719
+PATCHES=( "${FILESDIR}/${PN}-0.230.0-symlink-safety.patch" )
+
+SRC_TEST="do"
diff --git a/perl-core/File-Temp/Manifest b/perl-core/File-Temp/Manifest
new file mode 100644
index 000000000000..a6af1cd408ff
--- /dev/null
+++ b/perl-core/File-Temp/Manifest
@@ -0,0 +1 @@
+DIST File-Temp-0.2304.tar.gz 59505 SHA256 13415323e48f7c9f34efdedf3d35141a7c3435e2beb8c6b922229dc317d321ac SHA512 823acf6ca42eb0548617feec4ce32e24da3fbbcb05d78dadea902e318797ed31bb16ef2b7fee50f79d52adb7dd561b8f97c1b9e11c56ba7d50735efbf639f1db WHIRLPOOL d00a486ac5d286808a59d915774b2489392d94aa3de5a73fc297533fbbd445c851105985924211fddd2c571b69113f04a39060c07a560576bd24dd88199dd0d8
diff --git a/perl-core/File-Temp/files/File-Temp-0.230.0-symlink-safety.patch b/perl-core/File-Temp/files/File-Temp-0.230.0-symlink-safety.patch
new file mode 100644
index 000000000000..d6a3a717c702
--- /dev/null
+++ b/perl-core/File-Temp/files/File-Temp-0.230.0-symlink-safety.patch
@@ -0,0 +1,37 @@
+From: John Lightsey <jd@cpanel.net>
+Date: Mon, 27 Jun 2011 13:07:44 -0500
+Subject: [PATCH] symlink safety
+
+Add check for unsafe symbolic links to _is_safe() directory check.
+
+
+diff -ruN File-Temp-0.23.orig/lib/File/Temp.pm File-Temp-0.23/lib/File/Temp.pm
+--- File-Temp-0.23.orig/lib/File/Temp.pm 2013-03-14 22:56:59.000000000 +0100
++++ File-Temp-0.23/lib/File/Temp.pm 2014-10-15 23:46:29.894611586 +0200
+@@ -672,7 +672,25 @@
+ my $err_ref = shift;
+
+ # Stat path
+- my @info = stat($path);
++ my @info = lstat($path);
++ my $symlink_test_path = $path;
++ my $symlink_loop_count = 0;
++ while (-l _) {
++ if (++$symlink_loop_count >= 50) {
++ $$err_ref = "50 levels of symlinks encountered at $path";
++ return 0;
++ }
++ if ( $info[4] <= File::Temp->top_system_uid() || $info[4] == $>) {
++ # safe to traverse
++ $symlink_test_path = readlink($symlink_test_path);
++ @info = lstat($symlink_test_path);
++ }
++ else {
++ $$err_ref = "Unsafe symlink at $path";
++ return 0;
++ }
++ }
++
+ unless (scalar(@info)) {
+ $$err_ref = "stat(path) returned no values";
+ return 0;
diff --git a/perl-core/File-Temp/metadata.xml b/perl-core/File-Temp/metadata.xml
new file mode 100644
index 000000000000..d84a9188238f
--- /dev/null
+++ b/perl-core/File-Temp/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>perl</herd>
+ <upstream>
+ <remote-id type="cpan">File-Temp</remote-id>
+ <remote-id type="cpan-module">File::Temp</remote-id>
+ <remote-id type="cpan-module">File::Temp::Dir</remote-id>
+ </upstream>
+</pkgmetadata>