fpathconf(3)

NUME
fpathconf, pathconf - obține valori de configurare pentru fișiere

BIBLIOTECA
Biblioteca C standard (libc, -lc)

SINOPSIS
#include <unistd.h>

long fpathconf(int fd, int name);
long pathconf(const char *path, int name);

DESCRIERE
fpathconf() obține o valoare pentru opțiunea de configurare name pentru descriptorul de fișier deschis fd.

pathconf() obține o valoare pentru opțiunea de configurare name pentru numele de fișier path.

Macro-urile corespunzătoare definite în <unistd.h> sunt valori minime; dacă o aplicație dorește să profite de valori care se pot schimba, se poate apela la fpathconf() sau pathconf(), care pot da rezultate mai liberale.

Dacă se stabilește name egal cu una dintre constantele următoare, se afișează următoarele opțiuni de configurare:

_PC_LINK_MAX
    Numărul maxim de legături către fișier. Dacă fd sau path se referă la un director, atunci valoarea se aplică întregului director. Macro-ul corespunzător este _POSIX_LINK_MAX.

_PC_MAX_CANON
    Lungimea maximă a unei linii de intrare formatată, unde fd sau path trebuie să se refere la un terminal. Macro-ul corespunzător este _POSIX_MAX_CANON.

_PC_MAX_INPUT
    Lungimea maximă a unei linii de intrare, unde fd sau path trebuie să se refere la un terminal. Macro-ul corespunzător este _POSIX_MAX_INPUT.

_PC_NAME_MAX
    Lungimea maximă a unui nume de fișier din directorul path sau fd pe care procesul este autorizat să o creeze. Macro-ul corespunzător este _POSIX_NAME_MAX.

_PC_PATH_MAX
    Lungimea maximă a unui nume de rută relativă atunci când path sau fd este directorul curent de lucru. Macro-ul corespunzător este _POSIX_PATH_MAX.

_PC_PIPE_BUF
    Numărul maxim de octeți care pot fi scriși atomic într-o conductă sau într-o FIFO (conductă cu nume). Pentru fpathconf(), fd trebuie să se refere la o conductă sau la o FIFO. Pentru fpathconf(), path trebuie să se refere la o FIFO sau la un director; în ultimul caz, valoarea returnată corespunde FIFO-urilor create în directorul respectiv. Macro-ul corespunzător este _POSIX_PIPE_BUF.

_PC_CHOWN_RESTRICTED
    Aceasta returnează o valoare pozitivă dacă utilizarea chown(2) și fchown(2) pentru schimbarea ID-ului de utilizator al unui fișier este limitată la un proces cu privilegii adecvate, iar schimbarea ID-ului de grup al unui fișier la o altă valoare decât ID-ul de grup efectiv al procesului sau unul dintre ID-urile sale de grup suplimentare este limitată la un proces cu privilegii adecvate. În conformitate cu POSIX.1, această variabilă trebuie definită întotdeauna cu o valoare diferită de -1. Macro-ul corespunzător este _POSIX_CHOWN_RESTRICTED.

    Dacă fd sau path se referă la un director, atunci valoarea returnată se aplică tuturor fișierelor din directorul respectiv.

_PC_NO_TRUNC
    Aceasta returnează nonzero dacă accesarea unor nume de fișiere mai lungi decât _POSIX_NAME_MAX generează o eroare. Macro-ul corespunzător este _POSIX_NO_TRUNC.

_PC_VDISABLE
    Aceasta returnează nonzero dacă prelucrarea caracterelor speciale poate fi dezactivată, unde fd sau path trebuie să se refere la un terminal.

VALOAREA RETURNATĂ
Valoarea de returnare a acestor funcții este una dintre următoarele:

•   În caz de eroare, se returnează -1, iar errno este configurată pentru a indica eroarea (de exemplu, EINVAL, indicând că name nu este valid).

•   Dacă name corespunde unei limite maxime sau minime, iar limita respectivă este nedeterminată, se returnează -1 și errno nu este modificată. Pentru a distinge o limită nedeterminată de o eroare, stabiliți errno la zero înainte de apel și apoi verificați dacă errno este diferită de zero atunci când este returnat -1.

•   Dacă name corespunde unei opțiuni, se returnează o valoare pozitivă dacă opțiunea este acceptată, iar -1 dacă opțiunea nu este acceptată.

•   În caz contrar, este returnată valoarea curentă a opțiunii sau a limitei. Această valoare nu va fi mai restrictivă decât valoarea corespunzătoare care a fost descrisă aplicației în <unistd.h> sau <limits.h> atunci când aplicația a fost compilată.

ERORI-IEȘIRE

EACCES
    (pathconf()) Permisiunea de căutare este refuzată pentru una dintre directoarele din prefixul rutei path.

EBADF
    (fpathconf()) fd nu este un descriptor de fișier valid.

EINVAL
    name nu este valid.

EINVAL
    Implementarea nu acceptă o asociere a name cu fișierul specificat.

ELOOP
    (pathconf()) Prea multe legături simbolice au fost întâlnite în timpul rezolvării path.

ENAMETOOLONG
    (pathconf()) ruta path este prea lungă.

ENOENT
    (pathconf()) O componentă a path nu există sau path este un șir gol.

ENOTDIR
    (pathconf()) O componentă utilizată ca director în path nu este de fapt un director.

ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare
fpathconf(), pathconf() | Siguranța firelor | MT-Safe

STANDARDE
POSIX.1-2008.

ISTORIC
POSIX.1-2001.

NOTE
În directorul dat pot exista fișiere cu nume mai lungi decât valoarea returnată pentru name egală cu _PC_NAME_MAX.

Unele valori returnate pot fi uriașe; acestea nu sunt potrivite pentru alocarea de memorie.

CONSULTAȚI ȘI
getconf(1), open(2), statfs(2), confstr(3), sysconf(3)

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută 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.