diff options
Diffstat (limited to 'src/lib/libc/string/strmode.3')
| -rw-r--r-- | src/lib/libc/string/strmode.3 | 80 |
1 files changed, 45 insertions, 35 deletions
diff --git a/src/lib/libc/string/strmode.3 b/src/lib/libc/string/strmode.3 index 1907e7ab03..bc45c4ce1f 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.11 2003/09/02 18:24:21 jmc 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 |
| @@ -9,11 +11,7 @@ | |||
| 9 | .\" 2. Redistributions in binary form must reproduce the above copyright | 11 | .\" 2. Redistributions in binary form must reproduce the above copyright |
| 10 | .\" notice, this list of conditions and the following disclaimer in the | 12 | .\" notice, this list of conditions and the following disclaimer in the |
| 11 | .\" documentation and/or other materials provided with the distribution. | 13 | .\" documentation and/or other materials provided with the distribution. |
| 12 | .\" 3. All advertising materials mentioning features or use of this software | 14 | .\" 3. Neither the name of the University nor the names of its contributors |
| 13 | .\" must display the following acknowledgement: | ||
| 14 | .\" This product includes software developed by the University of | ||
| 15 | .\" California, Berkeley and its contributors. | ||
| 16 | .\" 4. Neither the name of the University nor the names of its contributors | ||
| 17 | .\" may be used to endorse or promote products derived from this software | 15 | .\" may be used to endorse or promote products derived from this software |
| 18 | .\" without specific prior written permission. | 16 | .\" without specific prior written permission. |
| 19 | .\" | 17 | .\" |
| @@ -29,10 +27,9 @@ | |||
| 29 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | 27 | .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
| 30 | .\" SUCH DAMAGE. | 28 | .\" SUCH DAMAGE. |
| 31 | .\" | 29 | .\" |
| 32 | .\" from: @(#)strmode.3 5.4 (Berkeley) 7/31/91 | 30 | .\" @(#)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 | .\" | 31 | .\" |
| 35 | .Dd July 31, 1991 | 32 | .Dd July 28, 1994 |
| 36 | .Dt STRMODE 3 | 33 | .Dt STRMODE 3 |
| 37 | .Os | 34 | .Os |
| 38 | .Sh NAME | 35 | .Sh NAME |
| @@ -45,15 +42,13 @@ | |||
| 45 | .Sh DESCRIPTION | 42 | .Sh DESCRIPTION |
| 46 | The | 43 | The |
| 47 | .Fn strmode | 44 | .Fn strmode |
| 48 | function | 45 | function converts a file |
| 49 | converts a file | ||
| 50 | .Fa mode | 46 | .Fa mode |
| 51 | (the type and permission information associated with an inode, see | 47 | (the type and permission information associated with an inode, see |
| 52 | .Xr stat 2 ) | 48 | .Xr stat 2 ) |
| 53 | into a symbolic string which is stored in the location referenced by | 49 | into a symbolic string which is stored in the location referenced by |
| 54 | .Fa bp . | 50 | .Fa bp . |
| 55 | This stored string is eleven characters in length plus a trailing | 51 | This stored string is eleven characters in length plus a trailing null byte. |
| 56 | .Dv NULL . | ||
| 57 | .Pp | 52 | .Pp |
| 58 | The first character is the inode type, and will be one of the following: | 53 | The first character is the inode type, and will be one of the following: |
| 59 | .Pp | 54 | .Pp |
| @@ -69,10 +64,12 @@ directory | |||
| 69 | .It l | 64 | .It l |
| 70 | symbolic link | 65 | symbolic link |
| 71 | .It p | 66 | .It p |
| 72 | fifo | 67 | FIFO |
| 73 | .It s | 68 | .It s |
| 74 | socket | 69 | socket |
| 75 | .It ? | 70 | .It w |
| 71 | whiteout | ||
| 72 | .It \&? | ||
| 76 | unknown inode type | 73 | unknown inode type |
| 77 | .El | 74 | .El |
| 78 | .Pp | 75 | .Pp |
| @@ -80,46 +77,58 @@ The next nine characters encode three sets of permissions, in three | |||
| 80 | characters each. | 77 | characters each. |
| 81 | The first three characters are the permissions for the owner of the | 78 | 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 | 79 | file, the second three for the group the file belongs to, and the |
| 83 | third for the ``other'', or default, set of users. | 80 | third for the |
| 81 | .Dq other , | ||
| 82 | or default, set of users. | ||
| 84 | .Pp | 83 | .Pp |
| 85 | Permission checking is done as specifically as possible. | 84 | Permission checking is done as specifically as possible. |
| 86 | If read permission is denied to the owner of a file in the first set | 85 | 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. | 86 | 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 | 87 | 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. | 88 | permissions allow reading or the |
| 89 | .Dq other | ||
| 90 | permissions allow reading. | ||
| 90 | .Pp | 91 | .Pp |
| 91 | If the first character of the three character set is an ``r'', the file is | 92 | 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. | 93 | .Sq r , |
| 94 | the file is readable for that set of users; if a dash | ||
| 95 | .Pq Ql - , | ||
| 96 | it is not readable. | ||
| 93 | .Pp | 97 | .Pp |
| 94 | If the second character of the three character set is a ``w'', the file is | 98 | 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. | 99 | .Sq w , |
| 100 | the file is writable for that set of users; if a dash | ||
| 101 | .Pq Ql - , | ||
| 102 | it is not writable. | ||
| 96 | .Pp | 103 | .Pp |
| 97 | The third character is the first of the following characters that apply: | 104 | The third character is the first of the following characters that apply: |
| 98 | .Bl -tag -width xxxx | 105 | .Bl -tag -width xxxx |
| 99 | .It S | 106 | .It S |
| 100 | If the character is part of the owner permissions and the file is not | 107 | 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 | 108 | executable or the directory is not searchable by the owner, and the |
| 102 | set-user-id bit is set. | 109 | set-user-ID bit is set. |
| 103 | .It S | 110 | .It S |
| 104 | If the character is part of the group permissions and the file is not | 111 | 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 | 112 | executable or the directory is not searchable by the group, and the |
| 106 | set-group-id bit is set. | 113 | set-group-ID bit is set. |
| 107 | .It T | 114 | .It T |
| 108 | If the character is part of the other permissions and the file is not | 115 | 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'' | 116 | executable or the directory is not searchable by others, and the |
| 117 | .Dq sticky | ||
| 110 | .Pq Dv S_ISVTX | 118 | .Pq Dv S_ISVTX |
| 111 | bit is set. | 119 | bit is set. |
| 112 | .It s | 120 | .It s |
| 113 | If the character is part of the owner permissions and the file is | 121 | 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 | 122 | executable or the directory searchable by the owner, and the set-user-ID |
| 115 | bit is set. | 123 | bit is set. |
| 116 | .It s | 124 | .It s |
| 117 | If the character is part of the group permissions and the file is | 125 | 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 | 126 | executable or the directory searchable by the group, and the set-group-ID |
| 119 | bit is set. | 127 | bit is set. |
| 120 | .It t | 128 | .It t |
| 121 | If the character is part of the other permissions and the file is | 129 | If the character is part of the other permissions and the file is |
| 122 | executable or the directory searchable, by others, and the ``sticky'' | 130 | executable or the directory searchable by others, and the |
| 131 | .Dq sticky | ||
| 123 | .Pq Dv S_ISVTX | 132 | .Pq Dv S_ISVTX |
| 124 | bit is set. | 133 | bit is set. |
| 125 | .It x | 134 | .It x |
| @@ -128,14 +137,15 @@ The file is executable or the directory is searchable. | |||
| 128 | None of the above apply. | 137 | None of the above apply. |
| 129 | .El | 138 | .El |
| 130 | .Pp | 139 | .Pp |
| 131 | The last character is a plus sign ``+'' if any there are any alternate | 140 | The last character is a plus sign |
| 141 | .Pq Ql + | ||
| 142 | if there are any alternate | ||
| 132 | or additional access control methods associated with the inode, otherwise | 143 | or additional access control methods associated with the inode, otherwise |
| 133 | it will be a space. | 144 | it will be a space. |
| 134 | .Sh RETURN VALUES | 145 | .Sh RETURN VALUES |
| 135 | The | 146 | The |
| 136 | .Fn strmode | 147 | .Fn strmode |
| 137 | function | 148 | function always returns 0. |
| 138 | always returns 0. | ||
| 139 | .Sh SEE ALSO | 149 | .Sh SEE ALSO |
| 140 | .Xr chmod 1 , | 150 | .Xr chmod 1 , |
| 141 | .Xr find 1 , | 151 | .Xr find 1 , |
| @@ -145,5 +155,5 @@ always returns 0. | |||
| 145 | .Sh HISTORY | 155 | .Sh HISTORY |
| 146 | The | 156 | The |
| 147 | .Fn strmode | 157 | .Fn strmode |
| 148 | function | 158 | function first appeared in |
| 149 | .Ud . | 159 | .Bx 4.4 . |
