/* Sizer.h by Fabbian G. Dufoe, III 350 Ling-A-Mor Terrace South St. Petersburg, Florida 33705 813-823-2350 GENIE: F.DUFOE3 This software is in the public domain. You may use it any way you wish. This file contains the definitions and declarations used in Sizer. Revision summary: 15 October 1991: Initial release 13 June 1992: Replaced "blocks" field in record structure with OFSblocks and FFSblocks for reporting both old file system and fast file system blocks. */ #include #include enum TCode /* Transaction code */ { CLOSEIO, /* Program is finished with I/O channel, close it. */ DONE, /* Program completed normally. */ FAIL, /* Program failed, stop immediately. */ NORM /* Program operating normally. */ }; struct record { enum TCode code; /* Transaction code */ long bytes; /* Number of bytes in the file */ long OFSblocks; /* Number of OFS blocks in the file */ /* 13 June 1992 */ long FFSblocks; /* Number of FFS blocks in the file */ /* 13 June 1992 */ long files; /* Number of files sized so far */ long dirs; /* Number of directories sized so far */ }; #ifndef __NOPROTO #ifndef __PROTO #define __PROTO(a) a #endif #else #ifndef __PROTO #define __PROTO(a) () #endif #endif /* Prototypes for functions defined in Sizer.c */ void main __PROTO((int argc, char **argv)); /* Prototypes for functions defined in SizerW.c */ void SizerIO __PROTO((struct record *Record));