Hello community,

here is the log from the commit of package cronie for openSUSE:Factory checked 
in at 2014-09-24 13:09:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/cronie (Old)
 and      /work/SRC/openSUSE:Factory/.cronie.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "cronie"

Changes:
--------
--- /work/SRC/openSUSE:Factory/cronie/cronie.changes    2014-09-12 
11:19:12.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.cronie.new/cronie.changes       2014-09-24 
13:09:06.000000000 +0200
@@ -1,0 +2,8 @@
+Mon Sep 22 09:39:02 UTC 2014 - kstreit...@suse.com
+
+ - fixes bnc#833240: the first occurance of "/etc/anacrontab"
+replaced with "/etc/crontab" in the manpage file
+ - version updated to 1.4.12
+   * various small bugfixes
+
+-------------------------------------------------------------------

Old:
----
  cronie-1.4.11.tar.gz

New:
----
  cronie-1.4.12.tar.gz
  fix-manpage-replace-anacrontab-with-crontab.patch

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

Other differences:
------------------
++++++ cronie.spec ++++++
--- /var/tmp/diff_new_pack.TyHtCc/_old  2014-09-24 13:09:07.000000000 +0200
+++ /var/tmp/diff_new_pack.TyHtCc/_new  2014-09-24 13:09:07.000000000 +0200
@@ -19,7 +19,7 @@
 # 3 : we don't need to do something with /etc/sysconfig/cron for now
 %define cron_configs 
\{%{_sysconfdir}/pam.d/crond,%{_sysconfdir}/crontab,%{_sysconfdir}/cron.deny,%{_sysconfdir}/omc/srvinfo.d/cron.xml\}
 Name:           cronie
-Version:        1.4.11
+Version:        1.4.12
 Release:        0
 Summary:        Cron Daemon
 License:        BSD-3-Clause and GPL-2.0 and MIT
@@ -48,6 +48,9 @@
 Patch8:         cronie-anacron-1.4.7-run-crons.patch
 Patch10:        cronie-nofork-nopid.patch
 Patch12:        cronie-piddir.patch
+# PATCH-FIX-SUSE the first occurance of "/etc/anacrontab" was replaced by 
"/etc/crontab"
+# in manpage file because the /etc/crontab is still used in SUSE. 
+Patch13:        fix-manpage-replace-anacrontab-with-crontab.patch
 BuildRequires:  audit-devel
 BuildRequires:  libselinux-devel
 BuildRequires:  pam-devel
@@ -104,6 +107,7 @@
 cp %{SOURCE7} ./cron_to_cronie.README
 %patch10
 %patch12 -p1
+%patch13 -p1
 
 %build
 # fill macro CRON_VERSION it is used in top three lines of crontab file,should 
be reworked


