18{
21
27
28 ULONG BufferSize1, BufferSize2, BufferSize3;
31
32
33 WCHAR NtDeviceName[] =
L"\\DosDevices\\?:";
34 NtDeviceName[
sizeof(
"\\DosDevices\\")-1] =
SharedUserData->NtSystemRoot[0];
35
36
51 {
52 skip(
"Device '%S': Opening failed\n", NtDeviceName);
53 return;
54 }
55
56
60 0,
61 &BufferSize1);
63
68 &BufferSize2);
70
75 &BufferSize3);
77
79
80
81
82
83
86 else
88
91
92
96 "UNICODE_NULL not found at end of ObjectName->Buffer\n");
98 {
99 skip(
"ObjectName->Buffer string length check skipped\n");
100 return;
101 }
102
103 {
106 }
107}
NTSTATUS NtQueryObject(IN HANDLE Handle, IN OBJECT_INFO_CLASS ObjectInformationClass, OUT PVOID ObjectInformation, IN ULONG ObjectInformationLength, OUT PULONG ReturnLength)
#define ok_eq_ulong(value, expected)
#define ok_eq_uint(value, expected)
#define ok_eq_size(value, expected)
#define ok_ntstatus(status, expected)
_In_z_ PCCHAR ObjectNameBuffer
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
#define NT_SUCCESS(StatCode)
#define FILE_SYNCHRONOUS_IO_NONALERT
_Inout_ PUSB_DEVICE_HANDLE DeviceHandle
_CRTIMP size_t __cdecl wcslen(_In_z_ const wchar_t *_Str)
#define OBJ_CASE_INSENSITIVE
static OUT PIO_STATUS_BLOCK IoStatusBlock
#define InitializeObjectAttributes(p, n, a, r, s)
NTSYSAPI NTSTATUS NTAPI NtOpenFile(OUT PHANDLE phFile, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes, OUT PIO_STATUS_BLOCK pIoStatusBlock, IN ULONG ShareMode, IN ULONG OpenMode)
#define FILE_READ_ATTRIBUTES
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
struct _OBJECT_NAME_INFORMATION OBJECT_NAME_INFORMATION
NTSTATUS NTAPI NtClose(IN HANDLE Handle)
#define _WIN32_WINNT_VISTA
#define STATUS_BUFFER_OVERFLOW
#define STATUS_INFO_LENGTH_MISMATCH
_Must_inspect_result_ _In_ PWDFDEVICE_INIT _In_opt_ PCUNICODE_STRING DeviceName
_In_ PVOID _Out_opt_ PULONG_PTR _Outptr_opt_ PCUNICODE_STRING * ObjectName