class CSUM
{
public int cs_ndir;
public int cs_nbfree;
public int cs_nifree;
public int cs_nffree;
}
class CSUMTotal
{
public long cs_ndir;
public long cs_nbfree;
public long cs_nifree;
public long cs_nffree;
public long cs_numclusters;
public long[] cs_spare = new long[3];
}
class FS
{
internal const int MINBSIZE = 4096;
internal const int MAXMNTLEN = 468;
internal const int MAXVOLLEN = 32;
internal const int FSMAXSNAP = 20;
internal const int NOCSPTRS = ((128 / 4 - 4));
public int FirstField;
public int Unused1;
public int SBlkNo;
public int CBlkNo;
public int IBlkNo;
public int DBlkNo;
public int OldCGOffset;
public int OldCGMask;
public int OldTime;
public int OldSize;
public int OldDSize;
public int NCG;
public int BSize;
public int FSize;
public int Frag;
public int MinFree;
public int OldRotDelay;
public int OldRPS;
public int BMask;
public int FMask;
public int BShift;
public int FShift;
public int MaxContig;
public int MaxBpg;
public int FSBTODB;
public int SBSize;
public int[] Spare1 = new int[2];
public int NINDIR;
public int INOPD;
public int OldNSPF;
public int Optim;
public int OldNPSect;
public int OldInterleave;
public int OldTrackSkew;
public int[] Id = new int[2];
public int OldCSAddr;
public int CSSize;
public int CGSize;
public int Spare2;
public int OldNSect;
public int OldSPC;
public int OldNCyl;
public int OldCPG;
public int IPG;
public int FPG;
public CSUM OldCSTotal = new CSUM();
public byte FMod;
public byte Clean;
public byte ROnly;
public byte OldFlags;
public char[] FSMnt = new char[MAXMNTLEN];
public char[] VolName = new char[MAXVOLLEN];
public int SWUID;
public int Pad;
public int CGRotor;
public byte[] OCSP = new byte[NOCSPTRS];
public int ContigDirs;
public CSUM CSP = new CSUM();
public int MaxCluster;
public int Active;
public int OldCPC;
public int MaxBSize;
public long[] SpareCon64 = new long[17];
public int SBlockLoc;
public CSUMTotal CSTotal = new CSUMTotal();
public int Time;
public int Size;
public int DSize;
public int CSAddr;
public int PendingBlocks;
public int PendingINodes;
public int[] SnapINum = new int[FSMAXSNAP];
public int AvgFileSize;
public int AvgFPDir;
public int SaveCGSize;
public int[] SpareCon32 = new int[25];
public int Flags;
public int ContigSumSize;
public int MaxSymLinkLen;
public int OldINodeFmt;
public ulong MaxFileSize;
public int QBMask;
public int QFMask;
public int State;
public int OldPostTblFormat;
public int OldNRPos;
public int[] Spare5 = new int[2];
public int Magic;
}