Hello community,

here is the log from the commit of package cfengine for openSUSE:Factory 
checked in at 2012-11-30 12:20:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cfengine (Old)
 and      /work/SRC/openSUSE:Factory/.cfengine.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cfengine", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/cfengine/cfengine.changes        2012-03-08 
19:42:35.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.cfengine.new/cfengine.changes   2012-11-30 
12:20:26.000000000 +0100
@@ -1,0 +2,65 @@
+Thu Nov 29 07:48:20 UTC 2012 - [email protected]
+
+- update to 3.4.0 final
+
+-------------------------------------------------------------------
+Sun Oct 21 10:07:18 UTC 2012 - [email protected]
+
+- fix systemd check (use systemd for openSUSE 12.1 too)
+
+-------------------------------------------------------------------
+Mon Oct  8 14:31:23 UTC 2012 - [email protected]
+
+- workaround for potential buffer overflow
+
+-------------------------------------------------------------------
+Thu Oct  4 08:48:10 UTC 2012 - [email protected]
+
+- honor filesystem hierachy standard (FHS):
+  - build with --enable-fhs
+
+- honor documentation
+  - install in /var/cfengine
+
+- support systemd where applicable
+
+- update to 3.0.4b2
+  New features:
+  - XML editing capabilities. See the documentation for edit_xml
+    body. Note the new dependency: libxml2.
+  - Implement inheritance of local classes by bundles called using
+    "usebundle". By default classes are not inherited. See the
+    examples/unit_inherit.cf for an example.
+  - Moved from Nova/Enterprise:
+    - POSIX ACL support,
+    - "outputs" promise type,
+    - remote syslog support.
+  - packages_default_arch_command hook in packages promises, to
+    specify default architecture of the packages on the system.
+  - packages_version_less_command / packages_version_equal_command hooks
+    in packages promises, to specify external command for native package
+    manager versions comparison
+  - Running in Solaris zone is now detected and classes "zone" and
+    "zone_<name>" are created in this case.
+  - VirtualBox support added to guest_environment promises.
+  - guest_environment promises are supported under OS X.
+  - The "depends_on" attribute is now active, for the partal ordering
+    of promises. If a promise depends on another (referred by handle)
+    it will only be considered if the depends_on list is either kept
+    or repaired already.
+          
+  ** WARNING: When upgrading, make sure that any existing use
+     of depends_on does not make some promises being
+     unintentionally ignored.
+     This can happen if you are currently refering to non-existant or
+     never-run handles in depends_on attributes.
+  - methods return values, initial implementation  
+  - New format for cf-key -s, includes timestamp of last connection
+
+  Changed functionality:
+  - cf-execd -F switch no longer implies 'run once'. New -O/--once
+    option is added to achieve this behaviour. This makes cf-execd
+    easier to run from systemd, launchd and other supervision
+    systems.
+      
+-------------------------------------------------------------------

Old:
----
  cfengine-3.2.4.tar.gz

New:
----
  cf-execd.service
  cf-monitord.service
  cf-serverd.service
  cf3-conceptguide.pdf
  cf3-glossary.pdf
  cf3-quickstart.pdf
  cf3-solutions.pdf
  cf3-tutorial.pdf
  cfengine-3.4.0.patch
  cfengine-3.4.0.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ cfengine.spec ++++++
--- /var/tmp/diff_new_pack.oOElap/_old  2012-11-30 12:20:28.000000000 +0100
+++ /var/tmp/diff_new_pack.oOElap/_new  2012-11-30 12:20:28.000000000 +0100
@@ -19,27 +19,51 @@
 Name:           cfengine
 %define         libname   libpromises
 %define         libsoname %{libname}1
-%define         basedir   /var/lib/%{name}
-%define         workdir   %{basedir}/work
 
-Summary:        A Tool to Maintain Complicated Networks
+# Yes, its not FHS conformant but in sync with cfengine documentation
+%define         basedir   /var/%{name}
+%define         workdir   %{basedir}
+
+Summary:        CFEngine automates large-scale IT computing infrastructure
 License:        GPL-3.0
 Group:          Productivity/Networking/System
-Version:        3.2.4
+Version:        3.4.0
 Release:        0
 Url:            http://www.cfengine.org/
