summaryrefslogtreecommitdiffstats
path: root/admin/Sources
Commit message (Collapse)AuthorAgeFilesLines
* #988 Fix opengnsys startup script.Irina Gómez2020-11-091-12/+13
| | | | The port value for 'faucet' is fixed, it does not depend on the ogserver configuration. Required for multicast transfer.
* #993 Remove ogAdmServerAuxRoberto Hueso Gómez2020-07-312-57/+0
| | | | | | This patch removes ogAdmServerAux which is no longer needed. This script is replaced by the modifications performed on 'setclientmode' and a call to the ogServer API POST /modes.
* #985 Remove ogAdmServer folderJavier Sánchez Parra2020-06-2360-7985/+0
| | | | | ogAdmServer now has its own repo as ogServer. Check: https://github.com/opengnsys/ogServer
* #986 Rename to ogserverJavier Sánchez Parra2020-06-191-1/+1
| | | | Step forward to rename all ogAdmServer references to ogServer
* #981 Use new ogServer systemd unit fileJavier Sánchez Parra2020-06-191-13/+0
| | | | | This commit adapts installer, updater and init scripts to work with new ogServer systemd unit file.
* #981 Fix typo on OpenGnsys systemd unit fileJavier Sánchez Parra2020-06-191-1/+1
| | | | | | This commit escape the "%" character with another "%" character as systemd unit manual says: https://www.freedesktop.org/software/systemd/man/systemd.unit.html#Specifiers
* #981 Add ogAdmServer own systemd unit fileJavier Sánchez Parra2020-06-161-0/+13
| | | | | This commit is a step in the direction to remove the old unit file. It also allow us to move ogAdmServer to its own repo.
* #971 remove empty folderOpenGnSys Support Team2020-06-111-9/+0
| | | | Used to have the ogAdmClient code.
* #971 remove old Database and ogAdmLib codeOpenGnSys Support Team2020-06-094-1657/+0
|
* #971 move ogAdmLib to ogAdmServerOpenGnSys Support Team2020-06-094-3/+482
| | | | Move remaining ogAdmLib code to ogAdmServer
* #971 add str_toupper()OpenGnSys Support Team2020-06-084-9/+31
| | | | Add new utils.c file and replace old StrToUpper().
* #971 do not use og_log()OpenGnSys Support Team2020-06-081-5/+0
| | | | ogAdmServer uses syslog for logging.
* #971 replace og_info() by syslog()OpenGnSys Support Team2020-06-081-9/+16
|
* #971 replace reservaMemoria() by calloc()OpenGnSys Support Team2020-06-081-3/+3
|
* #971 replace liberaMemoria() by free()OpenGnSys Support Team2020-06-081-11/+11
|
* #971 remove ogAdmClient and ogAdmAgentOpenGnSys Support Team2020-06-028-3594/+0
| | | | | ogAdmClient has been replaced by ogClient. ogAdmAgent has been integrated into ogAdmServer.
* #942 add WoL on commands, procedures and tasksJavier Sánchez Parra2020-06-021-64/+68
| | | | | | | | | | These cases are different from a basic WoL command because they all use the queue. The queue standard behaviour waits for the client to be ON to send orders, but in WoL commands the client is going to be OFF. The behaviour of WoL must be different. This commit implements WoL for queued commands, procedures and tasks. The queue now sends Wol commands without waiting to the client to be ON.
* #980 add procedure auto executionJavier Sánchez Parra2020-06-021-1/+36
| | | | | | | Users can configure clients to execute a procedure at start. This commit adapt this functionality to new functions and behaviour of the ogAdmServer.
* #942 Fix immediate proceduresJavier Sánchez Parra2020-06-023-6/+7
| | | | | | | | | New versions of ogAdmServer handle pending commands in a different way. Instant procedures uses the old way, now unsupported, so we need to adapt instant procedures. This commit adapts instant procedures to work with the new pending commands implementation.
* #942 ignore stale schedules on startOpenGnSys Support Team2020-06-023-23/+55
|
* #942 add command type to POST /schedule/createOpenGnSys Support Team2020-06-023-17/+94
| | | | Pass idcomando as task_id.
* #942 add enum og_schedule_typeOpenGnSys Support Team2020-06-023-9/+27
|
* #942 add type to POST /schedule/createOpenGnSys Support Team2020-06-021-19/+30
| | | | Moreover, add og_task_schedule_create() function.
* #981 Add systemd unit fileJavier Sánchez Parra2020-06-021-0/+25
| | | | | | | | The ogAdmServer needs to be started after MySQL, because it queries the DB at the beginning to obtain the schedules. This commit adds a systemd unit file that force OpenGnsys service to start after MySQL service
* #890 handle 202 AcceptedOpenGnSys Support Team2020-06-021-1/+8
|
* #941 missing og_dbi_closeOpenGnSys Support Team2020-06-021-0/+5
|
* #980 Add action completionJavier Sánchez Parra2020-06-021-1/+52
|
* #942 Add tasks to queueJavier Sánchez Parra2020-06-023-9/+70
|
* #942 Fix task break downJavier Sánchez Parra2020-06-021-1/+1
| | | | | | | | | | | | 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>
* #942 Improve scope break down processJavier Sánchez Parra2020-06-021-70/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* #971 Remove ogAdmAgent initializationJavier Sánchez Parra2020-06-022-22/+0
| | | | | | | | | | | All the functionalities of the ogAdmAgent are now in the ogAdmServer. So, the it is not needed anymore. This commit remove the installation and update of the ogAdmAgent, adds a check to remove it if exists and removes it from the OpenGnsys init script. A future patch will remove all the code related to the ogAdmAgent.
* #980 Change initial probe to refreshJavier Sánchez Parra2020-06-021-25/+7
| | | | | | | | | | 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.
* #942 Add weeks and week days to the schedule APIJavier Sánchez Parra2020-06-022-118/+174
| | | | | | * add og_schedule_create_weekdays() * add og_schedule_create_weeks() * add og_schedule_create_days()
* #980 Complete API REST for ogClientRoberto Hueso Gómez2020-06-021-150/+591
|
* #971 remove obsolete codeOpenGnSys Support Team2020-06-022-1560/+8
|
* #942 Add REST API /schedule get functionRoberto Hueso Gómez2020-06-022-3/+170
|
* #942 Add support for scheduled tasks and commandsOpenGnSys Support Team2020-06-026-13/+851
| | | | | | | | | | | | | | | | | 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
* #980 Add client REST API basic infrastructure in ogAdmServerRoberto Hueso Gómez2020-06-021-199/+967
|
* #942 Add /run/task to API RESTOpenGnSys Support Team2020-06-025-2/+576
| | | | | | | | | | | | | | | | | | 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.
* #970 autotools support for ogAdmServerOpenGnSys Support Team2020-06-023-38/+31
| | | | | | | | | | | | | | 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.
* #959: Delete dirs moved to other repositories.Ramón M. Gómez2020-05-1994-6888/+0
| | | OGAgent code, browser code and the ogLive builder scrips are moved to new Git repositories.
* #977 Fixed bug in ogAdmAgent: when starting a task in a organizational unit ↵Irina Gómez2020-05-061-4/+4
| | | | with groups of laboratories or in a labs with groups of computers, the service stop.
* #962: Fix typo in commit `88fc95a`.Ramón M. Gómez2020-04-251-1/+1
|
* #962: Only OGAgent for Windows runs each line in independent processes ↵Ramón M. Gómez2020-04-231-5/+8
| | | | (other agents can run the whole script in a single subprocess).
* #972: Remove cron job definition from the default file; then updater checks ↵Ramón M. Gómez2020-04-221-2/+0
| | | | if service code has changed to restart it automatically.
* #580 invalid access to memory in contieneIP()OpenGnSys Support Team2020-04-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | valgrind reports incorrect access to memory: ==16622== 4000 errors in context 1 of 2: ==16622== Conditional jump or move depends on uninitialised value(s) ==16622== at 0x10C380: contieneIP (ogAdmLib.c:514) ==16622== by 0x10D842: clienteExistente (ogAdmServer.c:206) ==16622== by 0x10D743: clienteDisponible (ogAdmServer.c:173) ==16622== by 0x10FE62: og_send_cmd (ogAdmServer.c:1106) ==16622== by 0x114651: og_cmd_legacy_send (ogAdmServer.c:3159) ==16622== by 0x114795: og_cmd_post_clients (ogAdmServer.c:3188) ==16622== by 0x1193F5: og_client_state_process_payload_rest (ogAdmServer.c:4444) ==16622== by 0x11A354: og_client_read_cb (ogAdmServer.c:4728) ==16622== by 0x693ED72: ev_invoke_pending (in /usr/lib/x86_64-linux-gnu/libev.so.4.0.0) ==16622== by 0x69423DD: ev_run (in /usr/lib/x86_64-linux-gnu/libev.so.4.0.0) ==16622== by 0x10D19C: ev_loop (ev.h:835) ==16622== by 0x11AAED: main (ogAdmServer.c:4896) ==16622== Uninitialised value was created by a heap allocation ==16622== at 0x4C2FB0F: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==16622== by 0x6B4D80A: ??? (in /usr/lib/x86_64-linux-gnu/libjansson.so.4.11.0) ==16622== by 0x6B4DDCB: ??? (in /usr/lib/x86_64-linux-gnu/libjansson.so.4.11.0) ==16622== by 0x6B4DCA6: ??? (in /usr/lib/x86_64-linux-gnu/libjansson.so.4.11.0) ==16622== by 0x6B4DF55: ??? (in /usr/lib/x86_64-linux-gnu/libjansson.so.4.11.0) ==16622== by 0x6B4E0CB: json_loads (in /usr/lib/x86_64-linux-gnu/libjansson.so.4.11.0) ==16622== by 0x1192F2: og_client_state_process_payload_rest (ogAdmServer.c:4425) ==16622== by 0x11A354: og_client_read_cb (ogAdmServer.c:4728) ==16622== by 0x693ED72: ev_invoke_pending (in /usr/lib/x86_64-linux-gnu/libev.so.4.0.0) ==16622== by 0x69423DD: ev_run (in /usr/lib/x86_64-linux-gnu/libev.so.4.0.0) ==16622== by 0x10D19C: ev_loop (ev.h:835) ==16622== by 0x11AAED: main (ogAdmServer.c:4896)
* #915: Reply 413 status code when no payload is too largeJavier Sánchez Parra2020-04-061-0/+11
| | | | | | | | | | | | | | 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
* #915 Increase request max lengthJavier Sánchez Parra2020-04-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* #941 memleak in actualizaConfiguracionOpenGnSys Support Team2020-03-311-2/+6
| | | | Missing dbi_result_free(), use syslog() for logging.
* #941 Missing error in actualizaSoftware() and memleak in resultOpenGnSys Support Team2020-03-261-2/+3
| | | | | | This patch fixes e052fdceec013 that adds a missing error in case the insertion fails. This also releases the result in case the entry exists.