lookup_dcookie(2)

NUME
lookup_dcookie - returnează ruta unei intrări de director

BIBLIOTECA
Biblioteca C standard (libc, -lc)

REZUMAT
#include <sys/syscall.h>      /* Definirea constantelor SYS_* */
#include <unistd.h>

int syscall(SYS_lookup_dcookie, uint64_t cookie, char *buffer,
            size_t len);

Nota: glibc nu oferă o funcție învăluitoare pentru lookup_dcookie(), fiind necesară utilizarea syscall(2).

DESCRIERE
Caută ruta completă a intrării de director specificată prin valoarea cookie. Cookie-ul este un identificator opac care identifică în mod unic o anumită intrare de director. Memoria tampon dată este completată cu ruta completă a intrării de director.

Pentru ca lookup_dcookie() să returneze cu succes, nucleul trebuie să dețină în continuare o referință cookie pentru intrarea de director.

VALOAREA RETURNATĂ
În caz de succes, lookup_dcookie() returnează lungimea șirului de rută copiat în memoria tampon. În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea.

ERORI

EFAULT
    Memoria tampon nu era validă.

EINVAL
    În momentul căutării, nucleul nu are înregistrate corespondențe cookie/înregistrări de directoare sau cookie-ul nu se referă la o înregistrare de directoare validă.

ENAMETOOLONG
    Numele nu a încăput în memoria tampon.

ENOMEM
    Nucleul nu a putut aloca memorie pentru memoria tampon temporară care conține ruta.

EPERM
    Procesul nu dispune de capacitatea CAP_SYS_ADMIN necesară pentru a căuta valorile cookie-urilor.

ERANGE
    Memoria tampon nu a fost suficient de mare pentru a conține ruta intrării de director.

STANDARDE
Linux.

ISTORIC
Linux 2.5.43.

Eroarea ENAMETOOLONG a fost adăugată în Linux 2.5.70.

NOTE
lookup_dcookie() este un apel de sistem cu scop special, utilizat în prezent numai de profilatorul oprofile(1). Se bazează pe un controlor al nucleului pentru a înregistra cookie-uri pentru intrările de directoare.

Ruta returnată poate fi însoțită de șirul „(deleted)” dacă intrarea de director a fost eliminată.

CONSULTAȚI ȘI
oprofile(1)

TRADUCERE
Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.