table of contents
getxattr(2) | System Calls Manual | getxattr(2) |
BEZEICHNUNG¶
getxattr, lgetxattr, fgetxattr - Den Wert eines erweiterten Attributs abfragen
BIBLIOTHEK¶
Standard-C-Bibliothek (libc, -lc)
ÜBERSICHT¶
#include <sys/xattr.h>
ssize_t getxattr(const char *pfad, const char *name, void wert[.größe], size_t größe); ssize_t lgetxattr(const char *pfad, const char *name, void wert[.größe], size_t größe); ssize_t fgetxattr(int dd, const char *name, void wert[.größe], size_t größe);
BESCHREIBUNG¶
Erweiterte Attribute sind Name:Wert-Paare, die Inodes (Dateien, Verzeichnissen, symbolischen Links usw.) zugeordnet sind. Sie sind eine Erweiterung der normalen Attribute, die allen Inodes im System (d.h. allen stat(2)-Daten) zugeordnet sind. Eine vollständige Übersicht über das Konzept der erweiterten Attribute kann in xattr(7) gefunden werden.
getxattr() fragt den Wert des durch name identifizierten erweiterten Attributs ab, der dem angegebenen pfad im Dateisystem zugeordnet ist. Der Attributwert wird in einem Puffer abgelegt, auf den wert zeigt. größe legt die Größe dieses Puffers fest. Der Rückgabewert des Aufrufs ist die Anzahl der in wert abgelegten Byte.
lgetxattr() ist zu getxattr() identisch, außer im Falle eines symbolischen Links, bei dem der Link selber abgefragt wird, nicht die Datei, auf die er sich bezieht.
fgetxattr() ist identisch zu getxattr(), nur wird anstelle von pfad die offene Datei abgefragt, auf die sich der (durch open(2) zurückgelieferte) dd bezieht.
Ein erweitertes Attribut name ist eine mit Null abgeschlossene Zeichenkette. Der Name enthält einen Namensraum-Vorsatz; es kann mehrere, getrennte Namensräume geben, die einem individuellem Inode zugeordnet sind. Der Wert eines erweiterten Attributs ist ein Stück beliebiger Text- oder Binärdaten, die mittels setxattr(2) zugewiesen wurden.
Falls größe als Null festgelegt ist, liefern diese Aufrufe die aktuelle Größe des benannten erweiterten Attributs (und belassen wert unverändert). Dies kann zur Größenbestimmung des Puffers verwandt werden, der in einem nachfolgenden Aufruf bereitgestellt wird. (Aber beachten Sie, dass sich der Attributwert zwischen zwei Aufrufen ändern könnte, so dass es weiterhin notwendig ist, den Rückkehrstatus des zweiten Aufrufs zu überprüfen.)
RÜCKGABEWERT¶
Im Erfolgsfall liefern diese Aufrufe einen nicht negativen Wert, der die Größe (in Byte) des Werts des erweiterten Attributs ist. Im Fehlerfall wird -1 zurückgeliefert und errno gesetzt, um den Fehler zu kennzeichnen.
FEHLER¶
- E2BIG
- Die Größe des Attributwertes ist größer als die maximal erlaubte Größe; das Attribut kann nicht abgerufen werden. Dies kann auf Dateisystemen wie beispielsweise NFSv4 passieren, die sehr große Attributwerte unterstützen.
- ENODATA
- Das benannte Attribut existiert nicht oder der Prozess hat keinen Zugriff auf dieses Attribut.
- ENOTSUP
- Erweiterte Attribute werden vom Dateisystem nicht unterstützt oder sind deaktiviert.
- ERANGE
- Die größe des Puffers wert ist zu klein, um das Ergebnis zu enthalten.
Zusätzlich können die in stat(2) dokumentierten Fehler auftreten.
STANDARDS¶
Linux.
GESCHICHTE¶
Linux 2.4, glibc 2.3.
BEISPIELE¶
Siehe listxattr(2).
SIEHE AUCH¶
getfattr(1), setfattr(1), listxattr(2), open(2), removexattr(2), setxattr(2), stat(2), symlink(7), xattr(7)
ÜBERSETZUNG¶
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.
2. Mai 2024 | Linux man-pages 6.9.1 |