|
@@ -5,45 +5,96 @@ Summary: Cryptography library for Python
|
|
Summary(ja): Python 用 Cryptography ライブラリ
|
|
Summary(ja): Python 用 Cryptography ライブラリ
|
|
Name: python-crypto
|
|
Name: python-crypto
|
|
Version: 2.6.1
|
|
Version: 2.6.1
|
|
-Release: 1%{?_dist_release}
|
|
+Release: 2%{?_dist_release}
|
|
-License: Python License (CNRI Python License)
|
|
+License: Public Domain and Python
|
|
Group: Development/Libraries
|
|
Group: Development/Libraries
|
|
URL: http://www.dlitz.net/software/pycrypto/
|
|
URL: http://www.dlitz.net/software/pycrypto/
|
|
Source: http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-%{version}.tar.gz
|
|
Source: http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/pycrypto-%{version}.tar.gz
|
|
|
|
|
|
-Patch0: dont-drop-g.patch
|
|
+Patch0: python-crypto-2.4-optflags.patch
|
|
-Patch1: fix-epydoc-ignore.patch
|
|
+Patch1: python-crypto-2.4-fix-pubkey-size-divisions.patch
|
|
-Patch2: fix-unresolved-reference-size.patch
|
|
+Patch2: pycrypto-2.6.1-CVE-2013-7459.patch
|
|
|
|
+Patch4: python-crypto-2.6.1-link.patch
|
|
|
|
+Patch5: pycrypto-2.6.1-CVE-2018-6594.patch
|
|
|
|
|
|
BuildRequires: python >= 2.2
|
|
BuildRequires: python >= 2.2
|
|
BuildRequires: python-devel >= 2.2
|
|
BuildRequires: python-devel >= 2.2
|
|
|
|
+BuildRequires: python-rpm-macros
|
|
|
|
+BuildRequires: python3
|
|
|
|
+BuildRequires: python3-devel
|
|
|
|
+BuildRequires: python3-rpm-macros
|
|
|
|
+BuildRequires: libxcrypt-devel
|
|
BuildRequires: gmp-devel >= 5
|
|
BuildRequires: gmp-devel >= 5
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
|
|
|
|
|
|
+Vendor: Project Vine
|
|
|
|
+Distribution: Vine Linux
|
|
|
|
+
|
|
%description
|
|
%description
|
|
Python-crypto is a collection of both secure hash functions
|
|
Python-crypto is a collection of both secure hash functions
|
|
(such as MD5 and SHA), and various encryption algorithms
|
|
(such as MD5 and SHA), and various encryption algorithms
|
|
(AES, DES, IDEA, RSA, ElGamal, etc.).
|
|
(AES, DES, IDEA, RSA, ElGamal, etc.).
|
|
|
|
|
|
|
|
+
|
|
|
|
+%package -n python3-crypto
|
|
|
|
+Summary: Cryptography library for Python 3
|
|
|
|
+%{?python_provide:%python_provide python3-crypto}
|
|
|
|
+
|
|
|
|
+%description -n python3-crypto
|
|
|
|
+PyCrypto is a collection of both secure hash functions (such as MD5 and
|
|
|
|
+SHA), and various encryption algorithms (AES, DES, RSA, ElGamal, etc.).
|
|
|
|
+
|
|
|
|
+This is the Python 3 build of the package.
|
|
|
|
+
|
|
%prep
|
|
%prep
|
|
%setup -n pycrypto-%{version} -q
|
|
%setup -n pycrypto-%{version} -q
|
|
|
|
+
|
|
|
|
+# Use distribution compiler flags rather than upstream's
|
|
%patch0 -p1
|
|
%patch0 -p1
|
|
|
|
+
|
|
|
|
+# Fix divisions within benchmarking suite:
|
|
%patch1 -p1
|
|
%patch1 -p1
|
|
|
|
+
|
|
|
|
+# AES.new with invalid parameter crashes python
|
|
|
|
+# https://github.com/dlitz/pycrypto/issues/176
|
|
|
|
+# CVE-2013-7459
|
|
%patch2 -p1
|
|
%patch2 -p1
|
|
|
|
|
|
|
|
+# log() not available in libgmp, need libm too
|
|
|
|
+%patch4
|
|
|
|
+
|
|
|
|
+# When creating ElGamal keys, the generator wasn't a square residue: ElGamal
|
|
|
|
+# encryption done with those keys cannot be secure under the DDH assumption
|
|
|
|
+# https://bugzilla.redhat.com/show_bug.cgi?id=1542313 (CVE-2018-6594)
|
|
|
|
+# https://github.com/TElgamal/attack-on-pycrypto-elgamal
|
|
|
|
+# https://github.com/Legrandin/pycryptodome/issues/90
|
|
|
|
+# https://github.com/dlitz/pycrypto/issues/253
|
|
|
|
+# Patch based on this commit from cryptodome:
|
|
|
|
+# https://github.com/Legrandin/pycryptodome/commit/99c27a3b
|
|
|
|
+# Converted to pull request for pycrypto:
|
|
|
|
+# https://github.com/dlitz/pycrypto/pull/256
|
|
|
|
+%patch5
|
|
|
|
+
|
|
# Remove spurious shellbangs
|
|
# Remove spurious shellbangs
|
|
%{__sed} -i -e '\|^#!/usr/local/bin/python| d' lib/Crypto/Util/RFC1751.py
|
|
%{__sed} -i -e '\|^#!/usr/local/bin/python| d' lib/Crypto/Util/RFC1751.py
|
|
|
|
|
|
%build
|
|
%build
|
|
-CFLAGS="$RPM_OPT_FLAGS" %{__python} setup.py build
|
|
+%global optflags %{optflags} -fno-strict-aliasing
|
|
|
|
+%py_build
|
|
|
|
+%py3_build
|
|
|
|
|
|
%install
|
|
%install
|
|
%{__rm} -rf %{buildroot}
|
|
%{__rm} -rf %{buildroot}
|
|
-%{__python} setup.py install -O1 --skip-build --root %{buildroot}
|
|
+%py_install
|
|
|
|
+%py3_install
|
|
|
|
|
|
# Remove group write permissions on shared objects
|
|
# Remove group write permissions on shared objects
|
|
-/usr/bin/find %{buildroot}%{python_sitearch} -name '*.so' \
|
|
+find %{buildroot}%{python_sitearch} -name '*.so' -exec chmod -c g-w {} \;
|
|
- -exec %{__chmod} g-w {} \;
|
|
+find %{buildroot}%{python3_sitearch} -name '*.so' -exec chmod -c g-w {} \;
|
|
|
|
+
|
|
|
|
+%check
|
|
|
|
+%{__python} setup.py test
|
|
|
|
+%{__python3} setup.py test
|
|
|
|
|
|
%clean
|
|
%clean
|
|
rm -rf $RPM_BUILD_ROOT
|
|
rm -rf $RPM_BUILD_ROOT
|
|
@@ -51,11 +102,25 @@ rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
%files
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%defattr(-,root,root,-)
|
|
-%doc README TODO ACKS ChangeLog LEGAL/ COPYRIGHT Doc/
|
|
+%license COPYRIGHT LEGAL/
|
|
-#%{python_sitearch}/pycrypto-2.2-py2.6.egg-info
|
|
+%doc README TODO ACKS ChangeLog Doc/
|
|
-%{python_sitearch}/
|
|
+%{python_sitearch}/Crypto/
|
|
|
|
+%{python_sitearch}/pycrypto-%{version}-py2.*.egg-info
|
|
|
|
+
|
|
|
|
+%files -n python3-crypto
|
|
|
|
+%defattr(-,root,root,-)
|
|
|
|
+%license COPYRIGHT LEGAL/
|
|
|
|
+%doc README TODO ACKS ChangeLog Doc/
|
|
|
|
+%{python3_sitearch}/Crypto/
|
|
|
|
+%{python3_sitearch}/pycrypto-%{version}-py3.*.egg-info
|
|
|
|
|
|
%changelog
|
|
%changelog
|
|
|
|
+* Tue May 14 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.6.1-2
|
|
|
|
+- dropped all patches.
|
|
|
|
+- import patched from rawhide.
|
|
|
|
+- added BR:libxcrypt-devel.
|
|
|
|
+- added python3 support.
|
|
|
|
+
|
|
* Sun Dec 15 2013 NAKAMURA Kenta <kenta@vinelinux.org> 2.6.1-1
|
|
* Sun Dec 15 2013 NAKAMURA Kenta <kenta@vinelinux.org> 2.6.1-1
|
|
- new upstream release
|
|
- new upstream release
|
|
- drop Patch3: doc.patch
|
|
- drop Patch3: doc.patch
|