diff options
Diffstat (limited to 'src/lib/libc/string/strmode.3')
-rw-r--r-- | src/lib/libc/string/strmode.3 | 70 |
1 files changed, 42 insertions, 28 deletions
diff --git a/src/lib/libc/string/strmode.3 b/src/lib/libc/string/strmode.3 index 1907e7ab03..bf311f1f99 100644 --- a/src/lib/libc/string/strmode.3 +++ b/src/lib/libc/string/strmode.3 | |||
@@ -1,5 +1,7 @@ | |||
1 | .\" Copyright (c) 1990, 1991 The Regents of the University of California. | 1 | .\" $OpenBSD: strmode.3,v 1.8 2000/04/21 15:24:20 aaron Exp $ |
2 | .\" All rights reserved. | 2 | .\" |
3 | .\" Copyright (c) 1990, 1991, 1993 | ||
4 | .\" The Regents of the University of California. All rights reserved. | ||
3 | .\" | 5 | .\" |
4 | .\" Redistribution and use in source and binary forms, with or without | 6 | .\" Redistribution and use in source and binary forms, with or without |
5 | .\" modification, are permitted provided that the following conditions | 7 | .\" modification, are permitted provided that the following conditions |
@@ -29,10 +31,9 @@ | |||
29 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | 31 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
30 | .\" SUCH DAMAGE. | 32 | .\" SUCH DAMAGE. |
31 | .\" | 33 | .\" |
32 | .\" from: @(#)strmode.3 5.4 (Berkeley) 7/31/91 | 34 | .\" @(#)strmode.3 8.3 (Berkeley) 7/28/94 |
33 | .\" $Id: strmode.3,v 1.1.1.1 1995/10/18 08:42:22 deraadt Exp $ | ||
34 | .\" | 35 | .\" |
35 | .Dd July 31, 1991 | 36 | .Dd July 28, 1994 |
36 | .Dt STRMODE 3 | 37 | .Dt STRMODE 3 |
37 | .Os | 38 | .Os |
38 | .Sh NAME | 39 | .Sh NAME |
@@ -45,15 +46,13 @@ | |||
45 | .Sh DESCRIPTION | 46 | .Sh DESCRIPTION |
46 | The | 47 | The |
47 | .Fn strmode | 48 | .Fn strmode |
48 | function | 49 | function converts a file |
49 | converts a file | ||
50 | .Fa mode | 50 | .Fa mode |
51 | (the type and permission information associated with an inode, see | 51 | (the type and permission information associated with an inode, see |
52 | .Xr stat 2 ) | 52 | .Xr stat 2 ) |
53 | into a symbolic string which is stored in the location referenced by | 53 | into a symbolic string which is stored in the location referenced by |
54 | .Fa bp . | 54 | .Fa bp . |
55 | This stored string is eleven characters in length plus a trailing | 55 | This stored string is eleven characters in length plus a trailing null byte. |
56 | .Dv NULL . | ||
57 | .Pp | 56 | .Pp |
58 | The first character is the inode type, and will be one of the following: | 57 | The first character is the inode type, and will be one of the following: |
59 | .Pp | 58 | .Pp |
@@ -72,6 +71,8 @@ symbolic link | |||
72 | fifo | 71 | fifo |
73 | .It s | 72 | .It s |
74 | socket | 73 | socket |
74 | .It w | ||
75 | whiteout | ||
75 | .It ? | 76 | .It ? |
76 | unknown inode type | 77 | unknown inode type |
77 | .El | 78 | .El |
@@ -80,46 +81,58 @@ The next nine characters encode three sets of permissions, in three | |||
80 | characters each. | 81 | characters each. |
81 | The first three characters are the permissions for the owner of the | 82 | The first three characters are the permissions for the owner of the |
82 | file, the second three for the group the file belongs to, and the | 83 | file, the second three for the group the file belongs to, and the |
83 | third for the ``other'', or default, set of users. | 84 | third for the |
85 | .Dq other , | ||
86 | or default, set of users. | ||
84 | .Pp | 87 | .Pp |
85 | Permission checking is done as specifically as possible. | 88 | Permission checking is done as specifically as possible. |
86 | If read permission is denied to the owner of a file in the first set | 89 | If read permission is denied to the owner of a file in the first set |
87 | of permissions, the owner of the file will not be able to read the file. | 90 | of permissions, the owner of the file will not be able to read the file. |
88 | This is true even if the owner is in the file's group and the group | 91 | This is true even if the owner is in the file's group and the group |
89 | permissions allow reading or the ``other'' permissions allow reading. | 92 | permissions allow reading or the |
93 | .Dq other | ||
94 | permissions allow reading. | ||
90 | .Pp | 95 | .Pp |
91 | If the first character of the three character set is an ``r'', the file is | 96 | If the first character of the three character set is an |
92 | readable for that set of users; if a dash ``\-'', it is not readable. | 97 | .Sq r , |
98 | the file is readable for that set of users; if a dash | ||
99 | .Pq Ql - , | ||
100 | it is not readable. | ||
93 | .Pp | 101 | .Pp |
94 | If the second character of the three character set is a ``w'', the file is | 102 | If the second character of the three character set is a |
95 | writable for that set of users; if a dash ``\-'', it is not writable. | 103 | .Sq w , |
104 | the file is writable for that set of users; if a dash | ||
105 | .Pq Ql - , | ||
106 | it is not writable. | ||
96 | .Pp | 107 | .Pp |
97 | The third character is the first of the following characters that apply: | 108 | The third character is the first of the following characters that apply: |
98 | .Bl -tag -width xxxx | 109 | .Bl -tag -width xxxx |
99 | .It S | 110 | .It S |
100 | If the character is part of the owner permissions and the file is not | 111 | If the character is part of the owner permissions and the file is not |
101 | executable or the directory is not searchable, by the owner, and the | 112 | executable or the directory is not searchable by the owner, and the |
102 | set-user-id bit is set. | 113 | set-user-ID bit is set. |
103 | .It S | 114 | .It S |
104 | If the character is part of the group permissions and the file is not | 115 | If the character is part of the group permissions and the file is not |
105 | executable or the directory is not searchable, by the group, and the | 116 | executable or the directory is not searchable by the group, and the |
106 | set-group-id bit is set. | 117 | set-group-ID bit is set. |
107 | .It T | 118 | .It T |
108 | If the character is part of the other permissions and the file is not | 119 | If the character is part of the other permissions and the file is not |
109 | executable or the directory is not searchable, by others, and the ``sticky'' | 120 | executable or the directory is not searchable by others, and the |
121 | .Dq sticky | ||
110 | .Pq Dv S_ISVTX | 122 | .Pq Dv S_ISVTX |
111 | bit is set. | 123 | bit is set. |
112 | .It s | 124 | .It s |
113 | If the character is part of the owner permissions and the file is | 125 | If the character is part of the owner permissions and the file is |
114 | executable or the directory searchable, by the owner, and the set-user-id | 126 | executable or the directory searchable by the owner, and the set-user-ID |
115 | bit is set. | 127 | bit is set. |
116 | .It s | 128 | .It s |
117 | If the character is part of the group permissions and the file is | 129 | If the character is part of the group permissions and the file is |
118 | executable or the directory searchable, by the group, and the set-group-id | 130 | executable or the directory searchable by the group, and the set-group-ID |
119 | bit is set. | 131 | bit is set. |
120 | .It t | 132 | .It t |
121 | If the character is part of the other permissions and the file is | 133 | If the character is part of the other permissions and the file is |
122 | executable or the directory searchable, by others, and the ``sticky'' | 134 | executable or the directory searchable by others, and the |
135 | .Dq sticky | ||
123 | .Pq Dv S_ISVTX | 136 | .Pq Dv S_ISVTX |
124 | bit is set. | 137 | bit is set. |
125 | .It x | 138 | .It x |
@@ -128,14 +141,15 @@ The file is executable or the directory is searchable. | |||
128 | None of the above apply. | 141 | None of the above apply. |
129 | .El | 142 | .El |
130 | .Pp | 143 | .Pp |
131 | The last character is a plus sign ``+'' if any there are any alternate | 144 | The last character is a plus sign |
145 | .Pq Ql + | ||
146 | if there are any alternate | ||
132 | or additional access control methods associated with the inode, otherwise | 147 | or additional access control methods associated with the inode, otherwise |
133 | it will be a space. | 148 | it will be a space. |
134 | .Sh RETURN VALUES | 149 | .Sh RETURN VALUES |
135 | The | 150 | The |
136 | .Fn strmode | 151 | .Fn strmode |
137 | function | 152 | function always returns 0. |
138 | always returns 0. | ||
139 | .Sh SEE ALSO | 153 | .Sh SEE ALSO |
140 | .Xr chmod 1 , | 154 | .Xr chmod 1 , |
141 | .Xr find 1 , | 155 | .Xr find 1 , |
@@ -145,5 +159,5 @@ always returns 0. | |||
145 | .Sh HISTORY | 159 | .Sh HISTORY |
146 | The | 160 | The |
147 | .Fn strmode | 161 | .Fn strmode |
148 | function | 162 | function first appeared in |
149 | .Ud . | 163 | .Bx 4.4 . |