OpenGnSys Support Team
ecff9948e7
#941 use dbi layer from AutoexecCliente()
2020-03-04 14:54:21 +01:00
OpenGnSys Support Team
0fbdcf260c
#941 use dbi layer from procesoInclusionClienteWinLnx()
2020-03-04 14:54:05 +01:00
OpenGnSys Support Team
2629906b6d
#941 add basic database-independent abstraction (dbi)
...
Add basic infrastructure to support for the independent database layer.
2020-03-04 14:53:01 +01:00
Javier Sánchez Parra
a245411ab2
#924 Fix that only the commands without session were checked
...
Irina reports that the bug fixed in 78a97c5 happens again when you run a
command with a session (queue of actions).
The bug was introduced in 78a97c5, the goal of the commit was
to change the behaviour of respuestaEstandar to always check
the result of a command, whether it has a session or not. But, instead
of this behaviour, the commit changes respuestaEstandar to only check the
commands without session.
2019-11-25 13:19:41 +01:00
Ramón M. Gómez
696c5bbaf0
#839 : Always update the partition types when obtaining the computer configuration.
2019-11-21 17:42:57 +01:00
Roberto Hueso Gómez
8fa082d4c5
#915 Return HTTP 400 error code in og_client_state_process_payload_rest
...
This patch meets RFC 7235 and returns an HTTP 400 error code when ogAdmServer
recieves a wrong request.
2019-11-13 14:15:57 +01:00
Roberto Hueso Gómez
6c91d147c1
#915 Rename POST /image/setup for /setup in REST API
...
This patch renames the setup command to avoid semantic confusion.
2019-11-13 14:15:43 +01:00
Roberto Hueso Gómez
ffd2965b33
#915 Add 'echo' parameter to POST /shell/run
...
'echo' parameter makes possible for users to request the console output.
2019-11-12 21:37:11 +01:00
Roberto Hueso Gómez
280df58917
#915 Fix og_json_parse_clients flags for empty arrays
...
This patch prevents the flag OG_REST_PARAM_ADDR to be activated when the array
is empty.
2019-11-12 21:37:11 +01:00
Roberto Hueso Gómez
6066b32603
#915 Validate POST /run/schedule REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-12 21:37:11 +01:00
Roberto Hueso Gómez
4f785531e6
#915 Validate POST /image/restore/incremental REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-12 21:37:11 +01:00
Roberto Hueso Gómez
f51c245c93
#915 Validate POST /image/restore/basic REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-12 21:37:11 +01:00
Roberto Hueso Gómez
6a0e5fa1c0
#915 Validate POST /image/create/incremental REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-12 21:37:11 +01:00
Roberto Hueso Gómez
82a1d5a142
#915 Validate POST /image/create/basic REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-12 21:37:11 +01:00
Roberto Hueso Gómez
3bc3b45e5f
#915 Validate POST /image/setup REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-12 21:37:11 +01:00
Ramón M. Gómez
184510412c
#839 : Do not check partition type when obtaining computer configuration to hide/unhide NTFS partitions.
2019-11-11 12:37:05 +01:00
Roberto Hueso Gómez
ec4189b18f
#915 Validate POST /image/restore REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:29:42 +01:00
Roberto Hueso Gómez
abe2a888ab
#915 Validate POST /image/create REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:27:47 +01:00
Roberto Hueso Gómez
1a1ecf7791
#915 Validate POST /software REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:26:45 +01:00
Roberto Hueso Gómez
7803e13adf
#915 Validate POST /hardware REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:26:33 +01:00
Roberto Hueso Gómez
93028bd055
#915 Validate POST /refresh REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:26:15 +01:00
Roberto Hueso Gómez
bc1b958ceb
#915 Validate POST /stop REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:26:06 +01:00
Roberto Hueso Gómez
0a41d5d02f
#915 Validate POST /reboot REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:25:54 +01:00
Roberto Hueso Gómez
acf9cdf8d1
#915 Validate POST /poweroff REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:25:24 +01:00
Roberto Hueso Gómez
8901505bb5
#915 Validate POST /session REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:24:24 +01:00
Roberto Hueso Gómez
61059e1b2e
#915 Validate POST /shell/output REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:22:35 +01:00
Roberto Hueso Gómez
b403c7ae6c
#915 Validate POST /shell/run REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:17:19 +01:00
Roberto Hueso Gómez
ec5fe704cc
#915 Validate POST /wol REST API parameters
...
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:16:59 +01:00
Roberto Hueso Gómez
54ecdbbdf1
#915 Validate POST /clients parameters
...
This patch adds og_msg_params_validate function as well as some flags that can
be used to validate parameters of a REST API request.
This patch ensures that all required parameters are sent in the request.
2019-11-06 11:16:36 +01:00
Javier Sánchez Parra
8082efd6de
#924 Always check the result of a command to avoid errors
...
Irina reports that if you try to restore an image without success
(for example: the disk does not have enough space), the database changes
as if no error would happen. So you see the computer in the WebConsole
with an image/OS that, actually, does not have.
The bug is caused because the function respuestaEstandar only checks
the result of a command if it has a session. So the problem is that the
commands which use respuestaEstandar without a session can return an
error, but the ogAdmServer always works as no error would occur.
This commit changes the behaviour of respuestaEstadar to always check
the result of a command, whether it has a session or not.
2019-11-04 15:09:04 +01:00
Roberto Hueso Gómez
723f110308
#915 Use og_cmd_legacy_send in og_cmd_run_schedule for ogAdmServer
...
This patch simplifies the og_cmd_run_schedule function by calling
og_cmd_legacy_send.
2019-10-29 14:22:08 +01:00
Roberto Hueso Gómez
2f7e9da5ab
#915 Add POST "run/schedule" command to REST API in ogAdmServer
...
This patch implements the command "run/schedule" that kicks in pending commands
execution.
Request:
POST /run/schedule
{
"clients": ["192.168.56.11"]
}
Reply:
200 OK
This patch also adds a simple test to cover correction of the command.
2019-10-25 14:12:09 +02:00
Javier Sánchez Parra
61bbcd9251
#915 Fix POST "software" cmd in ogAdmServer and web
...
This patch adds the parameters "disk" and "partition" to
POST "software" command. This way the client can create a software
profile without failure.
New request:
POST /software
{
"clients":[
"192.168.56.12"
],
"disk":"1",
"partition":"1"
}
Reply:
200 OK
2019-10-11 13:45:15 +02:00
Javier Sánchez Parra
d52c6d085a
#915 Add POST "image/restore/incremental" command to REST API in ogAdmServer
...
This patch implements the command "image/restore/incremental" that provides
partitioning and formatting functionality.
Request:
POST /image/restore/incremental
{
"clients":[
"192.168.56.11",
"192.168.56.12"
],
"disk":"1",
"partition":"1",
"id":"8",
"name":"test",
"repository":"192.168.56.10",
"profile":"25",
"type":"MULTICAST_9000:full-duplex:239.194.2.11:70M:4:60",
"sync_params":{
"diff_id":"10",
"diff_name":"testdiff",
"path":"",
"method":"1",
"sync":"2",
"diff":"0",
"remove":"1",
"compress":"0",
"cleanup":"0",
"cache":"0",
"cleanup_cache":"0",
"remove_dst":"0"
}
}
Reply:
200 OK
2019-10-11 11:57:08 +02:00
Roberto Hueso Gómez
43c7da8a72
#915 Add POST "image/create/incremental" command to REST API in ogAdmServer
...
This patch implements the command "image/create/incremental".
Request:
{"clients":["192.168.56.11"],
"disk":"1",
"partition":"1",
"id":"3",
"name":"basica1",
"repository":"192.168.56.10",
"sync_params":{"sync":"1",
"path":"",
"diff":"0",
"diff_id":"4",
"diff_name":"p2",
"remove":"1",
"compress":"0",
"cleanup":"0",
"cache":"0",
"cleanup_cache":"0",
"remove_dst":"0"
}
}
Reply:
200 OK
2019-10-11 11:57:08 +02:00
Javier Sánchez Parra
f61fd9a488
#915 Add POST "image/restore/basic" command to REST API in ogAdmServer
...
This patch implements the command "image/restore/basic" that provides
partitioning and formatting functionality.
Request:
POST /image/restore/basic
{
"clients":[
"192.168.56.11"
],
"disk":"1",
"partition":"1",
"id":"9",
"name":"test",
"repository":"192.168.56.10",
"profile":"17",
"type":"UNICAST",
"sync_params":{
"path":"",
"method":"1",
"sync":"1",
"diff":"0",
"remove":"1",
"compress":"0",
"cleanup":"0",
"cache":"0",
"cleanup_cache":"0",
"remove_dst":"0"
}
}
Reply:
200 OK
2019-10-09 15:27:59 +02:00
Javier Sánchez Parra
01e77f4cb2
#915 Add POST "image/create/basic" command to REST API in ogAdmServer
...
This patch implements the command "image/create/basic" that provides
partitioning and formatting functionality.
Request:
POST /image/create/basic
{
"clients":[
"192.168.56.11"
],
"disk":"1",
"partition":"1",
"code":"131",
"id":"8",
"name":"debianbasica",
"repository":"192.168.56.10",
"sync_params":{
"sync":"1",
"diff":"0",
"remove":"1",
"compress":"0",
"cleanup":"0",
"cache":"0",
"cleanup_cache":"0",
"remove_dst":"0"
}
}
Reply:
200 OK
2019-10-08 14:00:47 +02:00
Roberto Hueso Gómez
e3af7eed4d
#915 Improve error management for og_json_parse_partition()
...
Validate json input and return an error code when parsing is not correct.
2019-10-07 12:54:53 +02:00
Roberto Hueso Gómez
dbcc83daa5
#915 Add POST "image/setup" command to REST API in ogAdmServer
...
This patch implements the command "image/setup" that provides partitioning and
formatting functionality.
Request:
POST /image/setup
{ "clients" : [ "192.168.56.11" ], "disk" : "1", "cache" : "1", "cache_size" : "0",
"partition_setup":
[{"partition": "1", "code": "LINUX", "filesystem": "EMPTY", "size": "498688", "format": "0"},
{"partition": "2", "code": "LINUX-SWAP", "filesystem": "EMPTY", "size": "199987", "format": "0"},
{"partition": "3", "code": "LINUX", "filesystem": "EMPTY", "size": "31053824", "format": "0"},
{"partition": "4", "code": "EMPTY", "filesystem": "EMPTY", "size": "0", "format": "0"}]}
Reply:
200 OK
2019-10-07 11:14:41 +02:00
OpenGnSys Support Team
e6cfd83323
#915 Remove Apagar, CrearImagen, RestaurarImagen, InventarioHardware, InventarioSoftware
...
These socketHidra calls have been replaced by the REST API, remove them.
2019-10-03 11:34:02 +02:00
Roberto Hueso Gómez
1dde02e1ab
#915 : Add POST /image/restore command to REST API in ogAdmServer
...
This patch implements the command "image/create" that creates an image
in a client.
Request:
POST /image/restore
{ "clients" : [ "192.168.56.11" ], "disk" : "1", "partition" : "1", "name" : "test", "repository" : "192.168.56.10", "type" : "UNICAST", "filesystem": "1", "image_id": "1"}
Reply:
200 OK
2019-10-01 12:56:10 +02:00
Roberto Hueso Gómez
c87a1dbdfb
#915 : add og_json_parse_string() and use it
...
This patch avoids repeating similar code by using just one json parser.
2019-10-01 12:56:10 +02:00
Roberto Hueso Gómez
1a8ada191f
#915 : Add POST /image/create command to REST API in ogAdmServer
...
This patch implements the command "image/create" that creates an image
in a client.
Request:
POST /image/create
{ "clients" : [ "192.168.2.1" ], "disk" : "1", "partition" : "1", "code" : "1", "id" : "1", "name" : "test", "repository" : "192.168.2.2" }
Reply:
200 OK
2019-10-01 12:56:10 +02:00
Roberto Hueso Gómez
7bdc8fdf75
#915 : Removes braces for single statement if branch
...
Just a cleanup.
2019-10-01 12:56:10 +02:00
Roberto Hueso Gómez
8b1beddbe4
#915 : Fix file descriptor leak in og_socket_server_init() from exit path
...
Call close() to release the socket in the event of an error.
infer says:
sources/ogAdmServer.cpp:1244: error: RESOURCE_LEAK
resource acquired by call to `socket()` at line 1236, column 6 is not released after line 1244, column 3.
1242. sizeof(on));
1243. if (res < 0) {
1244. > syslog(LOG_ERR, "cannot set broadcast socket\n");
1245. return false;
1246. }
Not a real problem since OS releases process resources if the server
cannot bind to the port, but just to be correct here.
2019-09-19 16:06:07 +02:00
Roberto Hueso Gómez
c1c89e196c
#915 : Return 400 status code in POST methods when no payload is attached
...
If no payload is attached to method that requires a payload, then the API
returns a 400 status code (following RFC 7231) instead of the previous 404.
test_0001_get_clients.py is also modified to fit the new status code.
2019-09-19 16:06:03 +02:00
Javier Sánchez Parra
36ad0061d7
#915 check HTTP Content-Length size
...
If Content-Length is too large ogAdmServer, close the connection..
2019-09-10 11:10:34 +02:00
Javier Sánchez Parra
64e653773e
#915 fix missing null-terminated string
...
This patch changes the number of characters stored in cli->auth_token
from 64 to 63. This way the array has the last position available to
store the null character.
2019-09-05 13:14:33 +02:00
OpenGnSys Support Team
3e8fcf0b40
#915 do not bail out when failing to send message to stale clients
...
Clients might enter power saving mode, hence, closing the connection
with the server. When the server sends a request to refresh its state,
if they are gone, do not break the iteration over the list of clients.
2019-09-02 13:36:50 +02:00
Javier Sánchez Parra
3de93a9503
#559 fix out of bound array access
...
This patch change the size of the array ptrPar from 6 to 7.
cppcheck says:
[sources/ogAdmServer.cpp:598]: (error) Array 'ptrCfg[6]' accessed at index 6, which is out of bounds.
2019-08-28 18:39:33 +02:00