Strange paths in NTFS reparse points created by Cygwin Setup for e.g. TTF fonts

Ken Brown kbrown@cornell.edu
Thu Nov 5 22:39:58 GMT 2020


On 11/5/2020 4:41 PM, Michael Soegtrop via Cygwin wrote:
> Dear Cyhwin Users and Team,
> 
> since a while I have issues removing cygwin installations, especially the 
> symlinks to true type fonts in /usr/share/fonts/microsoft.
> 
> Looking at these links with Windows tools I get:
> 
> C:\bin\cygwin\usr\share\fonts\microsoft>fsutil reparsepoint query wingding.ttf
> Reparse Tag Value : 0xa000001d
> Tag value: Microsoft
> Tag value: Name Surrogate

This is the IO_REPARSE_TAG_LX_SYMLINK tag, which WSL uses for symlinks and which 
Cygwin also uses by default for symlinks on systems that support it.  But you 
can change this if you don't like it, as I said in my reply to your earlier 
message about this:

   https://cygwin.com/pipermail/cygwin/2020-September/246277.html

> Reparse Data Length: 0x00000025
> Reparse Data:
> 0000:  02 00 00 00 2f 6d 6e 74  2f 63 2f 57 69 6e 64 6f  ..../mnt/c/Windo
> 0010:  77 73 2f 46 6f 6e 74 73  2f 77 69 6e 67 64 69 6e  ws/Fonts/wingdin
> 0020:  67 2e 74 74 66                                    g.ttf
> 
> I wonder if the path "/mnt/c/Windows/Fonts/wingding.ttf" is something which 
> should be written into a NTFS reparse point by cygwin setup. Probably not - it 
> looks like a cygwin path and it is understandable that this confuses NTFS.

It's not written by setup.  It's a Cygwin symlink [also a WSL symlink, as I said 
above], created by the postinstall script

   /etc/postinstall/zp_fontconfig_cache_1.sh

The fact that it contains a Cygwin path as its reparse data is not at all 
surprising:

ls -l /usr/share/fonts/microsoft/wingding.ttf
lrwxrwxrwx ... /usr/share/fonts/microsoft/wingding.ttf -> 
/c/Windows/Fonts/wingding.ttf

Ken


More information about the Cygwin mailing list