|
|
1.1 root 1: .th STAT II 8/5/73
2: .sh NAME
3: stat \*- get file status
4: .sh SYNOPSIS
5: (stat = 18.)
6: .br
7: .ft B
8: sys stat; name; buf
9: .s3
10: stat(name, buf)
11: .br
12: char *name;
13: .br
14: struct inode *buf;
15: .ft R
16: .sh DESCRIPTION
17: .it Name
18: points to a null-terminated string naming
19: a file;
20: .it buf
21: is the address of a 36(10) byte buffer
22: into which information is placed concerning the file.
23: It is unnecessary to have any
24: permissions at all with respect to the file, but all directories
25: leading to the file must be readable.
26: After
27: .it stat,
28: .it buf
29: has the following structure (starting offset given in bytes):
30: .s3
31: .if t .ta .5 1i 2.5i
32: .if n .ta 3 9 24
33: .nf
34: struct {
35: char minor; /* +0: minor device of i-node */
36: char major; /* +1: major device */
37: int inumber /* +2 */
38: int flags; /* +4: see below */
39: char nlinks; /* +6: number of links to file */
40: char uid; /* +7: user ID of owner */
41: char gid; /* +8: group ID of owner */
42: char size0; /* +9: high byte of 24-bit size */
43: int size1; /* +10: low word of 24-bit size */
44: int addr[8]; /* +12: block numbers or device number */
45: int actime[2]; /* +28: time of last access */
46: int modtime[2]; /* +32: time of last modification */
47: };
48: .fi
49: .s3
50: The flags are as follows:
51: .s3
52: .lp +10 9
53: 100000 i-node is allocated
54: .lp +10 9
55: 060000 2-bit file type:
56: .lp +15 9
57: 000000 plain file
58: .lp +15 9
59: 040000 directory
60: .lp +15 9
61: 020000 character-type special file
62: .lp +15 9
63: 060000 block-type special file.
64: .lp +10 9
65: 010000 large file
66: .lp +10 9
67: 004000 set user-ID on execution
68: .lp +10 9
69: 002000 set group-ID on execution
70: .lp +10 9
71: 000400 read (owner)
72: .lp +10 9
73: 000200 write (owner)
74: .lp +10 9
75: 000100 execute (owner)
76: .lp +10 9
77: 000070 read, write, execute (group)
78: .lp +10 9
79: 000007 read, write, execute (others)
80: .i0
81: .sh "SEE ALSO"
82: stat(I), fstat(II), fs(V)
83: .sh DIAGNOSTICS
84: Error bit (c-bit)
85: is set if the file cannot be found.
86: From C, a \*-1 return indicates an error.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.