summaryrefslogtreecommitdiffstats
path: root/sources/ogAdmServer.cpp
diff options
context:
space:
mode:
authorOpenGnSys Support Team <soporte-og@soleta.eu>2019-05-27 11:30:17 +0200
committerOpenGnSys Support Team <soporte-og@soleta.eu>2019-05-27 13:03:14 +0200
commit8abc82f64787b9316a49a561e4e97a4c2bdf019b (patch)
treedb24b5b36b96c73c65195894557703d0e06be266 /sources/ogAdmServer.cpp
parent7ab5f0cbfb827ad18af33de04ee2115d3208b298 (diff)
#915 remove Sondeo(), respuestaSondeo(), ConsolaRemota(), Arrancar() and EcoConsola()
The new REST API obsoletes the following commands: - Sondeo() has been replaced by GET /clients. - respuestaSondeo() has been replaced by POST /clients. - ConsolaRemota() has been replaced by POST /shell/run. - EcoConsola() has been replaced by POST /shell/output. - Arrancar() has been replaced by POST /wol.
Diffstat (limited to 'sources/ogAdmServer.cpp')
-rw-r--r--sources/ogAdmServer.cpp199
1 files changed, 0 insertions, 199 deletions
diff --git a/sources/ogAdmServer.cpp b/sources/ogAdmServer.cpp
index 8a22018..204b5b3 100644
--- a/sources/ogAdmServer.cpp
+++ b/sources/ogAdmServer.cpp
@@ -139,78 +139,6 @@ static inline int og_client_socket(const struct og_client *cli)
}
// ________________________________________________________________________________________________________
-// Función: Sondeo
-//
-// Descripción:
-// Solicita a los clientes su disponibiliad para recibir comandos interactivos
-// Parámetros:
-// - socket_c: Socket del cliente que envió el mensaje
-// - ptrTrama: Trama recibida por el servidor con el contenido y los parámetros del mensaje
-// Devuelve:
-// true: Si el proceso es correcto
-// false: En caso de ocurrir algún error
-// ________________________________________________________________________________________________________
-static bool Sondeo(TRAMA* ptrTrama, struct og_client *cli)
-{
- if (!enviaComando(ptrTrama, CLIENTE_APAGADO)) {
- respuestaConsola(og_client_socket(cli), ptrTrama, false);
- return false;
- }
- respuestaConsola(og_client_socket(cli), ptrTrama, true);
- return true;
-}
-// ________________________________________________________________________________________________________
-// Función: respuestaSondeo
-//
-// Descripción:
-// Recupera el estatus de los ordenadores solicitados leyendo la tabla de sockets
-// Parámetros:
-// - socket_c: Socket del cliente que envió el mensaje
-// - ptrTrama: Trama recibida por el servidor con el contenido y los parámetros del mensaje
-// Devuelve:
-// true: Si el proceso es correcto
-// false: En caso de ocurrir algún error
-// ________________________________________________________________________________________________________
-static bool respuestaSondeo(TRAMA* ptrTrama, struct og_client *cli)
-{
- int socket_c = og_client_socket(cli);
- int i;
- long lSize;
- char *iph, *Ipes;
-
- iph = copiaParametro("iph",ptrTrama); // Toma dirección/es IP
- lSize = strlen(iph); // Calcula longitud de la cadena de direccion/es IPE/S
- Ipes = (char*) reservaMemoria(lSize + 1);
- if (Ipes == NULL) {
- liberaMemoria(iph);
- syslog(LOG_ERR, "%s:%d OOM\n", __FILE__, __LINE__);
- return false;
- }
- strcpy(Ipes, iph); // Copia cadena de IPES
- liberaMemoria(iph);
- initParametros(ptrTrama,0);
- strcpy(ptrTrama->parametros, "tso="); // Compone retorno tso (sistemas operativos de los clientes )
- for (i = 0; i < MAXIMOS_CLIENTES; i++) {
- if (strncmp(tbsockets[i].ip, "\0", 1) != 0) { // Si es un cliente activo
- if (contieneIP(Ipes, tbsockets[i].ip)) { // Si existe la IP en la cadena
- strcat(ptrTrama->parametros, tbsockets[i].ip); // Compone retorno
- strcat(ptrTrama->parametros, "/"); // "ip/sistema operativo;"
- strcat(ptrTrama->parametros, tbsockets[i].estado);
- strcat(ptrTrama->parametros, ";");
- }
- }
- }
- strcat(ptrTrama->parametros, "\r");
- liberaMemoria(Ipes);
- if (!mandaTrama(&socket_c, ptrTrama)) {
- syslog(LOG_ERR, "failed to send response to %s:%hu reason=%s\n",
- inet_ntoa(cli->addr.sin_addr), ntohs(cli->addr.sin_port),
- strerror(errno));
- return false;
- }
- return true;
-}
-// ________________________________________________________________________________________________________
// Función: Actualizar
//
// Descripción:
@@ -251,84 +179,6 @@ static bool Purgar(TRAMA* ptrTrama, struct og_client *cli)
return true;
}
// ________________________________________________________________________________________________________
-// Función: ConsolaRemota
-//
-// Descripción:
-// Envia un script al cliente, éste lo ejecuta y manda el archivo que genera la salida por pantalla
-// Parámetros:
-// - socket_c: Socket del cliente que envió el mensaje
-// - ptrTrama: Trama recibida por el servidor con el contenido y los parámetros del mensaje
-// Devuelve:
-// true: Si el proceso es correcto
-// false: En caso de ocurrir algún error
-// ________________________________________________________________________________________________________
-static bool ConsolaRemota(TRAMA* ptrTrama, struct og_client *cli)
-{
- char *iph, fileco[LONPRM], *ptrIpes[MAXIMOS_CLIENTES];;
- FILE* f;
- int i,lon;
-
- if (!enviaComando(ptrTrama, CLIENTE_OCUPADO)) {
- respuestaConsola(og_client_socket(cli), ptrTrama, false);
- return false;
- }
- INTROaFINCAD(ptrTrama);
- /* Destruye contenido del fichero de eco anterior */
- iph = copiaParametro("iph",ptrTrama); // Toma dirección ip del cliente
- lon = splitCadena(ptrIpes,iph,';');
- for (i = 0; i < lon; i++) {
- sprintf(fileco,"/tmp/_Seconsola_%s",ptrIpes[i]); // Nombre que tendra el archivo en el Servidor
- f = fopen(fileco, "wt");
- fclose(f);
- }
- liberaMemoria(iph);
- respuestaConsola(og_client_socket(cli), ptrTrama, true);
- return true;
-}
-// ________________________________________________________________________________________________________
-// Función: EcoConsola
-//
-// Descripción:
-// Solicita el eco de una consola remota almacenado en un archivo de eco
-// Parámetros:
-// - socket_c: Socket del cliente que envió el mensaje
-// - ptrTrama: Trama recibida por el servidor con el contenido y los parámetros del mensaje
-// Devuelve:
-// true: Si el proceso es correcto
-// false: En caso de ocurrir algún error
-// ________________________________________________________________________________________________________
-static bool EcoConsola(TRAMA* ptrTrama, struct og_client *cli)
-{
- int socket_c = og_client_socket(cli);
- char *iph,fileco[LONPRM],*buffer;
- int lSize;
-
- INTROaFINCAD(ptrTrama);
- // Lee archivo de eco de consola
- iph = copiaParametro("iph",ptrTrama); // Toma dirección ip del cliente
- sprintf(fileco,"/tmp/_Seconsola_%s",iph); // Nombre del archivo en el Servidor
- liberaMemoria(iph);
- lSize=lonArchivo(fileco);
- if(lSize>0){ // Si el fichero tiene contenido...
- initParametros(ptrTrama,lSize+LONGITUD_PARAMETROS);
- buffer=leeArchivo(fileco);
- sprintf(ptrTrama->parametros,"res=%s\r",buffer);
- liberaMemoria(buffer);
- }
- else{
- initParametros(ptrTrama,0);
- sprintf(ptrTrama->parametros,"res=\r");
- }
- ptrTrama->tipo=MSG_RESPUESTA; // Tipo de mensaje
- if (!mandaTrama(&socket_c, ptrTrama)) {
- syslog(LOG_ERR, "failed to send response to %s:%hu reason=%s\n",
- inet_ntoa(cli->addr.sin_addr), ntohs(cli->addr.sin_port),
- strerror(errno));
- return false;
- }
- return true;
-}
-// ________________________________________________________________________________________________________
// Función: clienteDisponible
//
// Descripción:
@@ -1394,50 +1244,6 @@ bool respuestaConsola(int socket_c, TRAMA *ptrTrama, int res)
return true;
}
// ________________________________________________________________________________________________________
-// Función: Arrancar
-//
-// Descripción:
-// Procesa el comando Arrancar
-// Parámetros:
-// - socket_c: Socket de la consola al envió el mensaje
-// - ptrTrama: Trama recibida por el servidor con el contenido y los parámetros
-// Devuelve:
-// true: Si el proceso es correcto
-// false: En caso de ocurrir algún error
-// ________________________________________________________________________________________________________
-static bool Arrancar(TRAMA* ptrTrama, struct og_client *cli)
-{
- char *ptrIP[MAXIMOS_CLIENTES],*ptrMacs[MAXIMOS_CLIENTES];
- char *iph,*mac,*mar;
- bool res;
- int lon;
-
- iph = copiaParametro("iph",ptrTrama); // Toma dirección/es IP
- mac = copiaParametro("mac",ptrTrama); // Toma dirección/es MAC
- mar = copiaParametro("mar",ptrTrama); // Método de arranque (Broadcast o Unicast)
-
- lon = splitCadena(ptrIP, iph, ';');
- lon = splitCadena(ptrMacs, mac, ';');
-
- res = Levanta(ptrIP, ptrMacs, lon, mar);
-
- liberaMemoria(iph);
- liberaMemoria(mac);
- liberaMemoria(mar);
-
- if(!res){
- respuestaConsola(og_client_socket(cli), ptrTrama, false);
- return false;
- }
-
- if (!enviaComando(ptrTrama, CLIENTE_OCUPADO)) {
- respuestaConsola(og_client_socket(cli), ptrTrama, false);
- return false;
- }
- respuestaConsola(og_client_socket(cli), ptrTrama, true);
- return true;
-}
-// ________________________________________________________________________________________________________
// Función: Levanta
//
// Descripción:
@@ -3426,10 +3232,6 @@ static struct {
const char *nf; // Nombre de la función
bool (*fcn)(TRAMA *, struct og_client *cli);
} tbfuncionesServer[] = {
- { "Sondeo", Sondeo, },
- { "respuestaSondeo", respuestaSondeo, },
- { "ConsolaRemota", ConsolaRemota, },
- { "EcoConsola", EcoConsola, },
{ "Actualizar", Actualizar, },
{ "Purgar", Purgar, },
{ "InclusionCliente", InclusionCliente, },
@@ -3437,7 +3239,6 @@ static struct {
{ "AutoexecCliente", AutoexecCliente, },
{ "ComandosPendientes", ComandosPendientes, },
{ "DisponibilidadComandos", DisponibilidadComandos, },
- { "Arrancar", Arrancar, },
{ "RESPUESTA_Arrancar", RESPUESTA_Arrancar, },
{ "Apagar", Apagar, },
{ "RESPUESTA_Apagar", RESPUESTA_Apagar, },