mktemp(3) | Library Functions Manual | mktemp(3) |
NUME
mktemp - creează un nume unic de fișier temporar
BIBLIOTECA
Biblioteca C standard (libc, -lc)
SINOPSIS
#include <stdlib.h>
char *mktemp(char *șablon);
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
DESCRIERE
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.
VALOAREA RETURNATĂ
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
- EINVAL
- Ultimele șase caractere din șablon nu au fost XXXXXX.
ATRIBUTE
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 |
STANDARDE
Niciunul.
ISTORIC
4.3BSD, POSIX.1-2001. Eliminată în POSIX.1-2008.
ERORI
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).
CONSULTAȚI ȘI
mktemp(1), mkdtemp(3), mkstemp(3), tempnam(3), tmpfile(3), tmpnam(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 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.
2 mai 2024 | Pagini de manual de Linux 6.9.1 |