authorgravatar for 48869301+gvilums@users.noreply.github.comGeorgijs <48869301+gvilums@users.noreply.github.com> 2024-05-11 14:34:40-07:00
committergravatar for noreply@github.comGitHub <noreply@github.com> 2024-05-11 23:34:40+02:00
log084c2cd90f79d5e7edf76b7ddd390adb95a27f0c
tree61d883f0611275e455ec3486d61698f8cfd18df1
parent8f6b1f2c38422168d29a6dd6fab61f337430e74e
signaturebadge-check Signed by PGP key B5690EEEBB952194

windows: use permissive file share flags everywhere (#19505)

* use permissive file share flags everywhere * remove file_share_delete from createnamedpipefile

5 files changed, 9 insertions(+), 9 deletions(-)

lib/std/child_process.zig+1-1
...@@ -697,7 +697,7 @@ pub const ChildProcess = struct {...@@ -697,7 +697,7 @@ pub const ChildProcess = struct {
697 // "\Device\Null" or "\??\NUL"697 // "\Device\Null" or "\??\NUL"
698 windows.OpenFile(&[_]u16{ '\\', 'D', 'e', 'v', 'i', 'c', 'e', '\\', 'N', 'u', 'l', 'l' }, .{698 windows.OpenFile(&[_]u16{ '\\', 'D', 'e', 'v', 'i', 'c', 'e', '\\', 'N', 'u', 'l', 'l' }, .{
699 .access_mask = windows.GENERIC_READ | windows.GENERIC_WRITE | windows.SYNCHRONIZE,699 .access_mask = windows.GENERIC_READ | windows.GENERIC_WRITE | windows.SYNCHRONIZE,
700 .share_access = windows.FILE_SHARE_READ | windows.FILE_SHARE_WRITE,700 .share_access = windows.FILE_SHARE_READ | windows.FILE_SHARE_WRITE | windows.FILE_SHARE_DELETE,
701 .sa = &saAttr,701 .sa = &saAttr,
702 .creation = windows.OPEN_EXISTING,702 .creation = windows.OPEN_EXISTING,
703 }) catch |err| switch (err) {703 }) catch |err| switch (err) {
lib/std/fs/Dir.zig+2-2
...@@ -1325,7 +1325,7 @@ pub fn realpathW(self: Dir, pathname: []const u16, out_buffer: []u8) RealPathErr...@@ -1325,7 +1325,7 @@ pub fn realpathW(self: Dir, pathname: []const u16, out_buffer: []u8) RealPathErr
1325 const w = windows;1325 const w = windows;
13261326
1327 const access_mask = w.GENERIC_READ | w.SYNCHRONIZE;1327 const access_mask = w.GENERIC_READ | w.SYNCHRONIZE;
1328 const share_access = w.FILE_SHARE_READ;1328 const share_access = w.FILE_SHARE_READ | w.FILE_SHARE_WRITE | w.FILE_SHARE_DELETE;
1329 const creation = w.FILE_OPEN;1329 const creation = w.FILE_OPEN;
1330 const h_file = blk: {1330 const h_file = blk: {
1331 const res = w.OpenFile(pathname, .{1331 const res = w.OpenFile(pathname, .{
...@@ -1598,7 +1598,7 @@ fn makeOpenDirAccessMaskW(self: Dir, sub_path_w: [*:0]const u16, access_mask: u3...@@ -1598,7 +1598,7 @@ fn makeOpenDirAccessMaskW(self: Dir, sub_path_w: [*:0]const u16, access_mask: u3
1598 &io,1598 &io,
1599 null,1599 null,
1600 w.FILE_ATTRIBUTE_NORMAL,1600 w.FILE_ATTRIBUTE_NORMAL,
1601 w.FILE_SHARE_READ | w.FILE_SHARE_WRITE,1601 w.FILE_SHARE_READ | w.FILE_SHARE_WRITE | w.FILE_SHARE_DELETE,
1602 flags.create_disposition,1602 flags.create_disposition,
1603 w.FILE_DIRECTORY_FILE | w.FILE_SYNCHRONOUS_IO_NONALERT | w.FILE_OPEN_FOR_BACKUP_INTENT | open_reparse_point,1603 w.FILE_DIRECTORY_FILE | w.FILE_SYNCHRONOUS_IO_NONALERT | w.FILE_OPEN_FOR_BACKUP_INTENT | open_reparse_point,
1604 null,1604 null,
lib/std/fs/test.zig+1-1
...@@ -262,7 +262,7 @@ test "File.stat on a File that is a symlink returns Kind.sym_link" {...@@ -262,7 +262,7 @@ test "File.stat on a File that is a symlink returns Kind.sym_link" {
262 &io,262 &io,
263 null,263 null,
264 windows.FILE_ATTRIBUTE_NORMAL,264 windows.FILE_ATTRIBUTE_NORMAL,
265 windows.FILE_SHARE_READ | windows.FILE_SHARE_WRITE,265 windows.FILE_SHARE_READ | windows.FILE_SHARE_WRITE | windows.FILE_SHARE_DELETE,
266 windows.FILE_OPEN,266 windows.FILE_OPEN,
267 // FILE_OPEN_REPARSE_POINT is the important thing here267 // FILE_OPEN_REPARSE_POINT is the important thing here
268 windows.FILE_OPEN_REPARSE_POINT | windows.FILE_DIRECTORY_FILE | windows.FILE_SYNCHRONOUS_IO_NONALERT | windows.FILE_OPEN_FOR_BACKUP_INTENT,268 windows.FILE_OPEN_REPARSE_POINT | windows.FILE_DIRECTORY_FILE | windows.FILE_SYNCHRONOUS_IO_NONALERT | windows.FILE_OPEN_FOR_BACKUP_INTENT,
lib/std/os/windows.zig+4-4
...@@ -217,7 +217,7 @@ pub fn CreatePipe(rd: *HANDLE, wr: *HANDLE, sattr: *const SECURITY_ATTRIBUTES) C...@@ -217,7 +217,7 @@ pub fn CreatePipe(rd: *HANDLE, wr: *HANDLE, sattr: *const SECURITY_ATTRIBUTES) C
217 &iosb,217 &iosb,
218 null,218 null,
219 0,219 0,
220 FILE_SHARE_READ | FILE_SHARE_WRITE,220 FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
221 FILE_OPEN,221 FILE_OPEN,
222 FILE_SYNCHRONOUS_IO_NONALERT,222 FILE_SYNCHRONOUS_IO_NONALERT,
223 null,223 null,
...@@ -283,7 +283,7 @@ pub fn CreatePipe(rd: *HANDLE, wr: *HANDLE, sattr: *const SECURITY_ATTRIBUTES) C...@@ -283,7 +283,7 @@ pub fn CreatePipe(rd: *HANDLE, wr: *HANDLE, sattr: *const SECURITY_ATTRIBUTES) C
283 &iosb,283 &iosb,
284 null,284 null,
285 0,285 0,
286 FILE_SHARE_READ | FILE_SHARE_WRITE,286 FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
287 FILE_OPEN,287 FILE_OPEN,
288 FILE_SYNCHRONOUS_IO_NONALERT | FILE_NON_DIRECTORY_FILE,288 FILE_SYNCHRONOUS_IO_NONALERT | FILE_NON_DIRECTORY_FILE,
289 null,289 null,
...@@ -892,7 +892,7 @@ pub fn ReadLink(dir: ?HANDLE, sub_path_w: []const u16, out_buffer: []u8) ReadLin...@@ -892,7 +892,7 @@ pub fn ReadLink(dir: ?HANDLE, sub_path_w: []const u16, out_buffer: []u8) ReadLin
892 &io,892 &io,
893 null,893 null,
894 FILE_ATTRIBUTE_NORMAL,894 FILE_ATTRIBUTE_NORMAL,
895 FILE_SHARE_READ,895 FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
896 FILE_OPEN,896 FILE_OPEN,
897 FILE_OPEN_REPARSE_POINT | FILE_SYNCHRONOUS_IO_NONALERT,897 FILE_OPEN_REPARSE_POINT | FILE_SYNCHRONOUS_IO_NONALERT,
898 null,898 null,
...@@ -1311,7 +1311,7 @@ pub fn GetFinalPathNameByHandle(...@@ -1311,7 +1311,7 @@ pub fn GetFinalPathNameByHandle(
1311 const mgmt_path_u16 = std.unicode.utf8ToUtf16LeStringLiteral("\\??\\MountPointManager");1311 const mgmt_path_u16 = std.unicode.utf8ToUtf16LeStringLiteral("\\??\\MountPointManager");
1312 const mgmt_handle = OpenFile(mgmt_path_u16, .{1312 const mgmt_handle = OpenFile(mgmt_path_u16, .{
1313 .access_mask = SYNCHRONIZE,1313 .access_mask = SYNCHRONIZE,
1314 .share_access = FILE_SHARE_READ | FILE_SHARE_WRITE,1314 .share_access = FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
1315 .creation = FILE_OPEN,1315 .creation = FILE_OPEN,
1316 }) catch |err| switch (err) {1316 }) catch |err| switch (err) {
1317 error.IsDir => return error.Unexpected,1317 error.IsDir => return error.Unexpected,
lib/std/posix.zig+1-1
...@@ -5403,7 +5403,7 @@ pub fn realpathW(pathname: []const u16, out_buffer: *[max_path_bytes]u8) RealPat...@@ -5403,7 +5403,7 @@ pub fn realpathW(pathname: []const u16, out_buffer: *[max_path_bytes]u8) RealPat
54035403
5404 const dir = fs.cwd().fd;5404 const dir = fs.cwd().fd;
5405 const access_mask = w.GENERIC_READ | w.SYNCHRONIZE;5405 const access_mask = w.GENERIC_READ | w.SYNCHRONIZE;
5406 const share_access = w.FILE_SHARE_READ;5406 const share_access = w.FILE_SHARE_READ | w.FILE_SHARE_WRITE | w.FILE_SHARE_DELETE;
5407 const creation = w.FILE_OPEN;5407 const creation = w.FILE_OPEN;
5408 const h_file = blk: {5408 const h_file = blk: {
5409 const res = w.OpenFile(pathname, .{5409 const res = w.OpenFile(pathname, .{