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
OpenGnSys Support Team
7c67487ab3
#915 trim unknown command syslog error to the initial 32 bytes
...
Aug 28 17:12:33 server ogAdmServer[10110]: 127.0.0.1:54640 POST /nonexistent HTTP/1.1^M Host ...
Aug 28 17:12:33 server ogAdmServer[10110]: unknown command: nonexistent HTTP/1.1^M Host: loca ...
2019-08-28 17:31:48 +02:00
OpenGnSys Support Team
a12af6a6e1
#915 add syslog error when HTTP request processing fails
2019-08-28 17:22:19 +02:00
OpenGnSys Support Team
15685e618f
#915 add og_server_internal_error()
...
This function sends a 500 HTTP error to client.
2019-08-28 17:22:12 +02:00
OpenGnSys Support Team
84a25639b3
#915 add syslog debugging for HTTP request
...
Display initial 32 bytes of the HTTP request.
2019-08-28 17:22:05 +02:00
OpenGnSys Support Team
20dcb0a906
#915 close connection to REST API if request is too long
...
If REST API request length is >= 4096 bytes, close the connection.
2019-08-28 17:16:01 +02:00
OpenGnSys Support Team
881f532ee1
#915 add OG_CLIENTS_MAX definition
...
This definition specifies the maximum number of clients, that is set up
to 4096.
2019-08-28 17:15:49 +02:00
OpenGnSys Support Team
e80c85fbff
#915 set maximum REST API response to 64 Kbytes
...
The existing 4 Kbytes might not be enough to store the results of the
GET /clients request, extend it up to 64 Kbytes.
2019-08-28 17:15:35 +02:00
OpenGnSys Support Team
7e6ba45f95
#915 json_dump_callback() takes flags as a parameter
...
Not as the buffer size, this leads to incorrectly printing the json
output since this might set on the JSON_EMBED flag on libjansson >= 2.10
2019-08-28 17:15:14 +02:00
OpenGnSys Support Team
ba2e868019
#915 allow up to 4096 clients from REST API
...
Raise maximum number of clients to 4096.
2019-08-28 11:50:11 +02:00