43#define CDFS_RESIDUAL_REFERENCE (6)
44#define CDFS_RESIDUAL_USER_REFERENCE (3)
80#define AUDIO_NAME_ONES_OFFSET (6)
81#define AUDIO_NAME_TENS_OFFSET (5)
97#ifdef CDFS_TELEMETRY_DATA
103extern CDFS_TELEMETRY_DATA_CONTEXT CdTelemetryData;
181#define ASSERT_STRUCT(S,T) NT_ASSERT( SafeNodeType( S ) == (T) )
182#define ASSERT_OPTIONAL_STRUCT(S,T) NT_ASSERT( ((S) == NULL) || (SafeNodeType( S ) == (T)) )
184#define ASSERT_VCB(V) ASSERT_STRUCT( (V), CDFS_NTC_VCB )
185#define ASSERT_OPTIONAL_VCB(V) ASSERT_OPTIONAL_STRUCT( (V), CDFS_NTC_VCB )
187#define ASSERT_FCB(F) \
188 NT_ASSERT( (SafeNodeType( F ) == CDFS_NTC_FCB_DATA ) || \
189 (SafeNodeType( F ) == CDFS_NTC_FCB_INDEX ) || \
190 (SafeNodeType( F ) == CDFS_NTC_FCB_PATH_TABLE ) )
192#define ASSERT_OPTIONAL_FCB(F) \
193 NT_ASSERT( ((F) == NULL) || \
194 (SafeNodeType( F ) == CDFS_NTC_FCB_DATA ) || \
195 (SafeNodeType( F ) == CDFS_NTC_FCB_INDEX ) || \
196 (SafeNodeType( F ) == CDFS_NTC_FCB_PATH_TABLE ) )
198#define ASSERT_FCB_NONPAGED(FN) ASSERT_STRUCT( (FN), CDFS_NTC_FCB_NONPAGED )
199#define ASSERT_OPTIONAL_FCB_NONPAGED(FN) ASSERT_OPTIONAL_STRUCT( (FN), CDFS_NTC_FCB_NONPAGED )
201#define ASSERT_CCB(C) ASSERT_STRUCT( (C), CDFS_NTC_CCB )
202#define ASSERT_OPTIONAL_CCB(C) ASSERT_OPTIONAL_STRUCT( (C), CDFS_NTC_CCB )
204#define ASSERT_IRP_CONTEXT(IC) ASSERT_STRUCT( (IC), CDFS_NTC_IRP_CONTEXT )
205#define ASSERT_OPTIONAL_IRP_CONTEXT(IC) ASSERT_OPTIONAL_STRUCT( (IC), CDFS_NTC_IRP_CONTEXT )
207#define ASSERT_IRP(I) ASSERT_STRUCT( (I), IO_TYPE_IRP )
208#define ASSERT_OPTIONAL_IRP(I) ASSERT_OPTIONAL_STRUCT( (I), IO_TYPE_IRP )
210#define ASSERT_FILE_OBJECT(FO) ASSERT_STRUCT( (FO), IO_TYPE_FILE )
211#define ASSERT_OPTIONAL_FILE_OBJECT(FO) ASSERT_OPTIONAL_STRUCT( (FO), IO_TYPE_FILE )
213#define ASSERT_EXCLUSIVE_RESOURCE(R) NT_ASSERT( ExIsResourceAcquiredExclusiveLite( R ))
215#define ASSERT_SHARED_RESOURCE(R) NT_ASSERT( ExIsResourceAcquiredSharedLite( R ))
217#define ASSERT_RESOURCE_NOT_MINE(R) NT_ASSERT( !ExIsResourceAcquiredSharedLite( R ))
219#define ASSERT_EXCLUSIVE_CDDATA NT_ASSERT( ExIsResourceAcquiredExclusiveLite( &CdData.DataResource ))
220#define ASSERT_EXCLUSIVE_VCB(V) NT_ASSERT( ExIsResourceAcquiredExclusiveLite( &(V)->VcbResource ))
221#define ASSERT_SHARED_VCB(V) NT_ASSERT( ExIsResourceAcquiredSharedLite( &(V)->VcbResource ))
223#define ASSERT_EXCLUSIVE_FCB(F) NT_ASSERT( ExIsResourceAcquiredExclusiveLite( &(F)->FcbNonpaged->FcbResource ))
224#define ASSERT_SHARED_FCB(F) NT_ASSERT( ExIsResourceAcquiredSharedLite( &(F)->FcbNonpaged->FcbResource ))
226#define ASSERT_EXCLUSIVE_FILE(F) NT_ASSERT( ExIsResourceAcquiredExclusiveLite( (F)->Resource ))
227#define ASSERT_SHARED_FILE(F) NT_ASSERT( ExIsResourceAcquiredSharedLite( (F)->Resource ))
229#define ASSERT_LOCKED_VCB(V) NT_ASSERT( (V)->VcbLockThread == PsGetCurrentThread() )
230#define ASSERT_NOT_LOCKED_VCB(V) NT_ASSERT( (V)->VcbLockThread != PsGetCurrentThread() )
232#define ASSERT_LOCKED_FCB(F) NT_ASSERT( !FlagOn( (F)->FcbState, FCB_STATE_IN_FCB_TABLE) || ((F)->FcbLockThread == PsGetCurrentThread()))
233#define ASSERT_NOT_LOCKED_FCB(F) NT_ASSERT( (F)->FcbLockThread != PsGetCurrentThread() )
237#define DebugBreakOnStatus(S) { NOTHING; }
239#define ASSERT_STRUCT(S,T) { NOTHING; }
240#define ASSERT_OPTIONAL_STRUCT(S,T) { NOTHING; }
241#define ASSERT_VCB(V) { NOTHING; }
242#define ASSERT_OPTIONAL_VCB(V) { NOTHING; }
243#define ASSERT_FCB(F) { NOTHING; }
244#define ASSERT_FCB_NONPAGED(FN) { NOTHING; }
245#define ASSERT_OPTIONAL_FCB(FN) { NOTHING; }
246#define ASSERT_CCB(C) { NOTHING; }
247#define ASSERT_OPTIONAL_CCB(C) { NOTHING; }
248#define ASSERT_IRP_CONTEXT(IC) { NOTHING; }
249#define ASSERT_OPTIONAL_IRP_CONTEXT(IC) { NOTHING; }
250#define ASSERT_IRP(I) { NOTHING; }
251#define ASSERT_OPTIONAL_IRP(I) { NOTHING; }
252#define ASSERT_FILE_OBJECT(FO) { NOTHING; }
253#define ASSERT_OPTIONAL_FILE_OBJECT(FO) { NOTHING; }
254#define ASSERT_EXCLUSIVE_RESOURCE(R) { NOTHING; }
255#define ASSERT_SHARED_RESOURCE(R) { NOTHING; }
256#define ASSERT_RESOURCE_NOT_MINE(R) { NOTHING; }
257#define ASSERT_EXCLUSIVE_CDDATA { NOTHING; }
258#define ASSERT_EXCLUSIVE_VCB(V) { NOTHING; }
259#define ASSERT_SHARED_VCB(V) { NOTHING; }
260#define ASSERT_EXCLUSIVE_FCB(F) { NOTHING; }
261#define ASSERT_SHARED_FCB(F) { NOTHING; }
262#define ASSERT_EXCLUSIVE_FILE(F) { NOTHING; }
263#define ASSERT_SHARED_FILE(F) { NOTHING; }
264#define ASSERT_LOCKED_VCB(V) { NOTHING; }
265#define ASSERT_NOT_LOCKED_VCB(V) { NOTHING; }
266#define ASSERT_LOCKED_FCB(F) { NOTHING; }
267#define ASSERT_NOT_LOCKED_FCB(F) { NOTHING; }
LONG CdXAAudioPhileHeader[]
USHORT CdAudioLabelLength
UCHAR CdAudioFileNameLength
WCHAR CdUnicodeSelfArray[]
WCHAR CdUnicodeParentArray[]
ULONG CdAudioDirentsPerSector
FAST_IO_DISPATCH CdFastIoDispatch
UNICODE_STRING CdUnicodeDirectoryNames[]
ULONG CdAudioSystemUseOffset