homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: os module: Need a better description of "mode"
Type: Stage:
Components: Documentation Versions: Python 2.3
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: georg.brandl Nosy List: blunck2, georg.brandl, georg.brandl, logistix, mshomphe, nnorwitz, tim.peters
Priority: normal Keywords:

Created on 2003年06月17日 00:13 by mshomphe, last changed 2022年04月10日 16:09 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
os.chmod.thread.txt mshomphe, 2003年06月17日 00:13 Email thread discussing os.chmod()
os.chmod.txt mshomphe, 2003年06月17日 02:05
Messages (12)
msg16441 - (view) Author: Matthew Shomphe (mshomphe) Date: 2003年06月17日 00:13
The page <http://www.python.
org/doc/current/lib/os-file-dir.html> says the following 
about the function os.chmod:
chmod(path, mode) 
Change the mode of path to the numeric mode. 
Availability: Unix, Windows. 
The "mode" values are unclear. It turns out that the 
UNIX file permission set (e.g., 0666 for read/writeable) 
works with the Windows set (where 0666 translates to 
33206).
Is it possible to describe the file permissions in more 
detail in the documentation at this point?
Attached is an email thread discussing this 
documentation issue.
msg16442 - (view) Author: Neal Norwitz (nnorwitz) * (Python committer) Date: 2003年06月17日 01:06
Logged In: YES 
user_id=33168
Could you try to produce a patch to improve the
documentation? Or perhaps suggest better wording?
msg16443 - (view) Author: Matthew Shomphe (mshomphe) Date: 2003年06月17日 02:05
Logged In: YES 
user_id=716326
Here's my first pass at some additional documentation. My 
HTML skills are not up to par, but I've tried :) I've attached 
the document separately.
m@
msg16444 - (view) Author: Grant Olson (logistix) Date: 2003年06月17日 02:51
Logged In: YES 
user_id=699438
Realistically, you should NEVER intentionally use chmod to set 
file permissions on Windows. The FAT filesystem has no 
permissions, and NTFS has ACLs which are much too complex 
to map to a chmod style call. MS only has chmod support so 
they can claim some level of posix compliance.
I'm not saying you should drop the ability to call os.chmod on 
windows, but perhaps the docs should say that its not the 
recommended way of doing things. Unfortunately, there's not 
a recommended way of setting security that'll work on all 
Windows platforms either (although I'd start with os.popen
("cacls ...") Even win32security requires some serious 
programming just to get started with manipulating ACLs.
Typical security looks something like this:
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Documents and Settings\grant>xcacls "\Program files"
C:\Program Files BUILTIN\Users:R
 BUILTIN\Users:(OI)(CI)(IO)(special access:)
 GENERIC_READ
 GENERIC_EXECUTE
 BUILTIN\Power Users:C
 BUILTIN\Power Users:(OI)(CI)(IO)C
 BUILTIN\Administrators:F
 BUILTIN\Administrators:(OI)(CI)(IO)F
 NT AUTHORITY\SYSTEM:F
 NT AUTHORITY\SYSTEM:(OI)(CI)(IO)F
 BUILTIN\Administrators:F
 CREATOR OWNER:(OI)(CI)(IO)F
C:\Documents and Settings\grant>
msg16445 - (view) Author: Tim Peters (tim.peters) * (Python committer) Date: 2003年06月17日 03:28
Logged In: YES 
user_id=31435
Well, let's not overreact here -- MS's _chmod simply calls the 
Win32 SetFileAttributes(), and the only thing it can change is 
the FILE_ATTRIBUTE_READONLY flag. That's all part of 
Windows base services, and makes sense on FAT too.
msg16446 - (view) Author: Christopher Blunck (blunck2) Date: 2003年06月17日 03:37
Logged In: YES 
user_id=531881
see patch 755677
sheesh neal, you couldn't patch this? ;-)
msg16447 - (view) Author: Grant Olson (logistix) Date: 2003年06月17日 05:35
Logged In: YES 
user_id=699438
All I'm saying is that although chmod is valid windows call, it 
will not produce the effect that most users expect. There's 
no harm in calling it, but it's not going to accomplish what 
most users want it to do. This information is more important 
to a user than other inconsistencies in the Windows 
implementation. (i.e. os.stat returning a value that is 
different than chmod set)
msg16448 - (view) Author: Tim Peters (tim.peters) * (Python committer) Date: 2003年06月17日 14:49
Logged In: YES 
user_id=31435
Then please suggest the actual text you want to see in the 
docs. I can't do it for you (for example, chmod has always 
done exactly what I've wanted it to do on Windows -- but 
then I've never wanted to do anything with it on Windows 
beyond fiddling the readonly bit).
msg16449 - (view) Author: Christopher Blunck (blunck2) Date: 2003年06月17日 15:18
Logged In: YES 
user_id=531881
Tim-
I captured what Matthew Shomphe recommended into patch 755677
(http://www.python.org/sf/755677). Hope this helps.
-c
msg16450 - (view) Author: Grant Olson (logistix) Date: 2003年06月17日 19:31
Logged In: YES 
user_id=699438
Something like:
"NOTE: Although Windows supports chmod, it incorporates 
much different functionality than a typical Unix user would 
expect. Please refer to Microsoft’s documentation for more 
details."
would be nice.
msg16451 - (view) Author: Georg Brandl (georg.brandl) * (Python committer) Date: 2005年06月05日 18:28
Logged In: YES 
user_id=1188172
I think the wording suggested by logistix would be a good
addition to the docs.
msg16452 - (view) Author: Georg Brandl (georg.brandl) * (Python committer) Date: 2005年07月18日 08:17
Logged In: YES 
user_id=1188172
Added this note to the chmod docs:
Although Windows supports chmod, you can only set the
file's read-only flag with this function (via the
\code{S_IWRITE}
and \code{S_IREAD} constants or a corresponding integer value).
All other bits are ignored.
Doc/lib/libos.tex r1.164, r1.146.2.10.
History
Date User Action Args
2022年04月10日 16:09:15adminsetgithub: 38661
2003年06月17日 00:13:09mshomphecreate

AltStyle によって変換されたページ (->オリジナル) /