Linuxon 3 stat féleség van
stat -- symlink esetén a target adatait adja
lstat -- symlink esetén a symlink adatait adja
fstat -- file descriptorból adja a stat adatokat
Az fstat() Posix függvény is a target infót adja. Tehát előbb megnyitjuk, aztán fstat(fd)-vel (Windowson is) meg lehet kapni a target adatait. Gondoltam, hogy így lesz, mert a Windows API szintjén is ez van: előbb meg kell nyitni a linket, aztán a GetFileInformationByHandle-ból megvan az infó, legalábbis egy része, mint a méret. Az fstatos megoldás mégsem annyira jó, mert nem lehet olyan alacsony hozzáféréssel nyitni, ami biztosan nem ütközik mással.
Azt sem értem egyelőre, mit jelent a "megnyitás" directoryk esetében.
A stat-nál tapasztalt eltérés mindenképpen gyanús.