====== std.xattr ====== ''import std.xattr;'' Drei Themenblöcke: * **xattr**: Erweiterte Dateiattribute — beliebige Name-Wert-Paare an Dateien/Verzeichnissen speichern * **statfs**: Dateisystem-Statistiken (Gesamtgröße, freier Speicher, Blockgröße) * **fallocate**: Speicherplatz-Vorabzuweisung und Hole-Punching Syscalls: ''setxattr(188)'', ''getxattr(191)'', ''listxattr(194)'', ''removexattr(197)'', ''fsetxattr(190)'', ''fgetxattr(193)'', ''flistxattr(196)'', ''fremovexattr(199)'', ''fallocate(285)'', ''statfs(137)''. → [[lyx_-_programmiersprache:units:fs|std.fs]] · [[lyx_-_programmiersprache:units:sysadmin|std.sysadmin]] ---- ===== Funktionen ===== ^ Signatur ^ Sichtbarkeit ^ Beschreibung ^ | ''XattrSet(path: pchar, name: pchar, val: int64, size: int64, flags: int64): int64'' | pub | val: Zeiger auf den Wert size: Groesse des Werts in Bytes flags: 0 (anlegen oder ersetzen), XATTR_CREATE, XATTR_REPLACE | | ''XattrGet(path: pchar, name: pchar, buf: int64, size: int64): int64'' | pub | buf: Empfangspuffer; 0 um nur die benoetigte Groesse abzufragen size: Groesse von buf; 0 liefert die benoetigte Groesse zurueck Gibt Anzahl gelesener Bytes zur | | ''XattrList(path: pchar, buf: int64, size: int64): int64'' | pub | buf: Empfangspuffer fuer null-separierte Namen; 0 = Groesse abfragen size: Groesse von buf Gibt Gesamtgroesse der Namen-Liste zurueck. | | ''XattrRemove(path: pchar, name: pchar): int64'' | pub | XattrRemove: loescht ein erweitertes Attribut eines Pfads. | | ''FXattrSet(fd: int64, name: pchar, val: int64, size: int64, flags: int64): int64'' | pub | xattr -- fd-basiert FXattrSet: setzt ein erweitertes Attribut ueber einen Dateideskriptor. | | ''FXattrGet(fd: int64, name: pchar, buf: int64, size: int64): int64'' | pub | FXattrGet: liest ein erweitertes Attribut ueber einen Dateideskriptor. | | ''FXattrList(fd: int64, buf: int64, size: int64): int64'' | pub | FXattrList: listet alle Attributnamen ueber einen Dateideskriptor auf. | | ''FXattrRemove(fd: int64, name: pchar): int64'' | pub | FXattrRemove: loescht ein erweitertes Attribut ueber einen Dateideskriptor. | | ''StatFs(path: pchar, buf: int64): int64'' | pub | StatFs: liest Dateisystem-Statistiken fuer den Pfad. buf: Puffer der Groesse STATFS_SIZE (alloc(STATFS_SIZE)) Gibt 0 bei Erfolg oder negativen Fehlercode zuruec | | ''StatFsBlockSize(buf: int64): int64'' | pub | StatFsBlockSize: Blockgroesse in Bytes. | | ''StatFsTotalBlocks(buf: int64): int64'' | pub | StatFsTotalBlocks: Gesamtanzahl Datenbloecke. | | ''StatFsFreeBlocks(buf: int64): int64'' | pub | StatFsFreeBlocks: fuer nicht-root verfuegbare freie Bloecke. | | ''StatFsTotalBytes(buf: int64): int64'' | pub | StatFsTotalBytes: Gesamtkapazitaet in Bytes (Bloecke * Blockgroesse). | | ''StatFsFreeBytes(buf: int64): int64'' | pub | StatFsFreeBytes: verfuegbarer Speicher in Bytes fuer nicht-root. | | ''FileAllocate(fd: int64, offset: int64, size: int64): int64'' | pub | offset: Startoffset in Bytes size: Anzahl zu reservierender Bytes Gibt 0 bei Erfolg oder negativen Fehlercode zurueck. | | ''FileAllocateMode(fd: int64, mode: int64, offset: int64, size: int64): int64'' | pub | FileAllocateMode: wie FileAllocate aber mit explizitem Modus-Flag. | ---- //Signaturen automatisch aus ''std/xattr.lyx'' erzeugt (Stand 2026-08-02, lyxc 1.0.21A). Beschreibungen stammen aus den Quellkommentaren und sind teilweise unvollständig.// ---- Letzte Aktualisierung: 2026-08-16 (Dateistand)