summaryrefslogtreecommitdiff
path: root/dev-perl/Crypt-CipherSaber
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-perl/Crypt-CipherSaber
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-perl/Crypt-CipherSaber')
-rw-r--r--dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0-r1.ebuild28
-rw-r--r--dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0.ebuild25
-rw-r--r--dev-perl/Crypt-CipherSaber/Manifest5
-rw-r--r--dev-perl/Crypt-CipherSaber/files/Crypt-CipherSaber-1.10.0-newline-iv.patch118
-rw-r--r--dev-perl/Crypt-CipherSaber/metadata.xml8
5 files changed, 184 insertions, 0 deletions
diff --git a/dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0-r1.ebuild b/dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0-r1.ebuild
new file mode 100644
index 000000000000..090eff20d1b8
--- /dev/null
+++ b/dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=CHROMATIC
+DIST_VERSION=1.01
+inherit perl-module
+
+DESCRIPTION="Perl module implementing CipherSaber encryption"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RDEPEND="
+ >=virtual/perl-Scalar-List-Utils-1.4.2
+"
+DEPEND="${RDEPEND}
+ dev-perl/Module-Build
+ test? (
+ >=virtual/perl-Test-Simple-0.600.0
+ >=dev-perl/Test-Warn-0.300.0
+ )
+"
+PATCHES=(
+ "${FILESDIR}/${P}-newline-iv.patch"
+)
diff --git a/dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0.ebuild b/dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0.ebuild
new file mode 100644
index 000000000000..2c5ece8f6b0d
--- /dev/null
+++ b/dev-perl/Crypt-CipherSaber/Crypt-CipherSaber-1.10.0.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DIST_AUTHOR=CHROMATIC
+DIST_VERSION=1.01
+inherit perl-module
+
+DESCRIPTION="Perl module implementing CipherSaber encryption"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RDEPEND="
+ >=virtual/perl-Scalar-List-Utils-1.4.2
+"
+DEPEND="${RDEPEND}
+ dev-perl/Module-Build
+ test? (
+ >=virtual/perl-Test-Simple-0.600.0
+ >=dev-perl/Test-Warn-0.300.0
+ )
+"
diff --git a/dev-perl/Crypt-CipherSaber/Manifest b/dev-perl/Crypt-CipherSaber/Manifest
new file mode 100644
index 000000000000..70e40dff9492
--- /dev/null
+++ b/dev-perl/Crypt-CipherSaber/Manifest
@@ -0,0 +1,5 @@
+AUX Crypt-CipherSaber-1.10.0-newline-iv.patch 3370 SHA256 7ed370f5ff883cedf044584048301a53da66ad4162fdb6cceaa61b1dff0b6ee6 SHA512 ca7d330f5e5aa7197ddb6092a737a381ba9e2d8ad7caa0c8ffcbcf570aafd402024e74baf05d32051f7239bd09c6e6d918ed8a28aeec772d8e273737cb8b626e WHIRLPOOL c7adcfe150a697d2ca7e8fb76f6652b7e08521e728fc28b299fec56ec61cb2a413b7b7ffb1681422e7d098c4a9b9fdb97da6a27715c07a3863b427392ebb6cdf
+DIST Crypt-CipherSaber-1.01.tar.gz 11527 SHA256 9fbdb479ba76fcb991eaf627f80e64dab093720054f643530ad036f927274bf9 SHA512 c523b3db0b011b560a3f1f45793cdcdfb2bda0ed196bed02f058d39a5f9505826113eb6f0f6baedcb3a0bcc5dc1218fb311361c74701b321ecf8df4080722201 WHIRLPOOL 52d01af410d00870a46b14d97c4dedd12510900b05848a335e30fae1e97b1189d8f1eea6927e226a6d599149288976880a2dbeae3ee1c4427a55d137d0ef147a
+EBUILD Crypt-CipherSaber-1.10.0-r1.ebuild 510 SHA256 5cadb6d653dcdf619e9f2e825afd37bb07ee268903c8ca8c0da977ab544c2982 SHA512 b01172d5ab34c2dfac5f4bbd475e9146de02a592eee7f8bdabf88147cf3cd4c842169c9e7f50951c731c5a4c01ec6bcbcbc2a2007d410f48d7854107e1e91cc5 WHIRLPOOL aeee988df172acbe88a1aaa014e0437d2a281e5e27b28a9388fdf7431899b413aa4cca32a13eef708f50216b2b1efdb3c8327c09f4d956d1e2289fd4dc11cd74
+EBUILD Crypt-CipherSaber-1.10.0.ebuild 461 SHA256 5ca9e21f947a27e6f4d454bec6bea194793849ce2a0c4555d5e20de7f0234e3a SHA512 c9c73d81ae39ef93dc3d4b0baf2981d502812afeec0af1fac3f7ee7a0849148dc2f2bf5607bf0568df15ccea417c2ab7030bfec42b802ef0a3733e7361500468 WHIRLPOOL 6477f9f21446b5015aa25447874b2c3e388d3d5679322ed584f33497240cc5201ac35aad5fcaa2f5315b9e0e65b238310dc8dedfcb5e70e4edc081b07674cc9d
+MISC metadata.xml 257 SHA256 4d43e70b770d0898a99af64a8454a6116e4a86500c23290655c8371265010427 SHA512 80cde0da56c3ac4023da7b0c17c62eae85139aaefd8ba453dd0c0718da1d40102c57d5beb5b8f984dcbeacad930517347e4d91dd5bd94e973fb81974d078a18e WHIRLPOOL 87039765046556cdc2f7d76ce4192945117bfd5bb684220ea8fb72be310673a5b729ea428666ff1ceb1e6c21fb585a3a7dd72bd94dab89cf076a895e6a7677f0
diff --git a/dev-perl/Crypt-CipherSaber/files/Crypt-CipherSaber-1.10.0-newline-iv.patch b/dev-perl/Crypt-CipherSaber/files/Crypt-CipherSaber-1.10.0-newline-iv.patch
new file mode 100644
index 000000000000..30e7a1a1ea4f
--- /dev/null
+++ b/dev-perl/Crypt-CipherSaber/files/Crypt-CipherSaber-1.10.0-newline-iv.patch
@@ -0,0 +1,118 @@
+From 966c275a76fa33b57f41cb66a908362b526629a8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
+Date: Wed, 27 Aug 2014 15:38:54 +0200
+Subject: Fix reading IV with new-lines from a file
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Decrypting filehandle data by fh_crypt() could produce bad decrypted
+data if the initizalization vector read from the filehandle contained
+a new-line character. This caused random failures of 'autogenerating
+and autoreading IV should also round-trip' test in t/fh_encrypt.t.
+
+This patch fixes it by reading first 10 characters regardless of
+current line separator.
+
+Bug: https://rt.cpan.org/Ticket/Display.html?id=28370
+Bug: https://bugs.gentoo.org/632253
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ lib/Crypt/CipherSaber.pm | 14 +++++++++-----
+ t/fh_encrypt.t | 40 +++++++++++++++++++++++++++++++++++++++-
+ 2 files changed, 48 insertions(+), 6 deletions(-)
+
+diff --git a/lib/Crypt/CipherSaber.pm b/lib/Crypt/CipherSaber.pm
+index 7cb7cc0..2db153c 100644
+--- a/lib/Crypt/CipherSaber.pm
++++ b/lib/Crypt/CipherSaber.pm
+@@ -67,6 +67,15 @@ sub fh_crypt
+ $iv = $self->_gen_iv() if length($iv) == 1;
+ $self->_setup_key($iv);
+ print OUT $iv;
++ } else {
++ if ( 10 != $in->read($iv, 10) )
++ {
++ require Carp;
++ Carp::carp( 'Could not read IV from input filehandle' );
++ return;
++ }
++ ( $iv ) = unpack( "a10", $iv );
++ $self->_setup_key($iv);
+ }
+
+ my $state = $self->[1];
+@@ -75,11 +84,6 @@ sub fh_crypt
+
+ while (<$in>)
+ {
+- unless ($iv)
+- {
+- ( $iv, $_ ) = unpack( "a10a*", $_ );
+- $self->_setup_key($iv);
+- }
+ my $line;
+ ( $line, $state, @vars ) = _do_crypt( $state, $_, @vars );
+ print OUT $line;
+diff --git a/t/fh_encrypt.t b/t/fh_encrypt.t
+index 35a74fb..e595ff9 100644
+--- a/t/fh_encrypt.t
++++ b/t/fh_encrypt.t
+@@ -6,7 +6,7 @@ BEGIN
+ }
+
+ use strict;
+-use Test::More tests => 6;
++use Test::More tests => 7;
+ use_ok( 'Crypt::CipherSaber' );
+
+ # tests the fh_crypt() method
+@@ -114,6 +114,44 @@ while (<SOURCE>)
+
+ ok( ! $status, 'autogenerating and autoreading IV should also round-trip' );
+
++# IV retrieved from encrypted file can contain new-line characters. Check that
++# fh_encrypt can deal with it
++{
++ local $/ = "\012";
++
++ open( IN, 'smiles.png' ) or die "Cannot read smiles.png: $!";
++ open( OUT, '> smiles_2.cs1' ) or die "Cannot write to smiles_2.cs1: $!";
++ binmode( IN );
++ binmode( OUT );
++ $cs->fh_crypt( \*IN, \*OUT, $/ x 10 );
++ close IN;
++ close OUT;
++
++ open( IN, 'smiles_2.cs1' ) or die "Cannot read smiles_2.cs1: $!";
++ open( OUT, '> smiles_2.png' ) or die "Cannot write to smiles_2.png $!";
++ binmode( IN );
++ binmode( OUT );
++ $cs->fh_crypt( \*IN, \*OUT );
++ close IN;
++ close OUT;
++
++ open( SOURCE, 'smiles.png' ) or die "Cannot read smiles.png: $!";
++ open( DEST, 'smiles_2.png' ) or die "Cannot read smiles_2.png: $!";
++ binmode SOURCE;
++ binmode DEST;
++ $status = 0;
++ while (<SOURCE>)
++ {
++ unless ($_ eq <DEST>)
++ {
++ $status = 1;
++ last;
++ }
++ }
++ ok( ! $status, 'IV with new-lines in the encrypted file' );
++}
++
++
+ END
+ {
+ 1 while unlink qw( smiles_2.cs1 smiles_2.png outsmiles.cs1 outsmiles.png );
+--
+2.14.1
+
diff --git a/dev-perl/Crypt-CipherSaber/metadata.xml b/dev-perl/Crypt-CipherSaber/metadata.xml
new file mode 100644
index 000000000000..2b9a936fc0a1
--- /dev/null
+++ b/dev-perl/Crypt-CipherSaber/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>perl@gentoo.org</email>
+ <name>Gentoo Perl Project</name>
+ </maintainer>
+</pkgmetadata>