-Source:         %{name}-%{version}.tar.gz
+Source:         %{name}-%{version}.tar.bz2
+# fix possible buffer overflows, reported upstream, [email protected]
+Patch:          %{name}-%{version}.patch
 Source1:        http://www.cfengine.org/manuals/cf3-Reference.pdf
-Source2:        cf-monitord
-Source3:        cf-execd
-Source4:        cf-serverd
+Source2:        http://www.cfengine.org/manuals/cf3-conceptguide.pdf
+Source3:        http://www.cfengine.org/manuals/cf3-glossary.pdf
+Source4:        http://www.cfengine.org/manuals/cf3-quickstart.pdf
+Source5:        http://www.cfengine.org/manuals/cf3-solutions.pdf
+Source6:        http://www.cfengine.org/manuals/cf3-tutorial.pdf
+%if 0%{?suse_version} >= 1210
+Source7:        cf-execd.service
+Source8:        cf-monitord.service
+Source9:        cf-serverd.service
+%else
+Source7:        cf-monitord
+Source8:        cf-execd
+Source9:        cf-serverd
+%endif
 Source10:       %{name}.cron
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  bison
 BuildRequires:  db-devel
 BuildRequires:  flex
+BuildRequires:  libtokyocabinet-devel
 BuildRequires:  libtool
+BuildRequires:  libxml2-devel
+# Disable mysql for SLE_11:
+#   configure: error: MySQL client library exports symbols clashing with
+#   OpenSSL. Get the update from distribution provider, recompile MySQL
+#   library or disable MySQL connector. See
+#   http://bugs.mysql.com/bug.php?id=65055 for details.
+%if 0%{?suse_version} != 1110
 BuildRequires:  mysql-devel
+%endif
 BuildRequires:  openssl-devel
 BuildRequires:  pcre-devel
 BuildRequires:  postgresql-devel
@@ -54,11 +78,20 @@
 BuildRequires:  texlive
 %endif
 
+%if 0%{?suse_version} >= 1210
+BuildRequires:  systemd
+%{?systemd_requires}
+%endif
+
 %description
-GNU cfengine is an abstract programming language for system
-administrators of huge heterogeneous networks. With cfengine, system
-administrators have an easy and elegant way to maintain complicated
-networks.
+CFEngine automates large-scale IT computing infrastructure: ensuring
+the availability, security and compliance of mission-critical
+applications and services. Based on popular and flexible open source
+configuration management software, CFEngine configuration management
+products are highly scalable through decentralized, autonomous agents
+that can continuously monitor, self-repair, and update the IT
+infrastructure of a global multi-site enterprise - with negligible
+impact on system resources or performance.
 
 %package -n %{libsoname}
 Summary:        Shared library of cfengine
@@ -83,20 +116,20 @@
 libguess library.
 
 %package doc
-Summary:        A Tool to Maintain Complicated Networks (docs)
+Summary:        CFEngine automates large-scale IT computing infrastructure - 
documentation
 Group:          Productivity/Networking/System
 %if 0%{?rhel_version} || 0%{?centos_version}
-BuildRequires:  texinfo
 BuildRequires:  tetex
 BuildRequires:  tetex-dvips
 BuildRequires:  tetex-latex
+BuildRequires:  texinfo
 %endif
 
 %description doc
 Full documentation for cfengine
 
 %package server
-Summary:        Files needed for cfengine server
+Summary:        CFEngine automates large-scale IT computing infrastructure - 
server
 Group:          Productivity/Networking/System
 Requires:       %{name} = %{version}-%{release}
 
@@ -106,21 +139,14 @@
 
 %prep
 %setup -q
+# Buffer overflow at server.c:2362
+%patch -p1
 ##### rpmlint
 #### wrong-file-end-of-line-encoding
 #### incorrect-fsf-address
 ### http://www.fsf.org/about/contact/
 find ./examples -type f -name "*.cf" -exec perl -p -i -e 's|\r\n|\n|,s|^# 
Foundation.*|# Foundation, 51 Franklin Street, Suite 500, Boston, MA 
02110-1335, USA|' {} \;
 
-### FIXME
-# there are 3 different cfengine_stdlib.cf
-## as of 3.2.4
-# ./examples/cfengine_stdlib.cf - Rev: 95
-# ./examples/example_config/cfengine_stdlib.cf - Rev: 61
-# ./masterfiles/cfengine_stdlib.cf - Rev: 84
-%{__cp} -a ./examples/cfengine_stdlib.cf ./examples/example_config/
-%{__cp} -a ./examples/cfengine_stdlib.cf ./masterfiles/
-
 %build
 %if 0%{?suse_version}
 %{suse_update_config -f}
