Filemode change by windows applications

Eliot Moss moss@cs.umass.edu
Wed Mar 28 13:37:00 GMT 2018


On 3/28/2018 3:09 AM, Kjetil Østerås wrote:

> I notice that when I edit and save a file in a windows application this
> file sometimes get the execute file permission set in cygwin. Some windows
> applications do this and some don't. For instance in my setup if i modify a
> .c file using Meld then the execute bit is set, however when I modify the
> same file with sublime text 3 then the execute bit is not set.
> 
> Why does this happen? and is there anything I can do to prevent windows
> applications from setting the execute bit on my files?

The Windows file permissions (access control) is substantially different
from the Posix model that Cygwin attempts to present.  The mapping from
Windows to Posix that Cygwin implements is arguably the best / most
reasonable mapping between the disparate schemes, and has been carefully
refined over time.  But it is just a mapping from the underlying scheme.

So, if some Windows program sets permissions a particular way, that it how
they show up under Cygwin.  To answer your question more directly: No, you
can't prevent a Windows program from setting (the underlying access modes
that translate to what is presented as) the execute bit under Cygwin -
short of preventing the programs from accessing the file altogether,
presumably not what you want.

File access translation is perhaps one of the roughest edges that Cygwin
*tries* to smooth over.  I think it does a good job with what it has, but
the Windows scheme is complex and there is no perfect way to do this.

Note, though, that there is no good way to prevent a Unix program from
setting execute bits on a particular file either (well, the umask, and
possibly ACLs may give you some control if you want to go to the bother).
It's just that Unix programs don't tend to set that bit unless they are
creating an executable.

Someone more versed in the Windows access control scheme and the intention
of various permissions might be able to clarify why some many Windows
programs think it is a good thing to set the access mode(s) that Cygwin
reflects as the x bit ...

Regards - Eliot Moss

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list