++++++ cronie-1.4.11.tar.gz -> cronie-1.4.12.tar.gz ++++++
++++ 4848 lines of diff (skipped)
++++    retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/COPYING new/cronie-1.4.12/COPYING
--- old/cronie-1.4.11/COPYING   2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/COPYING   2014-09-17 14:13:44.000000000 +0200
@@ -76,3 +76,342 @@
  *
  *     @(#)bitstring.h 8.1 (Berkeley) 7/19/93
  */
+                    GNU GENERAL PUBLIC LICENSE
+                       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+                            Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+                    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+                            NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+                     END OF TERMS AND CONDITIONS
+
+            How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License along
+    with this program; if not, write to the Free Software Foundation, Inc.,
+    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/ChangeLog new/cronie-1.4.12/ChangeLog
--- old/cronie-1.4.11/ChangeLog 2013-07-18 15:23:19.000000000 +0200
+++ new/cronie-1.4.12/ChangeLog 2014-09-17 15:00:12.000000000 +0200
@@ -1,3 +1,114 @@
+2014-09-17  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * contrib/cronie.systemd: Services must be running before starting
+       crond, otherwise many jobs is not running properly for no obvious
+       reason.  nss-user-lookup.target should help when people are 
authenticated
+       through nss/sssd.  Based on: 
https://bugzilla.redhat.com/show_bug.cgi?id=1067236
+
+2014-07-30  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * src/cron.c: More logging when getpwnam fails.  Based on: rhbz#1123984 
Signed-off-by: Marcela Mašláňová <mmasl...@redhat.com>
+
+2014-07-25  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * configure.ac, src/env.c: BSD doesn't define environ in unistd.h.
+       Also cronie didn't have option for enabling BSD specifics.  Based on: 
na...@gentoo.org Signed-off-by: Marcela Mašláňová <mmasl...@redhat.com>
+
+2014-07-25  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * anacron/readtab.c: Add missing brackets into anacron readtab.  
Signed-off-by: Marcela Mašláňová <mmasl...@redhat.com>
+
+2014-07-25  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * src/misc.c: Include missing header for signal handlers.  
Signed-off-by: Marcela Mašláňová <mmasl...@redhat.com>
+
+2014-07-04  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * contrib/cronie.systemd: Missing reload definition in unit file was
+       added.  Signed-off-by: Marcela Mašláňová <mmasl...@redhat.com>
+
+2014-04-30  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * : commit b2c8cbcef8c97b5a175d6e71995249b288707b0f Author: Tomas
+       Mraz <tm...@fedoraproject.org> Date:   Tue Apr 29 14:08:25 2014
+       +0200
+
+2014-03-31  Martin Poole <mpo...@redhat.com>
+
+       * src/misc.c: crond installs a signal hander for SIGINT & SIGTERM
+       which removes the pid file and exits. This handler is not reset for
+       individual forked sub-processes which results in the condition that
+       if the child receives SIGINT or SIGTERM the pid file is erroneously
+       removed.  Signed-off-by: Marcela Mašláňová <mmasl...@redhat.com>
+
+2014-02-14  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * anacron/readtab.c: Anacron does not correctly check configuration
+       parameters for validity and can segfault on certain data types. The 
return code
+       from the match_rx calls in readtab.c are not being checked
+       correctly. Bugfix let to segfaults in downstreams on non intel
+       architectures. All options in anacrontab should be now working
+       correctly.  Based on patch from: Martin Poole
+
+2014-01-20  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * contrib/cronie.systemd: Remove syslog.target according to Fedora
+       and systemd guidelines.  
https://fedorahosted.org/fpc/ticket/177#comment:2 Thanks to: Ville Skyttä
+
+2014-01-17  Ville Skyttä <ville.sky...@iki.fi>
+
+       * man/anacron.8: [PATCH] Fix anacron.8 UTF-8 encoding.  Signed-off-by: 
Marcela Mašláňová <mmasl...@redhat.com>
+
+2013-12-18  Ville Skyta <ville.sky...@iki.fi>
+
+       * anacron/lock.c, anacron/readtab.c, man/crontab.5, src/cron.c,
+       src/database.c: Spelling fixes.  Signed-off-by: Marcela Mašláňová 
<mmasl...@redhat.com>
+
+2013-12-18  Ville Skytta <ville.sky...@iki.fi>
+
+       * anacron/readtab.c, src/do_command.c: strncmp() size fixes.  
Signed-off-by: Marcela Mašláňová <mmasl...@redhat.com>
+
+2013-12-18  Martin Poole <mpo...@redhat.com>
+
+       * anacron/readtab.c: Anacron does not correctly check configuration
+       parameters for validity and can segfault on certain data types. The
+       return code from the match_rx calls in readtab.c are not being
+       checked correctly.  Signed-off-by: Marcela Mašláňová 
<mmasl...@redhat.com>
+
+2013-09-26  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * man/cron.8: crond -n must change pam setting.
+
+2013-09-12  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * cronie.init: Non-root user can't read configuration. Init file
+       will fail with proper error message.  rhbz#1006869
+
+2013-08-29  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * : commit 2ec335f9549e8134102ac37665171a40a5407512 Author: Saul
+       Wold <s...@linux.intel.com> Date:   Mon Aug 26 11:18:27 2013 +0200
+
+2013-08-16  Tomas Mraz <tm...@fedoraproject.org>
+
+       * src/security.c: Pull PAM environment variables also from session
+       modules.  - also fix memory leak of environment returned by 
pam_getenvlist()
+
+2013-08-13  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * contrib/cronie.systemd: KillMode in systemd unit file will enable
+       to finish jobs executed by cron. Even if cron dies, jobs should
+       continue.  Based on: https://bugzilla.redhat.com/show_bug.cgi?id=919290
+
+2013-08-09  Tomas Mraz <tm...@fedoraproject.org>
+
+       * src/misc.c: Fcntl locking has different semantics than flock.
+       Prefer flock.
+
+2013-07-18  Marcela Mašláňová <mmasl...@redhat.com>
+
+       * ChangeLog, configure.ac: Release 1.4.11
+
 2013-06-11  Tomas Mraz <tm...@fedoraproject.org>
 
        * src/user.c: Log failures in load_user().
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/anacron/Makefile.am new/cronie-1.4.12/anacron/Makefile.am
--- old/cronie-1.4.11/anacron/Makefile.am       2013-07-18 14:27:08.000000000 
+0200
+++ new/cronie-1.4.12/anacron/Makefile.am       2014-03-31 18:01:14.000000000 
+0200
@@ -9,6 +9,7 @@
 nodist_anacron_SOURCES = $(common_nodist)
 BUILT_SOURCES = $(common_nodist)
 
+AM_CFLAGS = -I$(top_srcdir)
 
 LDADD = $(LIBSELINUX) $(LIBPAM) $(LIBAUDIT)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/anacron/lock.c new/cronie-1.4.12/anacron/lock.c
--- old/cronie-1.4.11/anacron/lock.c    2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/anacron/lock.c    2014-03-31 18:01:14.000000000 +0200
@@ -129,7 +129,7 @@
                    period = days_last_month ();
                    bypass = days_this_month ();
                    break;
-               case 2: /* yearly, annualy */
+               case 2: /* yearly, annually */
                    period = days_last_year ();
                    bypass = days_this_year ();
                    break;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/anacron/readtab.c new/cronie-1.4.12/anacron/readtab.c
--- old/cronie-1.4.11/anacron/readtab.c 2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/anacron/readtab.c 2014-07-29 13:17:25.000000000 +0200
@@ -110,7 +110,7 @@
 
 static int
 job_arg_num(const char *ident)
-/* Return the command-line-argument number refering to this job-identifier.
+/* Return the command-line-argument number referring to this job-identifier.
  * If it isn't specified, return -1.
  */
 {
@@ -208,11 +208,11 @@
     }
 
     jr = obstack_alloc(&tab_o, sizeof(job_rec));
-    if (!strncmp ("@monthly", periods, 7)) {
+    if (!strncmp ("@monthly", periods, 8)) {
                jr->named_period = 1;
-    } else if (!strncmp("@yearly", periods, 7) || !strncmp("@annualy", 
periods, 8)) {
+    } else if (!strncmp("@yearly", periods, 7) || !strncmp("@annually", 
periods, 9) || !strncmp(/* backwards compat misspelling */"@annualy", periods, 
8)) {
                jr->named_period = 2;
-       } else if (!strncmp ("@daily", periods, 7)) {
+       } else if (!strncmp ("@daily", periods, 6)) {
                jr->named_period = 3;
        } else if (!strncmp ("@weekly", periods, 7)) {
                jr->named_period = 4;
@@ -271,7 +271,8 @@
         if (strncmp(env_var, "START_HOURS_RANGE", 17) == 0)
         {
             r = match_rx("^([[:digit:]]+)-([[:digit:]]+)$", value, 2, &from, 
&to);
-            if ((r == -1) || (from == NULL) || (to == NULL)) goto reg_invalid;
+            if (r == -1) goto reg_err;
+            if (r == 0) goto reg_invalid;
             range_start = atoi(from);
             range_stop = atoi(to);
             if (range_stop < range_start) {
@@ -282,6 +283,8 @@
         }
         if (strncmp(env_var, "RANDOM_DELAY", 12) == 0) {
             r = match_rx("^([[:digit:]]+)$", value, 0);
+            if (r == -1) goto reg_err;
+            if (r == 0) goto reg_invalid;
             if (r != -1) {
                 int i = random();
                 double x = 0;
@@ -289,7 +292,6 @@
                 random_number = (int)x;
                 Debug(("Randomized delay set: %d", random_number));
             }
-        else goto reg_invalid;
         }
         if (strncmp(env_var, "PREFERRED_HOUR", 14) == 0) {
             r = match_rx("^([[:digit:]]+)$", value, 1, &pref_hour);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/configure.ac new/cronie-1.4.12/configure.ac
--- old/cronie-1.4.11/configure.ac      2013-07-18 15:20:46.000000000 +0200
+++ new/cronie-1.4.12/configure.ac      2014-09-17 14:15:04.000000000 +0200
@@ -1,4 +1,4 @@
-AC_INIT([cronie],[1.4.11],[mmasl...@redhat.com,tm...@redhat.com])
+AC_INIT([cronie],[1.4.12],[mmasl...@redhat.com,tm...@redhat.com])
 AC_CONFIG_HEADER([config.h])
 AC_PREREQ(2.60)
 
@@ -136,6 +136,8 @@
     LDFLAGS="$LDFLAGS -Wl,-z,relro -Wl,-z,now"
 fi
 
+AC_ARG_ENABLE(bsd, BSD_STRING(--enable-bsd,Build cronie with BSD specific 
parts))
+
 # Check whether user wants SELinux support
 SELINUX_MSG="no"
 LIBSELINUX=""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/contrib/cronie.systemd 
new/cronie-1.4.12/contrib/cronie.systemd
--- old/cronie-1.4.11/contrib/cronie.systemd    2013-07-18 14:27:08.000000000 
+0200
+++ new/cronie-1.4.12/contrib/cronie.systemd    2014-09-17 13:45:35.000000000 
+0200
@@ -1,10 +1,12 @@
 [Unit]
 Description=Command Scheduler
-After=syslog.target auditd.service systemd-user-sessions.service 
time-sync.target
+After=auditd.service nss-user-lookup.target systemd-user-sessions.service 
time-sync.target ypbind.service
 
 [Service]
 EnvironmentFile=/etc/sysconfig/crond
 ExecStart=/usr/sbin/crond -n $CRONDARGS
+ExecReload=/bin/kill -HUP $MAINPID
+KillMode=process
 
 [Install]
 WantedBy=multi-user.target
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/cronie.init new/cronie-1.4.12/cronie.init
--- old/cronie-1.4.11/cronie.init       2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/cronie.init       2014-03-31 18:01:14.000000000 +0200
@@ -34,7 +34,7 @@
 # Source function library.
 . /etc/rc.d/init.d/functions
 
-[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
+[ $UID -eq 0 ] && [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
 
 start() {
     if [ $(id -ru) -ne 0 ] ; then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/man/anacron.8 new/cronie-1.4.12/man/anacron.8
--- old/cronie-1.4.11/man/anacron.8     2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/man/anacron.8     2014-03-31 18:01:14.000000000 +0200
@@ -213,5 +213,5 @@
 .PP
 For Fedora, Anacron is maintained by
 .MT mmaslano@redhat.\:com
-Marcela Mašláňov�
+Marcela Mašláňová
 .ME .
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/man/cron.8 new/cronie-1.4.12/man/cron.8
--- old/cronie-1.4.11/man/cron.8        2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/man/cron.8        2014-03-31 18:01:14.000000000 +0200
@@ -22,7 +22,7 @@
 .\"
 .\" $Id: cron.8,v 1.8 2004/01/23 19:03:32 vixie Exp $
 .\"
-.TH CRON "8" "2013-01-02" "cronie" "System Administration"
+.TH CRON "8" "2013-09-26" "cronie" "System Administration"
 .SH NAME
 crond \- daemon to execute scheduled commands
 .SH SYNOPSIS
@@ -160,7 +160,11 @@
 .TP
 .B "\-n"
 Tells the daemon to run in the foreground.  This can be useful when
-starting it out of init.
+starting it out of init. With this option is needed to change pam setting.
+.I /etc/pam.d/crond
+must not enable
+.I pam_loginuid.so
+module.
 .TP
 .B "\-p"
 Allows
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/man/crontab.5 new/cronie-1.4.12/man/crontab.5
--- old/cronie-1.4.11/man/crontab.5     2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/man/crontab.5     2014-03-31 18:01:14.000000000 +0200
@@ -253,7 +253,7 @@
 and
 .I /etc/crontab
 are system jobs, which are used usually for more than one user, thus,
-additionaly the username is needed.  MAILTO on the first line is
+additionally the username is needed.  MAILTO on the first line is
 optional.
 .SH EXAMPLE OF A JOB IN /etc/cron.d/job
 .nf
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/missing new/cronie-1.4.12/missing
--- old/cronie-1.4.11/missing   2012-09-26 16:03:18.000000000 +0200
+++ new/cronie-1.4.12/missing   2014-09-10 13:53:59.000000000 +0200
@@ -1,10 +1,10 @@
 #! /bin/sh
-# Common stub for a few missing GNU programs while installing.
+# Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2012-01-06.18; # UTC
+scriptversion=2012-06-26.16; # UTC
 
-# Copyright (C) 1996-2012 Free Software Foundation, Inc.
-# Originally by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
+# Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -29,61 +29,33 @@
   exit 1
 fi
 
-run=:
-sed_output='s/.* --output[ =]\([^ ]*\).*/\1/p'
-sed_minuso='s/.* -o \([^ ]*\).*/\1/p'
-
-# In the cases where this matters, 'missing' is being run in the
-# srcdir already.
-if test -f configure.ac; then
-  configure_ac=configure.ac
-else
-  configure_ac=configure.in
-fi
+case $1 in
 
-msg="missing on your system"
+  --is-lightweight)
+    # Used by our autoconf macros to check whether the available missing
+    # script is modern enough.
+    exit 0
+    ;;
 
-case $1 in
---run)
-  # Try to run requested program, and just exit if it succeeds.
-  run=
-  shift
-  "$@" && exit 0
-  # Exit code 63 means version mismatch.  This often happens
-  # when the user try to use an ancient version of a tool on
-  # a file that requires a minimum version.  In this case we
-  # we should proceed has if the program had been absent, or
-  # if --run hadn't been passed.
-  if test $? = 63; then
-    run=:
-    msg="probably too old"
-  fi
-  ;;
+  --run)
+    # Back-compat with the calling convention used by older automake.
+    shift
+    ;;
 
   -h|--h|--he|--hel|--help)
     echo "\
 $0 [OPTION]... PROGRAM [ARGUMENT]...
 
-Handle 'PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
-error status if there is no known handling for PROGRAM.
+Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
+to PROGRAM being missing or too old.
 
 Options:
   -h, --help      display this help and exit
   -v, --version   output version information and exit
-  --run           try to run the given command, and emulate it if it fails
 
 Supported PROGRAM values:
-  aclocal      touch file 'aclocal.m4'
-  autoconf     touch file 'configure'
-  autoheader   touch file 'config.h.in'
-  autom4te     touch the output file, or create a stub one
-  automake     touch all 'Makefile.in' files
-  bison        create 'y.tab.[ch]', if possible, from existing .[ch]
-  flex         create 'lex.yy.c', if possible, from existing .c
-  help2man     touch the output file
-  lex          create 'lex.yy.c', if possible, from existing .c
-  makeinfo     touch the output file
-  yacc         create 'y.tab.[ch]', if possible, from existing .[ch]
+  aclocal   autoconf  autoheader   autom4te  automake  makeinfo
+  bison     yacc      flex         lex       help2man
 
 Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
 'g' are ignored when checking the name.
@@ -98,228 +70,141 @@
     ;;
 
   -*)
-    echo 1>&2 "$0: Unknown '$1' option"
+    echo 1>&2 "$0: unknown '$1' option"
     echo 1>&2 "Try '$0 --help' for more information"
     exit 1
     ;;
 
 esac
 
-# normalize program name to check for.
-program=`echo "$1" | sed '
-  s/^gnu-//; t
-  s/^gnu//; t
-  s/^g//; t'`
-
-# Now exit if we have it, but it failed.  Also exit now if we
-# don't have it and --version was passed (most likely to detect
-# the program).  This is about non-GNU programs, so use $1 not
-# $program.
-case $1 in
-  lex*|yacc*)
-    # Not GNU programs, they don't have --version.
-    ;;
+# Run the given program, remember its exit status.
+"$@"; st=$?
 
-  *)
-    if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
-       # We have it, but it failed.
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       # Could not run --version or --help.  This is probably someone
-       # running '$TOOL --version' or '$TOOL --help' to check whether
-       # $TOOL exists and not knowing $TOOL uses missing.
-       exit 1
-    fi
-    ;;
-esac
-
-# If it does not exist, or fails to run (possibly an outdated version),
-# try to emulate it.
-case $program in
-  aclocal*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified 'acinclude.m4' or '${configure_ac}'.  You might want
-         to install the Automake and Perl packages.  Grab them from
-         any GNU archive site."
-    touch aclocal.m4
-    ;;
-
-  autoconf*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified '${configure_ac}'.  You might want to install the
-         Autoconf and GNU m4 packages.  Grab them from any GNU
-         archive site."
-    touch configure
-    ;;
-
-  autoheader*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified 'acconfig.h' or '${configure_ac}'.  You might want
-         to install the Autoconf and GNU m4 packages.  Grab them
-         from any GNU archive site."
-    files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' 
${configure_ac}`
-    test -z "$files" && files="config.h"
-    touch_files=
-    for f in $files; do
-      case $f in
-      *:*) touch_files="$touch_files "`echo "$f" |
-                                      sed -e 's/^[^:]*://' -e 's/:.*//'`;;
-      *) touch_files="$touch_files $f.in";;
-      esac
-    done
-    touch $touch_files
-    ;;
+# If it succeeded, we are done.
+test $st -eq 0 && exit 0
 
-  automake*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified 'Makefile.am', 'acinclude.m4' or '${configure_ac}'.
-         You might want to install the Automake and Perl packages.
-         Grab them from any GNU archive site."
-    find . -type f -name Makefile.am -print |
-          sed 's/\.am$/.in/' |
-          while read f; do touch "$f"; done
-    ;;
-
-  autom4te*)
-    echo 1>&2 "\
-WARNING: '$1' is needed, but is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.
-         You can get '$1' as part of Autoconf from any GNU
-         archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo "#! /bin/sh"
-       echo "# Created by GNU Automake missing as a replacement of"
-       echo "#  $ $@"
-       echo "exit 0"
-       chmod +x $file
-       exit 1
-    fi
-    ;;
-
-  bison*|yacc*)
-    echo 1>&2 "\
-WARNING: '$1' $msg.  You should only need it if
-         you modified a '.y' file.  You may need the Bison package
-         in order for those modifications to take effect.  You can get
-         Bison from any GNU archive site."
-    rm -f y.tab.c y.tab.h
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-       case $LASTARG in
-       *.y)
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.c
-           fi
-           SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" y.tab.h
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f y.tab.h; then
-       echo >y.tab.h
-    fi
-    if test ! -f y.tab.c; then
-       echo 'main() { return 0; }' >y.tab.c
-    fi
-    ;;
-
-  lex*|flex*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified a '.l' file.  You may need the Flex package
-         in order for those modifications to take effect.  You can get
-         Flex from any GNU archive site."
-    rm -f lex.yy.c
-    if test $# -ne 1; then
-        eval LASTARG=\${$#}
-       case $LASTARG in
-       *.l)
-           SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
-           if test -f "$SRCFILE"; then
-                cp "$SRCFILE" lex.yy.c
-           fi
-         ;;
-       esac
-    fi
-    if test ! -f lex.yy.c; then
-       echo 'main() { return 0; }' >lex.yy.c
-    fi
-    ;;
-
-  help2man*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-        you modified a dependency of a manual page.  You may need the
-        Help2man package in order for those modifications to take
-        effect.  You can get Help2man from any GNU archive site."
-
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -f "$file"; then
-       touch $file
-    else
-       test -z "$file" || exec >$file
-       echo ".ab help2man is required to generate this page"
-       exit $?
-    fi
-    ;;
-
-  makeinfo*)
-    echo 1>&2 "\
-WARNING: '$1' is $msg.  You should only need it if
-         you modified a '.texi' or '.texinfo' file, or any other file
-         indirectly affecting the aspect of the manual.  The spurious
-         call might also be the consequence of using a buggy 'make' (AIX,
-         DU, IRIX).  You might want to install the Texinfo package or
-         the GNU make package.  Grab either from any GNU archive site."
-    # The file to touch is that specified with -o ...
-    file=`echo "$*" | sed -n "$sed_output"`
-    test -z "$file" && file=`echo "$*" | sed -n "$sed_minuso"`
-    if test -z "$file"; then
-      # ... or it is the one specified with @setfilename ...
-      infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
-      file=`sed -n '
-       /^@setfilename/{
-         s/.* \([^ ]*\) *$/\1/
-         p
-         q
-       }' $infile`
-      # ... or it is derived from the source name (dir/f.texi becomes f.info)
-      test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
-    fi
-    # If the file does not exist, the user really needs makeinfo;
-    # let's fail without touching anything.
-    test -f $file || exit 1
-    touch $file
-    ;;
-
-  *)
-    echo 1>&2 "\
-WARNING: '$1' is needed, and is $msg.
-         You might have modified some files without having the
-         proper tools for further handling them.  Check the 'README' file,
-         it often tells you about the needed prerequisites for installing
-         this package.  You may also peek at any GNU archive site, in case
-         some other package would contain this missing '$1' program."
-    exit 1
-    ;;
-esac
+# Also exit now if we it failed (or wasn't found), and '--version' was
+# passed; such an option is passed most likely to detect whether the
+# program is present and works.
+case $2 in --version|--help) exit $st;; esac
+
+# Exit code 63 means version mismatch.  This often happens when the user
+# tries to use an ancient version of a tool on a file that requires a
+# minimum version.
+if test $st -eq 63; then
+  msg="probably too old"
+elif test $st -eq 127; then
+  # Program was missing.
+  msg="missing on your system"
+else
+  # Program was found and executed, but failed.  Give up.
+  exit $st
+fi
 
