81{
84
90
91 ULONG BufferSize1, BufferSize2, BufferSize3;
94
95
96 WCHAR NtDeviceName[] =
L"\\DosDevices\\?:";
97 NtDeviceName[
sizeof(
"\\DosDevices\\")-1] =
SharedUserData->NtSystemRoot[0];
98
99
101
102
117 return;
118
119
123 0,
124 &BufferSize1);
126
131 &BufferSize2);
133
138 &BufferSize3);
140
142
143
144
145
146
149 else
151
154
155
159 "UNICODE_NULL not found at end of ObjectName->Buffer\n");
161 "ObjectName->Buffer string length check skipped\n"))
162 {
163 return;
164 }
165
166 {
169 }
170}
#define ok_eq_uint(value, expected)
#define ok_eq_size(value, expected)
_In_z_ PCCHAR ObjectNameBuffer
#define FILE_SYNCHRONOUS_IO_NONALERT
_Inout_ PUSB_DEVICE_HANDLE DeviceHandle
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
static OUT PIO_STATUS_BLOCK IoStatusBlock
NTSYSAPI NTSTATUS NTAPI ZwOpenFile(_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG ShareAccess, _In_ ULONG OpenOptions)
#define FILE_READ_ATTRIBUTES
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
struct _OBJECT_NAME_INFORMATION OBJECT_NAME_INFORMATION
#define _WIN32_WINNT_VISTA
#define STATUS_BUFFER_OVERFLOW
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_opt_ PCUNICODE_STRING DeviceName
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName