Provided by: manpages-ro-dev_4.21.0-2_all
NUME
bindresvport - asociază un soclu cu un port IP privilegiat
BIBLIOTECA
Biblioteca C standard (libc, -lc)
REZUMAT
#include <sys/types.h> #include <netinet/in.h> int bindresvport(int sockfd, struct sockaddr_in *sin);
DESCRIERE
bindresvport() este folosită pentru a asocia soclul la care face referire descriptorul de fișier sockfd cu un port IP anonim privilegiat, adică un număr de port ales în mod arbitrar din intervalul 512-1023. Dacă bind(2) efectuat de bindresvport() are succes, iar sin nu este NULL, atunci sin->sin_port returnează numărul de port alocat efectiv. sin poate fi NULL, caz în care sin->sin_famy este considerat implicit ca fiind AF_INET. Cu toate acestea, în acest caz, bindresvport() nu are cum să returneze numărul de port alocat efectiv (această informație poate fi obținută ulterior cu ajutorul getsockname(2)).
VALOAREA RETURNATĂ
bindresvport() returnează 0 în caz de succes; în caz contrar, se returnează -1, iar errno este configurată pentru a indica eroarea.
ERORI
bindresvport() poate eșua din oricare dintre aceleași motive ca și bind(2). În plus, pot apărea următoarele erori: EACCES Procesul de apelare nu a fost privilegiat (în Linux: procesul de apelare nu a avut capacitatea CAP_NET_BIND_SERVICE în spațiul de nume de utilizator care guvernează spațiul de nume de rețea). EADDRINUSE Toate porturile privilegiate sunt în uz. EAFNOSUPPORT (EPFNOSUPPORT în glibc 2.7 și versiunile anterioare). sin nu este NULL și sin->sin_family nu este AF_INET.
ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7). ┌───────────────┬───────────────────┬─────────────────────────────────────────────────────┐ │Interfață │ Atribut │ Valoare │ ├───────────────┼───────────────────┼─────────────────────────────────────────────────────┤ │bindresvport() │ Siguranța firelor │ glibc >= 2.17: MT-Safe; glibc < 2.17: MT-Unsafe │ └───────────────┴───────────────────┴─────────────────────────────────────────────────────┘ Funcția bindresvport() utilizează o variabilă statică care nu era protejată de un sistem de blocare înainte de glibc 2.17, ceea ce face ca funcția să fie nesigură din punct de vedere tehnic.
STANDARDE
Nu există în POSIX.1. Prezent pe BSD, Solaris și multe alte sisteme.
NOTE
Spre deosebire de unele implementări bindresvport(), implementarea glibc ignoră orice valoare pe care apelantul o furnizează în sin->sin_port.
CONSULTAȚI ȘI
bind(2), getsockname(2)
TRADUCERE
Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org> Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE. Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la ⟨translation-team-ro@lists.sourceforge.net⟩.