From: Zac Medico Date: Sat, 11 Nov 2006 10:13:24 +0000 (-0000) Subject: Make digestcheck() fail if an ebuild isn't listed in the Manifest. Thanks to pva... X-Git-Tag: v2.1.2~485 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=bed087fd07e65fa038a4420b59b95a49557c8467;p=portage.git Make digestcheck() fail if an ebuild isn't listed in the Manifest. Thanks to pva for reporting. svn path=/main/trunk/; revision=5002 --- diff --git a/pym/portage.py b/pym/portage.py index 10f8748c7..604deb104 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -2560,6 +2560,12 @@ def digestcheck(myfiles, mysettings, strict=0, justmanifest=0): writemsg("!!! Got: %s\n" % e.value[2], noiselevel=-1) writemsg("!!! Expected: %s\n" % e.value[3], noiselevel=-1) return 0 + # Make sure that all of the ebuilds are actually listed in the Manifest. + for f in os.listdir(pkgdir): + if f.endswith(".ebuild") and not mf.hasFile("EBUILD", f): + writemsg("!!! A file is not listed in the Manifest: '%s'\n" % \ + os.path.join(pkgdir, f), noiselevel=-1) + return 0 """ epatch will just grab all the patches out of a directory, so we have to make sure there aren't any foreign files that it might grab.""" filesdir = os.path.join(pkgdir, "files")