lseek64(3) Library Functions Manual lseek64(3) NUME lseek64 - repoziioneaza poziia fiierului de citire/scriere pe 64 de bii BIBLIOTECA Biblioteca C standard (libc, -lc) REZUMAT #define _LARGEFILE64_SOURCE /* Consultai feature_test_macros(7) */ #include #include off64_t lseek64(int fd, off64_t offset, int whence); DESCRIERE Familia de funcii lseek() repoziioneaza poziia fiierului deschis asociat descriptorului de fiier fd la offset octei in raport cu inceputul, poziia curenta sau sfaritul fiierului, atunci cand whence are valoarea SEEK_SET, SEEK_CUR sau SEEK_END, respectiv SEEK_END. Pentru mai multe detalii, valoarea de returnare i erorile de ieire, a se vedea lseek(2). Sunt disponibile patru interfee: lseek(), lseek64(), llseek() i _llseek(). lseek() Prototip: off_t lseek(int fd, off_t offset, int whence); Funcia de invaluire lseek() a bibliotecii C utilizeaza tipul off_t. Acesta este un tip semnat pe 32 de bii pe arhitecturi pe 32 de bii, cu excepia cazului in care se compileaza cu #define _FILE_OFFSET_BITS 64 caz in care este un tip semnat pe 64 de bii. lseek64() Prototip: off64_t lseek64(int fd, off64_t offset, int whence); Funcia de biblioteca lseek64() utilizeaza un tip pe 64 de bii chiar i atunci cand off_t este un tip pe 32 de bii. Prototipul sau (i tipul off64_t) este disponibil numai atunci cand se compileaza cu #define _LARGEFILE64_SOURCE Funcia lseek64() este disponibila incepand cu glibc 2.1. llseek() Prototip: loff_t llseek(int fd, loff_t offset, int whence); Tipul loff_t este un tip semnat pe 64 de bii. Funcia de biblioteca llseek() este disponibila in glibc i funcioneaza fara definiii speciale. Cu toate acestea, anteturile glibc nu ofera un prototip. Utilizatorii ar trebui sa adauge prototipul de mai sus, sau ceva echivalent, in sursa proprie. Atunci cand utilizatorii s-au plans de pierderea de date cauzata de o compilare greita a e2fsck(8), glibc 2.1.3 a adaugat avertismentul de timp de legatura "funcia ,,llseek()" poate fi periculoasa; utilizai in schimb funcia ,,lseek64()"." Acest lucru face ca aceasta funcie sa nu poata fi utilizata daca se dorete o compilare fara avertismente. Incepand cu glibc 2.28, acest simbol de funcie nu mai este disponibil pentru aplicaiile nou vinculate. _llseek() Pe arhitecturile pe 32 de bii, acesta este apelul de sistem care este utilizat (de catre funciile de invaluire ale bibliotecii C) pentru a implementa toate funciile de mai sus. Prototipul este: int _llseek(int fd, off_t offset_hi, off_t offset_lo, loff_t *result, int whence); Pentru mai multe detalii, a se vedea llseek(2). Sistemele pe 64 de bii nu au nevoie de un apel de sistem _llseek(). In schimb, acestea au un apel de sistem lseek(2) care accepta poziii de fiiere pe 64 de bii. ATRIBUTE Pentru o explicaie a termenilor folosii in aceasta seciune, a se vedea attributes(7). +--------------------------------------+---------------------+---------+ |Interfaa | Atribut | Valoare | +--------------------------------------+---------------------+---------+ |lseek64() | Sigurana firelor | MT-Safe | +--------------------------------------+---------------------+---------+ NOTE lseek64() este una dintre funciile care au fost specificate in specificaia Large File Summit (LFS), finalizata in 1996. Scopul acestei specificaii a fost de a oferi un suport tranzitoriu care sa permita aplicaiilor de pe sistemele pe 32 de bii sa acceseze fiiere a caror dimensiune depaete dimensiunea care poate fi reprezentata cu un tip off_t pe 32 de bii. Dupa cum s-a menionat mai sus, acest simbol este expus de fiierele antet daca este definita macrocomanda de testare a caracteristicii _LARGEFILE64_SOURCE. Alternativ, pe un sistem pe 32 de bii, simbolul lseek este transformat in alias de lseek64 daca macro _FILE_OFFSET_BITS este definit cu valoarea 64. CONSULTAI I llseek(2), lseek(2) TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Pagini de manual de Linux 6.06 31 octombrie 2023 lseek64(3)