-exit 0
+perl_URL=http://www.perl.org/
+flex_URL=http://flex.sourceforge.net/
+gnu_software_URL=http://www.gnu.org/software
+
+program_details ()
+{
+  case $1 in
+    aclocal|automake)
+      echo "The '$1' program is part of the GNU Automake package:"
+      echo "<$gnu_software_URL/automake>"
+      echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/autoconf>"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+    autoconf|autom4te|autoheader)
+      echo "The '$1' program is part of the GNU Autoconf package:"
+      echo "<$gnu_software_URL/autoconf/>"
+      echo "It also requires GNU m4 and Perl in order to run:"
+      echo "<$gnu_software_URL/m4/>"
+      echo "<$perl_URL>"
+      ;;
+  esac
+}
+
+give_advice ()
+{
+  # Normalize program name to check for.
+  normalized_program=`echo "$1" | sed '
+    s/^gnu-//; t
+    s/^gnu//; t
+    s/^g//; t'`
+
+  printf '%s\n' "'$1' is $msg."
+
+  configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
+  case $normalized_program in
+    autoconf*)
+      echo "You should only need it if you modified 'configure.ac',"
+      echo "or m4 files included by it."
+      program_details 'autoconf'
+      ;;
+    autoheader*)
+      echo "You should only need it if you modified 'acconfig.h' or"
+      echo "$configure_deps."
+      program_details 'autoheader'
+      ;;
+    automake*)
+      echo "You should only need it if you modified 'Makefile.am' or"
+      echo "$configure_deps."
+      program_details 'automake'
+      ;;
+    aclocal*)
+      echo "You should only need it if you modified 'acinclude.m4' or"
+      echo "$configure_deps."
+      program_details 'aclocal'
+      ;;
+   autom4te*)
+      echo "You might have modified some maintainer files that require"
+      echo "the 'automa4te' program to be rebuilt."
+      program_details 'autom4te'
+      ;;
+    bison*|yacc*)
+      echo "You should only need it if you modified a '.y' file."
+      echo "You may want to install the GNU Bison package:"
+      echo "<$gnu_software_URL/bison/>"
+      ;;
+    lex*|flex*)
+      echo "You should only need it if you modified a '.l' file."
+      echo "You may want to install the Fast Lexical Analyzer package:"
+      echo "<$flex_URL>"
+      ;;
+    help2man*)
+      echo "You should only need it if you modified a dependency" \
+           "of a man page."
+      echo "You may want to install the GNU Help2man package:"
+      echo "<$gnu_software_URL/help2man/>"
+    ;;
+    makeinfo*)
+      echo "You should only need it if you modified a '.texi' file, or"
+      echo "any other file indirectly affecting the aspect of the manual."
+      echo "You might want to install the Texinfo package:"
+      echo "<$gnu_software_URL/texinfo/>"
+      echo "The spurious makeinfo call might also be the consequence of"
+      echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
+      echo "want to install GNU make:"
+      echo "<$gnu_software_URL/make/>"
+      ;;
+    *)
+      echo "You might have modified some files without having the proper"
+      echo "tools for further handling them.  Check the 'README' file, it"
+      echo "often tells you about the needed prerequisites for installing"
+      echo "this package.  You may also peek at any GNU archive site, in"
+      echo "case some other package contains this missing '$1' program."
+      ;;
+  esac
+}
+
+give_advice "$1" | sed -e '1s/^/WARNING: /' \
+                       -e '2,$s/^/         /' >&2
+
+# Propagate the correct exit status (expected to be 127 for a program
+# not found, 63 for a program that failed due to version mismatch).
+exit $st
 
 # Local variables:
 # eval: (add-hook 'write-file-hooks 'time-stamp)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/Makefile.am new/cronie-1.4.12/src/Makefile.am