@@ -129,7 +155,9 @@
 CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \
 %configure \
   --disable-static \
-  --datadir=/var/lib \
+  --enable-fhs \
+  --with-libxml2 \
+  --datadir=/var \
   --docdir=%{_docdir}/%{name} \
   --with-workdir=%{workdir}
 %{__make} %{?_smp_mflags}
@@ -141,20 +169,24 @@
 [ -d %{buildroot} ] && [ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot}
 %endif
 %{__make} "DESTDIR=%{buildroot}" install
-%{__install} -d %{buildroot}/{usr/sbin,etc/init.d,%{workdir}/{bin,inputs}}
+%{__install} -d %{buildroot}/{usr/sbin,%{workdir}/{bin,inputs,reports}}
 
 # create dirs needed for better organizing dirs and files
 %{__install} -d %{buildroot}/%{basedir}/{backup,failsafe,config}
 #%{__install} -d %{buildroot}/%{basedir}/config/{development,production}
 
-# install missing AUTHORS LICENSE {S:1}
-%{__install} -m0644 AUTHORS LICENSE %{S:1} %{buildroot}/%{_docdir}/%{name}/
-
 # install cron file
 %{__install} -D -m0644 %{S:10} %{buildroot}/%{_sysconfdir}/cron.d/%{name}
 
+%if 0%{?suse_version} >= 1210
+# install systemd scripts
+%{__install} -D -m 0644 %{S:7} %{buildroot}/%_unitdir/cf-execd.service
+%{__install} -D -m 0644 %{S:8} %{buildroot}/%_unitdir/cf-monitord.service
+%{__install} -D -m 0644 %{S:9} %{buildroot}/%_unitdir/cf-serverd.service
+%else
 # install init scripts
-%{__install} -m 0755 %{S:2} %{S:3} %{S:4} %{buildroot}/etc/init.d/
+%{__install} -d %{buildroot}/etc/init.d
+%{__install} -m 0755 %{S:7} %{S:8} %{S:9} %{buildroot}/etc/init.d/
 %{__ln_s} -f ../../etc/init.d/cf-monitord 
%{buildroot}/%{_sbindir}/rccf-monitord
 %{__ln_s} -f ../../etc/init.d/cf-execd %{buildroot}/%{_sbindir}/rccf-execd
 %{__ln_s} -f ../../etc/init.d/cf-serverd %{buildroot}/%{_sbindir}/rccf-serverd
@@ -163,23 +195,72 @@
  -e "s,@workdir@,%{workdir},g"\
  -e "s,@basedir@,%{basedir},g" \
  %{buildroot}/etc/init.d/cf-* %{buildroot}/etc/cron.d/%{name}
+%endif
+
+# install docs
+%{__install} -d %{buildroot}/%{_datadir}/doc/%{name}
+%{__install} -m 0644 %{S:1} %{S:2} %{S:3} %{S:4} %{S:5} %{S:6} 
%{buildroot}/%{_datadir}/doc/%{name}
 
 # create symlinks for sbin_PROGRAMS
-for i in cf-agent cf-execd cf-key cf-know cf-monitord cf-promises cf-report 
cf-runagent cf-serverd; do
-  %{__ln_s} -f ../../../../..%{_sbindir}/${i} %{buildroot}%{workdir}/bin/${i}
+# because: cf-promises needs to be installed in /var/cfengine/work/bin for 
pre-validation of full configuration
+for i in cf-agent cf-execd cf-key cf-monitord cf-promises cf-report 
cf-runagent cf-serverd; do
+  %{__ln_s} -f ../../..%{_sbindir}/${i} %{buildroot}%{workdir}/bin/${i}
 done
 
