Commit graph

64 commits

Author SHA1 Message Date
Olof hagsand
275cefbae7 Moved map functions from clixon_string to _map, new ptr2ptr map 2024-08-10 13:42:37 +02:00
Olof hagsand
c2841d6e40 Various memory and file resource cleanup after valgrind tests 2024-06-23 18:46:44 +02:00
Olof hagsand
03a9c03b1c Fixed: backend exit when receiving invalid NETCONF get select XPath
Added XML encoding to XPaths in `select` attribute
2024-05-15 13:44:12 +02:00
Olof hagsand
3149d53564 C-API: Add error socket to clixon_proc_socket() 2024-01-31 14:36:40 +01:00
Philip Prindeville
42a92f262a Add process-specific logging 2024-01-22 08:46:15 +01:00
Philip Prindeville
cf2e27b43d Drop __FUNCTION__ from clixon_debug() calls 2024-01-11 17:29:37 +01:00
Philip Prindeville
063c8d664f Messages can't be DETAIL alone so pair with DEFAULT 2024-01-10 20:06:38 +01:00
Olof hagsand
9e54f0602f Changed ca_errmsg callback to a more generic variant
Includes all error, log and debug messages
See [Customized NETCONF error message](https://github.com/clicon/clixon/issues/454)
2024-01-05 16:41:53 +01:00
Olof hagsand
0fff9d8ef5 Fixes after coverity analysis 2023-12-30 19:49:03 +01:00
Olof hagsand
558a0df1f3 Fixed proper restore of cttl-C in msg rcv
Rename and move plugin_context_check to clixon_resource_check
2023-12-21 15:00:12 +01:00
Olof hagsand
24a4991ec8 Restructured error,debug anf log API
Renamed functions clicon->clixon, replaced global variables w access functions
Unified clicon_netconf_error with clixon_err()
2023-12-18 08:29:14 +01:00
Olof hagsand
62348fc9c7 C-style update: Unified comment, retvals in order, remove trailing spaces
Changed function name for `clicon_debug` functions
2023-10-23 09:58:13 +02:00
Philip Prindeville
4a3fef4946 Always log execs 2023-10-21 18:29:23 +02:00
Philip Prindeville
55f3e396e9 Add logging and fix memory leak 2023-10-21 18:29:23 +02:00
Philip Prindeville
959e060995 Use clicon_err() consistently and drop perror() 2023-10-21 18:29:23 +02:00
Philip Prindeville
dc0f740a04 Avoid copying timeval onto stack 2023-08-15 18:02:14 +02:00
Olof hagsand
8091b4ab7e Added fdkeep parameter to clixon_process_register 2023-06-08 15:51:16 +02:00
Olof hagsand
8598fca688 Add gid to clixon_process_register() for drop privs 2023-06-02 13:38:00 +02:00
Olof hagsand
080eef0278 C-API: Added cli_process_control(), added uid to cli_process_control() 2023-06-01 17:50:23 +02:00
Olof hagsand
da9bfcbb53 * Changed debug levels in clicon_debug() to be based on maskable flags
* Added flag names: `CLIXON_DBG_*`
  * Added maskable flags that can be combined when debugging:
    * `DEFAULT` = 1: Basic debug message, espcially initialization
    * `MSG` = 2: Input and output packets, read datastore
    * `DETAIL` = 4: Details: message dump in hex, xpath parse trees, etc
    * `EXTRA` = 8: Extra detailed logs
* Test: some errors in yang-lib where content-id was in wrong place
2023-01-27 14:56:58 +01:00
Olof hagsand
5b9921933a Freebsd socketpair include problems and lack of TAB in vagrant Makefile 2022-12-27 11:58:13 +01:00
Olof Hagsand
6baa904039 Added CLIXON_CLIENT_SSH to client API to communicate remotely via SSH netconf sub-system
configure: stringified SSH_BIN
C-API: Added `sock_flags` parameter to `clixon_proc_socket()`
2022-12-08 15:13:05 +01:00
Olof hagsand
d84c529ff1 [Code formatting: Change indentation style to space](https://github.com/clicon/clixon/issues/379)
* Applies to all c/h/y/l/sh files and .editorconfig
2022-10-27 14:21:17 +02:00
Kristofer Hallin
68b528ac0b Make Clixon build on MacOS. 2022-08-16 08:40:04 +02:00
Christian McDonald
ffc36a33b4 Code format tweak 2022-02-04 10:17:14 -05:00
Christian McDonald
ea1897543b Fix potential segfault in clixon_process_waitpid. 2022-02-04 10:14:00 -05:00
Olof hagsand
bdc09851f0 * Command field of clixon-lib:process-control RPC reply used CDATA encoding but now uses regular XML encoding 2022-01-27 09:56:09 +01:00
Olof hagsand
77b4468eb3 Updated copyright statements to 2022 2022-01-18 16:36:00 +01:00
Olof hagsand
f8f34e3571 * Replaced separate autocli trees with a single @basemodel tree by using filter labels
* Added lastkey argument to yang_key_match()
* Fixed segv in process-sigchld
* Added ietf-yang-library to CLICON_CLI_AUTOCLI_EXCLUDE default value
* Added yang_spec_print() function
2021-12-16 20:23:09 +01:00
Olof hagsand
8352e25860 * Restconf internal start: fail early if clixon_restconf binary is not found
* If CLICON_BACKEND_RESTCONF_PROCESS is true
2021-08-17 10:08:04 +02:00
Olof hagsand
3539a80d5e restconf fcgi mem leak in indata
test pkill needs sleep before name settles
2021-06-27 16:40:27 +02:00
Olof hagsand
ba45d6d2a1 Fixed memory leak in new candidate_validate function
Added error returns for clixon-lib process rpc empty returns
2021-06-23 10:50:47 +02:00
Olof hagsand
164aa1cb4c * Restconf: added inline configuration using -R <xml> command line as an alternative to making advanced restconf configuration 2021-05-26 11:24:39 +02:00
Olof hagsand
c20c672d83 * Changed config and install options for Restconf
* clixon_restconf daemon is installed in /usr/local/sbin (as clixon_backend), instead of /www-data
    * `configure --with-wwwdir=<dir>` remains but only applies to fcgi socket and log
    * New option `CLICON_RESTCONF_INSTALL_DIR` is set to where clixon_restconf is installed, with default `/usr/local/sbin/`
  * Restconf drop privileges user is defined by `CLICON_RESTCONF_USER`
    * `configure --with-wwwuser=<user>` is removed
  * clixon_restconf drop of privileges is defined by `CLICON_RESTCONF_PRIVILEGES` option
* New clixon-restconf@2020-05-20.yang revision
  * Added: restconf `log-destination`
2021-05-23 17:14:18 +02:00
Olof hagsand
40f4df1390 Add timeout 100ms before every kill restconf iteration 2021-05-11 15:55:33 +02:00
Olof hagsand
aaaeec92eb Internal RESTCONF changes:
- Kill running process directly, not schedul a kill
- fcgi: when kill, make exit more ordered, ensure fcgi-accept returns properly
2021-04-30 14:49:01 +02:00
jxm
45f3d48179 add clixon proc get pid api 2021-04-23 10:44:06 +08:00
Olof hagsand
7ebb538ebf - Changed master to 5.2.0.PRE
- Modified Makefiles for static linkage and coverage
- test namespace abstractions
2021-04-17 15:23:10 +02:00
Olof hagsand
172cfd69b3 - Fixed [clixon_proc can't start new process with PATH env #202](https://github.com/clicon/clixon/issues/202)
- Memory errors in tests
2021-04-14 17:02:24 +02:00
Olof hagsand
d542cd5530 Add cli debug commands for cli/backend/restconf 2021-04-12 12:38:16 +02:00
Olof hagsand
953326d39f - Rewrote process control to simpler state model: stopped/running/exiting
- Stricter CLICON_BACKEND_RESTCONF_PROCESS :
 - if set, restconf daemon queries backend for its config
 - if not set, restconf daemon reads its config from main config file
2021-04-12 10:31:17 +02:00
Olof hagsand
15d01c58d8 - Better restconf debug: when restconf debug flag set in datastore, ensure the process is started with -D set
- Fixed native http support for base container
- Changed test certs and restconf scripts to functions
2021-04-09 09:34:05 +02:00
Olof hagsand
07d196dfd0 Added several fields to process-control status operation: active, description, command, status, starttime, pid 2021-03-12 17:22:22 +01:00
Olof hagsand
7e9a207ab2 * New clixon-lib@2020-03-08.yang revision
* Changed: RPC process-control output to choice dependent on operation
2021-03-12 12:10:25 +01:00
Olof hagsand
7762b10cbb * Changed signal handling
* Moved clixon-proc sigchild handling	from handler to clixon_events
2021-03-11 18:12:43 +01:00
Olof hagsand
c2f07fd29c test fixes: mod timer for arm and install libevhtp lin in /us/lib 2021-03-06 17:04:31 +01:00
Olof hagsand
2ab90d847b Restart restconf daemon only if restconf config is edited (not all) 2021-03-05 13:11:04 +01:00
Olof hagsand
b2f9c59a34 * Reverted blocked signal behavior introduced in 5.0.
* Introduced a delay before making process start/stop/restart processes for race conditions when configuring eg restconf
* For restconf `CLICON_BACKEND_RESTCONF_PROCESS`, restart restconf if restconf is edited.
2021-03-02 12:24:07 +01:00
Olof hagsand
1f0147f996 removed unnecessary strerror() in clixon_err() calls; added 'function' keyword in all function declarations in the test scripts 2021-02-04 12:04:48 +01:00
Olof hagsand
40008f182e Fix restart of restconf processes 2021-02-01 10:44:50 +01:00