Provided by: manpages-pl-dev_20060617-3_all bug

NAZWA

       lseek - zmiana pozycji w pliku dla odczytu/zapisu

SK/LADNIA

       #include <sys/types.h>
       #include <unistd.h>

       off_t lseek(int fildes, off_t offset, int whence);

OPIS

       Funkcja lseek zmienia przesunicie dla deskryptora pliku fildes na warto
       podan w argumencie  offset,  zgodnie  z  dyrektyw  whence  w  nastpujcy
       sposob:

       SEEK_SET
              Przesunicie jest ustawiane na offset bajtow.

       SEEK_CUR
              Przesunicie jest ustawiane na aktualn pozycj plus offset bajtow.

       SEEK_END
              Przesunicie jest ustawiane na rozmiar pliku plus offset bajtow.

       Funkcja  lseek  umoliwia  ustawienie przesunicia w pliku poza istniejcy
       koniec pliku. Jeli poniej w tym miejscu zostan zapisane jakie dane,  to
       kolejne  odczyty danych z luki zwroc bajty zerowe (a do czasu, gdy dane
       zostan rzeczywicie w tej luce zapisane).

WARTO ZWRACANA

       Po pomylnym zakoczeniu lseek zwraca ustawione  przesunicie,  liczone  w
       bajtach od pocztku pliku.  W przeciwnym wypadku zwracane jest (off_t)-1
       oraz ustawiane jest errno w sposob wskazujcy rodzaj bldu.

B/LDY

       EBADF  fildes nie jest otwartym deskryptorem pliku.

       ESPIPE fildes jest zwizany z potokiem, gniazdem, lub FIFO.

       EINVAL whence jest nieprawidlow wartoci.

ZGODNE Z

       SVr4, POSIX, BSD 4.3

OGRANICZENIA

       urzdzenie musi wspiera t operacj.

       Ograniczenia specyficzne dla Linuksa,  to:  uycie  lseek  na  urzdzeniu
       terminalowym  zwraca  ESPIPE.  Inne  systemy  zwracaj  liczb zapisanych
       znakow, uywajc SEEK_SET do ustawiania licznika. Niektore urzdzenia, np.
       /dev/null  nie  powoduj  wystpienia  bldu ESPIPE, ale zwracaj wskanik o
       nieokrelonej wartoci.

UWAGI

       Podczas konwersji starego kodu, naley podstawia zamiast wartoci  whence
       nastpujce makra:

         stare   nowe
       0       SEEK_SET
       1       SEEK_CUR
       2       SEEK_END
       L_SET   SEEK_SET

       L_INCR  SEEK_CUR
       L_XTND  SEEK_END

       SVR1-3 zwracaj long zamiast off_t, BSD zwraca int.

       Naley  zauway,  e  deskryptory  plikow utworzone przez dup(2) i fork(2)
       wspoldziel wskanik biecej pozycji w  pliku,  wic  wykonywanie  operacji
       typu "seek" na takich plikach moe prowadzi do wycigu.

ZOBACZ TAKE

       dup(2), fork(2), open(2), fseek(3)

INFORMACJE O T/LUMACZENIU

       Powysze  tlumaczenie  pochodzi z nieistniejcego ju Projektu Tlumaczenia
       Manuali i moe nie by aktualne. W razie zauwaenia ronic  midzy  powyszym
       opisem  a  rzeczywistym  zachowaniem  opisywanego programu lub funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.