.\" -*- coding: UTF-8 -*- .\" Copyright 2000 Sam Varshavchik .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\" References: RFC 2553 .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH getipnodebyname 3 "30 marca 2023 r." "Linux man\-pages 6.05.01" .SH NAZWA getipnodebyname, getipnodebyaddr, freehostent \- określenie nazw i adresów sieciowych maszyny .SH BIBLIOTEKA Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP) .SH SKŁADNIA .nf \fB#include \fP \fB#include \fP \fB#include \fP .PP \fB[[deprecated]] struct hostent *getipnodebyname(const char *\fP\fIname\fP\fB, int \fP\fIaf\fP\fB,\fP \fB int \fP\fIflags\fP\fB, int *\fP\fIerror_num\fP\fB);\fP \fB[[deprecated]] struct hostent *getipnodebyaddr(const void \fP\fIaddr\fP\fB[.\fP\fIlen\fP\fB],\fP \fB size_t \fP\fIlen\fP\fB, int \fP\fIaf\fP\fB,\fP \fB int *\fP\fIerror_num\fP\fB);\fP \fB[[deprecated]] void freehostent(struct hostent *\fP\fIip\fP\fB);\fP .fi .SH OPIS Te funkcje są przestarzałe (i niedostępne w glibc). Zamiast nich należy używać \fBgetaddrinfo\fP(3) i \fBgetnameinfo\fP(3). .PP Funkcje \fBgetipnodebyname\fP() i \fBgetipnodebyaddr\fP() zwracają nazwy i adresy komputera sieciowego. Wynik jest wskaźnikiem do struktury o następującej postaci: .PP .in +4n .EX struct hostent { char *h_name; char **h_aliases; int h_addrtype; int h_length; char **h_addr_list; }; .EE .in .PP Funkcje te zastąpiły funkcje \fBgethostbyname\fP(3) i \fBgethostbyaddr\fP(3), które mogły udostępniać jedynie adresy należące do rodziny adresów sieciowych IPv4. Funkcje \fBgetipnodebyname\fP() i \fBgetipnodebyaddr\fP() mogą udostępniać adresy należące do wielu rodzin adresów sieciowych. .PP W odróżnieniu od funkcji \fBgethostby\fP, funkcje te zwracają wskaźniki do pamięci przydzielonej dynamicznie. Funkcja \fBfreehostent\fP() służy do zwalniania przydzielonej dynamicznie pamięci, gdy wywołujący już nie potrzebuje struktury \fIhostent\fP. .SS "Argumenty funkcji getipnodebyname()" Funkcja \fBgetipnodebyname\fP() wyszukuje adresy sieciowe komputera podanego w argumencie \fIname\fP. Argument \fIaf\fP może zawierać jedną z następujących wartości: .TP \fBAF_INET\fP Parametr \fIname\fP wskazuje na adres IPv4 (w postaci czterech rozdzielonych kropkami liczb) lub na nazwę komputera sieci IPv4. .TP \fBAF_INET6\fP Parametr \fIname\fP wskazuje na adres IPv6 (w postaci szesnastkowej) lub na nazwę komputera sieci IPv6. .PP Parametr \fIflags\fP zawiera dodatkowe opcje. Można podać więcej niż jedną opcję przez wykonanie na nich bitowego OR. \fIflags\fP powinno być ustawione na 0, gdy żadne opcje nie są potrzebne. .TP \fBAI_V4MAPPED\fP Ten znacznik użyty łącznie z \fBAF_INET6\fP określa, że zapytanie ma dotyczyć adresów IPv4, a nie IPv6; adresy IPv4 będą odwzorowane na adresy IPv6. .TP \fBAI_ALL\fP Ten znacznik użyty łącznie z \fBAI_V4MAPPED\fP określa, że zapytanie ma dotyczyć zarówno adresów IPv4, jak i IPv6. Znalezione adresy IPv4 zostaną odwzorowane na adresy IPv6. .TP \fBAI_ADDRCONFIG\fP Ten znacznik użyty łącznie z \fBAF_INET6\fP oznacza, że dalsze zapytania dotyczące adresów IPv6 nie powinny być wykonywane, jeżeli system nie ma adresu IPv6 przydzielonego do któregoś z interfejsów sieciowych, oraz, że dalsze zapytania dotyczące adresów IPv4 nie powinny być wykonywane, jeżeli system nie ma adresu IPv4 przydzielonego do któregoś z interfejsów sieciowych. Znacznik ten może zostać użyty samodzielnie lub łącznie ze znacznikiem \fBAI_V4MAPPED\fP. .TP \fBAI_DEFAULT\fP Ten znacznik jest równoważny \fB(AI_ADDRCONFIG | AI_V4MAPPED)\fP. .SS "Argumenty funkcji getipnodebyaddr()" Funkcja \fBgetipnodebyaddr\fP() poszukuje nazwy maszyny, której adres sieciowy jest podany w parametrze \fIaddr\fP. Argument \fIaf\fP może mieć jedną z następujących wartości: .TP \fBAF_INET\fP Parametr \fIaddr\fP wskazuje na strukturę \fIstruct in_addr\fP; \fIlen\fP musi mieć wówczas wartość \fIsizeof(struct in_addr)\fP. .TP \fBAF_INET6\fP Parametr \fIaddr\fP wskazuje na strukturę \fIstruct in6_addr\fP; \fIlen\fP musi mieć wówczas wartość \fIsizeof(struct in6_addr)\fP. .SH "WARTOŚĆ ZWRACANA" Gdy wystąpi błąd, zwrócony zostanie NULL, a \fIerror_num\fP będzie zawierać kod błędu według następującej listy: .TP \fBHOST_NOT_FOUND\fP Nie znaleziono nazwy lub adresu sieciowego maszyny. .TP \fBNO_ADDRESS\fP Serwer DNS rozpoznał adres sieciowy lub nazwę maszyny, ale nie zwrócił odpowiedzi. Może się to zdarzyć, gdy maszyn ma jedynie adresy IPv4, a zapytanie dotyczyło jedynie informacji o IPv6, lub odwrotnie. .TP \fBNO_RECOVERY\fP Serwer DNS zwrócił błąd trwały. .TP \fBTRY_AGAIN\fP Serwer DNS zwrócił błąd tymczasowy. Może następnym razem będzie więcej szczęścia. .PP W przypadku pomyślnego wyniku zapytania zwracany jest wskaźnik do struktury \fIhostent\fP zawierającej następujące pola: .TP \fIh_name\fP Oficjalna nazwa sieciowa tej maszyny. .TP \fIh_aliases\fP Tablica wskaźników do nieoficjalnych aliasów tej samej maszyny. Tablica jest zakończona wskaźnikiem NULL. .TP \fIh_addrtype\fP Kopia argumentu \fIaf\fP funkcji \fBgetipnodebyname\fP() lub \fBgetipnodebyaddr\fP(3). \fIh_addrtype\fP będzie równe \fBAF_INET\fP, gdy argument \fIaf\fP był równy \fBAF_INET\fP. \fIh_addrtype\fP będzie równe \fBAF_INET6\fP, gdy parametr \fIaf\fP był równy \fBAF_INET6\fP. .TP \fIh_length\fP Będzie równe \fIsizeof(struct in_addr)\fP, gdy \fIh_addrtype\fP jest równe \fBAF_INET\fP, lub \fIsizeof(struct in6_addr)\fP, gdy \fIh_addrtype\fP jest równe \fBAF_INET6\fP. .TP \fIh_addr_list\fP Tablica zawierająca jeden lub więcej wskaźników do struktur adresów sieciowych danego komputera. Tablica jest zakończona wskaźnikiem NULL. .SH STANDARDY None. .SH HISTORIA .\" Not in POSIX.1-2001. RFC\ 2553. .PP Present in glibc 2.1.91\-95, but removed again. Several UNIX\-like systems support them, but all call them deprecated. .SH "ZOBACZ TAKŻE" \fBgetaddrinfo\fP(3), \fBgetnameinfo\fP(3), \fBinet_ntop\fP(3), \fBinet_pton\fP(3) .PP .SH TŁUMACZENIE Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Andrzej Krzysztofowicz i Robert Luberda . .PP Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License w wersji 3 .UE lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI. .PP Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej .MT manpages-pl-list@lists.sourceforge.net .ME .