Fix log uid for logrotate-3.8 compat (bug 378451)
authorZac Medico <zmedico@gentoo.org>
Fri, 12 Aug 2011 09:47:04 +0000 (02:47 -0700)
committerZac Medico <zmedico@gentoo.org>
Fri, 12 Aug 2011 09:47:04 +0000 (02:47 -0700)
commite3954bead8d7e37978cac4ae5a5ec7836d3dcd1c
tree948dfad6e4bfce890437dbf798b2cd5720c3a683
parent72137f634878c4b0ef54287dd4a33fa2240a68f7
Fix log uid for logrotate-3.8 compat (bug 378451)

If PORT_LOGDIR is writable by the portage group but its uid is not
portage_uid, then set the uid to portage_uid if we have privileges to
do so, and also copy the uid to the logfile. This fixes logrotate
chown failures during the compression phase, when it attempts to copy
the uid from the logfile to a temp file. With the "su portage portage"
directive and logrotate-3.8.0, logrotate's chown call during the
compression phase will only succeed if the log file's uid is
portage_uid.
pym/portage/elog/mod_save.py
pym/portage/elog/mod_save_summary.py
pym/portage/package/ebuild/prepare_build_dirs.py