Provided by: manpages-ro-dev_4.21.0-2_all bug

NUME

       getsockopt, setsockopt - obține și definește opțiunile pe socluri

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

REZUMAT

       #include <sys/socket.h>

       int getsockopt(int sockfd, int nivel, int optname,
                      void optval[restrict *.optlen],
                      socklen_t *restrict optlen);
       int setsockopt(int sockfd, int nivel, int optname,
                      const void optval[.optlen],
                      socklen_t optlen);

DESCRIERE

       getsockopt()  și  setsockopt()  manipulează  opțiunile pentru soclul la care face referire
       descriptorul de fișier sockfd.  Opțiunile pot exista la mai multe  niveluri  de  protocol;
       ele sunt întotdeauna prezente la nivelul de soclu cel mai înalt.

       Atunci  când se manipulează opțiunile de soclu, trebuie să se precizeze nivelul la care se
       află opțiunea și numele acesteia.  Pentru a manipula opțiunile de la  nivelul  API  pentru
       socluri,  nivel  este  specificat ca SOL_SOCKET.  Pentru a manipula opțiunile la orice alt
       nivel, se furnizează numărul protocolului corespunzător  care  controlează  opțiunea.   De
       exemplu, pentru a indica faptul că o opțiune trebuie interpretată de protocolul TCP, nivel
       trebuie să fie definit la numărul de protocol al TCP; a se vedea getprotoent(3).

       Argumentele optval și optlen sunt utilizate pentru a  accesa  valorile  opțiunilor  pentru
       setsockopt().   Pentru  getsockopt(),  acestea identifică o memorie tampon în care trebuie
       returnată valoarea opțiunii (opțiunilor) solicitate.  Pentru getsockopt(), optlen este  un
       argument  valoare-rezultat,  care  conține inițial dimensiunea memoriei tampon indicată de
       optval și care este modificată la returnare pentru a indica dimensiunea  reală  a  valorii
       returnate.  Dacă nu trebuie furnizată sau returnată nicio valoare de opțiune, optval poate
       fi NULL.

       Optname și orice opțiuni specificate sunt transmise neinterpretate modulului  de  protocol
       corespunzător pentru interpretare.  Fișierul de includere <sys/socket.h> conține definiții
       pentru opțiunile la nivel de soclu, descrise mai jos.  Opțiunile de la  alte  niveluri  de
       protocol   variază   în   ceea  ce  privește  formatul  și  numele;  consultați  intrările
       corespunzătoare din secțiunea 4 a manualului.

       Majoritatea opțiunilor la nivel de soclu utilizează un argument int pentru optval.  Pentru
       setsockopt(),  argumentul  trebuie  să  fie  diferit  de  zero  pentru  a activa o opțiune
       booleană, sau zero dacă opțiunea trebuie dezactivată.

       Pentru o descriere a opțiunilor de soclu disponibile, consultați socket(7) și paginile  de
       manual ale protocolului corespunzător.

VALOAREA RETURNATĂ

       În  caz  de  succes,  se  returnează zero pentru opțiunile standard.  În caz de eroare, se
       returnează -1, iar errno este configurată pentru a indica eroarea.

       Netfilter  permite  programatorului  să  definească  opțiuni  de  soclu  personalizate  cu
       gestionari asociați; pentru astfel de opțiuni, valoarea de returnare în caz de succes este
       valoarea returnată de gestionarul respectiv.

ERORI

       EBADF  Argumentul sockfd nu este un descriptor de fișier valid.

       EFAULT Adresa indicată de optval nu se află într-o parte validă a spațiului de  adrese  al
              procesului.   Pentru  getsockopt(), această eroare poate fi returnată, de asemenea,
              dacă optlen nu se află într-o parte validă a spațiului de adrese al procesului.

       EINVAL optlen nevalidă în setsockopt().  În unele cazuri, această eroare poate apărea,  de
              asemenea,  pentru  o  valoare  nevalidă  în  optval  (de  exemplu,  pentru opțiunea
              IP_ADD_MEMBERSHIP descrisă în ip(7)).

       ENOPROTOOPT
              Opțiunea este necunoscută la nivelul indicat.

       ENOTSOCK
              Descriptorul de fișier sockfd nu se referă la un soclu.

STANDARDE

       POSIX.1-2001, POSIX.1-2008, SVr4, 4.4BSD (aceste apeluri de sistem au apărut pentru  prima
       dată în 4.2BSD).

NOTE

       Pentru informații despre tipul socklen_t, a se vedea accept(2).

ERORI

       Mai multe dintre opțiunile de soclu ar trebui să fie gestionate la niveluri inferioare ale
       sistemului.

CONSULTAȚI ȘI

       ioctl(2), socket(2), getprotoent(3), protocols(5), ip(7),  packet(7),  socket(7),  tcp(7),
       udp(7), unix(7)

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⟩.