X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Thu, 6 May 2010 11:57:11 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: V1.7 and endless loops triggerd by junction points Message-ID: <20100506095711.GA7865@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <20100505083010 DOT GS1845 AT calimero DOT vinschen DOT de> <20100506084102 DOT GV1845 AT calimero DOT vinschen DOT de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20100506084102.GV1845@calimero.vinschen.de> User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On May 6 10:41, Corinna Vinschen wrote: > On May 5 21:15, Matthias Meyer wrote: > > Corinna Vinschen wrote: > > > Otherwise, the only difference as far as I can see is the fact that the > > > user token attrib inherited from the Cygwin shell has more user rights > > > enabled. Namely the backup and restore rights, which allows to access > > > files and directories which are not available by default. However, this > > > only works in an elevated shell, too. > > > > > > However, it's not Cygwin's fault that attrib is not up to speed with > > > circular symlinks on an OS which allows them. > > > > > It seems to be the backup and restore rights. I can run a cmd as > > administrator and attrib don't run into the endless loop. > > Also I can run sh from a normal user and attrib will work right. > > Only if I run attrib within a process with the backup and restore rights > > attrib will run into this endless loop :-( > > There's a workaround for you, the cygdrop tool, part of the cygutils > package. > > Here's an example: > > elevated bash$ cd /cygdrive/c/Users/All\ Users > > elevated bash$ attrib Desktop > HR C:\ProgramData\Desktop > > elevated bash$ attrib Desktop\\Cygwin.lnk > A C:\ProgramData\Desktop\Cygwin.lnk > > elevated bash$ cygdrop -p SeBackupPrivilege /cygdrive/c/Windows/System32/attrib -p Desktop\\Cygwin.lnk > File not found - Desktop\Cygwin.lnk > > Unfortunately you have to use the full path to attrib to make it work > since cygdrop doesn't perform a path search. Sorry about that. It appears I just stumbled over a Cygwin bug in terms of casesensitivity when using the execp family of functions. Just calling `cygdrop -p SeBackupPrivilege attrib' without full path should be fine, but it only works on systems which are not configured for casesensitivity. I'll fix that in CVS. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- 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