Index: FilesCheck.py =================================================================== --- FilesCheck.py.orig +++ FilesCheck.py @@ -952,6 +952,16 @@ class FilesCheck(AbstractCheck.AbstractC if res.group(1) != pkg.name: printError(pkg, 'incoherent-logrotate-file', f) + deps=[x[0] for x in pkg.requires()+pkg.recommends()+pkg.suggests()] + if res and not ('logrotate' in deps) and pkg.name != "logrotate": + printError(pkg, 'missing-dependency-to-logrotate', "for logrotate script", f) + if f.startswith('/etc/cron.') \ + and not ('cron' in deps) and pkg.name != "cron": + printError(pkg, 'missing-dependency-to-cron', "for cron script", f) + if f.startswith('/etc/xinet.d/') \ + and not ('xinetd' in deps) and pkg.name != "xinetd": + printError(pkg, 'missing-dependency-to-xinetd', "for xinet.d script", f) + if link != '': ext = compr_regex.search(link) if ext: @@ -1760,6 +1770,24 @@ consequences), or other compiler flags w extraction not working as expected. Verify that the binaries are not unexpectedly stripped and that the intended compiler flags are used.''', +'missing-dependency-to-cron', +'''This package installs a file in /etc/cron.*/ but +doesn't require cron to be installed. as cron is not part of the essential packages, +your package should explicitely require cron to make sure that your cron job is +executed. If it is an optional feature of your package, recommend or suggest cron.''', + +'missing-dependency-to-logrotate', +'''This package installs a file in /etc/logrotate.d/ but +doesn't require logrotate to be installed. Because logrotate is not part of the essential packages, +your package should explicitely depend on logrotate to make sure that your logrotate +job is executed. If it is an optional feature of your package, recommend or suggest logrotate.''', + +'missing-dependency-to-xinetd', +'''This package installs a file in /etc/xinetd.d/ but +doesn't require xinetd to be installed. Because xinetd is not part of the essential packages, +your package should explicitely depend on logrotate to make sure that your xinetd +job is executed. If it is an optional feature of your package, recommend or suggest xinetd.''', + 'read-error', '''This file could not be read. A reason for this could be that the info about it in the rpm header indicates that it is supposed to be a readable normal file