--- old/cronie-1.4.11/src/Makefile.am   2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/Makefile.am   2014-03-31 18:01:14.000000000 +0200
@@ -15,6 +15,7 @@
 nodist_crontab_SOURCES = $(common_nodist)
 BUILT_SOURCES = $(common_nodist)
 
+AM_CFLAGS = -I$(top_srcdir)
 
 LDADD = $(LIBSELINUX) $(LIBPAM) $(LIBAUDIT)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/cron.c new/cronie-1.4.12/src/cron.c
--- old/cronie-1.4.11/src/cron.c        2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/cron.c        2014-07-30 10:17:04.000000000 +0200
@@ -182,7 +182,7 @@
        fprintf(stderr, "Options:\n");
        fprintf(stderr, " -h         print this message \n");
        fprintf(stderr, " -i         deamon runs without inotify support\n");
-       fprintf(stderr, " -m <comm>  off, or specify prefered client for 
sending mails\n");
+       fprintf(stderr, " -m <comm>  off, or specify preferred client for 
sending mails\n");
        fprintf(stderr, " -n         run in foreground\n");
        fprintf(stderr, " -p         permit any crontab\n");
        fprintf(stderr, " -P         use PATH=\"%s\"\n", _PATH_DEFPATH);
@@ -593,6 +593,10 @@
                                                job_add(e, u);  /*will add job, 
if it isn't in queue already for NOW. */
                                }
                        }
