Skip to content

Commit 58791da

Browse files
committed
lib UPDATE libyang v3 updates
1 parent d3efdb4 commit 58791da

6 files changed

Lines changed: 29 additions & 28 deletions

File tree

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,9 @@ set(LIBNETCONF2_SOVERSION_FULL ${LIBNETCONF2_MAJOR_SOVERSION}.${LIBNETCONF2_MINO
7272
set(LIBNETCONF2_SOVERSION ${LIBNETCONF2_MAJOR_SOVERSION})
7373

7474
# Version of libyang library that this project depends on
75-
set(LIBYANG_DEP_VERSION 2.1.19)
76-
set(LIBYANG_DEP_SOVERSION 2.28.0)
77-
set(LIBYANG_DEP_SOVERSION_MAJOR 2)
75+
set(LIBYANG_DEP_VERSION 2.0.0)
76+
set(LIBYANG_DEP_SOVERSION 3.0.0)
77+
set(LIBYANG_DEP_SOVERSION_MAJOR 3)
7878

7979
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wextra -fvisibility=hidden -std=c99")
8080

examples/server.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ get_rpc(struct lyd_node *rpc, struct nc_session *session)
127127
}
128128

129129
/* create the get RPC anyxml "data" output node with the requested data */
130-
if (lyd_new_any(duplicate, NULL, "data", root, 1, LYD_ANYDATA_DATATREE, 1, NULL)) {
130+
if (lyd_new_any(duplicate, NULL, "data", root, LYD_ANYDATA_DATATREE, LYD_NEW_ANY_USE_VALUE | LYD_NEW_VAL_OUTPUT, NULL)) {
131131
err = nc_err(ctx, NC_ERR_OP_FAILED, NC_ERR_TYPE_APP);
132132
goto error;
133133
}

src/log.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,8 @@ prv_printf(const struct nc_session *session, NC_VERB_LEVEL level, const char *fo
127127
}
128128

129129
static void
130-
nc_ly_log_clb(LY_LOG_LEVEL lvl, const char *msg, const char *UNUSED(path))
130+
nc_ly_log_clb(LY_LOG_LEVEL lvl, const char *msg, const char *UNUSED(data_path), const char *UNUSED(schema_path),
131+
uint64_t UNUSED(line))
131132
{
132133
if (print_clb) {
133134
print_clb(NULL, (NC_VERB_LEVEL)lvl, msg);
@@ -141,5 +142,5 @@ nc_set_print_clb_session(void (*clb)(const struct nc_session *, NC_VERB_LEVEL, c
141142
{
142143
print_clb = clb;
143144
depr_print_clb = NULL;
144-
ly_set_log_clb(nc_ly_log_clb, 1);
145+
ly_set_log_clb(nc_ly_log_clb);
145146
}

src/session_client.c

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -694,7 +694,7 @@ nc_ctx_load_module(struct nc_session *session, const char *name, const char *rev
694694
struct module_info *modules, ly_module_imp_clb user_clb, void *user_data, int has_get_schema, struct lys_module **mod)
695695
{
696696
int ret = 0;
697-
struct ly_err_item *eitem;
697+
const struct ly_err_item *eitem;
698698
const char *module_data = NULL;
699699
struct ly_in *in;
700700
LYS_INFORMAT format;
@@ -1204,7 +1204,7 @@ nc_ctx_schema_mount(struct nc_session *session, int get_data_sup, int xpath_sup)
12041204

12051205
/* validate the data for the parent reference prefixes to be resolved */
12061206
if (lyd_validate_all(&oper_data, NULL, LYD_VALIDATE_PRESENT, NULL)) {
1207-
ERR(session, "Invalid operational data received from the server (%s).", ly_errmsg(LYD_CTX(oper_data)));
1207+
ERR(session, "Invalid operational data received from the server (%s).", ly_err_last(LYD_CTX(oper_data))->msg);
12081208
rc = -1;
12091209
goto cleanup;
12101210
}
@@ -2129,7 +2129,7 @@ recv_reply(struct nc_session *session, int timeout, struct lyd_node *op, uint64_
21292129
ret = recv_reply_check_msgid(session, *envp, msgid);
21302130
goto cleanup;
21312131
} else {
2132-
ERR(session, "Received an invalid message (%s).", ly_errmsg(LYD_CTX(op)));
2132+
ERR(session, "Received an invalid message (%s).", ly_err_last(LYD_CTX(op))->msg);
21332133
lyd_free_tree(*envp);
21342134
*envp = NULL;
21352135
ret = NC_MSG_ERROR;
@@ -2353,7 +2353,7 @@ recv_notif(struct nc_session *session, int timeout, struct lyd_node **envp, stru
23532353
if (!lyrc) {
23542354
goto cleanup;
23552355
} else {
2356-
ERR(session, "Received an invalid message (%s).", ly_errmsg(session->ctx));
2356+
ERR(session, "Received an invalid message (%s).", ly_err_last(session->ctx)->msg);
23572357
lyd_free_tree(*envp);
23582358
*envp = NULL;
23592359
ret = NC_MSG_ERROR;
@@ -2642,10 +2642,10 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
26422642
CHECK_LYRC_BREAK(lyd_new_term(cont, mod, ncds2str[rpc_gc->source], NULL, 0, NULL));
26432643
if (rpc_gc->filter) {
26442644
if (!rpc_gc->filter[0] || (rpc_gc->filter[0] == '<')) {
2645-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", rpc_gc->filter, 0, LYD_ANYDATA_XML, 0, &node));
2645+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", rpc_gc->filter, LYD_ANYDATA_XML, 0, &node));
26462646
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:type", "subtree", 0, NULL));
26472647
} else {
2648-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", NULL, 0, LYD_ANYDATA_STRING, 0, &node));
2648+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", NULL, LYD_ANYDATA_STRING, 0, &node));
26492649
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:type", "xpath", 0, NULL));
26502650
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:select", rpc_gc->filter, 0, NULL));
26512651
}
@@ -2679,7 +2679,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
26792679
CHECK_LYRC_BREAK(lyd_new_term(data, mod, "error-option", rpcedit_erropt2str[rpc_e->error_opt], 0, NULL));
26802680
}
26812681
if (!rpc_e->edit_cont[0] || (rpc_e->edit_cont[0] == '<')) {
2682-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "config", rpc_e->edit_cont, 0, LYD_ANYDATA_XML, 0, NULL));
2682+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "config", rpc_e->edit_cont, LYD_ANYDATA_XML, 0, NULL));
26832683
} else {
26842684
CHECK_LYRC_BREAK(lyd_new_term(data, mod, "url", rpc_e->edit_cont, 0, NULL));
26852685
}
@@ -2699,7 +2699,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
26992699
CHECK_LYRC_BREAK(lyd_new_inner(data, mod, "source", 0, &cont));
27002700
if (rpc_cp->url_config_src) {
27012701
if (!rpc_cp->url_config_src[0] || (rpc_cp->url_config_src[0] == '<')) {
2702-
CHECK_LYRC_BREAK(lyd_new_any(cont, mod, "config", rpc_cp->url_config_src, 0, LYD_ANYDATA_XML, 0, NULL));
2702+
CHECK_LYRC_BREAK(lyd_new_any(cont, mod, "config", rpc_cp->url_config_src, LYD_ANYDATA_XML, 0, NULL));
27032703
} else {
27042704
CHECK_LYRC_BREAK(lyd_new_term(cont, mod, "url", rpc_cp->url_config_src, 0, NULL));
27052705
}
@@ -2752,10 +2752,10 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
27522752
CHECK_LYRC_BREAK(lyd_new_inner(NULL, mod, "get", 0, &data));
27532753
if (rpc_g->filter) {
27542754
if (!rpc_g->filter[0] || (rpc_g->filter[0] == '<')) {
2755-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", rpc_g->filter, 0, LYD_ANYDATA_XML, 0, &node));
2755+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", rpc_g->filter, LYD_ANYDATA_XML, 0, &node));
27562756
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:type", "subtree", 0, NULL));
27572757
} else {
2758-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", NULL, 0, LYD_ANYDATA_STRING, 0, &node));
2758+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", NULL, LYD_ANYDATA_STRING, 0, &node));
27592759
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:type", "xpath", 0, NULL));
27602760
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:select", rpc_g->filter, 0, NULL));
27612761
}
@@ -2820,7 +2820,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
28202820
CHECK_LYRC_BREAK(lyd_new_inner(data, mod, "source", 0, &cont));
28212821
if (rpc_val->url_config_src) {
28222822
if (!rpc_val->url_config_src[0] || (rpc_val->url_config_src[0] == '<')) {
2823-
CHECK_LYRC_BREAK(lyd_new_any(cont, mod, "config", rpc_val->url_config_src, 0, LYD_ANYDATA_XML, 0, NULL));
2823+
CHECK_LYRC_BREAK(lyd_new_any(cont, mod, "config", rpc_val->url_config_src, LYD_ANYDATA_XML, 0, NULL));
28242824
} else {
28252825
CHECK_LYRC_BREAK(lyd_new_term(cont, mod, "url", rpc_val->url_config_src, 0, NULL));
28262826
}
@@ -2852,10 +2852,10 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
28522852

28532853
if (rpc_sub->filter) {
28542854
if (!rpc_sub->filter[0] || (rpc_sub->filter[0] == '<')) {
2855-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", rpc_sub->filter, 0, LYD_ANYDATA_XML, 0, &node));
2855+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", rpc_sub->filter, LYD_ANYDATA_XML, 0, &node));
28562856
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:type", "subtree", 0, NULL));
28572857
} else {
2858-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", NULL, 0, LYD_ANYDATA_STRING, 0, &node));
2858+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "filter", NULL, LYD_ANYDATA_STRING, 0, &node));
28592859
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:type", "xpath", 0, NULL));
28602860
CHECK_LYRC_BREAK(lyd_new_meta(NULL, node, NULL, "ietf-netconf:select", rpc_sub->filter, 0, NULL));
28612861
}
@@ -2876,7 +2876,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
28762876

28772877
if (rpc_getd->filter) {
28782878
if (!rpc_getd->filter[0] || (rpc_getd->filter[0] == '<')) {
2879-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "subtree-filter", rpc_getd->filter, 0, LYD_ANYDATA_XML, 0, NULL));
2879+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "subtree-filter", rpc_getd->filter, LYD_ANYDATA_XML, 0, NULL));
28802880
} else {
28812881
CHECK_LYRC_BREAK(lyd_new_term(data, mod, "xpath-filter", rpc_getd->filter, 0, NULL));
28822882
}
@@ -2913,7 +2913,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
29132913
NULL));
29142914
}
29152915
if (!rpc_editd->edit_cont[0] || (rpc_editd->edit_cont[0] == '<')) {
2916-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "config", rpc_editd->edit_cont, 0, LYD_ANYDATA_XML, 0, NULL));
2916+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "config", rpc_editd->edit_cont, LYD_ANYDATA_XML, 0, NULL));
29172917
} else {
29182918
CHECK_LYRC_BREAK(lyd_new_term(data, mod, "url", rpc_editd->edit_cont, 0, NULL));
29192919
}
@@ -2926,7 +2926,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
29262926

