NOMBRE¶
inet_pton - Crea una estructura de dirección de red
SINOPSIS¶
#include <sys/types.h>
#include <sys/socket.h>
#include <arpa/inet.h>
int inet_pton(int af, const char *src, void *dst);
DESCRIPCIÓN¶
Esta función convierte la cadena de caracteres
src en una estructura
de dirección de red de la familia
af , y copia la estructura de
dirección de red a
dst.
inet_pton(3) extiende la función de
inet_addr(3) para
soportar múltiples familias de direcciones,
inet_addr(3) está
considerada obsoleta hoy en día en favor de
inet_pton(3). Las
siguientes familias de direcciones están soportadas actualmente:
- AF_INET
- src apunta a una cadena de caracteres que contiene
una dirección de red IPv4 en el formato decimal con puntos, "
ddd.ddd.ddd.ddd". La dirección es convertida a una
estructura in_addr y copiada a dst, que debe tener
sizeof(struct in_addr) bytes de longitud.
- AF_INET6
- src apunta a una cadena de caracters que contiene
una dirección de red IPv6 en cualquier formato de dirección IPv6
permitido. La dirección es convertida a una estructura
in6_addr y copiada a dst, que debe tener sizeof(struct
in6_addr) bytes de longitud.
Ciertos formatos hexadecimales y octales antiguos de direcciones
AF_INET
no están soportados por
inet_pton, que los rechaza.
VALOR DEVUELTO¶
inet_pton devuelve un valor negativo y asigna a
errno el valor
EAFNOSUPPORT si
af no contiene una familia de direcciones
válida. Devuelve cero si
src no contiene una cadena de caracteres
que represente una dirección de red válida en la familia de
direcciones especificada. Devuelve un valor positivo si la dirección de
red fue convertida con éxito.
VÉASE TAMBIÉN¶
inet_ntop(3)
FALLOS¶
AF_INET6 no reconoce direcciones IPv4. Se debe pasar una dirección
IPv4 debidamente mapeada a IPv6 en
src en su lugar.