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

Referencia del Archivo puertockd.c

#include <sys/types.h>
#include <getopt.h>
#include "general_var.h"
#include "funciones.h"
#include <termios.h>
#include <unistd.h>
#include <stdlib.h>

Definiciones

#define appendTo(archivo, stre)
#define getVariableNum(nombre, destino, defvalue)

Funciones

void ayuda ()
int daemonize (const char *err_stream_name, const char *msg_stream_name, int watchdog)
int main (int argc, char **argv)

Variables

char * dispositivo_captura
char * ip_origen
int * lista_puertos_knock
lista_comandoslista_correspondencias
size_t sizeofmaclayer
int INTERVALO_ESPERA
int NMAX_FILTROS
int NUM_ORDENES
int diferencia_tiempos
int EJECUTAR_POR_DEFECTO
char * usuario
int caducidad_lista
int n_intentos_lista

Descripción detallada

Archivo que contiene las funciones del bloque main

Documentación de las definiciones

#define appendTo archivo,
stre   ) 
 

Valor:

stre=fopen(archivo,"a+"); \
        if(stre==NULL)\
        {       printf("Error abriendo archivo de log");\
                return -1;\
        }
Abre un archivo como un stream, de "sólo escritura al final"
Parámetros:
archivo Array con la ubicación y el nombre del archivo
str Flujo al que se asociará el archivo

#define getVariableNum nombre,
destino,
defvalue   ) 
 

Valor:

vaux=getVariable(nombre);\
        if(vaux==NULL)\
        {\
                destino=defvalue;\
        }\
        else\
        {\
                destino=atoi(vaux);\
                free(vaux);\
        }
Obtiene el valor de una variable en forma de cadena, después la pasa a formato numérico y libera el espacio de las variables intermedias usadas
Parámetros:
nombre nombre del parámetro a obtener, tal como está identificado en el archivo de configuracion
destino Variable de destino
defvalue Valor por defecto en el caso de existir valor en el archivo de configuración.


Documentación de las funciones

void ayuda  ) 
 

Proporciona ayuda sobre las opciones del programa

int daemonize const char *  err_stream_name,
const char *  msg_stream_name,
int  watchdog
 

Convierte un proceso en un demonio: Redirige la salida estándar, crea un proceso nuevo en segundo plano que es el que continúa la ejecución.

Parámetros:
err_stream_name Archivo en el que se escribirá la salida stderr
msg_stream_name Archivo en el que se escribirá la salida stdout
watchdog Si el valor es 1, todo el programa se ejecuta como un proceso hijo del actual, y en caso de que finalice por algun error, vuelve a ser llamado.

int main int  argc,
char **  argv
 

Función inicial del programa. Se encarga del análisis de la línea de comandos y del archivo de configuración


Documentación de las variables

int caducidad_lista
 

Tiempo mínimo de inactividad para que una dirección permanezca incluida en la lista negra de direcciones

int diferencia_tiempos
 

En el tipo KNOCKIFRADO, Diferencia máxima en segundos entre el tiempo actual y el tiempo del paquete

char* dispositivo_captura
 

Interfaz usada para capturar el tráfico

int EJECUTAR_POR_DEFECTO
 

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

int INTERVALO_ESPERA
 

Tiempo de espera entre peticiones

char* ip_origen
 

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

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

int n_intentos_lista
 

Numero de intentos erroneos de conexion necesarios para descartar el trafico proveniente de una direccion

int NMAX_FILTROS
 

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

int NUM_ORDENES
 

Tamaño de la lista de ordenes

size_t sizeofmaclayer
 

Tamaño de la cabecera de la capa de enlace

char* usuario
 

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


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