Profifrage: Symbolischer Link
-
Hallo zusammen!
Laut den FAQ (http://www.c-plusplus.net/forum/viewtopic.php?t=39523) diese Forums gilt:
int stat ( const char *PathName, struct stat *Buffer );
[...] Handelt es sich bei der unter
'PathName' spezifizierten Datei um einen symbolischen Link, so werden
die Attribute der Datei, auf die der symbolische Link zeigt, in die
Strukturvariable 'Buffer' geschrieben.Wie finde ich denn raus, ob 'PathName' ein symbolsicher Link ist?? Denn wenn ich erst über
if(S_ISLNK(Buffer->st_mode)) != 0)
nachsehe, stehen ja in 'Buffer' schon die Werte derjenigen Datei drin, auf die 'PathName' zeigt. Die IF Abfrage liefert bei mir also immer FALSE.
Hat jemand ne Idee?
Die verzweifelte Lis
-
Morgen,
die lstat-Funktion folgt der Datei nicht, wenn es sich um einen symbolischen Link
handelt. Statt dessen liefert diese Funktion in 'Buffer' dann die Informationen
ueber den Link selbst. Ansonsten verhaelt sich die Funktion wie die stat
Funktion.mfg
cu
-
Hi virtuell Realistica, vielen dank für deine morgentliche Antwort
Kannst du dir vorstellen, warum dann meine if-Abfrage immer fehlschlägt? Wenn ich z.B. nach "Socket" abfrage, bekomme ich die richtige Antwort, nur bei "symblischen Links" nichtGrüsse, Lis
-
Lis83 schrieb:
Hi virtuell Realistica, vielen dank für deine morgentliche Antwort
Kannst du dir vorstellen, warum dann meine if-Abfrage immer fehlschlägt? Wenn ich z.B. nach "Socket" abfrage, bekomme ich die richtige Antwort, nur bei "symblischen Links" nichtGrüsse, Lis
Die stat-Funktion folgt dem symbolischen Link zur Datei und liefert dir deren
Attribute. Bei dieser Datei handelt es sich allerdings um keinen symbolischen
Link.mfg
v R