| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
| |
OpenGnsys tasks can contain other tasks. To know if a element of the
task is another task, we need to check if it has the parameter tareaid
(Task ID). The code had a bug and the check was done on an non-existent
parameter
This commit fix this bug changing the non-existent parameter for
tareaid.
Signed-off-by: OpenGnSys Support Team <soporte-og@soleta.eu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OpenGnsys has a hierarchical scope system to organize clients:
+------+
|Center|
+------+
| |
| |
v v
+--------------------+ +----------+
+-->+Groups of classrooms+----->+Classrooms|
| +-+------------------+ +----------+
| | | |
+-----+ | |
v v
+-----------------+ +-------+
+-->+Groups of clients+--------->+Clients|
| +-+---------------+ +-------+
| |
+-----+
OpenGnsys can send commands and tasks to several clients simultaneously
selecting a scope. For example: send poweroff to center Faculty of
Pharmacy. We had a waterfall process to loop through all members of the
scope and obtain the clients.
This commit simplifies the process with queries that save us to loop
through the members.
Co-authored-by: Irina Gómez <irinagomez@us.es>
|
|
|
|
|
|
|
|
|
|
| |
We have observed that an initial refresh is needed when the ogClient (in
ogLive mode) connects with the ogAdmServer, to generate the HTML menu.
This commit changes the probe command that was done at the beginning of
the connection to a refresh command. This way the client first generates
his HTML menu and the show to the user the browser with all the correct
information.
|
|
|
|
|
|
| |
* add og_schedule_create_weekdays()
* add og_schedule_create_weeks()
* add og_schedule_create_days()
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This field needs to be at least 31 bits long to store all days in a month.
Other fields are also set to 32 bits because unsigned int length can change
depending on the system.
We also need to support the three ways that the ogAdmAgent and the WebConsole
have to create an schedule. At first, we only supported the easiest
method:
* Hour, day, month and year -> 10:00, 28, february, 2020
This commit adds these two ways to create an schedule:
* Hour, week day, month and year -> 10:00, Monday, february,
2020
* Hour, week, month and year -> 10:00, first week, february,
2020
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a new command to the REST API to run tasks.
A task (tarea) is composed of procedures (procedimientos), each procedure is
composed of commands (acciones) that are represented through legacy sockHidra
parameters in the database.
This results in iterating over the task (tareas_acciones) table in the
database to fetch the list of procedures (procedimientos).
Then, this iterates over the list commands that compose a procedures
represented through procedimientos_acciones table.
Finally, this builds and sends the sockHidra legacy message for the client.
This patch includes an implementation of the Linux linked list.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To build and to install ogAdmServer:
autoreconf -fi
./configure
make
make install
Default prefix is /opt/opengnsys/ as usual.
ogAdmServer uses autotools for compilation, so this patch adapts OpenGnsys
updater and installer to use autotools for compilation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the payload is too long, then the API returns a 413 status code
(following RFC 7231) instead of the resetting the communication without
replying. This way it should be more clear when this problem is
happening.
The other commit I did related to the issue of the payload size
(1d9d93c) said that ogAdmServer do not log anything when it receives a
payload of a bigger size than supported, this is false. ogAdmServer
prints the next message to the syslog when this happens:
ogAdmServer[6824]: client request from 127.0.0.1:43552 is too long
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Trying to send a WakeOnLan command to 150 clients I noticed that the
ogAdmClient closed (RST) the communication with the WebConsole without
answering or logging anything. The Webconsole logged:
php: error occured during curl exec. Additioanl info: Array
php: (
php: [url] => http://127.0.0.1:8888/wol
php: [content_type] =>
php: [http_code] => 0
php: [header_size] => 0
php: [request_size] => 199
php: [filetime] => -1
php: [ssl_verify_result] => 0
php: [redirect_count] => 0
php: [total_time] => 1.003122
php: [namelookup_time] => 4.9E-5
php: [connect_time] => 0.000273
php: [pretransfer_time] => 0.00035
php: [size_upload] => 7007
php: [size_download] => 0
php: [speed_download] => 0
php: [speed_upload] => 6986
php: [download_content_length] => -1
php: [upload_content_length] => 7007
php: [starttransfer_time] => 1.001793
php: [redirect_time] => 0
php: [redirect_url] =>
php: [primary_ip] => 127.0.0.1
php: [certinfo] => Array
php: (
php: )
php:
php: [primary_port] => 8888
php: [local_ip] => 127.0.0.1
php: [local_port] => 43016
php: [http_version] => 0
php: [protocol] => 1
php: [ssl_verifyresult] => 0
php: [scheme] => HTTP
php: )
This happened because request max length is set to 4096 bytes and my
request had a size of 7075 bytes. So, the max length was exceeded.
This commit increase the max length from 4096 to 16384. This way the
ogAdmServer supports larger request messages.
|
|
|
|
| |
Missing dbi_result_free(), use syslog() for logging.
|
|
|
|
|
|
| |
This patch fixes e052fdceec013 that adds a missing error in case
the insertion fails. This also releases the result in case the
entry exists.
|
|
|
|
| |
This is fixing e052fdceec013 that releases the libdbi result twice.
|
|
|
|
| |
These have been replaced by the new REST API.
|
|
|
|
| |
This patch ensures that some variables are initialized before using them.
|
|
|
|
| |
This actually is C code, use the gcc compiler instead.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
And update all callers.
Some of the db.Open() calls cannot be removed yet, since there are still
more function dependencies that need to be converted too.
|
|
|
|
|
|
| |
RestaurarSoftIncremental, Configurar and EjecutarScript
These functions are identical, remove duplicated code.
|
|
|
|
|
|
| |
RESPUESTA_Apagar
They are identical, remove duplicated code.
|
|
|
|
| |
These function are almost identical, remove duplicated code.
|
| |
|
| |
|
| |
|
|
|
|
| |
Add basic infrastructure to support for the independent database layer.
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
configuration.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch includes tests for the remaining REST API commands:
POST /shell/output
POST /session
POST /poweroff
POST /reboot
POST /stop
POST /refresh
POST /hardware
POST /software
POST /image/create
POST /image/restore
POST /setup
POST /image/create/basic
POST /image/create/incremental
POST /image/restore/basic
POST /image/restore/incremental
POST /run/schedule
This test covers requests that are missing one of the parameters in its
payload.
|
|
|
|
|
| |
This test covers requests that do not contain 1 of the parameters in their
payloads.
|
|
|
|
|
| |
This test covers requests that do not contain 1 of the parameters in their
payloads.
|
|
|
|
|
| |
This test covers requests that do not contain 1 of the parameters in their
payloads.
|
|
|
|
|
| |
This patch meets RFC 7235 and returns an HTTP 400 error code when ogAdmServer
recieves a wrong request.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch extends tests for requests without any payload in the following REST
API POST functions:
- /clients
- /wol
- /shell/run
- /shell/output
- /session
- /poweroff
- /reboot
- /stop
- /refresh
- /hardware
- /software
|
|
|
|
| |
This patch renames the setup command to avoid semantic confusion.
|
| |
|
|
|
|
| |
'echo' parameter makes possible for users to request the console output.
|
|
|
|
|
| |
This patch prevents the flag OG_REST_PARAM_ADDR to be activated when the array
is empty.
|
|
|
|
| |
This patch ensures that all required parameters are sent in the request.
|
|
|
|
| |
This patch ensures that all required parameters are sent in the request.
|
|
|
|
| |
This patch ensures that all required parameters are sent in the request.
|
|
|
|
| |
This patch ensures that all required parameters are sent in the request.
|