Remove unnecessary executable bits
[reactos.git] / drivers / filesystems / cdfs_new / fieldoff.c
1 #include "cdprocs.h"
2 #include <stdio.h>
3
4 #define doit(a,b) { printf("%s %04lx %4lx %s\n", #a, FIELD_OFFSET(a,b), sizeof(d.b), #b); }
5
6 VOID
7 __cdecl
8 main (argc, argv)
9 int argc;
10 char *argv[];
11 {
12 printf("<Record> <offset> <size> <field>\n\n");
13 {
14 CD_MCB d;
15 doit( CD_MCB, MaximumEntryCount );
16 doit( CD_MCB, CurrentEntryCount );
17 doit( CD_MCB, McbArray );
18 }
19 printf("\n");
20 {
21 CD_MCB_ENTRY d;
22 doit( CD_MCB_ENTRY, DiskOffset );
23 doit( CD_MCB_ENTRY, ByteCount );
24 doit( CD_MCB_ENTRY, FileOffset );
25 doit( CD_MCB_ENTRY, DataBlockByteCount );
26 doit( CD_MCB_ENTRY, TotalBlockByteCount );
27 }
28 printf("\n");
29 {
30 CD_NAME d;
31 doit( CD_NAME, FileName );
32 doit( CD_NAME, VersionString );
33 }
34 printf("\n");
35 {
36 NAME_LINK d;
37 doit( NAME_LINK, Links );
38 doit( NAME_LINK, FileName );
39 }
40 printf("\n");
41 {
42 PREFIX_ENTRY d;
43 doit( PREFIX_ENTRY, Fcb );
44 doit( PREFIX_ENTRY, PrefixFlags );
45 doit( PREFIX_ENTRY, ExactCaseName );
46 doit( PREFIX_ENTRY, IgnoreCaseName );
47 doit( PREFIX_ENTRY, FileNameBuffer );
48 }
49 printf("\n");
50 {
51 CD_DATA d;
52 doit( CD_DATA, NodeTypeCode );
53 doit( CD_DATA, NodeByteSize );
54 doit( CD_DATA, DriverObject );
55 doit( CD_DATA, VcbQueue );
56 doit( CD_DATA, IrpContextDepth );
57 doit( CD_DATA, IrpContextMaxDepth );
58 doit( CD_DATA, IrpContextList );
59 doit( CD_DATA, FileSystemDeviceObject );
60 doit( CD_DATA, AsyncCloseQueue );
61 doit( CD_DATA, AsyncCloseCount );
62 doit( CD_DATA, FspCloseActive );
63 doit( CD_DATA, ReduceDelayedClose );
64 doit( CD_DATA, PadUshort );
65 doit( CD_DATA, DelayedCloseQueue );
66 doit( CD_DATA, DelayedCloseCount );
67 doit( CD_DATA, MinDelayedCloseCount );
68 doit( CD_DATA, MaxDelayedCloseCount );
69 doit( CD_DATA, CdDataLockThread );
70 doit( CD_DATA, CdDataMutex );
71 doit( CD_DATA, DataResource );
72 doit( CD_DATA, CacheManagerCallbacks );
73 doit( CD_DATA, CacheManagerVolumeCallbacks );
74 doit( CD_DATA, CloseItem );
75 }
76 printf("\n");
77 {
78 VCB d;
79 doit( VCB, NodeTypeCode );
80 doit( VCB, NodeByteSize );
81 doit( VCB, Vpb );
82 doit( VCB, TargetDeviceObject );
83 doit( VCB, VolumeLockFileObject );
84 doit( VCB, VcbLinks );
85 doit( VCB, VcbState );
86 doit( VCB, VcbCondition );
87 doit( VCB, VcbCleanup );
88 doit( VCB, VcbReference );
89 doit( VCB, VcbUserReference );
90 doit( VCB, VolumeDasdFcb );
91 doit( VCB, RootIndexFcb );
92 doit( VCB, PathTableFcb );
93 doit( VCB, BaseSector );
94 doit( VCB, VdSectorOffset );
95 doit( VCB, PrimaryVdSectorOffset );
96 doit( VCB, XASector );
97 doit( VCB, XADiskOffset );
98 doit( VCB, VcbResource );
99 doit( VCB, FileResource );
100 doit( VCB, VcbMutex );
101 doit( VCB, VcbLockThread );
102 doit( VCB, NotifySync );
103 doit( VCB, DirNotifyList );
104 doit( VCB, BlockSize );
105 doit( VCB, BlockToSectorShift );
106 doit( VCB, BlockToByteShift );
107 doit( VCB, BlocksPerSector );
108 doit( VCB, BlockMask );
109 doit( VCB, BlockInverseMask );
110 doit( VCB, FcbTable );
111 doit( VCB, CdromToc );
112 doit( VCB, TocLength );
113 doit( VCB, TrackCount );
114 doit( VCB, DiskFlags );
115 doit( VCB, BlockFactor );
116 }
117 printf("\n");
118 {
119 VOLUME_DEVICE_OBJECT d;
120 doit( VOLUME_DEVICE_OBJECT, DeviceObject );
121 doit( VOLUME_DEVICE_OBJECT, PostedRequestCount );
122 doit( VOLUME_DEVICE_OBJECT, OverflowQueueCount );
123 doit( VOLUME_DEVICE_OBJECT, OverflowQueue );
124 doit( VOLUME_DEVICE_OBJECT, OverflowQueueSpinLock );
125 doit( VOLUME_DEVICE_OBJECT, Vcb );
126 }
127 printf("\n");
128 {
129 FCB_DATA d;
130 doit( FCB_DATA, FileLock );
131 }
132 printf("\n");
133 {
134 FCB_INDEX d;
135 doit( FCB_INDEX, FileObject );
136 doit( FCB_INDEX, StreamOffset );
137 doit( FCB_INDEX, FcbQueue );
138 doit( FCB_INDEX, Ordinal );
139 doit( FCB_INDEX, ChildPathTableOffset );
140 doit( FCB_INDEX, ChildOrdinal );
141 doit( FCB_INDEX, ExactCaseRoot );
142 doit( FCB_INDEX, IgnoreCaseRoot );
143 }
144 printf("\n");
145 {
146 FCB_NONPAGED d;
147 doit( FCB_NONPAGED, NodeTypeCode );
148 doit( FCB_NONPAGED, NodeByteSize );
149 doit( FCB_NONPAGED, SegmentObject );
150 doit( FCB_NONPAGED, FcbResource );
151 doit( FCB_NONPAGED, FcbMutex );
152 }
153 printf("\n");
154 {
155 FCB d;
156 doit( FCB, Header );
157 doit( FCB, Vcb );
158 doit( FCB, ParentFcb );
159 doit( FCB, FcbLinks );
160 doit( FCB, FileId );
161 doit( FCB, FcbCleanup );
162 doit( FCB, FcbReference );
163 doit( FCB, FcbUserReference );
164 doit( FCB, FcbState );
165 doit( FCB, FileAttributes );
166 doit( FCB, XAAttributes );
167 doit( FCB, XAFileNumber );
168 doit( FCB, FcbLockThread );
169 doit( FCB, FcbLockCount );
170 doit( FCB, FcbNonpaged );
171 doit( FCB, ShareAccess );
172 doit( FCB, McbEntry );
173 doit( FCB, Mcb );
174 doit( FCB, ShortNamePrefix );
175 doit( FCB, FileNamePrefix );
176 doit( FCB, CreationTime );
177 doit( FCB, FcbType );
178 }
179 printf("\n");
180 {
181 CCB d;
182 doit( CCB, NodeTypeCode );
183 doit( CCB, NodeByteSize );
184 doit( CCB, Flags );
185 doit( CCB, Fcb );
186 doit( CCB, CurrentDirentOffset );
187 doit( CCB, SearchExpression );
188 }
189 printf("\n");
190 {
191 IRP_CONTEXT d;
192 doit( IRP_CONTEXT, NodeTypeCode );
193 doit( IRP_CONTEXT, NodeByteSize );
194 doit( IRP_CONTEXT, Irp );
195 doit( IRP_CONTEXT, Vcb );
196 doit( IRP_CONTEXT, ExceptionStatus );
197 doit( IRP_CONTEXT, Flags );
198 doit( IRP_CONTEXT, RealDevice );
199 doit( IRP_CONTEXT, IoContext );
200 doit( IRP_CONTEXT, TeardownFcb );
201 doit( IRP_CONTEXT, TopLevel );
202 doit( IRP_CONTEXT, MajorFunction );
203 doit( IRP_CONTEXT, MinorFunction );
204 doit( IRP_CONTEXT, ThreadContext );
205 doit( IRP_CONTEXT, WorkQueueItem );
206 }
207 printf("\n");
208 {
209 IRP_CONTEXT_LITE d;
210 doit( IRP_CONTEXT_LITE, NodeTypeCode );
211 doit( IRP_CONTEXT_LITE, NodeByteSize );
212 doit( IRP_CONTEXT_LITE, Fcb );
213 doit( IRP_CONTEXT_LITE, DelayedCloseLinks );
214 doit( IRP_CONTEXT_LITE, UserReference );
215 doit( IRP_CONTEXT_LITE, RealDevice );
216 }
217 printf("\n");
218 {
219 CD_IO_CONTEXT d;
220 doit( CD_IO_CONTEXT, IrpCount );
221 doit( CD_IO_CONTEXT, MasterIrp );
222 doit( CD_IO_CONTEXT, Status );
223 doit( CD_IO_CONTEXT, AllocatedContext );
224 doit( CD_IO_CONTEXT, Resource );
225 doit( CD_IO_CONTEXT, ResourceThreadId );
226 doit( CD_IO_CONTEXT, SyncEvent );
227 }
228 printf("\n");
229 {
230 THREAD_CONTEXT d;
231 doit( THREAD_CONTEXT, Cdfs );
232 doit( THREAD_CONTEXT, SavedTopLevelIrp );
233 doit( THREAD_CONTEXT, TopLevelIrpContext );
234 }
235 printf("\n");
236 {
237 PATH_ENUM_CONTEXT d;
238 doit( PATH_ENUM_CONTEXT, Data );
239 doit( PATH_ENUM_CONTEXT, BaseOffset );
240 doit( PATH_ENUM_CONTEXT, DataLength );
241 doit( PATH_ENUM_CONTEXT, Bcb );
242 doit( PATH_ENUM_CONTEXT, DataOffset );
243 doit( PATH_ENUM_CONTEXT, AllocatedData );
244 doit( PATH_ENUM_CONTEXT, LastDataBlock );
245 }
246 printf("\n");
247 {
248 PATH_ENTRY d;
249 doit( PATH_ENTRY, Ordinal );
250 doit( PATH_ENTRY, PathTableOffset );
251 doit( PATH_ENTRY, DiskOffset );
252 doit( PATH_ENTRY, PathEntryLength );
253 doit( PATH_ENTRY, ParentOrdinal );
254 doit( PATH_ENTRY, DirNameLen );
255 doit( PATH_ENTRY, DirName );
256 doit( PATH_ENTRY, Flags );
257 doit( PATH_ENTRY, CdDirName );
258 doit( PATH_ENTRY, CdCaseDirName );
259 doit( PATH_ENTRY, NameBuffer );
260 }
261 printf("\n");
262 {
263 COMPOUND_PATH_ENTRY d;
264 doit( COMPOUND_PATH_ENTRY, PathContext );
265 doit( COMPOUND_PATH_ENTRY, PathEntry );
266 }
267 printf("\n");
268 {
269 DIRENT_ENUM_CONTEXT d;
270 doit( DIRENT_ENUM_CONTEXT, Sector );
271 doit( DIRENT_ENUM_CONTEXT, BaseOffset );
272 doit( DIRENT_ENUM_CONTEXT, DataLength );
273 doit( DIRENT_ENUM_CONTEXT, Bcb );
274 doit( DIRENT_ENUM_CONTEXT, SectorOffset );
275 doit( DIRENT_ENUM_CONTEXT, NextDirentOffset );
276 }
277 printf("\n");
278 {
279 DIRENT d;
280 doit( DIRENT, DirentOffset );
281 doit( DIRENT, DirentLength );
282 doit( DIRENT, StartingOffset );
283 doit( DIRENT, DataLength );
284 doit( DIRENT, CdTime );
285 doit( DIRENT, DirentFlags );
286 doit( DIRENT, Flags );
287 doit( DIRENT, FileUnitSize );
288 doit( DIRENT, InterleaveGapSize );
289 doit( DIRENT, SystemUseOffset );
290 doit( DIRENT, XAAttributes );
291 doit( DIRENT, XAFileNumber );
292 doit( DIRENT, FileNameLen );
293 doit( DIRENT, FileName );
294 doit( DIRENT, CdFileName );
295 doit( DIRENT, CdCaseFileName );
296 doit( DIRENT, ExtentType );
297 doit( DIRENT, NameBuffer );
298 }
299 printf("\n");
300 {
301 COMPOUND_DIRENT d;
302 doit( COMPOUND_DIRENT, DirContext );
303 doit( COMPOUND_DIRENT, Dirent );
304 }
305 printf("\n");
306 {
307 FILE_ENUM_CONTEXT d;
308 doit( FILE_ENUM_CONTEXT, PriorDirent );
309 doit( FILE_ENUM_CONTEXT, InitialDirent );
310 doit( FILE_ENUM_CONTEXT, CurrentDirent );
311 doit( FILE_ENUM_CONTEXT, Flags );
312 doit( FILE_ENUM_CONTEXT, FileSize );
313 doit( FILE_ENUM_CONTEXT, ShortName );
314 doit( FILE_ENUM_CONTEXT, ShortNameBuffer );
315 doit( FILE_ENUM_CONTEXT, Dirents );
316 }
317 printf("\n");
318 {
319 RIFF_HEADER d;
320 doit( RIFF_HEADER, ChunkId );
321 doit( RIFF_HEADER, ChunkSize );
322 doit( RIFF_HEADER, SignatureCDXA );
323 doit( RIFF_HEADER, SignatureFMT );
324 doit( RIFF_HEADER, XAChunkSize );
325 doit( RIFF_HEADER, OwnerId );
326 doit( RIFF_HEADER, Attributes );
327 doit( RIFF_HEADER, SignatureXA );
328 doit( RIFF_HEADER, FileNumber );
329 doit( RIFF_HEADER, Reserved );
330 doit( RIFF_HEADER, SignatureData );
331 doit( RIFF_HEADER, RawSectors );
332 }
333 printf("\n");
334 {
335 AUDIO_PLAY_HEADER d;
336 doit( AUDIO_PLAY_HEADER, Chunk );
337 doit( AUDIO_PLAY_HEADER, ChunkSize );
338 doit( AUDIO_PLAY_HEADER, SignatureCDDA );
339 doit( AUDIO_PLAY_HEADER, SignatureFMT );
340 doit( AUDIO_PLAY_HEADER, FMTChunkSize );
341 doit( AUDIO_PLAY_HEADER, FormatTag );
342 doit( AUDIO_PLAY_HEADER, TrackNumber );
343 doit( AUDIO_PLAY_HEADER, DiskID );
344 doit( AUDIO_PLAY_HEADER, StartingSector );
345 doit( AUDIO_PLAY_HEADER, SectorCount );
346 doit( AUDIO_PLAY_HEADER, TrackAddress );
347 doit( AUDIO_PLAY_HEADER, TrackLength );
348 }
349 printf("\n");
350 {
351 RAW_ISO_VD d;
352 doit( RAW_ISO_VD, DescType );
353 doit( RAW_ISO_VD, StandardId );
354 doit( RAW_ISO_VD, Version );
355 doit( RAW_ISO_VD, VolumeFlags );
356 doit( RAW_ISO_VD, SystemId );
357 doit( RAW_ISO_VD, VolumeId );
358 doit( RAW_ISO_VD, Reserved );
359 doit( RAW_ISO_VD, VolSpaceI );
360 doit( RAW_ISO_VD, VolSpaceM );
361 doit( RAW_ISO_VD, CharSet );
362 doit( RAW_ISO_VD, VolSetSizeI );
363 doit( RAW_ISO_VD, VolSetSizeM );
364 doit( RAW_ISO_VD, VolSeqNumI );
365 doit( RAW_ISO_VD, VolSeqNumM );
366 doit( RAW_ISO_VD, LogicalBlkSzI );
367 doit( RAW_ISO_VD, LogicalBlkSzM );
368 doit( RAW_ISO_VD, PathTableSzI );
369 doit( RAW_ISO_VD, PathTableSzM );
370 doit( RAW_ISO_VD, PathTabLocI );
371 doit( RAW_ISO_VD, PathTabLocM );
372 doit( RAW_ISO_VD, RootDe );
373 doit( RAW_ISO_VD, VolSetId );
374 doit( RAW_ISO_VD, PublId );
375 doit( RAW_ISO_VD, PreparerId );
376 doit( RAW_ISO_VD, AppId );
377 doit( RAW_ISO_VD, Copyright );
378 doit( RAW_ISO_VD, Abstract );
379 doit( RAW_ISO_VD, Bibliograph );
380 doit( RAW_ISO_VD, CreateDate );
381 doit( RAW_ISO_VD, ModDate );
382 doit( RAW_ISO_VD, ExpireDate );
383 doit( RAW_ISO_VD, EffectDate );
384 doit( RAW_ISO_VD, FileStructVer );
385 doit( RAW_ISO_VD, Reserved3 );
386 doit( RAW_ISO_VD, ResApp );
387 doit( RAW_ISO_VD, Reserved4 );
388 }
389 printf("\n");
390 {
391 RAW_HSG_VD d;
392 doit( RAW_HSG_VD, BlkNumI );
393 doit( RAW_HSG_VD, BlkNumM );
394 doit( RAW_HSG_VD, DescType );
395 doit( RAW_HSG_VD, StandardId );
396 doit( RAW_HSG_VD, Version );
397 doit( RAW_HSG_VD, VolumeFlags );
398 doit( RAW_HSG_VD, SystemId );
399 doit( RAW_HSG_VD, VolumeId );
400 doit( RAW_HSG_VD, Reserved );
401 doit( RAW_HSG_VD, VolSpaceI );
402 doit( RAW_HSG_VD, VolSpaceM );
403 doit( RAW_HSG_VD, CharSet );
404 doit( RAW_HSG_VD, VolSetSizeI );
405 doit( RAW_HSG_VD, VolSetSizeM );
406 doit( RAW_HSG_VD, VolSeqNumI );
407 doit( RAW_HSG_VD, VolSeqNumM );
408 doit( RAW_HSG_VD, LogicalBlkSzI );
409 doit( RAW_HSG_VD, LogicalBlkSzM );
410 doit( RAW_HSG_VD, PathTableSzI );
411 doit( RAW_HSG_VD, PathTableSzM );
412 doit( RAW_HSG_VD, PathTabLocI );
413 doit( RAW_HSG_VD, PathTabLocM );
414 doit( RAW_HSG_VD, RootDe );
415 doit( RAW_HSG_VD, VolSetId );
416 doit( RAW_HSG_VD, PublId );
417 doit( RAW_HSG_VD, PreparerId );
418 doit( RAW_HSG_VD, AppId );
419 doit( RAW_HSG_VD, Copyright );
420 doit( RAW_HSG_VD, Abstract );
421 doit( RAW_HSG_VD, CreateDate );
422 doit( RAW_HSG_VD, ModDate );
423 doit( RAW_HSG_VD, ExpireDate );
424 doit( RAW_HSG_VD, EffectDate );
425 doit( RAW_HSG_VD, FileStructVer );
426 doit( RAW_HSG_VD, Reserved3 );
427 doit( RAW_HSG_VD, ResApp );
428 doit( RAW_HSG_VD, Reserved4 );
429 }
430 printf("\n");
431 {
432 RAW_DIRENT d;
433 doit( RAW_DIRENT, DirLen );
434 doit( RAW_DIRENT, XarLen );
435 doit( RAW_DIRENT, FileLoc );
436 doit( RAW_DIRENT, FileLocMot );
437 doit( RAW_DIRENT, DataLen );
438 doit( RAW_DIRENT, DataLenMot );
439 doit( RAW_DIRENT, RecordTime );
440 doit( RAW_DIRENT, FlagsHSG );
441 doit( RAW_DIRENT, FlagsISO );
442 doit( RAW_DIRENT, IntLeaveSize );
443 doit( RAW_DIRENT, IntLeaveSkip );
444 doit( RAW_DIRENT, Vssn );
445 doit( RAW_DIRENT, VssnMot );
446 doit( RAW_DIRENT, FileIdLen );
447 doit( RAW_DIRENT, FileId );
448 }
449 printf("\n");
450 {
451 RAW_PATH_ISO d;
452 doit( RAW_PATH_ISO, DirIdLen );
453 doit( RAW_PATH_ISO, XarLen );
454 doit( RAW_PATH_ISO, DirLoc );
455 doit( RAW_PATH_ISO, ParentNum );
456 doit( RAW_PATH_ISO, DirId );
457 }
458 printf("\n");
459 {
460 RAW_PATH_HSG d;
461 doit( RAW_PATH_HSG, DirLoc );
462 doit( RAW_PATH_HSG, XarLen );
463 doit( RAW_PATH_HSG, DirIdLen );
464 doit( RAW_PATH_HSG, ParentNum );
465 doit( RAW_PATH_HSG, DirId );
466 }
467 printf("\n");
468 {
469 SYSTEM_USE_XA d;
470 doit( SYSTEM_USE_XA, OwnerId );
471 doit( SYSTEM_USE_XA, Attributes );
472 doit( SYSTEM_USE_XA, Signature );
473 doit( SYSTEM_USE_XA, FileNumber );
474 doit( SYSTEM_USE_XA, Reserved );
475 }
476 }