[packages/php-pecl-libsodium: 1/2] new, version 1.0.2

glen glen at pld-linux.org
Thu Jan 28 20:49:00 CET 2016


commit 9ce6e03e7c2cc8f121142146635d34fa7019fa65
Author: Elan Ruusamäe <glen at delfi.ee>
Date:   Thu Jan 28 21:47:01 2016 +0200

    new, version 1.0.2
    
    based on fedora package, c3ac812

 libsodium-pr70.patch    | 39 ++++++++++++++++++++
 php-pecl-libsodium.spec | 98 +++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 137 insertions(+)
---
diff --git a/php-pecl-libsodium.spec b/php-pecl-libsodium.spec
new file mode 100644
index 0000000..596b878
--- /dev/null
+++ b/php-pecl-libsodium.spec
@@ -0,0 +1,98 @@
+%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
diff --git a/libsodium-pr70.patch b/libsodium-pr70.patch
new file mode 100644
index 0000000..b97287f
--- /dev/null
+++ b/libsodium-pr70.patch
@@ -0,0 +1,39 @@
+From ca45bd4a55541d58136c21b38b9b90e750fedfbc Mon Sep 17 00:00:00 2001
+From: Remi Collet <fedora at 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--
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/php-pecl-libsodium.git/commitdiff/f3d673b7a61aa19af8ea2675395a03f6a13203af



More information about the pld-cvs-commit mailing list