diff options
-rw-r--r-- | php-phpseclib-Net-SSH2-Crypt_Blowfish_conflict.patch | 43 | ||||
-rw-r--r-- | php-phpseclib-net-ssh2.spec | 94 |
2 files changed, 137 insertions, 0 deletions
diff --git a/php-phpseclib-Net-SSH2-Crypt_Blowfish_conflict.patch b/php-phpseclib-Net-SSH2-Crypt_Blowfish_conflict.patch new file mode 100644 index 0000000..e5f8f2d --- /dev/null +++ b/php-phpseclib-Net-SSH2-Crypt_Blowfish_conflict.patch @@ -0,0 +1,43 @@ +Description: Fix Crypt_Blowfish conflict + Rename Crypt/Blowfish.php into Crypt/Blowfish-phpseclib.php so it can + be co-installed with Crypt_Blowfish from PEAR (php-crypt-blowfish + package). +Author: David Prévot <taffit@tilapin.org> +Bug: https://github.com/phpseclib/phpseclib/issues/125 +Last-Update: 2013-06-29 +--- a/Net/SSH2.php ++++ b/Net/SSH2.php +@@ -1329,14 +1329,14 @@ + break; + case 'blowfish-cbc': + if (!class_exists('Crypt_Blowfish')) { +- require_once('Crypt/Blowfish.php'); ++ require_once('Crypt/Blowfish-phpseclib.php'); + } + $this->encrypt = new Crypt_Blowfish(); + $this->encrypt_block_size = 8; + break; + case 'blowfish-ctr': + if (!class_exists('Crypt_Blowfish')) { +- require_once('Crypt/Blowfish.php'); ++ require_once('Crypt/Blowfish-phpseclib.php'); + } + $this->encrypt = new Crypt_Blowfish(CRYPT_BLOWFISH_MODE_CTR); + $this->encrypt_block_size = 8; +@@ -1405,14 +1405,14 @@ + break; + case 'blowfish-cbc': + if (!class_exists('Crypt_Blowfish')) { +- require_once('Crypt/Blowfish.php'); ++ require_once('Crypt/Blowfish-phpseclib.php'); + } + $this->decrypt = new Crypt_Blowfish(); + $this->decrypt_block_size = 8; + break; + case 'blowfish-ctr': + if (!class_exists('Crypt_Blowfish')) { +- require_once('Crypt/Blowfish.php'); ++ require_once('Crypt/Blowfish-phpseclib.php'); + } + $this->decrypt = new Crypt_Blowfish(CRYPT_BLOWFISH_MODE_CTR); + $this->decrypt_block_size = 8; diff --git a/php-phpseclib-net-ssh2.spec b/php-phpseclib-net-ssh2.spec new file mode 100644 index 0000000..4e721f4 --- /dev/null +++ b/php-phpseclib-net-ssh2.spec @@ -0,0 +1,94 @@ +%{!?pear_metadir: %global pear_metadir %{pear_phpdir}} +%{!?__pear: %{expand: %%global __pear %{_bindir}/pear}} +%global pear_name Net_SSH2 + +Name: php-phpseclib-net-ssh2 +Version: 0.3.5 +Release: 3%{?dist} +Summary: Pure-PHP implementation of SSHv2 + +Group: Development/Libraries +License: MIT +URL: http://phpseclib.sourceforge.net/ +Source0: http://phpseclib.sourceforge.net/get/%{pear_name}-%{version}.tgz +# From Debian, thanks to David Prévot, adjust for rename of Blowfish +# library to avoid conflict with php-pear-Crypt-Blowfish +Patch0: php-phpseclib-Net-SSH2-Crypt_Blowfish_conflict.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(phpseclib.sourceforge.net/Crypt_TripleDES) >= 0.3.0 +Requires: php-pear(phpseclib.sourceforge.net/Crypt_RC4) >= 0.3.0 +Requires: php-pear(phpseclib.sourceforge.net/Crypt_AES) >= 0.3.0 +Requires: php-pear(phpseclib.sourceforge.net/Crypt_Twofish) >= 0.3.0 +Requires: php-pear(phpseclib.sourceforge.net/Crypt_Blowfish) >= 0.3.0 +Provides: php-pear(phpseclib.sourceforge.net/Net_SSH2) = %{version} +BuildRequires: php-channel(phpseclib.sourceforge.net) +Requires: php-channel(phpseclib.sourceforge.net) +# phpcompatinfo, generated from 0.3.5 +Requires: php-pcre +Requires: php-xml + +%description +Pure-PHP implementation of SSHv2. + +%prep +%setup -q -c +pushd %{pear_name}-%{version} +# Fix line endings of file we're about to patch +sed -e 's/\r//' -i SSH2.php +%patch0 -p2 +# Drop md5sum of patched file from the PEAR manifest (or else it'll complain) +sed -e '/SSH2.php/s/md5sum="[^"]*"//' \ + ../package.xml >%{name}.xml + + +%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}/Net + + +%changelog +* Thu Jan 16 2014 Adam Williamson <awilliam@redhat.com> - 0.3.5-3 +- fix up the patch for crypt_blowfish rename per review + +* Sat Jan 4 2014 Adam Williamson <awilliam@redhat.com> - 0.3.5-2 +- various review style cleanups + +* Tue Dec 31 2013 Adam Williamson <awilliam@redhat.com> - 0.3.5-1 +- initial package (generated with pear make-rpm-spec) |