_llseek(2) System Calls Manual _llseek(2) NAZWA _llseek - zmienia pozycje przesuniecia pliku do odczytu/zapisu BIBLIOTEKA Standardowa biblioteka C (libc, -lc) SKLADNIA #include /* Definicja stalych SYS_* */ #include int syscall(SYS__llseek, unsigned int fd, unsigned long offset_high, unsigned long offset_low, loff_t *result, unsigned int whence); Uwaga: glibc nie udostepnia opakowania dla _llseek(), co wymusza uzycie syscall(2). OPIS Uwaga: informacje o funkcji bibliotecznej llseek(3) znajduja sie w podreczniku lseek64(3). Wywolanie systemowe _llseek() zmienia pozycje przesuniecia opisu otwartego pliku (OFD), powiazanego z deskryptorem pliku fd na wartosc (offset_high << 32) | offset_low Nowe przesuniecie jest przesunieciem w bajtach, wzgledem poczatku pliku, wzgledem biezacego przesuniecia w pliku lub wzgledem konca pliku, w zaleznosci od tego, czy whence jest odpowiednio rowne SEEK_SET, SEEK_CUR, czy SEEK_END. Nowe przesuniecie pliku jest zwracane w argumencie result. Typem loff_t jest typ 64-bitowy ze znakiem. To wywolanie systemowe istnieje na roznych platformach 32-bitowych, aby wspierac duze zmiany przesuniec plikow. WARTOSC ZWRACANA W razie pomyslnego zakonczenia, _llseek() zwraca 0. W przeciwnym przypadku, zwracana jest wartosc -1 i ustawiane jest errno dla wskazania rodzaju bledu. BLEDY EBADF fd nie jest deskryptorem otwartego pliku. EFAULT Problem z kopiowaniem wynikow do przestrzeni uzytkownika. EINVAL whence jest nieprawidlowe. WERSJE Zamiast opisywanego wywolania systemowego, prawdopodobnie lepszym pomyslem bedzie uzycie funkcji opakowujacej lseek(2). STANDARDY Linux. ZOBACZ TAKZE lseek(2), open(2), lseek64(3) TLUMACZENIE Autorami polskiego tlumaczenia niniejszej strony podrecznika sa: Andrzej Krzysztofowicz i Michal Kulach Niniejsze tlumaczenie jest wolna dokumentacja. Blizsze informacje o warunkach licencji mozna uzyskac zapoznajac sie z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje sie ZADNEJ ODPOWIEDZIALNOSCI. Bledy w tlumaczeniu strony podrecznika prosimy zglaszac na adres listy dyskusyjnej . Linux man-pages 6.8 2 maja 2024 r. _llseek(2)