|
|||||||
|
|
ACCESSSection: Systemaufrufe (2)Updated: 10. Juni 1996 Index Return to Main Contents BEZEICHNUNGaccess - prüft die Zugriffsrechte eines Users an einer DateiÜBERSICHT#include <unistd.h> int access(const char *pathname, int mode); BESCHREIBUNGaccess prüft ob es dem Prozeß erlaubt wäre, auf die Datei pathname (oder ein anderes Dateisystemobjekt) lesend, schreibend oder testend zuzugreifen. Wenn pathname ein symbolischer Verweis ist, werden die Zugriffsrechte der referenzierten Datei geprüft.Mode ist eine Bitmaske die aus einem oder mehrerer der Werte R_OK, W_OK, X_OK and F_OKbesteht. R_OK, W_OK and X_OK verlangt prüft die Schreib- Lese- bzw. Ausführungsrechte. F_OK prüft ob weitere Tests für die Existenz der Datei erlaubt sind. Dieses hängt von den Zugriffsrechten der Verzeichnisse ab, die im Pfad pathname vorkommen, und von den Zugriffsrechten der Verzeichnisse und Dateien, die durch symbolische Verweise referenziert werden. Dieser Test wird mit der realen uid und gid des Prozesses durchgeführt, nicht mit den effektiven Id's. Dadurch haben set-UID Programme die Möglichkeit die wahren Zugriffsrechte des Aufrufers festzustellen. Es werden nur die Zugriffsrechte geprüft, nicht der Dateityp oder dessen Inhalt. Dies bedeutet für Verzeichnisse, daß in einem Verzeichnis, das als "beschreibbar" erkannt wurde, Dateien angelegt werden können, aber das Verzeichnis selbst nicht wie eine Datei beschreiben werden kann. Eine DOS-Datei kann als "ausführbar" gekennzeichnet sein, jedoch wird ein Aufruf von execve(2) trotzdem fehlschlagen. RÜCKGABEWERTBei Erfolg (alle angeforderten Zugriffsrechte passen) wird Null zurückgegeben. Bei einem Fehler (mindestens eine in mode angeforderte Zugriffsart wurde verboten, oder ein anderer Fehler ist aufgetreten) wird -1 zurückgegeben und errno entsprechend gesetzt.ERRORS
WARNUNGaccess gibt einen Fehler zurück, wenn einer der angeforderten Zugriffsrechnte nicht paßt, unabhängig davon, daß andere Typen vielleicht erfolgreich wären.KONFORM ZUSVID, AT&T, POSIX, X/OPEN, BSD 4.3SIEHE AUCHstat(2), open(2), chmod(2), chown(2), setuid(2), setgid(2).
Index | ||||||
|
|
|
Home :: Copyright :: Privacy :: Credits :: Get a free Linuxinfor Email Account Document on this page is part of "Linuxinfor Man Pages in HTML Format: man2". See Index Page for more info about Authorship and Copyright. 1999-2008 Linuxinfor.com. No rights reserved. |