Copyright (C) 1994, Digital Equipment Corp. INTERFACE** stat, lstat, fstat - get file status **Ustat ; FROM Ctypes IMPORT short, int, long, char_star; FROM Utypes IMPORT dev_t, ino_t, off_t, time_t, u_long_t, mode_t, nlink_t, u_short_t, uid_t, gid_t, fstore_t, siteno_t, u_short;
CONST S_IFMT : u_short = 8_0170000; S_IFSOCK: u_short = 8_0140000; S_IFLNK : u_short = 8_0120000; S_IFREG : u_short = 8_0100000; S_IFPIPE: u_short = 8_0000000; S_IFBLK : u_short = 8_0060000; S_IFDIR : u_short = 8_0040000; S_IFCHR : u_short = 8_0020000; S_IFIFO : u_short = 8_0010000; S_IFPORT = S_IFIFO; S_ISUID : u_short = 8_0004000; S_ISGID : u_short = 8_0002000; S_ISVTX : u_short = 8_0001000; S_IREAD : u_short = 8_0000400; S_IWRITE: u_short = 8_0000200; S_IEXEC : u_short = 8_0000100; S_GREAD : u_short = 8_0000040; S_GWRITE: u_short = 8_0000020; S_GEXEC : u_short = 8_0000010; S_OREAD : u_short = 8_0000004; S_OWRITE: u_short = 8_0000002; S_OEXEC : u_short = 8_0000001; TYPE struct_stat = RECORD st_dev : dev_t; st_ino : ino_t; st_mode : mode_t; st_nlink : nlink_t; st_spare0 : u_short_t; st_uid : uid_t; st_gid : gid_t; st_rdev : dev_t; st_size : off_t; st_atime : time_t; st_spare1 : u_long_t; st_mtime : time_t; st_spare2 : u_long_t; st_ctime : time_t; st_spare3 : u_long_t; st_blksize: u_long_t; st_blocks : u_long_t; st_gen : u_long_t; st_type : u_long_t; st_vfs : u_long_t; st_flag : u_long_t; st_cmtcnt : u_long_t; st_fstore : fstore_t; st_version: u_long_t; st_css : siteno_t; st_ss : siteno_t; st_rdevsite: siteno_t; st_spare4 : short; st_nid : long; st_uid_raw: uid_t; st_gid_raw: gid_t; st_uid_rev_tag: u_long_t; st_gid_rev_tag: u_long_t; END; struct_stat_star = UNTRACED REF struct_stat; <*EXTERNAL*> PROCEDURE stat (path: char_star; buf: struct_stat_star): int; <*EXTERNAL*> PROCEDURE lstat (path: char_star; buf: struct_stat_star): int; <*EXTERNAL*> PROCEDURE fstat (fd: int; buf: struct_stat_star): int; END Ustat.