From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 51967 invoked by alias); 28 Mar 2018 13:06:30 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 51809 invoked by uid 89); 28 Mar 2018 13:06:28 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00,SPF_PASS,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=smooth, job, H*R:D*edu, umask X-HELO: mailsrv.cs.umass.edu Received: from mailsrv.cs.umass.edu (HELO mailsrv.cs.umass.edu) (128.119.240.136) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 28 Mar 2018 13:06:26 +0000 Received: from [192.168.0.5] (c-24-62-203-86.hsd1.ma.comcast.net [24.62.203.86]) by mailsrv.cs.umass.edu (Postfix) with ESMTPSA id 39E43401C1BF; Wed, 28 Mar 2018 09:06:24 -0400 (EDT) Reply-To: moss@cs.umass.edu Subject: Re: Filemode change by windows applications To: cygwin@cygwin.com References: From: Eliot Moss Message-ID: <06ceaabb-dd38-881b-c900-4c695e31e95a@cs.umass.edu> Date: Wed, 28 Mar 2018 13:37:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-IsSubscribed: yes X-SW-Source: 2018-03/txt/msg00426.txt.bz2 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