Provided by: manpages-pl-dev_4.13-4_all bug

NAZWA

       getservent, getservbyname, getservbyport, setservent, endservent - odczytanie wpisu dotyczącego usługi

SKŁADNIA

       #include <netdb.h>

       struct servent *getservent(void);

       struct servent *getservbyname(const char *name, const char *proto);

       struct servent *getservbyport(int port, const char *proto);

       void setservent(int stayopen);

       void endservent(void);

OPIS

       Funkcja  getservent()  odczytuje następny wpis z bazy danych usług (patrz services(5)) i zwraca strukturę
       servent zawierającą pola powstałe z rozłożenia pól wpisu. Połączenie do bazy danych jest otwierane, jeśli
       jest to potrzebne.

       Funkcja getservbyname() zwraca strukturę servent zawierającą ten wpis  z  bazy  danych,  który  odpowiada
       usłudze  name  korzystającej  z  protokołu  proto. Jeśli proto jest równe NULL, to pasował będzie dowolny
       protokół. Połączenie do bazy danych jest otwierane, jeśli jest to potrzebne.

       Funkcja getservbyport() zwraca strukturę servent zawierającą wartości tego wpisu  z  bazy  danych,  który
       odpowiada  portowi  port  (podanemu  w sieciowej kolejności bajtów) dla protokołu proto. Jeśli proto jest
       równe NULL, to pasował będzie dowolny protokół. Połączenie do bazy danych jest otwierane, jeśli  jest  to
       potrzebne.

       Funkcja  setservent()  otwiera  połączenie do bazy danych i ustawia wskaźnik następnego wpisu na pierwszy
       wpis. Jeśli stayopen  jest  niezerowe,  to  połączenie  do  bazy  danych  nie  będzie  zamykane  pomiędzy
       wywołaniami funkcji getserv*().

       Funkcja endservent() zamyka połączenie do bazy danych.

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

           struct servent {
               char  *s_name;       /* oficjalna nazwa usługi */
               char **s_aliases;    /* lista aliasów */
               int    s_port;       /* numer portu */
               char  *s_proto;      /* używany protokół */
           }

       Polami struktury servent są:

       s_name Oficjalna nazwa usługi.

       s_aliases
              Zakończona NULL-em lista alternatywnych nazw tej usługi.

       s_port Numer portu tej usługi podany w sieciowej kolejności bajtów.

       s_proto
              Nazwa protokołu z którego korzysta dana usługa.

WARTOŚĆ ZWRACANA

       The  getservent(),  getservbyname(),  and  getservbyport()   functions  return  a pointer to a statically
       allocated servent structure, or NULL if an error occurs or the end of the file is reached.

PLIKI

       /etc/services
              plik bazy danych o usługach

ATRYBUTY

       Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7).
       ┌─────────────────┬────────────────────────┬───────────────────────────┐
       │ InterfejsAtrybutWartość                   │
       ├─────────────────┼────────────────────────┼───────────────────────────┤
       │ getservent()    │ Bezpieczeństwo wątkowe │ MT-Unsafe race:servent    │
       │                 │                        │ race:serventbuf locale    │
       ├─────────────────┼────────────────────────┼───────────────────────────┤
       │ getservbyname() │ Bezpieczeństwo wątkowe │ MT-Unsafe race:servbyname │
       │                 │                        │ locale                    │
       ├─────────────────┼────────────────────────┼───────────────────────────┤
       │ getservbyport() │ Bezpieczeństwo wątkowe │ MT-Unsafe race:servbyport │
       │                 │                        │ locale                    │
       ├─────────────────┼────────────────────────┼───────────────────────────┤
       │ setservent(),   │ Bezpieczeństwo wątkowe │ MT-Unsafe race:servent    │
       │ endservent()    │                        │ locale                    │
       └─────────────────┴────────────────────────┴───────────────────────────┘

       W powyższej tabeli, servent w race:servent oznacza, że jeśli któraś z funkcji setservent(),  getservent()
       lub  endservent()  jest  używana  równolegle  w  różnych wątkach programu, może nastąpić sytuacja wyścigu
       danych.

ZGODNE Z

       POSIX.1-2001, POSIX.1-2008, 4.3BSD.

ZOBACZ TAKŻE

       getnetent(3), getprotoent(3), getservent_r(3), services(5)

O STRONIE

       Angielska wersja tej strony pochodzi z wydania 5.10 projektu Linux man-pages. Opis  projektu,  informacje
       dotyczące   zgłaszania   błędów   oraz   najnowszą   wersję   oryginału   można   znaleźć   pod   adresem
       https://www.kernel.org/doc/man-pages/.

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  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.

GNU                                            21 grudnia 2020 r.                                  GETSERVENT(3)