source: admin/Sources/Clients/ogAdmClient/sources/ogAdmClient.h @ 697a9ee

918-git-images-111dconfigfileconfigure-oglivegit-imageslgromero-new-oglivemainmaint-cronmount-efivarfsmultivmmultivm-ogboot-installerogClonningEngineogboot-installer-jenkinsoglive-ipv6test-python-scriptsticket-301ticket-50ticket-50-oldticket-577ticket-585ticket-611ticket-612ticket-693ticket-700ubu24tplunification2use-local-agent-oglivevarios-instalacionwebconsole3
Last change on this file since 697a9ee was 3ec149c, checked in by alonso <alonso@…>, 15 years ago

git-svn-id: https://opengnsys.es/svn/trunk@1314 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 4.8 KB
Line 
1// ********************************************************************************************************
2// Cliernte: ogAdmClient
3// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla
4// Fecha Creación: Marzo-2010
5// Fecha Última modificación: Marzo-2010
6// Nombre del fichero: ogAdmClient.h
7// Descripción :Este fichero implementa el cliente general del sistema
8// ********************************************************************************************************
9#include <stdio.h>
10#include <stdlib.h>
11#include <string.h>
12#include <ctype.h>
13#include <errno.h>
14#include <unistd.h>
15#include <time.h>
16#include <sys/types.h>
17#include <sys/socket.h>
18#include <sys/wait.h>
19#include <netinet/in.h>
20#include <arpa/inet.h>
21#include <signal.h>
22#include "ogAdmLib.h"
23// ________________________________________________________________________________________________________
24// Variables globales
25// ________________________________________________________________________________________________________
26char idordenador[LONPRM];        // Identificador del ordenador
27char nombreordenador[LONPRM]; // Nombre del ordenador
28char cache[LONPRM]; // Tamaño de la caché
29char idproautoexec[LONPRM]; // Identificador del procedimiento de autoexec
30char idcentro[LONPRM]; // Identificador de la Unidad Organizativa
31char idaula[LONPRM]; // Identificador del aula
32char IPlocal[LONIP]; // Ip local
33
34char servidoradm[LONPRM]; // Dirección IP del servidor de administración
35char puerto[LONPRM]; // Puerto de comunicación
36char pathinterface[LONPRM]; // Path donde está la interface entre la administración y el módulo de clonación
37
38char interface[LONFUN]; // Nombre del módulo,función o script de la interface con el módulo de administración
39char parametros[LONSTD]; // Parámetros para la llamada
40int herror;
41
42BOOLEAN CMDPTES; // Para bucle de comandos pendientes
43
44pid_t  pidbrowser; // Identificador del proceso que se crea para mostrar una página web con el browser
45pid_t  pidbash; // Identificador del proceso que se crea cuando se conmuta el browser
46
47char urlmenu[MAXLONURL]; // Url de la pagina de menu para el browser
48char urlmsg[MAXLONURL]; // Url de la página de mensajed para el browser
49
50
51typedef struct{  // Estructura usada para referenciar las funciones que procesan las tramas
52        char nf[LONFUN]; // Nombre de la función
53        BOOLEAN (*fptr)(TRAMA*); // Puntero a la función que procesa la trama
54}MSGFUN;
55MSGFUN tbfuncionesClient[MAXIMAS_FUNCIONES];
56// ________________________________________________________________________________________________________
57// Tabla de errores de la ejecución de los scripts
58// ________________________________________________________________________________________________________
59char* tbErroresScripts[]={"Se han generado errores. No se puede continuar la ejecución de este módulo",\
60                "001-Formato de ejecución incorrecto.",\
61                "002-Fichero o dispositivo no encontrado",\
62                "003-Error en partición de disco",\
63                "004-Partición o fichero bloqueado",\
64                "005-Error al crear o restaurar una imagen",\
65                "006-Sin sistema operativo",\
66                "007-Programa o función BOOLEANno ejecutable",\
67                "008-Error en la creación del archivo de eco para consola remota",\
68                "009-Error en la lectura del archivo temporal de intercambio",\
69                "010-Error al ejecutar la llamada a la interface de administración",\
70                "011-La información retornada por la interface de administración excede de la longitud permitida",\
71                "012-Error en el envío de fichero por la red",\
72                "013-Error en la creación del proceso hijo",\
73                "Error desconocido "
74        };
75        #define MAXERRORSCRIPT 14               // Error máximo cometido
76// ________________________________________________________________________________________________________
77// Prototipo de funciones
78// ________________________________________________________________________________________________________
79BOOLEAN autoexecCliente(TRAMA*);
80BOOLEAN RESPUESTA_AutoexecCliente(TRAMA*);
81void procesaComandos(TRAMA*);
82
83BOOLEAN tomaConfiguracion(char*);
84BOOLEAN tomaIPlocal(void);
85void scriptLog(const char *,int );
86
87BOOLEAN gestionaTrama(TRAMA *);
88BOOLEAN inclusionCliente();
89char* LeeConfiguracion(char*);
90BOOLEAN RESPUESTA_InclusionCliente(TRAMA *);
91
92BOOLEAN comandosPendientes(TRAMA*);
93BOOLEAN NoComandosPtes(TRAMA *);
94
95BOOLEAN respuestaEjecucionComando(TRAMA *,int,char*);
96BOOLEAN Sondeo(TRAMA *);
97BOOLEAN Actualizar(TRAMA *);
98int Purgar(TRAMA* );
99
100BOOLEAN ConsolaRemota(TRAMA*);
101
102BOOLEAN Arrancar(TRAMA *);
103BOOLEAN Apagar(TRAMA *);
104BOOLEAN Reiniciar(TRAMA *);
105BOOLEAN IniciarSesion(TRAMA *);
106BOOLEAN CrearImagen(TRAMA *);
107BOOLEAN InventarioHardware(TRAMA *);
108BOOLEAN InventariandoSoftware(TRAMA *,BOOLEAN,char*);
109BOOLEAN EjecutarScript(TRAMA *);
110BOOLEAN ejecutaArchivo(char*,TRAMA*);
111
112BOOLEAN cuestionCache(char*);
113int cargaPaginaWeb(char *);
114void muestraMenu(void);
115void muestraMensaje(int idx,char*);
116
117BOOLEAN enviaMensajeServidor(SOCKET *,TRAMA *,char);
118
119
120
121
Note: See TracBrowser for help on using the repository browser.