/* * Inode structure as it appears on * a disk block. */ struct dinode { unsigned short di_mode; /* mode and type of file */ short di_nlink; /* number of links to file */ short di_uid; /* owner's user id */ short di_gid; /* access control file (was gid) */ off_t di_size; /* number of bytes in file */ char di_addr[40]; /* disk block addresses */ time_t di_atime; /* time last accessed */ time_t di_mtime; /* time last modified */ time_t di_ctime; /* time created */ }; #define INOPB 8 /* 8 inodes per block */ /* * the 40 address bytes: * 39 used; 13 addresses * of 3 bytes each. * Waterloo uses the last byte for a file creation mask * which is attached to directories. */