• J
    qemu: Don't unconditionally delete file in qemuOpenFileAs · 7879d031
    John Ferlan 提交于
    https://bugzilla.redhat.com/show_bug.cgi?id=1158034
    
    If we're expecting to create a file somewhere and that fails for some
    reason during qemuOpenFileAs, then we unlink the path we're attempting
    to create leaving no way to determine what the "existing" privileges,
    protections, or labels are that caused the failure (open, change owner
    and group, change mode, etc.).
    
    Furthermore, if we fall into the path where we'll be opening / creating
    the file using VIR_FILE_OPEN_FORK, we need to first unlink/delete the file
    we created in the first path; otherwise, the attempt by the child process
    to open as some specific user:group may fail because the file was already
    created using nfsnobody:nfsnobody. Again, if we didn't create the file we
    don't want to blindly delete what already exists. Thus, a second reason for
    the original check to set need_unlink to false when we find the file with
    CREAT set, but already existing.
    Signed-off-by: NJohn Ferlan <jferlan@redhat.com>
    7879d031
qemu_driver.c 618.6 KB