C-API change yang_print: print top-level and add pretty-print parameter

Test: Fix valgrind dlclose suppresion
This commit is contained in:
Olof hagsand 2022-11-24 17:34:32 +01:00
parent 05372c86fc
commit e27336e054
8 changed files with 92 additions and 40 deletions

View file

@ -387,19 +387,28 @@ show_yang(clicon_handle h,
cvec *cvv,
cvec *argv)
{
int retval = -1;
yang_stmt *yn;
char *str = NULL;
yang_stmt *yspec;
yspec = clicon_dbspec_yang(h);
if (cvec_len(argv) > 0){
str = cv_string_get(cvec_i(argv, 0));
yn = yang_find(yspec, 0, str);
if ((str = cv_string_get(cvec_i(argv, 0))) != NULL &&
(yn = yang_find(yspec, 0, str)) != NULL)
if (yang_print_cb(stdout, yn, cligen_output) < 0)
goto done;
}
else
yn = yspec;
yang_print_cb(stdout, yn, cligen_output); /* Doesnt use cligen_output */
return 0;
else{
yn = NULL;
while ((yn = yn_each(yspec, yn)) != NULL) {
if (yang_print_cb(stdout, yn, cligen_output) < 0)
goto done;
}
}
retval = 0;
done:
return retval;
}
/*! Common internal show routine for several show cli callbacks