| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 | /* *	Copyright (C) Dataindustrier DIAB AB, Sweden, 1986 */#ifndef _rhSYS_FS_DNIX_SYSFILE#define _rhSYS_FS_DNIX_SYSFILE/* *	Structures used by filehandler *	SCCSID(@(#) sysfile.h	5.2.2.1) *//* *	Structure of the system-file * *	This is a read-only structure for some vital volume parameters *	All numerical values are 32-bit	stored MSByte ... LSByte. *	Last byte is an overall checksum computed as *	the sum of all bytes modulo 256 and negated(so it will sum to 0). * *	Soft checksum stuff: *	If the "s_ckflg" flag is set, then soft checksum is enabled on this *	volume. This checksum is computed by XOR'ing each data block *	(s_bksiz bytes each) into a n-byte integer. The value of n is given by *	the value of "s_chkflg". n is preferrably four (4) on a 32-bit CPU. *	The checksum's are stored at s_vlsiz and beyond, one n-byte value *	for each logical block. There is a utility program to turn this *	feature on or off. */struct sysfile {	char	s_fhnd[16];	/* Filehandler spec */	daddr_t	s_bmadr;	/* Bitmap pointer */	daddr_t	s_inadr;	/* Inode list pointer */	daddr_t	s_rtadr;	/* Root file pointer */	daddr_t	s_swadr;	/* Swap area */	daddr_t	s_vlsiz;	/* Volume size */	daddr_t	s_bmsiz;	/* Bitmap size */	daddr_t	s_swsiz;	/* Swap area size */	daddr_t	s_bksiz;	/* Block size */	daddr_t	s_disiz;	/* Size of a directory entry */	daddr_t	s_insiz;	/* Default size of inode list */	time_t	s_time;		/* Time initiated */	char	s_fname[8];	/* Filsys name */	char	s_fpack[8];	/* Filsys pack name */	daddr_t	s_[44];		/* Reserved */	char	s_c[2];		/* Reserved */	char	s_ckflg;	/* Checksum on this volume */	char	s_chksum;	/* Check sum of all bytes */};#define filsys	sysfile		/* To make diab and ATT compatible */#endif /* _rhSYS_FS_DNIX_SYSFILE */
 |