test(safeio): expose private reopen failure

This commit is contained in:
2026-08-18 13:31:10 +02:00
parent 835b298212
commit b40f8e885a
@@ -342,7 +342,28 @@ func TestCreateCanonicalNewPrivateFileInstallsOwnerOnlyDACLAtCreation(t *testing
} }
defer file.Close() defer file.Close()
if err := ValidatePrivateRegular(path); err != nil { if err := ValidatePrivateRegular(path); err != nil {
t.Fatalf("new lock DACL error = %v", err) parents, target, parentErr := openCanonicalWindowsParent(path)
if parentErr != nil {
t.Fatalf("new lock DACL error = %T %v; raw parent open = %T %v", err, err, parentErr, parentErr)
}
defer parents.Close()
handle, openErr := openWindowsRelativeObject(
parents.handles[len(parents.handles)-1],
target,
windows.GENERIC_READ,
windows.FILE_OPEN,
windows.FILE_NON_DIRECTORY_FILE|windows.FILE_SYNCHRONOUS_IO_NONALERT|windows.FILE_OPEN_REPARSE_POINT,
nil,
)
if openErr != nil {
t.Fatalf("new lock DACL error = %T %v; raw regular open = %T %v", err, err, openErr, openErr)
}
defer windows.CloseHandle(handle)
var info windows.ByHandleFileInformation
infoErr := windows.GetFileInformationByHandle(handle, &info)
daclErr := validateOwnerOnlyDACL(handle)
t.Fatalf("new lock DACL error = %T %v; raw info = %T %v attributes=%#x links=%d; raw dacl = %T %v",
err, err, infoErr, infoErr, info.FileAttributes, info.NumberOfLinks, daclErr, daclErr)
} }
} }