-# mv all masterfiles/*.cf to masterfiles/*.cf.default
-pushd %{buildroot}%{basedir}/masterfiles
-for j in $(ls -1); do
-  cp -a * ../work/inputs/
-  mv ${j} ${j}.default
-done
+# Install masterfiles (as %config(noreplace) )
+%{__install} -d %{buildroot}/%{basedir}/masterfiles
+%{__install} -m 0644 masterfiles/def.cf %{buildroot}/%{basedir}/masterfiles
+%{__install} -m 0644 masterfiles/promises.cf 
%{buildroot}/%{basedir}/masterfiles
+%{__install} -m 0644 masterfiles/libraries/cfengine_stdlib.cf 
%{buildroot}/%{basedir}/masterfiles
+%{__install} -m 0644 masterfiles/failsafe/failsafe.cf 
%{buildroot}/%{basedir}/masterfiles
+
+rm -rf %{buildroot}/%{_libdir}/%{name}/libpromises.la
+
+# will appear in %docdir
+rm -rf %{buildroot}/%{_datadir}/%{name}/ChangeLog
+rm -rf %{buildroot}/%{_datadir}/%{name}/README
+
+# systemd
+%if 0%{?suse_version} >= 1210
+
+%pre
+%service_add_pre cf-execd.service cf-monitord.service
+
+%post
+%service_add_post cf-execd.service cf-monitord.service
+%if 0%{?suse_version} > 1010
+%install_info --name=%{name} --info-dir=%{_infodir} 
%{_infodir}/cf3-reference.info.gz
+%endif
+/sbin/ldconfig
+
+%preun
+%service_del_preun cf-execd.service cf-monitord.service
+
+%postun
+%service_del_postun cf-execd.service cf-monitord.service
+%if 0%{?suse_version} > 1010
+%install_info_delete --name=%{name} --info-dir=%{_infodir} 
%{_infodir}/cf3-reference.info.gz
+%endif
+/sbin/ldconfig
+
+%pre server
+%service_add_pre cf-serverd.service
 
-## FIXME: what is the purpose of theses libs ?
-## are they really needed ?
-#rm -rf %{buildroot}/%{_libdir}/libpromises.la
-#{__rm} -rf %{buildroot}/%{_libdir}/libpromises.a
+%post server
+if [ ${1:-0} -ne 1 ]; then
+  cp -a /usr/share/cfengine/CoreBase/controls /var/cfengine/inputs
+  cp -a /usr/share/cfengine/CoreBase/libraries /var/cfengine/inputs
+  cp -a /usr/share/cfengine/CoreBase/services /var/cfengine/inputs
+fi
+%service_add_post cf-serverd.service
+
+%preun server
+%service_del_preun cf-serverd.service
+
+%postun server
+%service_del_postun cf-serverd.service
+
+%else # !systemd
 
 %preun
 %if 0%{?suse_version}
@@ -234,55 +315,79 @@
   fi
 %endif
 
+%endif # !systemd
+
 %post   -n %{libsoname} -p /sbin/ldconfig
 
 %postun -n %{libsoname} -p /sbin/ldconfig
 
 %files
 %defattr(-,root,root)
