mgmtd: fix a couple compilation warnings.

Also an empty (thus non-replace) notify selectors message shouldn't
clear the selectors, it should just do nothing.

Signed-off-by: Christian Hopps <chopps@labn.net>
This commit is contained in:
Christian Hopps 2024-08-18 05:33:29 -05:00
parent fa50fde954
commit e7fc74aa14
2 changed files with 2 additions and 3 deletions

View file

@ -1061,7 +1061,7 @@ static void be_client_handle_notify(struct mgmt_be_client *client, void *msgbuf,
struct mgmt_msg_notify_data *notif_msg = msgbuf; struct mgmt_msg_notify_data *notif_msg = msgbuf;
struct nb_node *nb_node; struct nb_node *nb_node;
struct lyd_node *dnode; struct lyd_node *dnode;
const char *data; const char *data = NULL;
const char *notif; const char *notif;
LY_ERR err; LY_ERR err;

View file

@ -1518,7 +1518,6 @@ static void fe_adapter_handle_notify_select(struct mgmt_fe_session_ctx *session,
const char **selectors = NULL; const char **selectors = NULL;
const char **new; const char **new;
/* An empty message clears the selectors */
if (msg_len >= sizeof(*msg)) { if (msg_len >= sizeof(*msg)) {
selectors = mgmt_msg_native_strings_decode(msg, msg_len, selectors = mgmt_msg_native_strings_decode(msg, msg_len,
msg->selectors); msg->selectors);
@ -1531,7 +1530,7 @@ static void fe_adapter_handle_notify_select(struct mgmt_fe_session_ctx *session,
if (msg->replace) { if (msg->replace) {
darr_free_free(session->notify_xpaths); darr_free_free(session->notify_xpaths);
session->notify_xpaths = selectors; session->notify_xpaths = selectors;
} else { } else if (selectors) {
new = darr_append_nz(session->notify_xpaths, new = darr_append_nz(session->notify_xpaths,
darr_len(selectors)); darr_len(selectors));
memcpy(new, selectors, darr_len(selectors) * sizeof(*selectors)); memcpy(new, selectors, darr_len(selectors) * sizeof(*selectors));