Hello community,
here is the log from the commit of package couchdb for openSUSE:Factory checked in at 2014-04-05 16:46:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/couchdb (Old)
and /work/SRC/openSUSE:Factory/.couchdb.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "couchdb"
Changes:
--------
--- /work/SRC/openSUSE:Factory/couchdb/couchdb.changes 2013-04-18 14:57:47.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.couchdb.new/couchdb.changes 2014-04-05 16:46:53.000000000 +0200
@@ -1,0 +2,33 @@
+Tue Apr 1 11:25:31 UTC 2014 - nkrinner@suse.com
+
+- Bug 871111 - VUL-1: CVE-2014-2668: couchdb: remote denial of service via /_uuids
+ Apache CouchDB 1.5.0 and earlier allows remote attackers to cause a denial of
+ service (CPU and memory consumption) via the count parameter to /_uuids.
+ Fix from upstream added as bnc-871111-remote-dos-via_uuids.patch
+
+-------------------------------------------------------------------
+Thu Jan 16 19:31:48 UTC 2014 - aj@ajaissle.de
+
+- Fixed Source Url
+
+-------------------------------------------------------------------
+Fri Nov 29 01:03:18 UTC 2013 - vjt@openssl.it
+
+- In the systemd service, start couchdb using its script rather than
+ invoking erlang directly
+- Clean up specfile, remove unused /etc/sysconfig/couchdb file,
+ as the logging options are passed directly through the service file
+
+-------------------------------------------------------------------
+Wed Nov 27 14:51:52 UTC 2013 - vjt@openssl.it
+
+- Update to couchdb 1.5.0
+- Drop parameterized-modules patch, not required anymore with
+ newer erlang
+
+-------------------------------------------------------------------
+Sat Oct 26 18:26:04 UTC 2013 - p.drouand@gmail.com
+
+- Add systemd support for openSUSE >= 12.3
+
+-------------------------------------------------------------------
Old:
----
apache-couchdb-1.3.0.tar.gz
couchdb-parameterized-modules-r16b.patch
New:
----
apache-couchdb-1.5.0.tar.gz
bnc-871111-remote-dos-via_uuids.patch
couchdb.service
couchdb.tmpfiles.conf
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ couchdb.spec ++++++
--- /var/tmp/diff_new_pack.kerdQV/_old 2014-04-05 16:46:54.000000000 +0200
+++ /var/tmp/diff_new_pack.kerdQV/_new 2014-04-05 16:46:54.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package couchdb
#
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,20 +19,30 @@
#
%define couchdb_user couchdb
%define couchdb_group couchdb
-%define couchdb_home %{_localstatedir}/lib/couchdb
+%define couchdb_log %{_localstatedir}/log/%{name}
+%define couchdb_home %{_localstatedir}/lib/%{name}
+
+# This should be in RPM as %%{_runstatedir}
+%if 0%{?suse_version} >= 1230
+%define runstatedir /run/%{name}
+%else
+%define runstatedir %{_localstatedir}/run/%{name}
+%endif
Name: couchdb
-Version: 1.3.0
+Version: 1.5.0
Release: 0
Summary: A document database server, accessible via a RESTful JSON API
License: Apache-2.0
Group: Productivity/File utilities
Url: http://couchdb.apache.org/
-Source0: http://www.apache.org/dist/%{name}/releases/%{version}/apache-couchdb-%{version}.tar.gz
+Source0: http://www.apache.org/dist/%{name}/source/%{version}/apache-couchdb-%{version}.tar.gz
Source1: %{name}.init
Source2: %{name}.sysconfig
+Source3: %{name}.service
+Source4: %{name}.tmpfiles.conf
Patch0: couchdb-futon-default-view-language.patch
-Patch1: couchdb-parameterized-modules-r16b.patch
+Patch1: bnc-871111-remote-dos-via_uuids.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf-archive
BuildRequires: automake
@@ -55,7 +65,13 @@
Requires(preun):info
# Users and groups
Requires(pre): pwdutils
-PreReq: %insserv_prereq %fillup_prereq
+%if 0%{?suse_version} >= 1230
+BuildRequires: pkgconfig(systemd)
+%{?systemd_requires}
+%else
+Requires(pre): %insserv_prereq
+%endif
+Requires(pre): %fillup_prereq
%description
Apache CouchDB is a distributed, fault-tolerant and schema-free
@@ -68,7 +84,7 @@
%prep
%setup -q -n apache-couchdb-%{version}
%patch0
-%patch1
+%patch1 -p1
%build
autoreconf -fi
@@ -86,19 +102,26 @@
%install
%makeinstall
-## Install couchdb initscript
+chmod -x %{buildroot}/usr/share/couchdb/server/main{,-coffee}.js
+%if 0%{?suse_version} >= 1230
+# Service & tmpfiles config
+install -D -m 0644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}.service
+install -d -m 0755 %{buildroot}/usr/lib/tmpfiles.d/
+install -D -m 0644 %{SOURCE4} %{buildroot}/usr/lib/tmpfiles.d/%{name}.conf
+%else
+# sysvinit script
install -D -m 0755 %{SOURCE1} %{buildroot}%{_initddir}/%{name}
install -d %{buildroot}%{_sbindir}
-ln -s %{_initddir}/couchdb %{buildroot}%{_sbindir}/rccouchdb
+ln -s %{_initddir}/%{name} %{buildroot}%{_sbindir}/rc%{name}
# Sysconfig template
mkdir -p %{buildroot}%{_var}/adm/fillup-templates/
-install -p -D -m 644 %{SOURCE2} %{buildroot}%{_var}/adm/fillup-templates/sysconfig.couchdb
+install -p -D -m 644 %{SOURCE2} %{buildroot}%{_var}/adm/fillup-templates/sysconfig.%{name}
+%endif
# Create needed directories
-install -d %{buildroot}%{_localstatedir}/{log,lib}/couchdb
-install -d %{buildroot}%{_sysconfdir}/couchdb/{default.d,local.d}
+install -d %{buildroot}%{_sysconfdir}/%{name}/{default.d,local.d}
# Remove unecessary files
-rm %{buildroot}%{_sysconfdir}/rc.d/couchdb
-rm -rf %{buildroot}%{_datadir}/doc/couchdb
+rm %{buildroot}%{_sysconfdir}/rc.d/%{name}
+rm -rf %{buildroot}%{_datadir}/doc/%{name}
# clean-up .la archives
find %{buildroot} -name '*.la' -delete -print
@@ -106,45 +129,65 @@
getent group %{couchdb_group} >/dev/null || groupadd -r %{couchdb_group} || :
if getent passwd %{couchdb_user} >/dev/null ; then
# There was a bad login shell up to openSUSE 12.2 (bnc#796242), SLE11SP2 used /bin/bash. Fix it.
- usermod -s /usr/sbin/nologin %{couchdb_user} || :
+ usermod -s $(which nologin) %{couchdb_user} || :
else
- useradd -r -g %{couchdb_group} -d %{couchdb_home} -s /usr/sbin/nologin \
+ useradd -r -g %{couchdb_group} -d %{couchdb_home} -s $(which nologin) \
-c "Couchdb Database Server" %{couchdb_user} || :
fi
%post
-%{fillup_and_insserv couchdb}
-mkdir -p %{_localstatedir}/run/couchdb
+install -o %{couchdb_user} -g %{couchdb_group} -d %{runstatedir}
+
+%if 0%{?suse_version} >= 1230
+%{fillup_only}
+%service_add_post %{name}.service
+%else
+%{fillup_and_insserv %{name}}
+%endif
%install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
%postun
-%restart_on_update couchdb
+%if 0%{?suse_version} >= 1230
+%service_del_postun %{name}.service
+%else
+%restart_on_update %{name}
%insserv_cleanup
+%endif
+
%install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info.gz
%preun
-%stop_on_removal couchdb
+%if 0%{?suse_version} >= 1230
+%service_del_preun %{name}.service
+%else
+%stop_on_removal %{name}
+%endif
%files
%defattr(-,root,root,-)
-%doc AUTHORS BUGS CHANGES LICENSE NEWS NOTICE README THANKS
-%dir %{_sysconfdir}/couchdb
-%dir %{_sysconfdir}/couchdb/local.d
-%dir %{_sysconfdir}/couchdb/default.d
-%config(noreplace) %attr(0644, %{couchdb_user}, root) %{_sysconfdir}/couchdb/default.ini
-%config(noreplace) %attr(0644, %{couchdb_user}, root) %{_sysconfdir}/couchdb/local.ini
-%config(noreplace) %{_sysconfdir}/default/couchdb
-%config(noreplace) %{_sysconfdir}/logrotate.d/couchdb
-%{_initddir}/couchdb
-%{_var}/adm/fillup-templates/sysconfig.couchdb
-%{_sbindir}/rccouchdb
+%doc AUTHORS BUGS DEVELOPERS LICENSE NOTICE README.rst THANKS
+%dir %{_sysconfdir}/%{name}
+%dir %{_sysconfdir}/%{name}/local.d
+%dir %{_sysconfdir}/%{name}/default.d
+%config(noreplace) %attr(0644, %{couchdb_user}, root) %{_sysconfdir}/%{name}/default.ini
+%config(noreplace) %attr(0644, %{couchdb_user}, root) %{_sysconfdir}/%{name}/local.ini
+%config(noreplace) %{_sysconfdir}/default/%{name}
+%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
+%if 0%{?suse_version} >= 1230
+%{_unitdir}/%{name}.service
+%{_libexecdir}/tmpfiles.d/%{name}.conf
+%else
+%{_initddir}/%{name}
+%{_sbindir}/rc%{name}
+%{_var}/adm/fillup-templates/sysconfig.%{name}
+%endif
%{_bindir}/*
-%{_libdir}/couchdb
-%{_datadir}/couchdb
+%{_libdir}/%{name}
+%{_datadir}/%{name}
%{_mandir}/man1/*
%{_infodir}/CouchDB*
-%dir %attr(0755, %{couchdb_user}, root) %{_localstatedir}/log/couchdb
-%ghost %dir %attr(0755, %{couchdb_user}, root) %{_localstatedir}/run/couchdb
-%dir %attr(0755, %{couchdb_user}, root) %{_localstatedir}/lib/couchdb
+%dir %attr(0755, %{couchdb_user}, %{couchdb_group}) %{couchdb_log}
+%dir %attr(0755, %{couchdb_user}, %{couchdb_group}) %{couchdb_home}
+%ghost %dir %attr(0755, %{couchdb_user}, root) %{runstatedir}
%changelog
++++++ apache-couchdb-1.3.0.tar.gz -> apache-couchdb-1.5.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/couchdb/apache-couchdb-1.3.0.tar.gz /work/SRC/openSUSE:Factory/.couchdb.new/apache-couchdb-1.5.0.tar.gz differ: char 5, line 1
++++++ bnc-871111-remote-dos-via_uuids.patch ++++++
From: Robert Newson