MCPcopy Create free account
hub / github.com/BeneficialCode/WinArk / GetRootName

Method GetRootName

KernelLibrary/FileManager.cpp:154–170  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

152}
153
154NTSTATUS FileManager::GetRootName(_In_ PCWSTR dosName, _Out_ PUNICODE_STRING rootName) {
155 rootName->Buffer = nullptr; // in case of failure
156 auto dosNameLen = ::wcslen(dosName);
157
158 if (dosNameLen < 3)
159 return STATUS_BUFFER_TOO_SMALL;
160
161 // make sure we have a driver letter
162 if (dosName[2] != L'\\' || dosName[1] != L':')
163 return STATUS_INVALID_PARAMETER;
164
165 kstring<'rgmf'> symLink(L"\\??\\");
166 symLink.Append(dosName, 3); // driver letter,colon,backslash
167 symLink.GetUnicodeString(rootName);
168
169 return STATUS_SUCCESS;
170}
171
172VOID FileManager::FreeMdl(_In_ PMDL mdl){
173 PMDL pCur = mdl, pNext;

Callers

nothing calls this directly

Calls 1

GetUnicodeStringMethod · 0.45

Tested by

no test coverage detected