.\" -*- coding: UTF-8 -*- '\" t .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH bindresvport 3 "17 maja 2025 r." "Linux man\-pages 6.15" .SH NAZWA bindresvport \- łączy gniazdo z uprzywilejowanym portem IP .SH BIBLIOTEKA Standardowa biblioteka C (\fIlibc\fP,\ \fI\-lc\fP) .SH SKŁADNIA .nf \fB#include \fP \fB#include \fP .P \fBint bindresvport(int \fP\fIsockfd\fP\fB, struct sockaddr_in *\fP\fIsin\fP\fB);\fP .fi .SH OPIS .\" glibc actually starts searching with a port # in the range 600 to 1023 \fBbindresvport\fP() służy do łączenia gniazda opisanego deskryptorem pliku \fIsockfd\fP z uprzywilejowanym anonimowym portem IP, to znaczy z przypadkowo wybranym portem z zakresu od 512 do 1023. .P Jeśli powiedzie się \fBbind\fP(2) uruchomiony przez \fBbindresvport\fP() i \fIsin\fP jest różne od NULL, to \fIsin\->sin_port\fP będzie zawierać numer przydzielonego portu. .P \fIsin\fP może mieć wartość NULL i w tym przypadku \fIsin\->sin_family\fP jest przyjmowane jako \fBAF_INET\fP. Jednakże oznacza to również, że \fBbindresvport\fP() nie ma żadnej możliwości, by zwrócić numer przydzielonego portu (tę informację można później uzyskać za pomocą \fBgetsockname\fP(2)). .SH "WARTOŚĆ ZWRACANA" \fBbindresvport\fP() zwraca 0, gdy zakończy się pomyślnie, a w przeciwnym przypadku zwraca \-1 i ustawia \fIerrno\fP, wskazując błąd. .SH BŁĘDY \fBbindresvport\fP() może się nie powieść z tych samych powodów co \fBbind\fP(2). Ponadto mogą wystąpić następujące błędy: .TP \fBEACCES\fP Proces wywołujący nie miał uprawnień (pod Linuksem: proces wywołujący nie miał przywileju \fBCAP_NET_BIND_SERVICE\fP (ang. capability) w przestrzeni nazw użytkownika pokrywającej jego sieciową przestrzeń nazw). .TP \fBEADDRINUSE\fP Wszystkie uprzywilejowane porty są już używane. .TP \fBEAFNOSUPPORT\fP (\fBEPFNOSUPPORT\fP w glibc 2.7 i wcześniejszych) \fIsin\fP jest różny od NULL i \fIsin\->sin_family\fP jest różne od \fBAF_INET\fP. .SH ATRYBUTY Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku \fBattributes\fP(7). .TS allbox; lb lb lbx l l l. Interfejs Atrybut Wartość T{ .na .nh \fBbindresvport\fP() T} Bezpieczeństwo wątkowe T{ .na .nh .\" commit f6da27e53695ad1cc0e2a9490358decbbfdff5e5 glibc\ >=\ 2.17: MT\-bezpieczne; glibc\ <\ 2.17: MT\-niebezpieczne T} .TE .P Funkcja \fBbindresvport\fP() używa statycznej zmiennej które nie była zabezpieczona przez blokadę przed glibc 2.17, co nadawało funkcji cechę MT\-niebezpieczną. .SH WERSJE Obecna w systemach BSD, Solaris i wielu innych. .SH UWAGI W przeciwieństwie do niektórych implementacji \fBbindresvport\fP(), implementacja glibc ignoruje wartość przekazaną w \fIsin\->sin_port\fP podczas wywołania tej funkcji. .SH STANDARDY BSD. .SH "ZOBACZ TAKŻE" \fBbind\fP(2), \fBgetsockname\fP(2) .PP .SH TŁUMACZENIE Tłumaczenie niniejszej strony podręcznika: Andrzej Krzysztofowicz , Robert Luberda i Michał Kułach . .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 .