Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
c237db98
Commit
c237db98
authored
Sep 20, 2023
by
Joel Holdsworth
Committed by
Alexandre Julliard
Oct 03, 2023
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ntdll: Initial implementation of FileLinkInformationEx.
Signed-off-by:
Joel Holdsworth
<
joel@airwebreathe.org.uk
>
parent
c7b1551e
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
12 additions
and
1 deletion
+12
-1
file.c
dlls/ntdll/tests/file.c
+0
-0
file.c
dlls/ntdll/unix/file.c
+11
-1
file.c
dlls/wow64/file.c
+1
-0
No files found.
dlls/ntdll/tests/file.c
View file @
c237db98
This diff is collapsed.
Click to expand it.
dlls/ntdll/unix/file.c
View file @
c237db98
...
@@ -4830,13 +4830,23 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io,
...
@@ -4830,13 +4830,23 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io,
break
;
break
;
case
FileLinkInformation
:
case
FileLinkInformation
:
case
FileLinkInformationEx
:
if
(
len
>=
sizeof
(
FILE_LINK_INFORMATION
))
if
(
len
>=
sizeof
(
FILE_LINK_INFORMATION
))
{
{
FILE_LINK_INFORMATION
*
info
=
ptr
;
FILE_LINK_INFORMATION
*
info
=
ptr
;
unsigned
int
flags
;
UNICODE_STRING
name_str
,
redir
;
UNICODE_STRING
name_str
,
redir
;
OBJECT_ATTRIBUTES
attr
;
OBJECT_ATTRIBUTES
attr
;
char
*
unix_name
;
char
*
unix_name
;
if
(
class
==
FileLinkInformation
)
flags
=
info
->
ReplaceIfExists
?
FILE_LINK_REPLACE_IF_EXISTS
:
0
;
else
flags
=
info
->
Flags
;
if
(
flags
&
~
FILE_LINK_REPLACE_IF_EXISTS
)
FIXME
(
"unsupported flags: %#x
\n
"
,
flags
);
name_str
.
Buffer
=
info
->
FileName
;
name_str
.
Buffer
=
info
->
FileName
;
name_str
.
Length
=
info
->
FileNameLength
;
name_str
.
Length
=
info
->
FileNameLength
;
name_str
.
MaximumLength
=
info
->
FileNameLength
+
sizeof
(
WCHAR
);
name_str
.
MaximumLength
=
info
->
FileNameLength
+
sizeof
(
WCHAR
);
...
@@ -4852,7 +4862,7 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io,
...
@@ -4852,7 +4862,7 @@ NTSTATUS WINAPI NtSetInformationFile( HANDLE handle, IO_STATUS_BLOCK *io,
req
->
rootdir
=
wine_server_obj_handle
(
attr
.
RootDirectory
);
req
->
rootdir
=
wine_server_obj_handle
(
attr
.
RootDirectory
);
req
->
namelen
=
attr
.
ObjectName
->
Length
;
req
->
namelen
=
attr
.
ObjectName
->
Length
;
req
->
link
=
TRUE
;
req
->
link
=
TRUE
;
req
->
flags
=
info
->
ReplaceIfExists
?
FILE_LINK_REPLACE_IF_EXISTS
:
0
;
req
->
flags
=
flags
;
wine_server_add_data
(
req
,
attr
.
ObjectName
->
Buffer
,
attr
.
ObjectName
->
Length
);
wine_server_add_data
(
req
,
attr
.
ObjectName
->
Buffer
,
attr
.
ObjectName
->
Length
);
wine_server_add_data
(
req
,
unix_name
,
strlen
(
unix_name
)
);
wine_server_add_data
(
req
,
unix_name
,
strlen
(
unix_name
)
);
status
=
wine_server_call
(
req
);
status
=
wine_server_call
(
req
);
...
...
dlls/wow64/file.c
View file @
c237db98
...
@@ -794,6 +794,7 @@ NTSTATUS WINAPI wow64_NtSetInformationFile( UINT *args )
...
@@ -794,6 +794,7 @@ NTSTATUS WINAPI wow64_NtSetInformationFile( UINT *args )
case
FileRenameInformation
:
/* FILE_RENAME_INFORMATION */
case
FileRenameInformation
:
/* FILE_RENAME_INFORMATION */
case
FileRenameInformationEx
:
/* FILE_RENAME_INFORMATION */
case
FileRenameInformationEx
:
/* FILE_RENAME_INFORMATION */
case
FileLinkInformation
:
/* FILE_LINK_INFORMATION */
case
FileLinkInformation
:
/* FILE_LINK_INFORMATION */
case
FileLinkInformationEx
:
/* FILE_LINK_INFORMATION */
if
(
len
>=
sizeof
(
FILE_RENAME_INFORMATION32
))
if
(
len
>=
sizeof
(
FILE_RENAME_INFORMATION32
))
{
{
OBJECT_ATTRIBUTES
attr
;
OBJECT_ATTRIBUTES
attr
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment