--- /dev/null
+From ca45bd4a55541d58136c21b38b9b90e750fedfbc Mon Sep 17 00:00:00 2001
+From: Remi Collet <fedora@famillecollet.com>
+Date: Mon, 30 Nov 2015 18:31:42 +0100
+Subject: [PATCH] fix test
+
+---
+ tests/crypto_auth.phpt | 12 ++++--------
+ 1 file changed, 4 insertions(+), 8 deletions(-)
+
+diff --git a/tests/crypto_auth.phpt b/tests/crypto_auth.phpt
+index c72451e..76f30eb 100644
+--- a/tests/crypto_auth.phpt
++++ b/tests/crypto_auth.phpt
+@@ -18,13 +18,9 @@ var_dump(\Sodium\crypto_auth_verify($mac, $badmsg, $key));
+
+ // Let's flip a bit pseudo-randomly
+ $badmsg = $msg;
+-$badmsg[mt_rand(0, 999)] = \chr(
+- \ord($msg[0]) ^ (
+- // Mask out higher bits (thus 256 => 0)
+- 0xFF & (
+- // 1, 2, 4, 8, 16, 32, 64, 128, 256
+- 1 << mt_rand(0, 8)
+- )
++$badmsg[$i=mt_rand(0, 999)] = \chr(
++ \ord($msg[$i]) ^ (
++ 1 << mt_rand(0, 7)
+ )
+ );
+
+@@ -32,7 +28,7 @@ var_dump(\Sodium\crypto_auth_verify($mac, $badmsg, $key));
+
+ // Now let's change a bit in the MAC
+ $badmac = $mac;
+-$badmac[0] = \chr(\ord($badmsg[0]) ^ 0x80);
++$badmac[0] = \chr(\ord($badmac[0]) ^ 0x80);
+ var_dump(\Sodium\crypto_auth_verify($badmac, $msg, $key));
+ ?>
+ --EXPECT--
--- /dev/null
+%define buildver %(pkg-config --silence-errors --modversion libsodium 2>/dev/null || echo 65536)
+
+#
+# Conditional build:
+%bcond_without tests # build without tests
+
+%define php_name php%{?php_suffix}
+%define modname libsodium
+Summary: Wrapper for the Sodium cryptographic library
+Name: php-pecl-%{modname}
+Version: 1.0.2
+Release: 1
+License: BSD
+Group: Development/Languages
+Source0: http://pecl.php.net/get/%{modname}-%{version}.tgz
+# Source0-md5: b4083271f4fe0a94b8ae69320878a5e8
+URL: http://pecl.php.net/package/libsodium
+# See https://github.com/jedisct1/libsodium-php/pull/70
+Patch0: %{modname}-pr70.patch
+BuildRequires: %{php_name}-devel >= 4:5.3
+BuildRequires: libsodium-devel >= 0.6.0
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.666
+%if %{with tests}
+BuildRequires: %{php_name}-cli
+BuildRequires: %{php_name}-json
+%endif
+Requires: libsodium >= %{buildver}
+%{?requires_php_extension}
+Provides: php(libsodium) = %{version}
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+A simple, low-level PHP extension for libsodium.
+
+Documentation: https://paragonie.com/book/pecl-libsodium
+
+%prep
+%setup -qc
+mv %{modname}-%{version}/* .
+
+%patch0 -p1
+
+# Sanity check, really often broken
+extver=$(sed -n '/#define PHP_LIBSODIUM_VERSION/{s/.* "//;s/".*$//;p}' php_libsodium.h)
+if test "x${extver}" != "x%{version}"; then
+ : Error: Upstream extension version is ${extver}, expecting %{version}.
+ exit 1
+fi
+
+%build
+phpize
+%configure
+%{__make}
+
+%if %{with tests}
+: Minimal load test
+%{__php} -n \
+ -d extension_dir=modules \
+ -d extension=%{modname}.so \
+ -m > modules.log
+grep %{modname} modules.log
+
+: Upstream test suite
+export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
+%{__make} test \
+ PHP_EXECUTABLE=%{__php} \
+ PHP_TEST_SHARED_SYSTEM_EXTENSIONS="json" \
+%endif
+
+%install
+rm -rf $RPM_BUILD_ROOT
+%{__make} install \
+ EXTENSION_DIR=%{php_extensiondir} \
+ INSTALL_ROOT=$RPM_BUILD_ROOT
+
+install -d $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d
+cat <<'EOF' > $RPM_BUILD_ROOT%{php_sysconfdir}/conf.d/%{modname}.ini
+; Enable %{modname} extension module
+extension=%{modname}.so
+EOF
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post
+%php_webserver_restart
+
+%postun
+if [ "$1" = 0 ]; then
+ %php_webserver_restart
+fi
+
+%files
+%defattr(644,root,root,755)
+%doc README.md LICENSE
+%config(noreplace) %verify(not md5 mtime size) %{php_sysconfdir}/conf.d/%{modname}.ini
+%attr(755,root,root) %{php_extensiondir}/%{modname}.so