2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS text-mode setup
4 * FILE: base/setup/usetup/drivesup.c
5 * PURPOSE: Drive support functions
9 /* INCLUDES *****************************************************************/
16 /* FUNCTIONS ****************************************************************/
20 OUT PUNICODE_STRING SourcePath
,
21 OUT PUNICODE_STRING SourceRootPath
,
22 OUT PUNICODE_STRING SourceRootDir
)
25 OBJECT_ATTRIBUTES ObjectAttributes
;
26 UNICODE_STRING LinkName
= RTL_CONSTANT_STRING(L
"\\SystemRoot");
27 UNICODE_STRING SourceName
;
28 WCHAR SourceBuffer
[MAX_PATH
] = L
"";
33 InitializeObjectAttributes(&ObjectAttributes
,
39 Status
= NtOpenSymbolicLinkObject(&Handle
,
40 SYMBOLIC_LINK_ALL_ACCESS
,
42 if (!NT_SUCCESS(Status
))
45 RtlInitEmptyUnicodeString(&SourceName
, SourceBuffer
, sizeof(SourceBuffer
));
47 Status
= NtQuerySymbolicLinkObject(Handle
,
52 if (!NT_SUCCESS(Status
))
55 RtlCreateUnicodeString(SourcePath
,
58 /* Strip trailing directory */
59 Ptr
= wcsrchr(SourceName
.Buffer
, OBJ_NAME_PATH_SEPARATOR
);
62 RtlCreateUnicodeString(SourceRootDir
, Ptr
);
67 RtlCreateUnicodeString(SourceRootDir
, L
"");
70 RtlCreateUnicodeString(SourceRootPath
,
73 return STATUS_SUCCESS
;