Provided by: manpages-pl-dev_4.21.0-2_all
NAZWA
getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - odczytanie wpisu dotyczącego protokołu
BIBLIOTEKA
Standardowa biblioteka C (libc, -lc)
SKŁADNIA
#include <netdb.h> struct protoent *getprotoent(void); struct protoent *getprotobyname(const char *name); struct protoent *getprotobynumber(int proto); void setprotoent(int stayopen); void endprotoent(void);
OPIS
Funkcja getprotoent() odczytuje następny wpis z bazy danych protokołów (patrz protocols(5)) i zwraca strukturę protoent 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 getprotobyname() zwraca strukturę protoent zawierającą ten wpis z bazy danych, który odpowiada protokołowi name. Połączenie do bazy danych jest otwierane, jeśli jest to potrzebne. Funkcja getprotobynumber() zwraca strukturę protoent zawierającą ten wpis z bazy danych, który odpowiada protokołowi number. Połączenie do bazy danych jest otwierane, jeśli jest to potrzebne. Funkcja setprotoent() otwiera połączenie do bazy danych i ustawia wskaźnik kolejnego wpisu na pierwszy wpis. Jeśli stayopen jest niezerowy, to połączenie do bazy danych nie będzie zamykane pomiędzy wywołaniami funkcji getproto*(). Funkcja endprotoent() zamyka połączenie do bazy danych. Struktura protoent jest zdefiniowana w <netdb.h> następująco: struct protoent { char *p_name; /* oficjalna nazwa protokołu */ char **p_aliases; /* lista aliasów */ int p_proto; /* numer protokołu */ } Polami struktury protoent są: p_name Oficjalna nazwa protokołu. p_aliases Zakończona NULL-em lista alternatywnych nazw tego protokołu. p_proto Numer protokołu.
WARTOŚĆ ZWRACANA
Funkcje getprotoent(), getprotobyname() i getprotobynumber() zwracają wskaźnik do statycznej struktury servent lub wskaźnik NULL, gdy wystąpi błąd lub napotkany zostanie koniec pliku.
PLIKI
/etc/protocols plik bazy danych dla protokołów
ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku attributes(7). ┌───────────────────┬────────────────────────┬────────────────────────────────────────────┐ │Interfejs │ Atrybut │ Wartość │ ├───────────────────┼────────────────────────┼────────────────────────────────────────────┤ │getprotoent() │ Bezpieczeństwo wątkowe │ MT-Unsafe race:protoent race:protoentbuf │ │ │ │ locale │ ├───────────────────┼────────────────────────┼────────────────────────────────────────────┤ │getprotobyname() │ Bezpieczeństwo wątkowe │ MT-Unsafe race:protobyname locale │ ├───────────────────┼────────────────────────┼────────────────────────────────────────────┤ │getprotobynumber() │ Bezpieczeństwo wątkowe │ MT-Unsafe race:protobynumber locale │ ├───────────────────┼────────────────────────┼────────────────────────────────────────────┤ │setprotoent(), │ Bezpieczeństwo wątkowe │ MT-Unsafe race:protoent locale │ │endprotoent() │ │ │ └───────────────────┴────────────────────────┴────────────────────────────────────────────┘ W powyższej tabeli, protoent w race:protoent oznacza, że jeśli któraś z funkcji setprotoent(), getprotoent() lub endprotoent() jest używana równolegle w różnych wątkach programu, może nastąpić sytuacja wyścigu danych.
STANDARDY
POSIX.1-2001, POSIX.1-2008, 4.3BSD.
ZOBACZ TAKŻE
getnetent(3), getprotoent_r(3), getservent(3), protocols(5)
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⟩.