29272927
if (rpc_estsub->filter) {
29282928
if (!rpc_estsub->filter[0] || (rpc_estsub->filter[0] == '<')) {
2929-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "stream-subtree-filter", rpc_estsub->filter, 0, LYD_ANYDATA_XML,
2929+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "stream-subtree-filter", rpc_estsub->filter, LYD_ANYDATA_XML,
29302930
0, NULL));
29312931
} else if (rpc_estsub->filter[0] == '/') {
29322932
CHECK_LYRC_BREAK(lyd_new_term(data, mod, "stream-xpath-filter", rpc_estsub->filter, 0, NULL));
@@ -2957,7 +2957,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
29572957

29582958
if (rpc_modsub->filter) {
29592959
if (!rpc_modsub->filter[0] || (rpc_modsub->filter[0] == '<')) {
2960-
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "stream-subtree-filter", rpc_modsub->filter, 0, LYD_ANYDATA_XML,
2960+
CHECK_LYRC_BREAK(lyd_new_any(data, mod, "stream-subtree-filter", rpc_modsub->filter, LYD_ANYDATA_XML,
29612961
0, NULL));
29622962
} else if (rpc_modsub->filter[0] == '/') {
29632963
CHECK_LYRC_BREAK(lyd_new_term(data, mod, "stream-xpath-filter", rpc_modsub->filter, 0, NULL));
@@ -2996,7 +2996,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
29962996

29972997
if (rpc_estpush->filter) {
29982998
if (!rpc_estpush->filter[0] || (rpc_estpush->filter[0] == '<')) {
2999-
CHECK_LYRC_BREAK(lyd_new_any(data, mod2, "datastore-subtree-filter", rpc_estpush->filter, 0,
2999+
CHECK_LYRC_BREAK(lyd_new_any(data, mod2, "datastore-subtree-filter", rpc_estpush->filter,
30003000
LYD_ANYDATA_XML, 0, NULL));
30013001
} else if (rpc_estpush->filter[0] == '/') {
30023002
CHECK_LYRC_BREAK(lyd_new_term(data, mod2, "datastore-xpath-filter", rpc_estpush->filter, 0, NULL));
@@ -3047,7 +3047,7 @@ nc_send_rpc(struct nc_session *session, struct nc_rpc *rpc, int timeout, uint64_
30473047

30483048
if (rpc_modpush->filter) {
30493049
if (!rpc_modpush->filter[0] || (rpc_modpush->filter[0] == '<')) {
3050-
CHECK_LYRC_BREAK(lyd_new_any(data, mod2, "datastore-subtree-filter", rpc_modpush->filter, 0,
3050+
CHECK_LYRC_BREAK(lyd_new_any(data, mod2, "datastore-subtree-filter", rpc_modpush->filter,
30513051
LYD_ANYDATA_XML, 0, NULL));
30523052
} else if (rpc_modpush->filter[0] == '/') {
30533053
CHECK_LYRC_BREAK(lyd_new_term(data, mod2, "datastore-xpath-filter", rpc_modpush->filter, 0, NULL));

src/session_server.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -736,7 +736,7 @@ nc_clb_default_get_schema(struct lyd_node *rpc, struct nc_session *session)
736736
free(model_data);
737737
return NULL;
738738
}
739-
if (lyd_new_any(data, NULL, "data", model_data, 1, LYD_ANYDATA_STRING, 1, NULL)) {
739+
if (lyd_new_any(data, NULL, "data", model_data, LYD_ANYDATA_STRING, LYD_NEW_ANY_USE_VALUE | LYD_NEW_VAL_OUTPUT, NULL)) {
740740
ERRINT;
741741
free(model_data);
742742
lyd_free_tree(data);
@@ -1423,7 +1423,7 @@ nc_server_recv_rpc_io(struct nc_session *session, int io_timeout, struct nc_serv
14231423
if ((*rpc)->envp) {
14241424
/* at least the envelopes were parsed */
14251425
e = nc_err(session->ctx, NC_ERR_OP_FAILED, NC_ERR_TYPE_APP);
1426-
nc_err_set_msg(e, ly_errmsg(session->ctx), "en");
1426+
nc_err_set_msg(e, ly_err_last(session->ctx)->msg, "en");
14271427
reply = nc_server_reply_err(e);
14281428
} else if (session->version == NC_VERSION_11) {
14291429
/* completely malformed message, NETCONF version 1.1 defines sending error reply from

tests/test_fd_comm.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ my_getconfig_rpc_clb(struct lyd_node *rpc, struct nc_session *session)
6161
assert_string_equal(rpc->schema->name, "get-config");
6262
assert_ptr_equal(session, server_session);
6363

64-
lyd_new_path(NULL, session->ctx, "/ietf-netconf:get-config/data", NULL, LYD_NEW_PATH_OUTPUT, &data);
64+
lyd_new_path(NULL, session->ctx, "/ietf-netconf:get-config/data", NULL, LYD_NEW_VAL_OUTPUT, &data);
6565
assert_non_null(data);
6666

6767
return nc_server_reply_data(data, NC_WD_EXPLICIT, NC_PARAMTYPE_FREE);

0 commit comments

Comments
 (0)