+                       else {
+                               log_it(uname, getpid(), "ERROR", "getpwnam() 
failed",errno);
+                               Debug(DSCH | DEXT, ("%s:%d pid=%d time=%ld 
getpwnam(%s) failed errno=%d 
error=%s\n",__FILE__,__LINE__,getpid(),time(NULL),uname,errno,strerror(errno)));
+                       }
                }
        }
        if (orig_tz != NULL)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/database.c new/cronie-1.4.12/src/database.c
--- old/cronie-1.4.11/src/database.c    2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/database.c    2014-03-31 18:01:14.000000000 +0200
@@ -327,7 +327,7 @@
 
                if (retval <= 0) {
                        log_it("CRON", pid, "INOTIFY", "read failed", errno);
-                       /* something fatal must have occured we have no other 
reasonable
+                       /* something fatal must have occurred we have no other 
reasonable
                         * way how to handle this failure than exit.
                         */
                        (void) exit(ERROR_EXIT);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/do_command.c new/cronie-1.4.12/src/do_command.c
--- old/cronie-1.4.11/src/do_command.c  2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/do_command.c  2014-04-30 14:30:53.000000000 +0200
@@ -238,6 +238,12 @@
                 */
                {
                        char *shell = env_get("SHELL", jobenv);
+                       int fd, fdmax = getdtablesize();
+
+                       /* close all unwanted open file descriptors */
+                       for(fd = STDERR + 1; fd < fdmax; fd++) {
+                               close(fd);
+                       }
 
 #if DEBUGGING
                        if (DebugFlags & DTEST) {
@@ -410,7 +416,7 @@
 
                        /* Also skip it if MailCmd is set to "off" */
                        if (mailto && safe_p(usernm, mailto)
-                               && strncmp(MailCmd,"off",4) && !SyslogOutput) {
+                               && strncmp(MailCmd,"off",3) && !SyslogOutput) {
                                char **env;
                                char mailcmd[MAX_COMMAND];
                                char hostname[MAXHOSTNAMELEN];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/env.c new/cronie-1.4.12/src/env.c
--- old/cronie-1.4.11/src/env.c 2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/env.c 2014-07-29 13:17:25.000000000 +0200
@@ -30,6 +30,10 @@
 #include "globals.h"
 #include "funcs.h"
 
+#if defined(BSD)
+extern char **environ;
+#endif
+
 char **env_init(void) {
        char **p = (char **) malloc(sizeof (char *));
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/misc.c new/cronie-1.4.12/src/misc.c
--- old/cronie-1.4.11/src/misc.c        2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/misc.c        2014-07-29 13:17:25.000000000 +0200
@@ -29,6 +29,7 @@
 
 #include <ctype.h>
 #include <errno.h>
+#include <signal.h>
 #include <stdarg.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -75,7 +76,9 @@
 static int syslog_open = FALSE;
 #endif
 
-#if defined(HAVE_FCNTL) && defined(F_SETLK)
+#if defined(HAVE_FLOCK)
+# define trylock_file(fd)      flock((fd), LOCK_EX|LOCK_NB)
+#elif defined(HAVE_FCNTL) && defined(F_SETLK)
 static int trylock_file(int fd) {
        struct flock fl;
 
@@ -89,8 +92,6 @@
 }
 #elif defined(HAVE_LOCKF)
 # define trylock_file(fd)      lockf((fd), F_TLOCK, 0)
-#elif defined(HAVE_FLOCK)
-# define trylock_file(fd)      flock((fd), LOCK_EX|LOCK_NB)
 #endif
 
 /*
@@ -308,6 +309,9 @@
                        close(fd);
                        fd = -1;
                }
+               /* and restore default sig handlers so we don't remove pid file 
if killed */
+               signal(SIGINT,SIG_DFL);
+               signal(SIGTERM,SIG_DFL);
                return;
        }
 
@@ -345,6 +349,13 @@
                (void) fchmod(fd, 0644);
                (void) fcntl(fd, F_SETFD, 1);
        }
+#if !defined(HAVE_FLOCK)
+       else {
+               /* Racy but better than nothing, just hope the parent exits */
+               sleep(0);
+               trylock_file(fd);       
+       }
+#endif
 
        sprintf(buf, "%ld\n", (long) pid);
        (void) lseek(fd, (off_t) 0, SEEK_SET);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/popen.c new/cronie-1.4.12/src/popen.c
--- old/cronie-1.4.11/src/popen.c       2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/popen.c       2014-04-30 14:30:53.000000000 +0200
@@ -69,6 +69,7 @@
        ssize_t out;
        char buf[PIPE_BUF];
        struct sigaction sa;
+       int fd;
 
 #ifdef __GNUC__
        (void) &iop;    /* Avoid fork clobbering */
@@ -121,6 +122,11 @@
                sa.sa_handler = SIG_DFL;
                sigaction(SIGPIPE, &sa, NULL);
 
+               /* close all unwanted open file descriptors */
+               for (fd = STDERR + 1; fd < fds; fd++) {
+                       close(fd);
+               }
+
                if (cron_change_user_permanently(pw, pw->pw_dir) != 0)
                        _exit(2);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude 
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh 
old/cronie-1.4.11/src/security.c new/cronie-1.4.12/src/security.c
--- old/cronie-1.4.11/src/security.c    2013-07-18 14:27:08.000000000 +0200
+++ new/cronie-1.4.12/src/security.c    2014-03-31 18:01:14.000000000 +0200
@@ -129,15 +129,13 @@
        }
 #endif
 
-       *jobenv = build_env(e->envp);
-
 #ifdef WITH_SELINUX
        /* we must get the crontab context BEFORE changing user, else
         * we'll not be permitted to read the cron spool directory :-)
         */
        security_context_t ucontext = 0;
 
-       if (cron_get_job_range(u, &ucontext, *jobenv) < OK) {
+       if (cron_get_job_range(u, &ucontext, e->envp) < OK) {
                log_it(e->pwd->pw_name, getpid(), "ERROR",
                        "failed to get SELinux context", 0);
                return -1;
@@ -165,6 +163,8 @@
                return -1;
        }
 
+       *jobenv = build_env(e->envp);
+
        time_t job_run_time = time(0L);
 
        if ((minutely_time > 0) && ((job_run_time / 60) != (minutely_time / 
60))) {
@@ -615,11 +615,18 @@
 */
 static char **build_env(char **cronenv) {
 #ifdef WITH_PAM
-       char **jobenv;
-       char **pamenv = pam_getenvlist(pamh);
+       char **jobenv = pam_getenvlist(pamh);
        char *cronvar;
        int count = 0;
-       jobenv = env_copy(pamenv);
+
+       if (jobenv == NULL) {
+               jobenv = env_init();
+               if (jobenv == NULL) {
+                       log_it("CRON", getpid(),
+                               "ERROR", "Initialization of cron environment 
variables failed", 0);
+                       return NULL;
+               }
+       }
 
        /* Now add the cron environment variables. Since env_set()
         * overwrites existing variables, this will let cron's

++++++ fix-manpage-replace-anacrontab-with-crontab.patch ++++++
>From 8769bba06b1632c6bd275f88c0fd10f591efdb9b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Krist=C3=BDna=20Streitov=C3=A1?= <kstreit...@suse.cz>
Date: Mon, 22 Sep 2014 10:41:14 +0200
Subject: [PATCH] fix manpage replace anacrontab with crontab

/etc/anacrontab replaced by /etc/crontab in the first occurance of it.
Fixes bnc#833240
---
 man/cron.8 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/man/cron.8 b/man/cron.8
index 633dbc0..9716f8f 100644
--- a/man/cron.8
+++ b/man/cron.8
@@ -53,7 +53,7 @@ for crontab files which are named after accounts in
 The found crontabs are loaded into the memory.
 .I Cron
 also searches for
-.I /etc/anacrontab
+.I /etc/crontab
 and any files in the
 .I /etc/cron.d
 directory, which have a different format (see
-- 
1.8.4.5

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to