oracular (3) setmntent.3.gz

Provided by: manpages-pl-dev_4.23.1-1_all bug

NAZWA

       getmntent,  setmntent,  addmntent, endmntent, hasmntopt, getmntent_r - odczytuje wpis z pliku deskryptora
       systemu plików

BIBLIOTEKA

       Standardowa biblioteka C (libc, -lc)

SKŁADNIA

       #include <stdio.h>
       #include <mntent.h>

       FILE *setmntent(const char *filename, const char *type);

       struct mntent *getmntent(FILE *stream);

       int addmntent(FILE *restrict stream,
                     const struct mntent *restrict mnt);

       int endmntent(FILE *streamp);

       char *hasmntopt(const struct mntent *mnt, const char *opt);

       /* rozszerzenie GNU */
       #include <mntent.h>

       struct mntent *getmntent_r(FILE *restrict streamp,
                     struct mntent *restrict mntbuf,
                     char buf[restrict .buflen], int buflen);

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       getmntent_r():
           Od glibc 2.19:
               _DEFAULT_SOURCE
           glibc 2.19 i wcześniejsze:
               _BSD_SOURCE || _SVID_SOURCE

OPIS

       Funkcje te służą do udostępniania informacji z pliku opisującego systemy plików /etc/fstab oraz  z  pliku
       opisującego zamontowane systemy plików /etc/mtab.

       Funkcja  setmntent()  otwiera plik opisujący systemy plików, filename, i zwraca wskaźnik do pliku, którym
       może się posłużyć getmntent(). Argument type jest żądanym rodzajem dostępu i może przyjmować  takie  same
       wartości,  jak  argument mode funkcji fopen(3). Zwrócony strumień należy zamknąć za pomocą endmntent(), a
       nie za pomocą  flose(3).

       Funkcja getmntent() odczytuje następny wiersz pliku opisującego systemy plików z stream i zwraca wskaźnik
       do  struktury  zawierającej  pola  powstałe  z  rozłożenia  linii pliku. Wskaźnik ten jest wskaźnikiem do
       statycznego obszaru pamięci, który jest nadpisywany podczas następnego wywołania getmntent().

       Funkcja addmntent() dodaje strukturę mnt typu mntent na końcu otwartego stream.

       Funkcja endmntent() zamyka stream związany z plikiem opisującym system plików.

       Funkcja hasmntopt() przegląda pole mnt_opts (zobacz poniżej) w mnt typu struktury mntent  w  poszukiwaniu
       podłańcuchów pasujących do opt. Prawidłowe opcje montowania opisane są w <mntent.h> i mount(8)

       Wielodostępowa  funkcja  getmntent_r() jest podobna do getmntent(), z tą różnicą że przechowuje strukturę
       mntent w przekazanym *mntbuf i przechowuje łańcuchy  znaków  wskazujące  na  wpisy  w  tej  strukturze  w
       przekazanej tablicy buf o rozmiarze buflen.

       Struktura mntent jest zdefiniowana w <mntent.h> następująco:

           struct mntent {
               char *mnt_fsname;   /* nazwa zamontowanego systemu plików */
               char *mnt_dir;      /* prefiks ścieżki systemu plików */
               char *mnt_type;     /* rodzaj montowania (patrz mntent.h) */
               char *mnt_opts;     /* opcje montowania (patrz mntent.h) */
               int   mnt_freq;     /* częstotliwość zrzucania w dniach */
               int   mnt_passno;   /* numer przebiegu równoległego fsck */
           };

       Ponieważ  pola w plikach mtab i fstab są rozdzielone białymi znakami, ósemkowe znaki cytowania są używane
       do reprezentowania następujących znaków: spacji ("\040"), tabulacji ("\011"), nowej linii  ("\012")  oraz
       odwrotnego  ukośnika ("\\"), jeśli występują w jednym z czterech łańcuchów w strukturze mntent. Procedury
       addmntent() i getmntent() skonwertują normalną reprezentację łańcucha znaków na cytowaną  i  z  powrotem.
       Podczas  konwertowania  z  cytowanej  reprezentacji na normalną ciąg "\134" także jest zamieniany na znak
       odwrotnego ukośnika.

WARTOŚĆ ZWRACANA

       Funkcja getmntent() i getmntent_r() zwracają wskaźnik do struktury mntent albo NULL w przypadku błędu.

       Funkcja addmntent() zwraca 0 po pomyślnym zakończeniu, a 1 w przypadku błędu.

       Funkcja endmntent() zawsze zwraca 1.

       Funkcja hasmntopt() zwraca adres podłańcucha, gdy zostanie on znaleziony, a NULL w przeciwnym przypadku.

PLIKI

       /etc/fstab
              plik opisujący systemy plików

       /etc/mtab
              plik opisujący zamontowane systemy plików

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).

       ┌──────────────────────────┬────────────────────────┬────────────────────────────────────────────────────┐
       │InterfejsAtrybutWartość                                            │
       ├──────────────────────────┼────────────────────────┼────────────────────────────────────────────────────┤
       │setmntent(), endmntent(), │ Bezpieczeństwo wątkowe │ MT-bezpieczne                                      │
       │hasmntopt()               │                        │                                                    │
       ├──────────────────────────┼────────────────────────┼────────────────────────────────────────────────────┤
       │getmntent()               │ Bezpieczeństwo wątkowe │ MT-niebezpieczne race:mntentbuf locale             │
       ├──────────────────────────┼────────────────────────┼────────────────────────────────────────────────────┤
       │addmntent()               │ Bezpieczeństwo wątkowe │ MT-bezpieczne race:stream locale                   │
       ├──────────────────────────┼────────────────────────┼────────────────────────────────────────────────────┤
       │getmntent_r()             │ Bezpieczeństwo wątkowe │ MT-bezpieczne locale                               │
       └──────────────────────────┴────────────────────────┴────────────────────────────────────────────────────┘

STANDARDY

       Brak.

HISTORIA

       Wersje niewielowątkowe funkcji pochodzą z SunOS 4.1.3. Procedura getmntent_r() została dodana w HP-UX 10,
       ale zwraca int. Prototyp pokazany powyżej jest dostępny tylko w bibliotece glibc.

       System V również zawiera funkcję getmntent(), ale inna  jest  sekwencja  wywołująca  i  zwraca  ona  inną
       strukturę.  Pod  Systemem V używa się /etc/mnttab.  4.4BSD i Digital UNIX zawierają funkcję getmntinfo(),
       otulającą funkcję systemową getfsstat().

ZOBACZ TAKŻE

       fopen(3), fstab(5), mount(8)

TŁUMACZENIE

       Autorami   polskiego   tłumaczenia   niniejszej   strony   podręcznika   są:    Andrzej    Krzysztofowicz
       <ankry@green.mf.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją.  Bliższe informacje o warunkach licencji można uzyskać
       zapoznając się z GNU General Public License w wersji  3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  lub
       nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

       Błędy  w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy dyskusyjnej ⟨manpages-pl-
       list@lists.sourceforge.net⟩.