Página principal | Lista de componentes | Lista de archivos | Miembros de las clases | Archivos de los miembros

Referencia del Archivo gestion_knock.c

#include <sys/types.h>
#include <sys/wait.h>
#include <pwd.h>
#include "estructuras.h"
#include "funciones.h"
#include "general_var.h"
#include "mensajes.h"
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <linux/sockios.h>
#include <linux/if.h>

Funciones

int ejecuta (char *)
char * get_mac (const char *)
int knock_gestion (int tipo)
int gestion_dns_auth ()

Variables

const char * ip_origen
const char * dispositivo_captura
int * lista_puertos_knock
const lista_comandoslista_correspondencias
const int NMAX_FILTROS
const int EJECUTAR_POR_DEFECTO
const int NUM_ORDENES
char * usuario

Descripción detallada

Incluye las funciones correspondientes al bloque de gestión de PuerTockd

Documentación de las funciones

int ejecuta char *  comando  ) 
 

Ejecuta un comando creando un nuevo proceso.

Parámetros:
comando Ruta hacia el comando a ejecutar.

int gestion_dns_auth  ) 
 

Crea el filtro adecuado y llama a la funcion dns_auth con los parámetros requeridos. Tras un intento correcto ejecuta el comando correspondiente.

char * get_mac const char *  tarjeta  ) 
 

Esta funcion obtiene la dirección MAC de una interfaz de red

Parámetros:
tarjeta nombre de la interfaz
Devuelve:
Dirección MAC, en el formato AA:BB:CC:DD:EE:GG, almacenada en un espacio de memoria reservado con Malloc y que hay que liberar manualmente.

int knock_gestion int  tipo  ) 
 

knock_gestion construye los filtros necesarios y llama a la función de autenticación adecuada. Tras un intento correcto, busca el comando que se ha de ejecutar y llama a otra función que lo ejecuta.

Parámetros:
tipo Puede tomar los valores KNOCKMAL KNOCKUDP o KNOCKIFRADO.


Documentación de las variables

const char* dispositivo_captura
 

Interfaz usada para capturar el tráfico

const int EJECUTAR_POR_DEFECTO
 

Indica si en el caso de no recibir ninguna orden ejecuta una predeterminada

const char * ip_origen
 

Dirección Ip del cliente, en caso de que se conozca, en notación estandar de numeros y puntos

const lista_comandos* lista_correspondencias
 

Array en el que están almacenados las correspondencias comando-alias-aliasnumérico

int* lista_puertos_knock
 

Array de enteros que contiene la secuencia de puertos hacia los que irá dirigido tráfico

const int NMAX_FILTROS
 

Número máximo de filtros (puertos) existente. Es igual a la longitud del array lista_puertos_knock

const int NUM_ORDENES
 

Tamaño de la lista de ordenes

char* usuario
 

Nombre de usuario bajo el cual se ejecutarán los programas externos


Generado el Mon Sep 19 00:05:19 2005 para PuerTock por  doxygen 1.3.9.1