.\" -*- coding: UTF-8 -*- .\" Copyright 1983-1991, The Regents of the University of California. .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: BSD-4-Clause-UC .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH getsockopt 2 "29 Octubre 2025" "Linux man\-pages 6.18" .SH NOMBRE getsockopt, setsockopt \- obtiene y pone opciones en conectores (\fIsockets\fP) .SH BIBLIOTECA Biblioteca Estándar C (\fIlibc\fP,\ \fI\-lc\fP) .SH SINOPSIS .nf \fB#include \fP .P \fBint getsockopt(\fPsocklen_t *restrict optlen; \fB int \fP\fIsockfd\fP\fB, int \fP\fIlevel\fP\fB, int \fP\fIoptname\fP\fB,\fP \fB void \fP\fIoptval\fP\fB[_Nullable restrict *\fP\fIoptlen\fP\fB],\fP \fB socklen_t *restrict \fP\fIoptlen\fP\fB);\fP \fBint setsockopt(\fPsocklen_t optlen; \fB int \fP\fIsockfd\fP\fB, int \fP\fIlevel\fP\fB, int \fP\fIoptname\fP\fB,\fP \fB const void \fP\fIoptval\fP\fB[\fP\fIoptlen\fP\fB],\fP \fB socklen_t \fP\fIoptlen\fP\fB);\fP .fi .SH DESCRIPCIÓN \fBgetsockopt\fP() y \fBsetsockopt\fP() manipulan las opciones del socket al que hace referencia el descriptor de archivo \fIsockfd\fP. Las opciones pueden existir en varios niveles de protocolo; siempre están presentes en el nivel de socket superior. .P Al manipular las opciones de socket, se debe definir el nivel en el que reside la opción y su nombre. Para manipular opciones al nivel de la API de sockets, \fIlevel\fP se define como \fBSOL_SOCKET\fP. Para manipular opciones en cualquier otro nivel, se indica el número del protocolo correspondiente que controla la opción. Por ejemplo, para indicar que una opción debe ser interpretada por el protocolo \fBTCP\fP, \fIlevel\fP deberá establecerse en el número de protocolo de \fBTCP\fP; consulte \fBgetprotoent\fP(3). .P Los argumentos \fIoptval\fP y \fIoptlen\fP sirven para acceder a los valores de las opciones de \fBsetsockopt\fP(). En \fBgetsockopt\fP(), identifican un búfer que retornará el valor de las opciones solicitadas. Para \fBgetsockopt\fP(), \fIoptlen\fP es un argumento de valor\-resultado que inicialmente contiene el tamaño del búfer al que apunta \fIoptval\fP y se modifica al regresar para indicar el tamaño real del valor devuelto. Si no se proporciona ni se devuelve ningún valor, \fIoptval\fP puede ser NULL. .P \fIOptname\fP y cualesquiera opciones especificadas se pasan sin interpretar al módulo de protocolo apropiado para su interpretación. El fichero de cabecera \fI\fP contiene definiciones para opciones de nivel de conector, descritas más abajo. Las opciones a otros niveles de protocolo varían en formato y nombre; consulte las páginas apropiadas de la sección 4 del Manual. .P La mayoría de las opciones de nivel\-conector utilizan un parámetro \fIint\fP para \fIoptval\fP. Para \fBsetsockopt\fP(), el parámetro debe ser distinto de cero para permitir una opción booleana, o cero si la opción va a ser deshabilitada. .P Para una descripción de las opciones disponibles para conectores vea \fBsocket\fP(7) y las páginas de manual del protocolo apropiado. .SH "VALOR DEVUELTO" En caso de éxito, se devuelve cero en las operaciones estándar. En caso de error, \-1, y se define \fIerrno\fP al valor correspondiente. .P Netfilter permite al programador definir opciones de socket personalizadas con controladores asociados; para estas opciones, el valor de retorno, en caso de éxito, será el valor devuelto por el controlador. .SH ERRORES .TP \fBEBADF\fP El argumento \fIsockfd\fP no es un descriptor de archivo válido. .TP \fBEFAULT\fP La dirección apuntada por \fIoptval\fP no está en un sitio válido del espacio de direcciones del proceso. Para \fBgetsockopt\fP(), este error puede también ser devuelto si \fIoptlen\fP no está en un sitio válido del espacio de direcciones del proceso. .TP \fBEINVAL\fP \fIoptlen\fP no válido en \fBsetsockopt\fP(). En algunos casos, este error también puede ocurrir si el valor de \fIoptval\fP no es válido (por ejemplo, para la opción \fBIP_ADD_MEMBERSHIP\fP descrita en \fBip\fP(7)). .TP \fBENOPROTOOPT\fP La opción es desconocida al nivel indicado. .TP \fBENOTSOCK\fP El descriptor de archivo \fIsockfd\fP no se refiere a un conector. .SH ESTÁNDARES POSIX.1\-2024. .SH HISTORIAL .\" SVr4 documents additional ENOMEM and ENOSR error codes, but does .\" not document the .\" .BR SO_SNDLOWAT ", " SO_RCVLOWAT ", " SO_SNDTIMEO ", " SO_RCVTIMEO .\" options POSIX.1\-2001, SVr4, 4.4BSD (apareció por primera vez en 4.2BSD). .SH ERRORES Algunas de las opciones de conector deberían ser manejadas a niveles más bajos del sistema. .SH "VÉASE TAMBIÉN" \fBioctl\fP(2), \fBsocket\fP(2), \fBgetprotoent\fP(3), \fBprotocols\fP(5), \fBip\fP(7), \fBpacket\fP(7), \fBsocket\fP(7), \fBtcp\fP(7), \fBudp\fP(7), \fBunix\fP(7) .PP .SH TRADUCCIÓN La traducción al español de esta página del manual fue creada por Juan Piernas , Miguel Pérez Ibars y Marcos Fouces . .PP Esta traducción es documentación libre; lea la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. .PP Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a .MT debian-l10n-spanish@lists.debian.org .ME .