- Estructuracion del codigo de la distribucion v0.3.1 -

La distribucion esta compuesta por tres programas:

- cgi_detect
- httpping
- type_server
- httpgrep

Todos los programas dependen de los dos fichero fuentes siguientes:

- tcp_basic.c - Contiene las rutinas basicas de sockets. Creacion del cliente socket y envio de datos por el.
- tcp_uplevel.c - Contiene una funcion de envio de correo electronico con un servidor SMTP como sendmail por ejemplo

* Cgi_detect *
El programa tiene dos funciones, una principal que se encarga de contralar la entrada del programa, de leer el fichero de CGI's y de comprobar que todos esta correcto y otra funcion llamada cgi_tester que es la encargada de crear la conexion por socket con el servidor web para solicitar el cgi y una vez comprada la respuesta hacer la salida en pantalla.

* Httpping *
Consta de tres funciones, una de ellas para el control de la entrada del programa y descomposicion de la URL proporcionada, otra funcion que se encarga de hacer la peticion y la conexion al servidor web y devolverla a la principal para que estime el tiempo, y la ultima funcion se encarga de controlar la interrupcion de programa por CTRL-C.

* Type_server *
Tiene una sola funcion que se encarga de controlar la entrada y de establecer la conexion a si como de examinar el resultado de HEAD o GET, segund el fichero de configuracion $HOME/.type_server_conf, que realiza al servidor WEB en este codigo se aprende que cada servidor responde con un codigo de error o de aceptacion a la peticion GET-HEAD / HTTP/1.0-1.1 por eso a la hora de controlar la respuesta del servidor es mejor ignorar esto y concentrarse en el valor de Server.

* Httpgrep *
Tiene una sola funcion que se encarga de controlar la entrada, procesar la URL del usuario, conectarse al servidor, hacer la peticion y buscar la cadena en la respuesta recivida del servidor.

* Herr *
Tiene una sola funcion que se encarga de la entrada del programa y de buscar el error en el fichero que contiene los errores en el formato "codigo ; sec codigo ; Descripcion".

Indice