table of contents
GETPROTOENT(3) | Podręcznik programisty Linuksa | GETPROTOENT(3) |
NAZWA¶
getprotoent, getprotobyname, getprotobynumber, setprotoent, endprotoent - odczytanie wpisu dotyczącego protokołuSKŁ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(), endprotoent() | Bezpieczeństwo wątkowe | MT-Unsafe race:protoent locale |
W powyższej tabeli, protoent w race:protoent oznacza, że jeśli któraś z funkcji setprotoent(3), getprotoent(3) lub endprotoent(3) 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_r(3), getservent(3), protocols(5)O STRONIE¶
Angielska wersja tej strony pochodzi z wydania 4.07 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 man są: Andrzej Krzysztofowicz (PTM) <ankry@mif.pg.gda.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>.Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 4.07 oryginału.
2015-07-23 | GNU |