On Tue, Aug 21, 2018 at 11:03 AM +0200, "Daniel P. Berrangé"
<berrange(a)redhat.com> wrote:
On Tue, Aug 21, 2018 at 10:49:28AM +0200, Marc Hartmayer wrote:
> Truncate means that if a file exists it's length will be truncated to
> 0, but the mode and the owner shall be unchanged. The current behavior
> is that the original file is deleted and a new file is created. Let's
> fix this by using O_TRUNC.
This is just describing what you've changed, leaving out why you are
trying todo this ?
Two things:
1. The behavior for a console that logs all data to a file has changed
with the patch series “qemu: use FD passing for chardev UNIX
sockets”. Before this patch series the owner of the log file was the
QEMU process user (since the QEMU process was responsible for
creating it). Now it’s the virtlogd user.
e.g.
<console type='file'>
<source path='/tmp/console.log'/>
<target type='serial'/>
</console>
2. What is currently done by virtlogd is not a truncation (at least
IMHO). An alternative to this patch would be to rename the parameter
(API change… so probably no option) or document the behavior.
> The function virRotatingFileWriterDelete is now unused but may be used
> in the future and is therefore still defined.
>
> Signed-off-by: Marc Hartmayer <mhartmay(a)linux.ibm.com>
> Reviewed-by: Boris Fiuczynski <fiuczy(a)linux.ibm.com>
> ---
> Note:
>
> This change has the (potentially unwanted) security effect that the
> owner/group of the log file does not change. Before this patch the old
> log file was deleted and the newly created log file was owned by the
> virtlogd user. Now, if a user has created the log file before, he can
> read the logs. If we don't wanna have this effect we can either
> adjust/add a virtlogd API or do a chown within the calling driver
> (e.g. QEMU driver).
Pre-creating the log file and/or messing around with ownership are
not things we ever intended to support.
Okay. What should happen if the log file is already pre-created?
Silently overwrite/delete?
--
Beste Grüße / Kind regards
Marc Hartmayer
IBM Deutschland Research & Development GmbH
Vorsitzende des Aufsichtsrats: Martina Koederitz
Geschäftsführung: Dirk Wittkopp
Sitz der Gesellschaft: Böblingen
Registergericht: Amtsgericht Stuttgart, HRB 243294