mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
storage: Refetch file status after open
This partly reverts my previous patch f88de3eb. We need to get file status after open, as given path could have been symlink, so fstat() will operate on different file than lstat().
This commit is contained in:
parent
a1b62f983b
commit
3ba949e8f4
@ -1041,6 +1041,14 @@ virStorageBackendVolOpenCheckMode(const char *path, unsigned int flags)
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (fstat(fd, &sb) < 0) {
|
||||
virReportSystemError(errno,
|
||||
_("cannot stat file '%s'"),
|
||||
path);
|
||||
VIR_FORCE_CLOSE(fd);
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (S_ISREG(sb.st_mode))
|
||||
mode = VIR_STORAGE_VOL_OPEN_REG;
|
||||
else if (S_ISCHR(sb.st_mode))
|
||||
|
Loading…
x
Reference in New Issue
Block a user