diff --git a/lib/src/clixon_datastore_write.c b/lib/src/clixon_datastore_write.c index f9d25e71..c57c21af 100644 --- a/lib/src/clixon_datastore_write.c +++ b/lib/src/clixon_datastore_write.c @@ -578,6 +578,9 @@ text_modify(clicon_handle h, if ((yc = yang_anydata_add(y0, x1cname)) < 0) goto done; xml_spec_set(x1c, yc); + clicon_log(LOG_WARNING, + "%s: %d: No YANG spec for %s, anydata used", + __FUNCTION__, __LINE__, x1cname); } else{ if (netconf_unknown_element(cbret, "application", x1cname, "Unassigned yang spec") < 0) @@ -783,6 +786,9 @@ text_modify_top(clicon_handle h, if ((yc = yang_anydata_add(ymod, x1cname)) < 0) goto done; xml_spec_set(x1c, yc); + clicon_log(LOG_WARNING, + "%s: %d: No YANG spec for %s, anydata used", + __FUNCTION__, __LINE__, x1cname); } else{ if (netconf_unknown_element(cbret, "application", x1cname, "Unassigned yang spec") < 0) diff --git a/lib/src/clixon_validate.c b/lib/src/clixon_validate.c index 0ef73102..23f52426 100644 --- a/lib/src/clixon_validate.c +++ b/lib/src/clixon_validate.c @@ -1093,8 +1093,12 @@ xml_yang_validate_all(clicon_handle h, and !Node has a config sub-statement and it is false */ ys=xml_spec(xt); if (ys==NULL){ - if (clicon_option_bool(h, "CLICON_YANG_UNKNOWN_ANYDATA") == 1) + if (clicon_option_bool(h, "CLICON_YANG_UNKNOWN_ANYDATA") == 1) { + clicon_log(LOG_WARNING, + "%s: %d: No YANG spec for %s, validation skipped", + __FUNCTION__, __LINE__, xml_name(xt)); goto ok; + } if ((cb = cbuf_new()) == NULL){ clicon_err(OE_UNIX, errno, "cbuf_new"); goto done; diff --git a/lib/src/clixon_xml_bind.c b/lib/src/clixon_xml_bind.c index 67bb067b..c965cd3e 100644 --- a/lib/src/clixon_xml_bind.c +++ b/lib/src/clixon_xml_bind.c @@ -173,6 +173,9 @@ populate_self_parent(cxobj *xt, goto done; xml_spec_set(xt, y); retval = 2; /* treat as anydata */ + clicon_log(LOG_WARNING, + "%s: %d: No YANG spec for %s, anydata used", + __FUNCTION__, __LINE__, name); goto done; } if ((cb = cbuf_new()) == NULL){ @@ -267,6 +270,9 @@ populate_self_top(cxobj *xt, goto done; xml_spec_set(xt, y); retval = 2; /* treat as anydata */ + clicon_log(LOG_WARNING, + "%s: %d: No YANG spec for %s, anydata used", + __FUNCTION__, __LINE__, name); goto done; } if ((cb = cbuf_new()) == NULL){