diff --git a/CHANGELOG.md b/CHANGELOG.md index 414a48f9..16a23840 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,11 +35,14 @@ ## 5.5.0 Planned: January, 2022 -### Corrected Bugs - ### Minor features -* Changed typo `configure --with-yang-standard-installdir` to `configure --with-yang-standard-dir` +* Changed typo `configure --with-yang-standard-installdir` to `configure --with-yang-standard-dir +` + +### Corrected Bugs + +* rpc_callback_call(): Check if nrp parameter is NULL to avoid SEGV ## 5.4.0 30 November, 2021 diff --git a/lib/src/clixon_plugin.c b/lib/src/clixon_plugin.c index bdeded95..c57a0c13 100644 --- a/lib/src/clixon_plugin.c +++ b/lib/src/clixon_plugin.c @@ -1120,7 +1120,7 @@ rpc_callback_delete_all(clicon_handle h) * @param[in] h clicon handle * @param[in] xn Sub-tree (under xorig) at child of rpc: . * @param[in] arg Domain-speific arg (eg client_entry) - * @param[out] nr Number of callbacks handled: 0, 1, n (retval = 1) + * @param[out] nrp Number of callbacks handled: 0, 1, n (retval = 1) or NULL * @param[out] cbret Return XML (as string in CLIgen buffer), error or OK * @retval -1 Error * @retval 0 Failed, error return in cbret @@ -1180,7 +1180,8 @@ rpc_callback_call(clicon_handle h, if (ret == 0) goto fail; } - *nrp = nr; + if (nrp) + *nrp = nr; retval = 1; /* 0: none found, >0 nr of handlers called */ done: clicon_debug(1, "%s retval:%d", __FUNCTION__, retval);