Rebase against 35e43ccf1b42e9f67d7765753f0c3ef8cf102c46.

This commit is contained in:
Zebediah Figura
2021-02-25 21:04:11 -06:00
parent 9a7b25dfd2
commit e4debaae9b
7 changed files with 45 additions and 46 deletions

View File

@@ -1,4 +1,4 @@
From fb7e1b2b7cb08e5fd1f9be9064e7862588896f4b Mon Sep 17 00:00:00 2001
From 7e55aac8ffe313d8e313b222d1bc670b51987441 Mon Sep 17 00:00:00 2001
From: "Erich E. Hoover" <erich.e.hoover@gmail.com>
Date: Wed, 20 Aug 2014 15:28:00 -0600
Subject: [PATCH] ntdll: Implement storing DOS attributes in NtCreateFile.
@@ -58,7 +58,7 @@ index d21a2e64f8e..dc4f09729ac 100644
}
testfiles[i].nfound++;
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
index ee6382611a9..a92c40ddd6a 100644
index 0c3ff240c67..57175c7f3e4 100644
--- a/dlls/ntdll/unix/file.c
+++ b/dlls/ntdll/unix/file.c
@@ -409,6 +409,26 @@ static int xattr_get( const char *path, const char *name, void *value, size_t si
@@ -88,8 +88,8 @@ index ee6382611a9..a92c40ddd6a 100644
/* get space from the current directory data buffer, allocating a new one if necessary */
static void *get_dir_data_space( struct dir_data *data, unsigned int size )
{
@@ -3620,6 +3640,20 @@ void CDECL set_show_dot_files( BOOL enable )
show_dot_files = enable;
@@ -3664,6 +3684,20 @@ static NTSTATUS unmount_device( HANDLE handle )
return status;
}
+NTSTATUS set_file_info( const char *path, ULONG attr )
@@ -109,7 +109,7 @@ index ee6382611a9..a92c40ddd6a 100644
/******************************************************************************
* open_unix_file
@@ -3662,6 +3696,7 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
@@ -3706,6 +3740,7 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
ULONG attributes, ULONG sharing, ULONG disposition,
ULONG options, void *ea_buffer, ULONG ea_length )
{
@@ -117,7 +117,7 @@ index ee6382611a9..a92c40ddd6a 100644
UNICODE_STRING nt_name = { 0 };
char *unix_name;
BOOL created = FALSE;
@@ -3705,17 +3740,17 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
@@ -3749,17 +3784,17 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
io->u.Status = STATUS_SUCCESS;
}
@@ -144,7 +144,7 @@ index ee6382611a9..a92c40ddd6a 100644
if (io->u.Status == STATUS_SUCCESS)
{
@@ -3737,6 +3772,11 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
@@ -3781,6 +3816,11 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
io->Information = FILE_OVERWRITTEN;
break;
}
@@ -156,7 +156,7 @@ index ee6382611a9..a92c40ddd6a 100644
}
else if (io->u.Status == STATUS_TOO_MANY_OPENED_FILES)
{
@@ -3744,6 +3784,7 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
@@ -3788,6 +3828,7 @@ NTSTATUS WINAPI NtCreateFile( HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBU
if (!once++) ERR_(winediag)( "Too many open files, ulimit -n probably needs to be increased\n" );
}