[php-phpseclib-crypt-rsa] initial import (#1047608)

Adam Williamson adamwill at fedoraproject.org
Fri Jan 24 02:40:05 UTC 2014


commit 6ad0a6b84747e7858d407c2ef67edb4c1feb4ce1
Author: Adam Williamson <awilliam at redhat.com>
Date:   Thu Jan 23 18:40:04 2014 -0800

    initial import (#1047608)

 .gitignore                   |    1 +
 Crypt_RSA-role.patch         |   42 +++++++++++++++++++
 php-phpseclib-crypt-rsa.spec |   91 ++++++++++++++++++++++++++++++++++++++++++
 sources                      |    1 +
 4 files changed, 135 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..e1e866f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/Crypt_RSA-0.3.5.tgz
diff --git a/Crypt_RSA-role.patch b/Crypt_RSA-role.patch
new file mode 100644
index 0000000..079032c
--- /dev/null
+++ b/Crypt_RSA-role.patch
@@ -0,0 +1,42 @@
+--- Crypt_RSA-0.3.5/RSA.php		2014-01-07 11:18:22.000000000 +0100
++++ Crypt_RSA-0.3.5/RSA.php.fix	2014-01-07 11:18:22.000000000 +0100
+@@ -171,7 +171,7 @@ define('CRYPT_RSA_MODE_OPENSSL', 2);
+ /**
+  * Default openSSL configuration file.
+  */
+-define('CRYPT_RSA_OPENSSL_CONFIG', dirname(__FILE__) . '/../openssl.cnf');
++define('CRYPT_RSA_OPENSSL_CONFIG', 'openssl.cnf');
+ 
+ 
+ /**#@+
+@@ -465,7 +465,14 @@ class Crypt_RSA {
+             require_once('Math/BigInteger.php');
+         }
+ 
+-        $this->configFile = CRYPT_RSA_OPENSSL_CONFIG;
++        $dir = '@cfg_dir@' . DIRECTORY_SEPARATOR . 'Crypt_RSA';
++        if (strpos($dir, '@') === false) {
++           // PEAR installer was used to install the package
++        } else {
++           // manual install
++           $dir = dirname(__FILE__);
++        }
++        $this->configFile = $dir . DIRECTORY_SEPARATOR . CRYPT_RSA_OPENSSL_CONFIG;
+ 
+         if ( !defined('CRYPT_RSA_MODE') ) {
+             switch (true) {
+--- package.xml		2014-01-07 11:03:40.000000000 +0100
++++ package.xml.fix	2014-01-07 11:06:12.000000000 +0100
+@@ -23,8 +23,10 @@ 
+  <notes>0.3.5 release</notes>
+  <contents>
+   <dir name="/">
+-    <file baseinstalldir="Crypt" name="RSA.php" role="php" md5sum="bd0402efcbf7cdeb3e68205c77a88bc0"/>
+-    <file baseinstalldir="" name="openssl.cnf" role="php" md5sum="0f1015cb8894127a94a05afa7cc23760"/>
++    <file baseinstalldir="Crypt" name="RSA.php" role="php">
++       <tasks:replace from="@cfg_dir@" to="cfg_dir" type="pear-config" />
++    </file>
++    <file name="openssl.cnf" role="cfg" md5sum="0f1015cb8894127a94a05afa7cc23760"/>
+   </dir>
+  </contents>
+  <dependencies>
diff --git a/php-phpseclib-crypt-rsa.spec b/php-phpseclib-crypt-rsa.spec
new file mode 100644
index 0000000..bc380bc
--- /dev/null
+++ b/php-phpseclib-crypt-rsa.spec
@@ -0,0 +1,91 @@
+%{!?pear_metadir: %global pear_metadir %{pear_phpdir}}
+%{!?__pear: %{expand: %%global __pear %{_bindir}/pear}}
+%global pear_name Crypt_RSA
+
+Name:           php-phpseclib-crypt-rsa
+Version:        0.3.5
+Release:        3%{?dist}
+Summary:        Pure-PHP PKCS#1 (v2.1) compliant implementation of RSA
+
+Group:          Development/Libraries
+License:        MIT
+URL:            http://phpseclib.sourceforge.net/
+Source0:        http://phpseclib.sourceforge.net/get/%{pear_name}-%{version}.tgz
+
+# https://sourceforge.net/p/phpseclib/bugs/4/
+Patch0:         %{pear_name}-role.patch
+
+BuildArch:      noarch
+BuildRequires:  php-pear(PEAR)
+
+Requires(post): %{__pear}
+Requires(postun): %{__pear}
+Requires:       php-pear(PEAR)
+Requires:       php-pear(phpseclib.sourceforge.net/Math_BigInteger) >= 0.3.0
+Requires:       php-pear(phpseclib.sourceforge.net/Crypt_Random) >= 0.3.0
+Requires:       php-pear(phpseclib.sourceforge.net/Crypt_Hash) >= 0.3.0
+Requires:       php-pear(PEAR) >= 1.4.0
+Provides:       php-pear(phpseclib.sourceforge.net/Crypt_RSA) = %{version}
+BuildRequires:  php-channel(phpseclib.sourceforge.net)
+Requires:       php-channel(phpseclib.sourceforge.net)
+# phpcompatinfo, generated from 0.3.5
+Requires:       php-date
+Requires:       php-pcre
+Requires:       php-xml
+
+%description
+Pure-PHP PKCS#1 (v2.1) compliant implementation of RSA. Optionally uses
+openssl.
+
+%prep
+%setup -q -c
+sed -e 's/\r//' -i %{pear_name}-%{version}/*php
+%patch0 -p0
+mv package.xml %{pear_name}-%{version}/%{name}.xml
+
+cd %{pear_name}-%{version}
+
+%build
+cd %{pear_name}-%{version}
+# Empty build section, most likely nothing required.
+
+
+%install
+cd %{pear_name}-%{version}
+%{__pear} install --nodeps --packagingroot $RPM_BUILD_ROOT %{name}.xml
+
+# Clean up unnecessary files
+rm -rf $RPM_BUILD_ROOT%{pear_metadir}/.??*
+
+# Install XML package description
+mkdir -p $RPM_BUILD_ROOT%{pear_xmldir}
+install -pm 644 %{name}.xml $RPM_BUILD_ROOT%{pear_xmldir}
+
+
+%post
+%{__pear} install --nodeps --soft --force --register-only \
+    %{pear_xmldir}/%{name}.xml >/dev/null || :
+
+%postun
+if [ $1 -eq 0 ] ; then
+    %{__pear} uninstall --nodeps --ignore-errors --register-only \
+        phpseclib.sourceforge.net/%{pear_name} >/dev/null || :
+fi
+
+
+%files
+%{pear_xmldir}/%{name}.xml
+%{pear_phpdir}/Crypt/RSA.php
+%dir %{pear_cfgdir}/%{pear_name}
+%config(noreplace) %{pear_cfgdir}/%{pear_name}/openssl.cnf
+
+
+%changelog
+* Thu Jan 09 2014 Adam Williamson <awilliam at redhat.com> - 0.3.5-3
+- fix up config file install and use (from Remi Collet)
+
+* Sat Jan  4 2014 Adam Williamson <awilliam at redhat.com> - 0.3.5-2
+- various review style cleanups
+
+* Tue Dec 31 2013 Adam Williamson <awilliam at redhat.com> - 0.3.5-1
+- initial package (generated with pear make-rpm-spec)
diff --git a/sources b/sources
index e69de29..dcf14e2 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+a666def3d161c2e1d3407639d142666c  Crypt_RSA-0.3.5.tgz


More information about the scm-commits mailing list