Blob Blame History Raw
#$Id$


# I replaced the first line of this section to comply with the example in https://fedoraproject.org/wiki/Packaging:Python#Macros
# However that same page says that it is no longer necessary, so perhaps can be removed?
%if 0%{?rhel} && 0%{?rhel} <= 5
%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%endif

%if 0%{?fedora} > 12 || 0%{?rhel} > 6
%global with_python3 1
%endif


Summary:	Python bindings for OpenBSD's Blowfish password hashing code
Name:		py-bcrypt
Version:	0.4
Release:	15%{?dist}
License:	BSD with advertising
Group:		Development/Libraries
URL:		http://code.google.com/p/py-bcrypt/
Source:		http://py-bcrypt.googlecode.com/files/py-bcrypt-%{version}.tar.gz

BuildRequires:	python2-devel
%if 0%{?with_python3}
BuildRequires:	python3-devel
%endif

%global __provides_exclude_from ^(%{python2_sitearch}/.*\\.so|%{_datadir}/py-bcrypt/.*)$

%global _description\
python-bcrypt is a Python wrapper of OpenBSD's Blowfish password hashing\
code, as described in "A Future-Adaptable Password Scheme" by Niels\
Provos and David Mazières.\
\
This system hashes passwords using a version of Bruce Schneier's Blowfish\
block cipher with modifications designed to raise the cost of off-line\
password cracking and frustrate fast hardware implementation. The\
computation cost of the algorithm is parametised, so it can be increased\
as computers get faster. The intent is to make a compromise of a password\
database less likely to result in an attacker gaining knowledge of the\
plain-text passwords (e.g. using John the Ripper).

%description %_description

%package -n python2-py-bcrypt
Summary: %summary
%{?python_provide:%python_provide python2-py-bcrypt}
# Remove before F30
Provides: py-bcrypt = %{version}-%{release}
Provides: py-bcrypt%{?_isa} = %{version}-%{release}
Obsoletes: py-bcrypt < %{version}-%{release}

%description -n python2-py-bcrypt %_description

%if 0%{?with_python3}
%package -n python3-py-bcrypt
Summary:	Python 3 bindings for OpenBSD's Blowfish password hashing code
Group:		Development/Libraries

%description -n python3-py-bcrypt
python-bcrypt is a Python wrapper of OpenBSD's Blowfish password hashing
code, as described in "A Future-Adaptable Password Scheme" by Niels
Provos and David Mazières.

This system hashes passwords using a version of Bruce Schneier's Blowfish
block cipher with modifications designed to raise the cost of off-line
password cracking and frustrate fast hardware implementation. The
computation cost of the algorithm is parametised, so it can be increased
as computers get faster. The intent is to make a compromise of a password
database less likely to result in an attacker gaining knowledge of the
plaintext passwords (e.g. using John the Ripper). 

This package allows for use of py-bcrypt with Python 3.
%endif # with_python3


%prep
%setup -q -n %{name}-%{version}

%build
%{__python2} setup.py build
%if 0%{?with_python3}
%{__python3} setup.py build
%endif

%install
rm -rf %{buildroot}
%{__python2} setup.py install -O1 --skip-build --root="%{buildroot}" --prefix="%{_prefix}"
%if 0%{?with_python3}
%{__python3} setup.py install -O1 --skip-build --root="%{buildroot}" --prefix="%{_prefix}"
%endif

%files -n python2-py-bcrypt
%defattr(-,root,root,-)
%doc LICENSE README TODO
%{python2_sitearch}/py_bcrypt-%{version}-py2.*
%{python2_sitearch}/bcrypt

%if 0%{?with_python3}
%files -n python3-py-bcrypt
%defattr(-,root,root,-)
%doc LICENSE README TODO
%{python3_sitearch}/py_bcrypt-%{version}-py3.*
%{python3_sitearch}/bcrypt
%endif

%changelog
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.4-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild

* Sun Aug 20 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.4-14
- Add Provides for the old name without %%_isa

* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 0.4-13
- Python 2 binary package renamed to python2-py-bcrypt
  See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3

* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.4-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild

* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.4-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild

* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.4-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild

* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 0.4-9
- Rebuild for Python 3.6

* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-8
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages

* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.4-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-6
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5

* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild

* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild

* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

* Tue May 27 2014 Kalev Lember <kalevlember@gmail.com> - 0.4-2
- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4

* Tue Nov 19 2013 Jon Ciesla <limburgher@gmail.com> - 0.4-1
- Latest upstream, added support for Python 3 and two new functions: bcrypt.checkpw() and bcrypt.kdf()

* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild

* Tue Mar 26 2013 Jon Ciesla <limburgher@gmail.com> - 0.3-1
- Latest upstream, fixes CVE-2013-1895: concurrency issue leading to auth bypass

* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild

* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild

* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild

* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Tue Aug 17 2010 david.r@ultracar.co.uk - 0.2-4
- Altered spec file to allow building across py2.6 and py2.7

* Thu Aug 12 2010 dcr226@fedorapeople.org - 0.2-3
- Rebuilt for python 2.7

* Wed Aug 11 2010 dcr226@fedoraproject.org - 0.2-2
- packaged for Fedora

*Mon Jun 14 2010 djm@mindrot.org
- (djm) Prefer setuptools for packaging. Based on patch from Niall
   O'Higgins.
- (djm) Release py-bcrypt-0.2

*Thu Oct 01 2009 djm@mindrot.org
- (djm) Allow Python threads to run during (potentially lengthy) bcrypt
   operation. Patch from vijay AT meebo-inc.com

*Tue Aug 08 2006 djm@mindrot.org
- (djm) Add support for Win32

*Mon May 22 2006 djm@mindrot.org
- (djm) Start