From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10178 invoked by alias); 31 Mar 2013 15:55:50 -0000 Mailing-List: contact cygwin-developers-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner@cygwin.com Mail-Followup-To: cygwin-developers@cygwin.com Received: (qmail 10158 invoked by uid 89); 31 Mar 2013 15:55:40 -0000 X-Spam-SWARE-Status: No, score=-0.5 required=5.0 tests=AWL,BAYES_50,KHOP_THREADED autolearn=ham version=3.3.1 Received: from sequoia-grove.ad.secure-endpoints.com (HELO mail.secure-endpoints.com) (208.125.0.235) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Sun, 31 Mar 2013 15:55:37 +0000 X-MDAV-Result: clean X-MDAV-Processed: mail.secure-endpoints.com, Sun, 31 Mar 2013 11:55:35 -0400 Received: from [172.16.16.54] by secure-endpoints.com (Cipher TLSv1:-SHA:128) (MDaemon PRO v13.0.4) with ESMTP id md50000416266.msg for ; Sun, 31 Mar 2013 11:55:35 -0400 X-Spam-Processed: mail.secure-endpoints.com, Sun, 31 Mar 2013 11:55:35 -0400 (not processed: message from trusted or authenticated source) X-Return-Path: jaltman@openafs.org X-Envelope-From: jaltman@openafs.org X-MDaemon-Deliver-To: cygwin-developers@cygwin.com Message-ID: <51585C76.1080604@openafs.org> Date: Sun, 31 Mar 2013 15:55:00 -0000 From: Jeffrey Altman User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130307 Thunderbird/17.0.4 MIME-Version: 1.0 To: cygwin-developers@cygwin.com Subject: Re: native symlink References: <20130327151656.GB5860@calimero.vinschen.de> <80C3E267-F369-4FF3-A3FD-69A997FFC33B@mac.com> <5153759A.7080307@cygwin.com> In-Reply-To: <5153759A.7080307@cygwin.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Reply-To: jaltman@openafs.org X-SW-Source: 2013-03/txt/msg00122.txt.bz2 On 3/27/2013 6:41 PM, Larry Hall (Cygwin Developers) wrote: > On 3/27/2013 5:53 PM, James Gregurich wrote: >> Why don't you add an API call and utility to actually convert an >> existing > cygwin symlink into a native symlink. I'll give you code >> that does the work. >> Cygwin already reads and uses the native symlinks. you might as well >> provide >> a way to create them. > > The main list is really the right place to make Cygwin feature requests. > Patches to the DLL can go to cygwin-patches. Other code can go to the > main list as well. > > As for why this hasn't been done before, some of it is just no one has > done it. But perhaps more importantly is the question of the benefit. > There are (non-Cygwin) tools already that support this. Also, since > native symlinks only work on NTFS, providing a utility to create them > opens us up to bug reports and questions about these limitations. In > addition, there will be questions about why yet another "symlink" > utility exists and when should it be used. But if you want to argue > for such a tool, please review the previous discussions in the email > archives (to make sure you're not covering the same ground again) and > bring up your proposal on the main list. Be prepared for a fight > (ah, "robust discussion" ;-) ) though. James, In addition to searching the cygwin mailing list archive for discussions on "reparse point" and "symlink" I would also recommend reading a recent blog post I wrote on the subject of symlinks on Windows http://blog.secure-endpoints.com/2013/03/symbolic-links-on-windows.html which summarizes what I learned when implementing support for creating, using and deleting AFS symlinks within a legacy file system driver for Microsoft Windows XP and above. Larry's statement that native symlinks only work on NTFS is no longer true. They also work on Microsoft's ReFS as well as in OpenAFS 1.7.23 and above. I will note that whereas native symlinks can be stored in AFS, Cygwin symlinks cannot be due to the inability of AFS to store the DOS SYSTEM attribute. I look forward to participating in a discussion on the cygwin mailing list. Jeffrey Altman