source: admin/Sources/Services/ogAdmServer/sources/ogAdmServer.h @ 0a735488

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 0a735488 was ea7314e, checked in by ramon <ramongomez@…>, 10 years ago

#677: Cambios en ogAdmClient y ogAdmServer para registrar los nuevos datos de creación de imagen (PC modelo, disco, partición y fecha).

git-svn-id: https://opengnsys.es/svn/branches/version1.0@4431 a21b9725-9963-47de-94b9-378ad31fedc9

  • Property mode set to 100644
File size: 5.6 KB
Line 
1// ********************************************************************************************************
2// Servicio: ogAdmServer
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: ogAdmServer.h
7// Descripción: Este fichero implementa el servicio de administración 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 <netinet/in.h>
19#include <arpa/inet.h>
20#include </usr/include/mysql/mysql.h>
21#include "Database.h"
22#include "ogAdmLib.h"
23// ________________________________________________________________________________________________________
24// Variables globales
25// ________________________________________________________________________________________________________
26char servidoradm[LONPRM];       // Dirección IP del servidor de administración
27char puerto[LONPRM];    // Puerto de comunicación
28char usuario[LONPRM];   // Usuario de acceso a la base de datos
29char pasguor[LONPRM];   // Password del usuario
30char datasource[LONPRM];        // Dirección IP del gestor de base de datos
31char catalog[LONPRM];   // Nombre de la base de datos
32char aulaup[LONPRM];    // Conmutador para registro automático de clientes
33
34typedef struct{ // Estructura usada para guardar información de los clientes
35        char ip[LONIP]; // IP del cliente
36        char estado[4]; // Tipo de Sistema Operativo en que se encuentra el cliente
37        SOCKET sock; // Socket por el que se comunica
38}SOCKETCL;
39SOCKETCL tbsockets[MAXIMOS_CLIENTES];
40
41BOOLEAN swcSocket; // Switch para indicar si se debe cerrar el socket del cliente
42
43typedef struct{  // Estructura usada para referenciar las funciones que procesan las tramas
44        char nf[LONFUN]; // Nombre de la función
45        BOOLEAN (*fptr)(SOCKET*,TRAMA*); // Puntero a la función que procesa la trama
46}MSGFUN;
47MSGFUN tbfuncionesServer[MAXIMAS_FUNCIONES];
48// ________________________________________________________________________________________________________
49// Prototipo de funciones
50// ________________________________________________________________________________________________________
51
52BOOLEAN tomaConfiguracion(char*);
53BOOLEAN gestionaTrama(SOCKET*);
54BOOLEAN Sondeo(SOCKET*,TRAMA*);
55BOOLEAN respuestaSondeo(SOCKET *,TRAMA*);
56BOOLEAN InclusionClienteWinLnx(SOCKET*,TRAMA*);
57BOOLEAN InclusionCliente(SOCKET*,TRAMA*);
58BOOLEAN registraCliente(char *);
59
60BOOLEAN procesoInclusionClienteWinLnx(SOCKET*,TRAMA*,int*,char*);
61BOOLEAN procesoInclusionCliente(SOCKET*,TRAMA*);
62BOOLEAN clienteExistente(char *,int *);
63BOOLEAN clienteDisponible(char *,int *);
64BOOLEAN hayHueco(int *);
65BOOLEAN actualizaConfiguracion(Database , Table ,char* ,int);
66BOOLEAN AutoexecCliente(SOCKET *, TRAMA *);
67BOOLEAN recorreProcedimientos(Database ,char* ,FILE*,char*);
68
69BOOLEAN tomaRepositorio(Database ,Table ,char*,int*);
70BOOLEAN buscaComandos(char *,TRAMA *,int *);
71BOOLEAN DisponibilidadComandos(SOCKET*,TRAMA*);
72BOOLEAN respuestaEstandar(TRAMA *,char **,char **,char ** ,Database *,Table *);
73BOOLEAN respuestaConsola(SOCKET *,TRAMA *,int);
74BOOLEAN enviaComando(TRAMA *ptrTrama,const char*);
75
76BOOLEAN Actualizar(SOCKET *, TRAMA* );
77BOOLEAN Purgar(SOCKET *, TRAMA* );
78
79BOOLEAN ConsolaRemota(SOCKET *,TRAMA*);
80BOOLEAN RESPUESTA_ConsolaRemota(SOCKET *,TRAMA*);
81BOOLEAN EcoConsola(SOCKET *,TRAMA*);
82
83BOOLEAN Comando(SOCKET *,TRAMA *);
84BOOLEAN RESPUESTA_Comando(SOCKET *,TRAMA *);
85
86BOOLEAN Arrancar(SOCKET *,TRAMA *);
87BOOLEAN Levanta(char*,char*,char*);
88BOOLEAN WakeUp(SOCKET *,char*,char*,char*);
89void PasaHexBin(char *,char *);
90BOOLEAN RESPUESTA_Arrancar(SOCKET *,TRAMA*);
91BOOLEAN Apagar(SOCKET *,TRAMA *);
92BOOLEAN RESPUESTA_Apagar(SOCKET *,TRAMA *);
93BOOLEAN Reiniciar(SOCKET *,TRAMA *);
94BOOLEAN RESPUESTA_Reiniciar(SOCKET *,TRAMA *);
95BOOLEAN IniciarSesion(SOCKET *,TRAMA *);
96BOOLEAN RESPUESTA_IniciarSesion(SOCKET *,TRAMA *);
97BOOLEAN CrearImagen(SOCKET *,TRAMA *);
98BOOLEAN CrearImagenBasica(SOCKET *,TRAMA *);
99BOOLEAN CrearSoftIncremental(SOCKET *,TRAMA *);
100BOOLEAN RESPUESTA_CrearImagen(SOCKET *,TRAMA *);
101BOOLEAN RESPUESTA_CrearImagenBasica(SOCKET *,TRAMA *);
102BOOLEAN RESPUESTA_CrearSoftIncremental(SOCKET *,TRAMA *);
103BOOLEAN actualizaCreacionImagen(Database,Table,char*,char*,char*,char*,char*,char*);
104BOOLEAN actualizaCreacionSoftIncremental(Database,Table,char*,char*);
105BOOLEAN RestaurarImagen(SOCKET *,TRAMA *);
106BOOLEAN RestaurarImagenBasica(SOCKET *,TRAMA *);
107BOOLEAN RestaurarSoftIncremental(SOCKET *,TRAMA *);
108BOOLEAN RESPUESTA_RestaurarImagen(SOCKET *,TRAMA *);
109BOOLEAN RESPUESTA_RestaurarImagenBasica(SOCKET *,TRAMA *);
110BOOLEAN RESPUESTA_RestaurarSoftIncremental(SOCKET *,TRAMA *);
111BOOLEAN actualizaRestauracionImagen(Database,Table,char*,char*,char*,char*,char*);
112BOOLEAN Configurar(SOCKET *,TRAMA* );
113BOOLEAN RESPUESTA_Configurar(SOCKET *,TRAMA* );
114BOOLEAN actualizaConfigurar(Database , Table , char* );
115BOOLEAN InventarioHardware(SOCKET *,TRAMA *);
116BOOLEAN RESPUESTA_InventarioHardware(SOCKET *,TRAMA *);
117BOOLEAN actualizaHardware(Database, Table,char* ,char*,char*,char*);
118BOOLEAN cuestionPerfilHardware(Database,Table,char*,char*,int,char*,char*,int *,int);
119BOOLEAN actualizaSoftware(Database , Table , char* , char* , char*,char*,char*);
120BOOLEAN cuestionPerfilSoftware(Database, Table, char*, char*,int,char*,char*,char*,int *,int);
121
122BOOLEAN enviaArchivo(SOCKET *, TRAMA *);
123BOOLEAN recibeArchivo(SOCKET *, TRAMA *);
124BOOLEAN envioProgramacion(SOCKET *, TRAMA *);
125
126int checkDato(Database,Table,char*,const char*,const char*,const char*);
127
128
129
Note: See TracBrowser for help on using the repository browser.