-%{_docdir}/%{name}/LICENSE
-%exclude %{_docdir}/%{name}/AUTHORS
-%exclude %{_docdir}/%{name}/ChangeLog
-%exclude %{_docdir}/%{name}/README
-%exclude %{_docdir}/%{name}/example_config
-%exclude %{_docdir}/%{name}/examples
-/usr/sbin/*
-%exclude /usr/sbin/cf-serverd
-%exclude /usr/sbin/rccf-serverd
+%doc LICENSE
+%doc README
+%doc ChangeLog
+%{_sbindir}/cf-agent
+%{_sbindir}/cf-execd
+%{_sbindir}/cf-key
+%{_sbindir}/cf-monitord
+%{_sbindir}/cf-promises
+%{_sbindir}/cf-report
+%{_sbindir}/cf-runagent
+%{_sbindir}/rpmvercmp
+%if 0%{?suse_version} >= 1210
+%_unitdir/cf-execd.service
+%_unitdir/cf-monitord.service
+%else
+%exclude /etc/init.d/cf-serverd
+%config %attr(0755,root,root) /etc/init.d/*
+%{_sbindir}/rccf-execd
+%{_sbindir}/rccf-monitord
+%endif
+
 %{_mandir}/man?/*
 %dir %{basedir}
-%{basedir}
-#%dir %{workdir}
-#%{workdir}/*
+/var/%{name}
 %exclude %{basedir}/backup
 %exclude %{basedir}/config
 #%exclude %{basedir}/failsafe
+
+%dir %{_datadir}/%{name}
+%{_datadir}/%{name}/*
+
+%dir %{workdir}
+%{workdir}/*
 %exclude %{workdir}/bin/cf-serverd
+
 %config(noreplace) /etc/cron.d/%{name}
-%config %attr(0755,root,root) /etc/init.d/*
-%exclude /etc/init.d/cf-serverd
+
+%dir %{basedir}/masterfiles
+%config(noreplace) %{basedir}/masterfiles/*.cf
 
 %files -n %{libsoname}
 %defattr(-,root,root)
-%{_libdir}/%{libname}.la
-%{_libdir}/%{libname}.so.*
+%dir %{_libdir}/%{name}
+%{_libdir}/%{name}/%{libname}.so.*
 
 %files devel
 %defattr(-,root,root)
-%{_libdir}/%{libname}.so
+%{_libdir}/%{name}/%{libname}.so
 
 %files doc
 %defattr(-,root,root)
-%{_docdir}/%{name}
-%exclude %{_docdir}/%{name}/LICENSE
+%dir %{_datadir}/doc/%{name}
+%{_datadir}/doc/%{name}/*
 
 %files server
 %defattr(-,root,root)
 %{basedir}/backup
 %{basedir}/config
-/usr/sbin/cf-serverd
-/usr/sbin/rccf-serverd
+%{_sbindir}/cf-serverd
 %{workdir}/bin/cf-serverd
+%if 0%{?suse_version} >= 1210
+%_unitdir/cf-serverd.service
+%else
 /etc/init.d/cf-serverd
+%{_sbindir}/rccf-serverd
+%endif
 
 %changelog

++++++ cf-execd.service ++++++
[Unit]
Description=CFEngine Execution Daemon
After=syslog.target

[Service]
ExecStart=/usr/sbin/cf-execd

[Install]
WantedBy=multi-user.target
++++++ cf-monitord.service ++++++
[Unit]
Description=CFEngine Monitoring Daemon
After=syslog.target

[Service]
ExecStart=/usr/sbin/cf-monitord

[Install]
WantedBy=multi-user.target
++++++ cf-serverd.service ++++++
[Unit]
Description=CFEngine Server Daemon
After=syslog.target

[Service]
ExecStart=/usr/sbin/cf-serverd

[Install]
WantedBy=multi-user.target
++++++ cf3-Reference.pdf ++++++
(binary differes)

++++++ cfengine-3.4.0.patch ++++++
diff -wruN -x '*~' -x '*.o' -x '*.a' -x '*.so' -x '*.so.[0-9]' -x 
autom4te.cache -x .deps -x .libs -x Makefile -x Makefile.in 
../orig-cfengine-3.4.0/src/files_select.c ./src/files_select.c
--- ../orig-cfengine-3.4.0/src/files_select.c   2012-11-26 12:13:20.000000000 
+0100
+++ ./src/files_select.c        2012-11-29 09:15:53.859129139 +0100
@@ -285,7 +285,7 @@
 
 #ifndef MINGW                   // no uids on Windows
     char buffer[CF_SMALLBUF];
-    snprintf(buffer, CF_BUFSIZE, "%jd", (uintmax_t) lstatptr->st_uid);
+    snprintf(buffer, CF_SMALLBUF, "%jd", (uintmax_t) lstatptr->st_uid);
     PrependAlphaList(&leafattrib, buffer);
 #endif /* MINGW */
 
diff -wruN -x '*~' -x '*.o' -x '*.a' -x '*.so' -x '*.so.[0-9]' -x 
autom4te.cache -x .deps -x .libs -x Makefile -x Makefile.in 
../orig-cfengine-3.4.0/src/server.c ./src/server.c
--- ../orig-cfengine-3.4.0/src/server.c 2012-11-26 12:13:20.000000000 +0100
+++ ./src/server.c      2012-11-29 08:49:31.871817185 +0100
@@ -2367,7 +2367,7 @@
 
     if (strlen(ReadLastNode(filename)) > CF_MAXLINKSIZE)
     {
-        snprintf(sendbuffer, CF_BUFSIZE * 2, "BAD: Filename suspiciously long 
[%s]\n", filename);
+        snprintf(sendbuffer, CF_BUFSIZE, "BAD: Filename suspiciously long 
[%s]\n", filename);
         CfOut(cf_error, "", "%s", sendbuffer);
         SendTransaction(conn->sd_reply, sendbuffer, 0, CF_DONE);
         return -1;
++++++ cfengine-3.2.4.tar.gz -> cfengine-3.4.0.tar.bz2 ++++++
++++ 472359 lines of diff (skipped)

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to