50{
55 "WDF_OBJECT_ATTRIBUTES required, %!STATUS!",
57
59 }
60 else {
62 }
63 }
64
66
67
68
70 "Attributes %p Size incorrect, expected %d, got %d, %!STATUS!",
73
75 }
76
78#pragma prefast(suppress:__WARNING_REDUNDANTTEST, "different structs of the same size")
85 "Attributes %p ContextTypeInfo %p Size %d incorrect, expected %d, %!STATUS!",
89
91 }
92
93
94
95
96 if (
Attributes->ContextTypeInfo->ContextSize > 0 &&
98
101 "Attributes %p ContextTypeInfo %p ContextSize %I64d is not zero, "
102 "but ContextName is NULL, %!STATUS!",
106
108 }
109 }
110
113
114
115
118 "Attributes %p ContextSizeOverride of %I64d specified, but no type "
119 "information, %!STATUS!",
122
124 }
129 "Attributes %p ContextSizeOverride %I64d < "
130 "ContextTypeInfo->ContextSize %I64d, %!STATUS!",
134
136 }
137 }
138
143 "Attributes %p does not allow a parent object to be set, set to "
146
148 }
149 }
154 "ParentObject required in WDF_OBJECT_ATTRIBUTES %p, %!STATUS!",
156
158 }
159
160
165 "Attributes %p execution level set to %d, out of range, %!STATUS!",
169 }
170
175 "Attributes %p synchronization scope set to %d, out of range, %!STATUS!",
179 }
180
182
183
184
185
186
189
192 "Attributes %p does not allow synchronization scope too be set, "
193 "but was set to %!WDF_SYNCHRONIZATION_SCOPE!, %!STATUS!",
196
198 }
199 }
200
202
203
204
205
206
210 "Attributes %p does not allow execution level to be set, but was"
211 " set to %!WDF_EXECUTION_LEVEL!, %!STATUS!",
214
216 }
217 }
218
220}
DoTraceLevelMessage(pFxDriverGlobals, TRACE_LEVEL_VERBOSE, TRACINGPNP, "Enter, WDFDEVICE %p", Device)
@ FX_VALIDATE_OPTION_PARENT_REQUIRED_FLAG
@ FX_VALIDATE_OPTION_SYNCHRONIZATION_SCOPE_ALLOWED
@ FX_VALIDATE_OPTION_EXECUTION_LEVEL_ALLOWED
@ FX_VALIDATE_OPTION_ATTRIBUTES_REQUIRED
@ FX_VALIDATE_OPTION_PARENT_NOT_ALLOWED
#define TRACE_LEVEL_ERROR
#define STATUS_INFO_LENGTH_MISMATCH
_Must_inspect_result_ _In_ WDFDMAENABLER _In_ _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes
@ WdfSynchronizationScopeInheritFromParent
@ WdfSynchronizationScopeNone
@ WdfSynchronizationScopeInvalid
@ WdfExecutionLevelDispatch
@ WdfExecutionLevelInheritFromParent
@ WdfExecutionLevelInvalid
#define STATUS_WDF_PARENT_ASSIGNMENT_NOT_ALLOWED
#define STATUS_WDF_OBJECT_ATTRIBUTES_INVALID
#define STATUS_WDF_SYNCHRONIZATION_SCOPE_INVALID
#define STATUS_WDF_EXECUTION_LEVEL_INVALID
#define STATUS_WDF_PARENT_NOT_SPECIFIED
_Must_inspect_result_ _In_ ULONG Flags