> So there seem to be some shortcomings in NTFS, still.
>
> 1. Symlinks are not supported. Proper symlinks exist in NTFS since
> Vista, so we should support them.
FWIW, Windows itself doesn't support symlinks for booting in NTFS.
Prior to Vista, symlinks are not supported by default (a driver is
needed).
Moreover, under Windows, expanding an archive containing symlinks,
most frequently won't restore the symlink attribute. For instance,
expanding an official "syslinux-version.tar.xz" archive under Windows
on NTFS, most frequently will have both, "./libinstaller/advconst.h"
and "./com32/include/syslinux/advconst.h", as independent, not
symlinked files; therefore compiling in these circumstances will
probably fail.
Considering the aforementioned situations, IMHO supporting symlinks
for NTFS in Syslinux deserves a low priority. Just tell users to
avoid symlinks in NTFS when regards to booting.
>
> 2. readdir() seems to be broken.
The behavior can be seen by:
1_ Install EXTLINUX 6.03-pre12 or newer on NTFS;
2_ Copy *.c32;
3_ Boot this NTFS partition;
4_ In the Syslinux "boot:" prompt, execute ls.c32.
This, IMHO, is indeed a matter of importance to correctly support
NTFS in Syslinux.
As a remainder, Syslinux on NTFS is currently supporting a cluster
size up to 4096 bytes (included). Currently Syslinux will fail to
boot NTFS volumes with allocation units higher than 4KiB.
Hopefully Paulo can take a look promptly.
TIA,
Ady.