mktemp(3) Library Functions Manual mktemp(3)

mktemp - creează un nume unic de fișier temporar

Biblioteca C standard (libc, -lc)

#include <stdlib.h>
char *mktemp(char *șablon);
Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

mktemp():

    Începând cu glibc 2.12:
        (_XOPEN_SOURCE >= 500) && ! (_POSIX_C_SOURCE >= 200112L)
            || /* glibc >= 2.19: */ _DEFAULT_SOURCE
            || /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE
    Înainte de glibc 2.12:
        _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 500

Nu folosiți niciodată această funcție; a se vedea ERORI.

Funcția mktemp() generează un nume de fișier temporar unic din șablon. Ultimele șase caractere din șablon trebuie să fie XXXXXX, iar acestea sunt înlocuite cu un șir de caractere care face ca numele de fișier să fie unic. Deoarece va fi modificat, șablonul nu trebuie să fie o constantă de șiruri de caractere, ci trebuie declarat ca o matrice de caractere.

Funcția mktemp() returnează întotdeauna șablonul. Dacă a fost creat un nume unic, ultimii șase octeți din șablon vor fi fost modificați astfel încât numele rezultat să fie unic (adică să nu existe deja). Dacă nu a putut fi creat un nume unic, șablonul devine un șir gol, iar errno este configurată pentru a indica eroarea.

ERORI-IEȘIRE

Ultimele șase caractere din șablon nu au fost XXXXXX.

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
mktemp() Siguranța firelor MT-Safe

Niciunul.

4.3BSD, POSIX.1-2001. Eliminată în POSIX.1-2008.

Nu utilizați niciodată mktemp(). Unele implementări urmează 4.3BSD și înlocuiesc XXXXXX cu ID-ul procesului curent și o singură literă, astfel încât pot fi returnate cel mult 26 de nume diferite. Deoarece, pe de o parte, numele sunt ușor de ghicit și, pe de altă parte, există o întârziere (o condiție de competie) între testarea existenței numelui și deschiderea fișierului, fiecare utilizare a mktemp() reprezintă un risc de securitate. Întârzierea este evitată de mkstemp(3) și mkdtemp(3).

mktemp(1), mkdtemp(3), mkstemp(3), tempnam(3), tmpfile(3), tmpnam(3)

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 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.

31 octombrie 2023 Pagini de manual de Linux 6.06