DocumentaciónOBTENER_IP(s)

OBTENER_IP(s)\texttt{OBTENER\_IP}(s)

Nombre

OBTENER_IP - Detecta la IP local y la guarda en el socket.

Sinopsis

codigo = OBTENER_IP(s)

Descripcion

Obtiene la direccion IP local del equipo y la escribe en el campo s.ip del socket recibido.

Suele usarse antes de conectar o escuchar para autocompletar la configuracion de red.

Comportamiento

  • Recibe un SOCKET por referencia.
  • Guarda la IP detectada en s.ip.
  • Retorna un codigo numerico de resultado.

Funciones API relacionadas

  • CONECTAR()
  • ESCUCHAR()

Parámetros

ParámetroTipoDescripción
sSOCKETSocket pasado por referencia. La función escribe la IP detectada en el campo s.ip.

Valor de retorno

NUMERICO - Codigo numerico de resultado.

  • 0: IP local obtenida correctamente.
  • -1: el socket es NULL.
  • -2: fallo gethostname().
  • -3: fallo gethostbyname().
  • -4: no se obtuvo ninguna direccion IP.

Ejemplo

ejemplo.blox
//
// OBTENER_IP() - La función OBTENER_IP se usa para averiguar la direccion IP 
// de la maquina local. 
//
// Recibe como parámetro un SOCKET y retorna un valor LOGICO que indica  
// el estado de la busqueda del IP.
// 
// Ejemplo:
//      SOCKET s
//      sts = OBTENER_IP(s)
//
// Retorna 0 si pudo obtener la IP local correctamente; 
// en caso contrario retorna un valor distinto de 0. 
//
// En caso de error retorna un negativo:
//
// -1 si el socket es NULL;
// -2 si falló gethostname();
// -3 si falló gethostbyname();
// -4 si no se obtuvo ninguna dirección IP (addr_list[0] NULL).
//


FUNCION PRINCIPAL
INICIO
    SOCKET s
    NUMERICO res

    res = OBTENER_IP(s)
    SI (res == 0) ENTONCES
        IMPRIMIR("La IP local es: ", s.ip)
    SINO
        IMPRIMIR("No se pudo obtener la IP local.")
    FIN_SI
    
FINAL