Provided by: manpages-es_1.55-10_all bug

NOMBRE

       bind - enlaza un nombre a un conector (socket)

SINOPSIS

       #include <sys/types.h>
       #include <sys/socket.h>

       int bind(int sockfd, struct sockaddr *my_addr, socklen_t addrlen);

DESCRIPCIÓN

       bind  da  al  conector  sockfd  la dirección local my_addr.  my_addr tiene una longitud de addrlen bytes.
       Tradicionalmente, esto se conoce como “asignar un nombre a un conector.”  Cuando un conector se crea  con
       socket(2), existe en un espacio de nombres (familia de direcciones) pero carece de nombre.

       Normalmente,  es necesario asignar una dirección local usando bind a un conector SOCK_STREAM antes de que
       éste pueda recibir conexiones (vea accept(2)).

       Las reglas usadas en el enlace de nombres varían entre familias de direcciones. Consulte las entradas  de
       manual  de  la Sección 7 para obtener una información más detallada. Para AF_INET vea ip(7), para AF_UNIX
       vea unix(7), para AF_APPLETALK vea ddp(7), para AF_PACKET vea packet(7), para AF_X25 vea  x25(7)  y  para
       AF_NETLINK vea netlink(7).

VALOR DEVUELTO

       Se  devuelve  0  en  caso  de  éxito.  En  caso  de error, se devuelve -1 y a errno se le asigna un valor
       apropiado.

ERRORES

       EBADF  sockfd no es un descriptor válido.

       EINVAL El  conector  ya  está  enlazado  a  una  dirección.  Esto  puede  cambiar  en  el  futuro:  véase
              linux/unix/sock.c para más detalles.

       EACCES La dirección está protegida y el usuario no es el superusuario.

       Los siguientes errores son específicos a los conectores del dominio UNIX (AF_UNIX):

       EINVAL La dirección addr_len es incorrecta o el conector no pertenecia a la familia AF_UNIX.

       EROFS  El nodo-i del conector reside en un sistema de ficheros de `sólo lectura'.

       EFAULT my_addr señala fuera del espacio de direcciones accesible por el usuario.

       ENAMETOOLONG
              my_addr es demasiado larga.

       ENOENT El fichero no existe.

       ENOMEM No hay suficiente memoria disponible en el núcleo.

       ENOTDIR
              Un componente del camino no es un directorio.

       EACCES El permiso de búsqueda ha sido denegado en uno de los componentes del camino.

       ELOOP  Se han encontrado demasiados enlaces simbólicos al resolver my_addr.

FALLOS

       No están descritas las opciones de proxy transparente.

CONFORME A

       SVr4,  4.4BSD (la función bind apareció por primera vez en BSD 4.2). SVr4 documenta condiciones generales
       de error adicionales: EADDRNOTAVAIL, EADDRINUSE y ENOSR, y condiciones de error específicas  del  dominio
       UNIX adicionales: EIO y EISDIR.

NOTA

       El  tercer  argumento  de bind es en realidad un entero (y esto es lo que tienen BSD 4.*, libc4 y libc5).
       Cierta confusión en POSIX dio como resultado el actual socklen_t. Véase también accept(2).

VÉASE TAMBIÉN

       accept(2), connect(2), listen(2), socket(2), getsockname(2), ip(7), socket(7)