YANG: reorder CLICON_YANG_DIRs to yang group. remove trailing spaces
This commit is contained in:
parent
7ea344c51f
commit
a4225c43b4
4 changed files with 123 additions and 123 deletions
|
|
@ -12,10 +12,10 @@ module clixon-autocli{
|
||||||
description
|
description
|
||||||
"Clixon CLIgen specification declarations, including autocli.
|
"Clixon CLIgen specification declarations, including autocli.
|
||||||
Design inspired by ietf-netconf-acm.yang
|
Design inspired by ietf-netconf-acm.yang
|
||||||
|
|
||||||
***** BEGIN LICENSE BLOCK *****
|
***** BEGIN LICENSE BLOCK *****
|
||||||
Copyright (C) 2020-2021 Olof Hagsand and Rubicon Communications, LLC(Netgate)
|
Copyright (C) 2020-2021 Olof Hagsand and Rubicon Communications, LLC(Netgate)
|
||||||
|
|
||||||
This file is part of CLIXON
|
This file is part of CLIXON
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the \"License\");
|
Licensed under the Apache License, Version 2.0 (the \"License\");
|
||||||
|
|
@ -33,7 +33,7 @@ module clixon-autocli{
|
||||||
in which case the provisions of the GPL are applicable instead
|
in which case the provisions of the GPL are applicable instead
|
||||||
of those above. If you wish to allow use of your version of this file only
|
of those above. If you wish to allow use of your version of this file only
|
||||||
under the terms of the GPL, and not to allow others to
|
under the terms of the GPL, and not to allow others to
|
||||||
use your version of this file under the terms of Apache License version 2,
|
use your version of this file under the terms of Apache License version 2,
|
||||||
indicate your decision by deleting the provisions above and replace them with
|
indicate your decision by deleting the provisions above and replace them with
|
||||||
the notice and other provisions required by the GPL. If you do not delete
|
the notice and other provisions required by the GPL. If you do not delete
|
||||||
the provisions above, a recipient may use your version of this file under
|
the provisions above, a recipient may use your version of this file under
|
||||||
|
|
@ -67,30 +67,30 @@ module clixon-autocli{
|
||||||
Released in Clixon 5.5";
|
Released in Clixon 5.5";
|
||||||
}
|
}
|
||||||
extension hide {
|
extension hide {
|
||||||
description
|
description
|
||||||
"Hide the command associated with a YANG node and its
|
"Hide the command associated with a YANG node and its
|
||||||
sub-commands.
|
sub-commands.
|
||||||
The command is active but not shown by ? or TAB. In other words, it hides the
|
The command is active but not shown by ? or TAB. In other words, it hides the
|
||||||
auto-completion of commands";
|
auto-completion of commands";
|
||||||
}
|
}
|
||||||
extension hide-show {
|
extension hide-show {
|
||||||
description
|
description
|
||||||
"Hide the command associated with a YANG node and its
|
"Hide the command associated with a YANG node and its
|
||||||
sub-commands in CLI show commands.";
|
sub-commands in CLI show commands.";
|
||||||
}
|
}
|
||||||
extension skip {
|
extension skip {
|
||||||
description
|
description
|
||||||
"Skip the command associated with a YANG node and its sub-commands altogether.
|
"Skip the command associated with a YANG node and its sub-commands altogether.
|
||||||
The command is completely removed from the CLI, but still exists in NETCONF/
|
The command is completely removed from the CLI, but still exists in NETCONF/
|
||||||
RESTCONF.";
|
RESTCONF.";
|
||||||
}
|
}
|
||||||
extension strict-expand {
|
extension strict-expand {
|
||||||
description
|
description
|
||||||
"Modify the autocli by only showing exactly the expanded values of a variable.
|
"Modify the autocli by only showing exactly the expanded values of a variable.
|
||||||
It should not be possible to add a new value that is not in the expanded list.";
|
It should not be possible to add a new value that is not in the expanded list.";
|
||||||
}
|
}
|
||||||
extension alias {
|
extension alias {
|
||||||
description
|
description
|
||||||
"Replace the command name with a new value.
|
"Replace the command name with a new value.
|
||||||
Instead of using the YANG argument name, use new argument instead.
|
Instead of using the YANG argument name, use new argument instead.
|
||||||
Only implemented for YANG leafs";
|
Only implemented for YANG leafs";
|
||||||
|
|
@ -98,13 +98,13 @@ module clixon-autocli{
|
||||||
}
|
}
|
||||||
typedef autocli-op {
|
typedef autocli-op {
|
||||||
description
|
description
|
||||||
"Autocli rule-type operation, each rule use different fields as
|
"Autocli rule-type operation, each rule use different fields as
|
||||||
described in the individual enums below.";
|
described in the individual enums below.";
|
||||||
type enumeration {
|
type enumeration {
|
||||||
enum enable {
|
enum enable {
|
||||||
description
|
description
|
||||||
"Include a complete subtree to rendering of autocli.
|
"Include a complete subtree to rendering of autocli.
|
||||||
Example:
|
Example:
|
||||||
<module-default>false</module-default>
|
<module-default>false</module-default>
|
||||||
<rule>
|
<rule>
|
||||||
<name>wifi</name>
|
<name>wifi</name>
|
||||||
|
|
@ -131,21 +131,21 @@ module clixon-autocli{
|
||||||
<yang-keyword>container</yang-keyword>
|
<yang-keyword>container</yang-keyword>
|
||||||
<yang-keyword-child>list</yang-keyword-child>
|
<yang-keyword-child>list</yang-keyword-child>
|
||||||
</rule>
|
</rule>
|
||||||
Rule fields used:
|
Rule fields used:
|
||||||
module-name, yang-keyword, schema-nodeid, yang-keyword-child, extension";
|
module-name, yang-keyword, schema-nodeid, yang-keyword-child, extension";
|
||||||
}
|
}
|
||||||
enum edit-mode {
|
enum edit-mode {
|
||||||
description
|
description
|
||||||
"Autocli CLI edit modes for YANG symbols.
|
"Autocli CLI edit modes for YANG symbols.
|
||||||
For example,
|
For example,
|
||||||
edit interface eth0<CR>
|
edit interface eth0<CR>
|
||||||
enters a new mode with local context.";
|
enters a new mode with local context.";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
typedef list-keyword-type {
|
typedef list-keyword-type {
|
||||||
description
|
description
|
||||||
"Autocli CLI keyword behaviour in YANG lists.
|
"Autocli CLI keyword behaviour in YANG lists.
|
||||||
With 'keyword' is meant CLIgen 'constants' rather than 'variables'.
|
With 'keyword' is meant CLIgen 'constants' rather than 'variables'.
|
||||||
Assume a YANG LIST: list a{ key x; leaf x; leaf y;} and how to generate
|
Assume a YANG LIST: list a{ key x; leaf x; leaf y;} and how to generate
|
||||||
the autocli";
|
the autocli";
|
||||||
|
|
@ -192,7 +192,7 @@ module clixon-autocli{
|
||||||
}
|
}
|
||||||
leaf treeref-state-default {
|
leaf treeref-state-default {
|
||||||
description
|
description
|
||||||
"If 'true', generate CLI from YANG state/non-config statements as well, not only config data.
|
"If 'true', generate CLI from YANG state/non-config statements as well, not only config data.
|
||||||
Many specs have very large state parts, for example openconfig has ca 10 times
|
Many specs have very large state parts, for example openconfig has ca 10 times
|
||||||
larger state than config parts, see for example openconfig-isis.yang.";
|
larger state than config parts, see for example openconfig-isis.yang.";
|
||||||
type boolean;
|
type boolean;
|
||||||
|
|
@ -201,18 +201,18 @@ module clixon-autocli{
|
||||||
leaf edit-mode-default {
|
leaf edit-mode-default {
|
||||||
description
|
description
|
||||||
"Open automatic edit-modes for some YANG keywords and do not allow others.
|
"Open automatic edit-modes for some YANG keywords and do not allow others.
|
||||||
A CLI edit mode opens a carriage-return option and changes the context to be
|
A CLI edit mode opens a carriage-return option and changes the context to be
|
||||||
in that local context.
|
in that local context.
|
||||||
For example:
|
For example:
|
||||||
cli> interfaces interface e0<cr>
|
cli> interfaces interface e0<cr>
|
||||||
eth0>
|
eth0>
|
||||||
Default is to generate edit-modes for all containers and lists.";
|
Default is to generate edit-modes for all containers and lists.";
|
||||||
type yang-keywords;
|
type yang-keywords;
|
||||||
default "list container";
|
default "list container";
|
||||||
}
|
}
|
||||||
leaf completion-default {
|
leaf completion-default {
|
||||||
description
|
description
|
||||||
"Generate code for CLI completion of existing db symbols.
|
"Generate code for CLI completion of existing db symbols.
|
||||||
That is, check existing configure database for completion options.
|
That is, check existing configure database for completion options.
|
||||||
This is normally always enabled.";
|
This is normally always enabled.";
|
||||||
type boolean;
|
type boolean;
|
||||||
|
|
@ -227,7 +227,7 @@ module clixon-autocli{
|
||||||
If 'true' use indirect tree reference '@treeref' to reference the grouping definition. This
|
If 'true' use indirect tree reference '@treeref' to reference the grouping definition. This
|
||||||
saves memory for large YANGs.
|
saves memory for large YANGs.
|
||||||
|
|
||||||
See also AUTOCLI_GROUPING_TOPLEVEL_SKIP and AUTOCLI_GROUPING_AUGMENT_SKIP for
|
See also AUTOCLI_GROUPING_TOPLEVEL_SKIP and AUTOCLI_GROUPING_AUGMENT_SKIP for
|
||||||
temporary disabled cornercases.
|
temporary disabled cornercases.
|
||||||
This option was introduced in Clixon 6.3";
|
This option was introduced in Clixon 6.3";
|
||||||
type boolean;
|
type boolean;
|
||||||
|
|
|
||||||
|
|
@ -23,7 +23,7 @@ module clixon-config {
|
||||||
***** BEGIN LICENSE BLOCK *****
|
***** BEGIN LICENSE BLOCK *****
|
||||||
Copyright (C) 2009-2019 Olof Hagsand
|
Copyright (C) 2009-2019 Olof Hagsand
|
||||||
Copyright (C) 2020-2022 Olof Hagsand and Rubicon Communications, LLC(Netgate)
|
Copyright (C) 2020-2022 Olof Hagsand and Rubicon Communications, LLC(Netgate)
|
||||||
|
|
||||||
This file is part of CLIXON
|
This file is part of CLIXON
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the \"License\");
|
Licensed under the Apache License, Version 2.0 (the \"License\");
|
||||||
|
|
@ -41,7 +41,7 @@ module clixon-config {
|
||||||
in which case the provisions of the GPL are applicable instead
|
in which case the provisions of the GPL are applicable instead
|
||||||
of those above. If you wish to allow use of your version of this file only
|
of those above. If you wish to allow use of your version of this file only
|
||||||
under the terms of the GPL, and not to allow others to
|
under the terms of the GPL, and not to allow others to
|
||||||
use your version of this file under the terms of Apache License version 2,
|
use your version of this file under the terms of Apache License version 2,
|
||||||
indicate your decision by deleting the provisions above and replace them with
|
indicate your decision by deleting the provisions above and replace them with
|
||||||
the notice and other provisions required by the GPL. If you do not delete
|
the notice and other provisions required by the GPL. If you do not delete
|
||||||
the provisions above, a recipient may use your version of this file under
|
the provisions above, a recipient may use your version of this file under
|
||||||
|
|
@ -76,7 +76,7 @@ module clixon-config {
|
||||||
Marked as obsolete:
|
Marked as obsolete:
|
||||||
CLICON_DATASTORE_CACHE
|
CLICON_DATASTORE_CACHE
|
||||||
CLICON_NETCONF_CREATOR_ATTR
|
CLICON_NETCONF_CREATOR_ATTR
|
||||||
Changed semantics of
|
Changed semantics of
|
||||||
Released in Clixon 7.0";
|
Released in Clixon 7.0";
|
||||||
}
|
}
|
||||||
revision 2023-11-01 {
|
revision 2023-11-01 {
|
||||||
|
|
@ -213,7 +213,7 @@ module clixon-config {
|
||||||
}
|
}
|
||||||
revision 2020-11-03 {
|
revision 2020-11-03 {
|
||||||
description
|
description
|
||||||
"Added CLICON_BACKEND_RESTCONF_PROCESS
|
"Added CLICON_BACKEND_RESTCONF_PROCESS
|
||||||
Copied to clixon-restconf.yang and marked as obsolete:
|
Copied to clixon-restconf.yang and marked as obsolete:
|
||||||
CLICON_RESTCONF_IPV4_ADDR
|
CLICON_RESTCONF_IPV4_ADDR
|
||||||
CLICON_RESTCONF_IPV6_ADDR
|
CLICON_RESTCONF_IPV6_ADDR
|
||||||
|
|
@ -230,9 +230,9 @@ module clixon-config {
|
||||||
}
|
}
|
||||||
revision 2020-08-17 {
|
revision 2020-08-17 {
|
||||||
description
|
description
|
||||||
"Added: CLICON_RESTCONF_IPV4_ADDR, CLICON_RESTCONF_IPV6_ADDR,
|
"Added: CLICON_RESTCONF_IPV4_ADDR, CLICON_RESTCONF_IPV6_ADDR,
|
||||||
CLICON_RESTCONF_HTTP_PORT, CLICON_RESTCONF_HTTPS_PORT
|
CLICON_RESTCONF_HTTP_PORT, CLICON_RESTCONF_HTTPS_PORT
|
||||||
CLICON_NAMESPACE_NETCONF_DEFAULT,
|
CLICON_NAMESPACE_NETCONF_DEFAULT,
|
||||||
CLICON_CLI_HELPSTRING_TRUNCATE, CLICON_CLI_HELPSTRING_LINES";
|
CLICON_CLI_HELPSTRING_TRUNCATE, CLICON_CLI_HELPSTRING_LINES";
|
||||||
}
|
}
|
||||||
revision 2020-06-17 {
|
revision 2020-06-17 {
|
||||||
|
|
@ -266,8 +266,8 @@ module clixon-config {
|
||||||
}
|
}
|
||||||
revision 2019-06-05 {
|
revision 2019-06-05 {
|
||||||
description
|
description
|
||||||
"Added: CLICON_YANG_REGEXP, CLICON_CLI_TAB_MODE,
|
"Added: CLICON_YANG_REGEXP, CLICON_CLI_TAB_MODE,
|
||||||
CLICON_CLI_HIST_FILE, CLICON_CLI_HIST_SIZE,
|
CLICON_CLI_HIST_FILE, CLICON_CLI_HIST_SIZE,
|
||||||
CLICON_XML_CHANGELOG, CLICON_XML_CHANGELOG_FILE;
|
CLICON_XML_CHANGELOG, CLICON_XML_CHANGELOG_FILE;
|
||||||
Renamed CLICON_XMLDB_CACHE to CLICON_DATASTORE_CACHE (changed type)
|
Renamed CLICON_XMLDB_CACHE to CLICON_DATASTORE_CACHE (changed type)
|
||||||
Deleted: CLICON_XMLDB_PLUGIN, CLICON_USE_STARTUP_CONFIG";
|
Deleted: CLICON_XMLDB_PLUGIN, CLICON_USE_STARTUP_CONFIG";
|
||||||
|
|
@ -329,7 +329,7 @@ module clixon-config {
|
||||||
description "No cache always work directly with file";
|
description "No cache always work directly with file";
|
||||||
}
|
}
|
||||||
enum cache{
|
enum cache{
|
||||||
description "Use in-memory cache.
|
description "Use in-memory cache.
|
||||||
Make copies when accessing internally.";
|
Make copies when accessing internally.";
|
||||||
}
|
}
|
||||||
enum cache-zerocopy{
|
enum cache-zerocopy{
|
||||||
|
|
@ -366,7 +366,7 @@ module clixon-config {
|
||||||
type enumeration{
|
type enumeration{
|
||||||
enum posix {
|
enum posix {
|
||||||
description
|
description
|
||||||
"Translate XSD XML Schema regexp:s to Posix regexp. This is
|
"Translate XSD XML Schema regexp:s to Posix regexp. This is
|
||||||
not a complete translation, but can be considered good-enough
|
not a complete translation, but can be considered good-enough
|
||||||
for Yang use-cases as defined by openconfig and yang-models
|
for Yang use-cases as defined by openconfig and yang-models
|
||||||
for example.";
|
for example.";
|
||||||
|
|
@ -375,7 +375,7 @@ module clixon-config {
|
||||||
description
|
description
|
||||||
"Use libxml2 XSD XML Schema regexp engine. This is a complete
|
"Use libxml2 XSD XML Schema regexp engine. This is a complete
|
||||||
XSD regexp engine..
|
XSD regexp engine..
|
||||||
Requires libxml2 to be available at configure time
|
Requires libxml2 to be available at configure time
|
||||||
(HAVE_LIBXML2 should be set)";
|
(HAVE_LIBXML2 should be set)";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -402,7 +402,7 @@ module clixon-config {
|
||||||
typedef nacm_cred_mode{
|
typedef nacm_cred_mode{
|
||||||
description
|
description
|
||||||
"How NACM user should be matched with unix socket peer credentials.
|
"How NACM user should be matched with unix socket peer credentials.
|
||||||
This means nacm user must match socket peer user accessing the
|
This means nacm user must match socket peer user accessing the
|
||||||
backend socket. For IP sockets only mode none makes sense.";
|
backend socket. For IP sockets only mode none makes sense.";
|
||||||
type enumeration{
|
type enumeration{
|
||||||
enum none {
|
enum none {
|
||||||
|
|
@ -479,32 +479,19 @@ module clixon-config {
|
||||||
*:<feature> means enable the specific feature in all modules";
|
*:<feature> means enable the specific feature in all modules";
|
||||||
type string;
|
type string;
|
||||||
}
|
}
|
||||||
leaf-list CLICON_YANG_DIR {
|
|
||||||
ordered-by user;
|
|
||||||
type string;
|
|
||||||
description
|
|
||||||
"Yang directory path for finding module and submodule files.
|
|
||||||
A list of these options should be in the configuration.
|
|
||||||
When loading a Yang module, Clixon searches this list in the order
|
|
||||||
they appear.
|
|
||||||
Note since Clixon 5.4 such a directory is searched recursively, not just the
|
|
||||||
directory itself.
|
|
||||||
Ensure that YANG_INSTALLDIR (default
|
|
||||||
/usr/local/share/clixon) is present in the path";
|
|
||||||
}
|
|
||||||
/* Configuration */
|
/* Configuration */
|
||||||
leaf CLICON_CONFIGFILE{
|
leaf CLICON_CONFIGFILE{
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"Location of the main configuration-file.
|
"Location of the main configuration-file.
|
||||||
Default is CLIXON_DEFAULT_CONFIG=/usr/local/etc/clicon.xml set in configure.
|
Default is CLIXON_DEFAULT_CONFIG=/usr/local/etc/clicon.xml set in configure.
|
||||||
Note that due to bootstrapping, this value is not actually read from file
|
Note that due to bootstrapping, this value is not actually read from file
|
||||||
and therefore a default value would be meaningless.";
|
and therefore a default value would be meaningless.";
|
||||||
}
|
}
|
||||||
leaf CLICON_CONFIGDIR{
|
leaf CLICON_CONFIGDIR{
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"Location of directory of extra configuration files.
|
"Location of directory of extra configuration files.
|
||||||
If not given, only main configfile is read.
|
If not given, only main configfile is read.
|
||||||
If given, and if the directory exists, all files in this directory will be loaded
|
If given, and if the directory exists, all files in this directory will be loaded
|
||||||
AFTER the main config file (CLICON_CONFIGFILE) in the following way:
|
AFTER the main config file (CLICON_CONFIGFILE) in the following way:
|
||||||
|
|
@ -521,12 +508,25 @@ module clixon-config {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"If specified load an application-specific configuration YANG that overrides
|
"If specified load an application-specific configuration YANG that overrides
|
||||||
this config.
|
this config.
|
||||||
Normally, that YANG imports clixon-config.
|
Normally, that YANG imports clixon-config.
|
||||||
This field is a 'bootstrap' field.
|
This field is a 'bootstrap' field.
|
||||||
";
|
";
|
||||||
}
|
}
|
||||||
/* YANG */
|
/* YANG */
|
||||||
|
leaf-list CLICON_YANG_DIR {
|
||||||
|
ordered-by user;
|
||||||
|
type string;
|
||||||
|
description
|
||||||
|
"Yang directory path for finding module and submodule files.
|
||||||
|
A list of these options should be in the configuration.
|
||||||
|
When loading a Yang module, Clixon searches this list in the order
|
||||||
|
they appear.
|
||||||
|
Note since Clixon 5.4 such a directory is searched recursively, not just the
|
||||||
|
directory itself.
|
||||||
|
Ensure that YANG_INSTALLDIR (default
|
||||||
|
/usr/local/share/clixon) is present in the path";
|
||||||
|
}
|
||||||
leaf CLICON_YANG_MAIN_FILE {
|
leaf CLICON_YANG_MAIN_FILE {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
|
|
@ -555,13 +555,13 @@ module clixon-config {
|
||||||
leaf CLICON_YANG_MODULE_MAIN {
|
leaf CLICON_YANG_MODULE_MAIN {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"Option used to construct initial yang file:
|
"Option used to construct initial yang file:
|
||||||
<module>[@<revision>]";
|
<module>[@<revision>]";
|
||||||
}
|
}
|
||||||
leaf CLICON_YANG_MODULE_REVISION {
|
leaf CLICON_YANG_MODULE_REVISION {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"Option used to construct initial yang file:
|
"Option used to construct initial yang file:
|
||||||
<module>[@<revision>].
|
<module>[@<revision>].
|
||||||
Used together with CLICON_YANG_MODULE_MAIN";
|
Used together with CLICON_YANG_MODULE_MAIN";
|
||||||
}
|
}
|
||||||
|
|
@ -595,7 +595,7 @@ module clixon-config {
|
||||||
"YANG schema mount, RFC 8528.
|
"YANG schema mount, RFC 8528.
|
||||||
When enabled, mount-points as defined by the 'yangmnt:mount-point' extension can
|
When enabled, mount-points as defined by the 'yangmnt:mount-point' extension can
|
||||||
be populated by other YANGs than the root.
|
be populated by other YANGs than the root.
|
||||||
This is controlled by the ca_yang_mount plugin callback by returning a assigning a
|
This is controlled by the ca_yang_mount plugin callback by returning a assigning a
|
||||||
yanglib module-set section that corresponds to the mounted YANGs.
|
yanglib module-set section that corresponds to the mounted YANGs.
|
||||||
Also, schema mount statistics is added to state data
|
Also, schema mount statistics is added to state data
|
||||||
Further, autocli syntax is added by definining a tree resolve wrapper";
|
Further, autocli syntax is added by definining a tree resolve wrapper";
|
||||||
|
|
@ -706,7 +706,7 @@ module clixon-config {
|
||||||
default false;
|
default false;
|
||||||
description
|
description
|
||||||
"This option relates to RFC 6241 Sec 8.1 Capabilies Exchange where it says:
|
"This option relates to RFC 6241 Sec 8.1 Capabilies Exchange where it says:
|
||||||
When the NETCONF session is opened, each peer (both client and server) MUST
|
When the NETCONF session is opened, each peer (both client and server) MUST
|
||||||
send a <hello> element...
|
send a <hello> element...
|
||||||
If true, an RPC can be processed directly with no preceeding hello message.
|
If true, an RPC can be processed directly with no preceeding hello message.
|
||||||
This is legacy clixon but invalid according to the RFC.
|
This is legacy clixon but invalid according to the RFC.
|
||||||
|
|
@ -729,9 +729,9 @@ module clixon-config {
|
||||||
type int32;
|
type int32;
|
||||||
default 1;
|
default 1;
|
||||||
description
|
description
|
||||||
"This option relates to RFC6241 Sec 8.1 capabilities exchange.
|
"This option relates to RFC6241 Sec 8.1 capabilities exchange.
|
||||||
This number is the highest netconf base capability announced during
|
This number is the highest netconf base capability announced during
|
||||||
the hello protocol.
|
the hello protocol.
|
||||||
Specifically, If the option number is 0, only 'urn:ietf:params:netconf:base:1.0'
|
Specifically, If the option number is 0, only 'urn:ietf:params:netconf:base:1.0'
|
||||||
is announced, if it is 1, both 'urn:ietf:params:netconf:base:1.0' and
|
is announced, if it is 1, both 'urn:ietf:params:netconf:base:1.0' and
|
||||||
'urn:ietf:params:netconf:base:1.1' are announced.
|
'urn:ietf:params:netconf:base:1.1' are announced.
|
||||||
|
|
@ -745,10 +745,10 @@ module clixon-config {
|
||||||
description
|
description
|
||||||
"If set, clixon will accept the 'creator' attribute as defined by the
|
"If set, clixon will accept the 'creator' attribute as defined by the
|
||||||
creator annotation in clixon-lib.
|
creator annotation in clixon-lib.
|
||||||
It can be used when several clients (such as a 'service') can create the same object.
|
It can be used when several clients (such as a 'service') can create the same object.
|
||||||
If one such client/service is deleted, the object is deleted only if all services
|
If one such client/service is deleted, the object is deleted only if all services
|
||||||
that created the object are deleted.
|
that created the object are deleted.
|
||||||
The clixon controller uses this feature, but could in principle be used by other
|
The clixon controller uses this feature, but could in principle be used by other
|
||||||
applications.
|
applications.
|
||||||
Marked as obsolete in 7.0 since creators attribute replaced by clixon-lib creators
|
Marked as obsolete in 7.0 since creators attribute replaced by clixon-lib creators
|
||||||
config";
|
config";
|
||||||
|
|
@ -799,16 +799,16 @@ module clixon-config {
|
||||||
leaf CLICON_RESTCONF_INSTALLDIR {
|
leaf CLICON_RESTCONF_INSTALLDIR {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"If set, path to dir of clixon-restconf daemon binary as used by backend if
|
"If set, path to dir of clixon-restconf daemon binary as used by backend if
|
||||||
started internally (run-time).
|
started internally (run-time).
|
||||||
If this path is not set, clixon_restconf will be looked for according to
|
If this path is not set, clixon_restconf will be looked for according to
|
||||||
configured installdir: $(sbindir) (install-time)
|
configured installdir: $(sbindir) (install-time)
|
||||||
Since programs can be moved around at install/cross-compile time the installed
|
Since programs can be moved around at install/cross-compile time the installed
|
||||||
dir may be difficult to know at install time, which is the reason why
|
dir may be difficult to know at install time, which is the reason why
|
||||||
CLICON_RESTCONF_INSTALLDIR exists, in order to override the Makefile
|
CLICON_RESTCONF_INSTALLDIR exists, in order to override the Makefile
|
||||||
installdir.
|
installdir.
|
||||||
Note on the installdir, DESTDIR is not included since according to man pages:
|
Note on the installdir, DESTDIR is not included since according to man pages:
|
||||||
by specifying DESTDIR should not change the operation of the software in
|
by specifying DESTDIR should not change the operation of the software in
|
||||||
any way, so its value should not be included in any file contents. ";
|
any way, so its value should not be included in any file contents. ";
|
||||||
}
|
}
|
||||||
leaf CLICON_RESTCONF_STARTUP_DONTUPDATE {
|
leaf CLICON_RESTCONF_STARTUP_DONTUPDATE {
|
||||||
|
|
@ -825,7 +825,7 @@ module clixon-config {
|
||||||
}
|
}
|
||||||
leaf CLICON_RESTCONF_USER {
|
leaf CLICON_RESTCONF_USER {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"Run clixon_daemon as this user
|
"Run clixon_daemon as this user
|
||||||
When drop privileges is used, the daemon will drop privileges to this user.
|
When drop privileges is used, the daemon will drop privileges to this user.
|
||||||
In pre-5.2 code this was configured as compile-time constant WWWUSER with
|
In pre-5.2 code this was configured as compile-time constant WWWUSER with
|
||||||
|
|
@ -836,8 +836,8 @@ module clixon-config {
|
||||||
leaf CLICON_RESTCONF_PRIVILEGES {
|
leaf CLICON_RESTCONF_PRIVILEGES {
|
||||||
type priv_mode;
|
type priv_mode;
|
||||||
default drop_perm;
|
default drop_perm;
|
||||||
description
|
description
|
||||||
"Restconf privileges mode.
|
"Restconf privileges mode.
|
||||||
If drop_perm or drop_temp then drop privileges to CLICON_RESTCONF_USER.
|
If drop_perm or drop_temp then drop privileges to CLICON_RESTCONF_USER.
|
||||||
If the platform does not support getresuid and accompanying functions, the mode
|
If the platform does not support getresuid and accompanying functions, the mode
|
||||||
must be set to 'none'.
|
must be set to 'none'.
|
||||||
|
|
@ -851,7 +851,7 @@ module clixon-config {
|
||||||
If false, disable direct and upgrade for plain(non-tls) HTTP/2.
|
If false, disable direct and upgrade for plain(non-tls) HTTP/2.
|
||||||
If true, allow direct and upgrade for plain(non-tls) HTTP/2.
|
If true, allow direct and upgrade for plain(non-tls) HTTP/2.
|
||||||
It may especially useful to disable in http/1 + http/2 mode to avoid the complex
|
It may especially useful to disable in http/1 + http/2 mode to avoid the complex
|
||||||
upgrade/switch from http/1 to http/2.
|
upgrade/switch from http/1 to http/2.
|
||||||
Note this also disables plain http/2 in prior-knowledge, that is, in http/2-only mode.
|
Note this also disables plain http/2 in prior-knowledge, that is, in http/2-only mode.
|
||||||
HTTP/2 in https(TLS) is unaffected";
|
HTTP/2 in https(TLS) is unaffected";
|
||||||
}
|
}
|
||||||
|
|
@ -864,9 +864,9 @@ module clixon-config {
|
||||||
If the value is not set (or other value), Clixon closes the socket(reset)
|
If the value is not set (or other value), Clixon closes the socket(reset)
|
||||||
If the value is 'http/1.1' then HTTP/1.1 is selected
|
If the value is 'http/1.1' then HTTP/1.1 is selected
|
||||||
If the value is 'http/2' then HTTP/2 is selected
|
If the value is 'http/2' then HTTP/2 is selected
|
||||||
Note that if Clixon is configured for only HTTP/1 (--disable-nghttp2),
|
Note that if Clixon is configured for only HTTP/1 (--disable-nghttp2),
|
||||||
then HTTP/1 is selected if the client does not use ALPN.
|
then HTTP/1 is selected if the client does not use ALPN.
|
||||||
Likewise, if Clixon is configured for only HTTP/2 (--disable-http1),
|
Likewise, if Clixon is configured for only HTTP/2 (--disable-http1),
|
||||||
then HTTP/2 is selected if the client does not use ALPN.
|
then HTTP/2 is selected if the client does not use ALPN.
|
||||||
This option does not apply for plain (non-TLS) HTTP";
|
This option does not apply for plain (non-TLS) HTTP";
|
||||||
}
|
}
|
||||||
|
|
@ -877,11 +877,11 @@ module clixon-config {
|
||||||
description
|
description
|
||||||
"URI match for http-data serving files specified by CLICON_HTTP_DATA_ROOT.
|
"URI match for http-data serving files specified by CLICON_HTTP_DATA_ROOT.
|
||||||
Must start with / (example: /)
|
Must start with / (example: /)
|
||||||
Restconf paths at /restconf is always done before data (or streams)
|
Restconf paths at /restconf is always done before data (or streams)
|
||||||
The PATH is appended to CLICON_HTTP_DATA_ROOT to find a file.
|
The PATH is appended to CLICON_HTTP_DATA_ROOT to find a file.
|
||||||
Example, if PATH is /data and ROOT is /www, and a GET /index.html, the
|
Example, if PATH is /data and ROOT is /www, and a GET /index.html, the
|
||||||
corresponding file is '/www/data/index.html'
|
corresponding file is '/www/data/index.html'
|
||||||
Both feature clixon-restconf:http-data and restconf/enable-http-data
|
Both feature clixon-restconf:http-data and restconf/enable-http-data
|
||||||
must be enabled for this match to occur.";
|
must be enabled for this match to occur.";
|
||||||
}
|
}
|
||||||
leaf CLICON_HTTP_DATA_ROOT{
|
leaf CLICON_HTTP_DATA_ROOT{
|
||||||
|
|
@ -890,22 +890,22 @@ module clixon-config {
|
||||||
default "/var/www";
|
default "/var/www";
|
||||||
description
|
description
|
||||||
"Location in file system where http-data files are looked for.
|
"Location in file system where http-data files are looked for.
|
||||||
Soft links, '..', '~' etc are not followed.
|
Soft links, '..', '~' etc are not followed.
|
||||||
See also CLICON_HTTP_DATA_PATH
|
See also CLICON_HTTP_DATA_PATH
|
||||||
Both feature clixon-restconf:http-data and restconf/enable-http-data
|
Both feature clixon-restconf:http-data and restconf/enable-http-data
|
||||||
must be enabled for this match to occur.";
|
must be enabled for this match to occur.";
|
||||||
}
|
}
|
||||||
/* Clixon CLI */
|
/* Clixon CLI */
|
||||||
leaf CLICON_CLI_DIR {
|
leaf CLICON_CLI_DIR {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"Directory containing frontend cli loadable plugins. Load all .so
|
"Directory containing frontend cli loadable plugins. Load all .so
|
||||||
plugins in this directory as CLI object plugins";
|
plugins in this directory as CLI object plugins";
|
||||||
}
|
}
|
||||||
leaf CLICON_CLISPEC_DIR {
|
leaf CLICON_CLISPEC_DIR {
|
||||||
type string;
|
type string;
|
||||||
description
|
description
|
||||||
"Directory containing frontend cligen spec files. Load all .cli
|
"Directory containing frontend cligen spec files. Load all .cli
|
||||||
files in this directory as CLI specification files.
|
files in this directory as CLI specification files.
|
||||||
See also CLICON_CLISPEC_FILE.";
|
See also CLICON_CLISPEC_FILE.";
|
||||||
}
|
}
|
||||||
|
|
@ -926,7 +926,7 @@ module clixon-config {
|
||||||
type int32;
|
type int32;
|
||||||
default 1;
|
default 1;
|
||||||
description
|
description
|
||||||
"Dont include keys in cvec in cli vars callbacks,
|
"Dont include keys in cvec in cli vars callbacks,
|
||||||
ie a & k in 'a <b> k <c>' ignored
|
ie a & k in 'a <b> k <c>' ignored
|
||||||
(consider boolean)";
|
(consider boolean)";
|
||||||
}
|
}
|
||||||
|
|
@ -935,7 +935,7 @@ module clixon-config {
|
||||||
default 1;
|
default 1;
|
||||||
description
|
description
|
||||||
"Set to 0 if you want CLI INPUT to wrap to next line.
|
"Set to 0 if you want CLI INPUT to wrap to next line.
|
||||||
Set to 1 if you want CLI INPUT to scroll sideways when approaching
|
Set to 1 if you want CLI INPUT to scroll sideways when approaching
|
||||||
right margin";
|
right margin";
|
||||||
}
|
}
|
||||||
leaf CLICON_CLI_LINES_DEFAULT {
|
leaf CLICON_CLI_LINES_DEFAULT {
|
||||||
|
|
@ -968,7 +968,7 @@ module clixon-config {
|
||||||
default 0;
|
default 0;
|
||||||
description
|
description
|
||||||
"Set to 1 to enable CLIgen UTF-8 experimental mode.
|
"Set to 1 to enable CLIgen UTF-8 experimental mode.
|
||||||
Note that this feature is EXPERIMENTAL and may not properly handle
|
Note that this feature is EXPERIMENTAL and may not properly handle
|
||||||
scrolling, control characters, etc
|
scrolling, control characters, etc
|
||||||
(consider boolean)";
|
(consider boolean)";
|
||||||
}
|
}
|
||||||
|
|
@ -983,7 +983,7 @@ module clixon-config {
|
||||||
type int32;
|
type int32;
|
||||||
default 300;
|
default 300;
|
||||||
description
|
description
|
||||||
"Number of lines to save in CLI history.
|
"Number of lines to save in CLI history.
|
||||||
Also, if CLICON_CLI_HIST_FILE is set, also the size in lines
|
Also, if CLICON_CLI_HIST_FILE is set, also the size in lines
|
||||||
of the saved history.";
|
of the saved history.";
|
||||||
}
|
}
|
||||||
|
|
@ -991,9 +991,9 @@ module clixon-config {
|
||||||
type uint32;
|
type uint32;
|
||||||
default 256;
|
default 256;
|
||||||
description
|
description
|
||||||
"CLIgen buffer (cbuf) initial size.
|
"CLIgen buffer (cbuf) initial size.
|
||||||
When the buffer needs to grow, the allocation grows quadratic up to a threshold
|
When the buffer needs to grow, the allocation grows quadratic up to a threshold
|
||||||
after which linear growth continues.
|
after which linear growth continues.
|
||||||
See CLICON_CLI_BUF_THRESHOLD";
|
See CLICON_CLI_BUF_THRESHOLD";
|
||||||
}
|
}
|
||||||
leaf CLICON_CLI_BUF_THRESHOLD {
|
leaf CLICON_CLI_BUF_THRESHOLD {
|
||||||
|
|
@ -1019,16 +1019,16 @@ module clixon-config {
|
||||||
default 0;
|
default 0;
|
||||||
description
|
description
|
||||||
"CLIgen help string on query (?) limit of number of lines to show, 0 means unlimited.
|
"CLIgen help string on query (?) limit of number of lines to show, 0 means unlimited.
|
||||||
This only applies if you have multi-line help strings, such as when generating
|
This only applies if you have multi-line help strings, such as when generating
|
||||||
from a spec, such as in the autocli.";
|
from a spec, such as in the autocli.";
|
||||||
}
|
}
|
||||||
leaf CLICON_CLI_EXPAND_LEAFREF {
|
leaf CLICON_CLI_EXPAND_LEAFREF {
|
||||||
type boolean;
|
type boolean;
|
||||||
default false;
|
default false;
|
||||||
description
|
description
|
||||||
"If true, then CLI expansion of leafrefs (in expand_dbvar) are done using the
|
"If true, then CLI expansion of leafrefs (in expand_dbvar) are done using the
|
||||||
source values, not the references.
|
source values, not the references.
|
||||||
This applies to the autocli but also in a handcrafted CLI if expand_dbvar is used.
|
This applies to the autocli but also in a handcrafted CLI if expand_dbvar is used.
|
||||||
Example, assume ifref with leafref pointing to source if values:
|
Example, assume ifref with leafref pointing to source if values:
|
||||||
<if>a</if><if>b</if><if>c</if>
|
<if>a</if><if>b</if><if>c</if>
|
||||||
<ifref>b</ifref>
|
<ifref>b</ifref>
|
||||||
|
|
@ -1051,7 +1051,7 @@ module clixon-config {
|
||||||
"Address family for communicating with clixon_backend with one of:
|
"Address family for communicating with clixon_backend with one of:
|
||||||
Note IPv6 not implemented.
|
Note IPv6 not implemented.
|
||||||
Note that UNIX socket makes credential check as follows:
|
Note that UNIX socket makes credential check as follows:
|
||||||
(1) client needs rw access to the socket
|
(1) client needs rw access to the socket
|
||||||
(2) NACM credentials can be checked according to CLICON_NACM_CREDENTIALS
|
(2) NACM credentials can be checked according to CLICON_NACM_CREDENTIALS
|
||||||
Warning: Only UNIX (not IPv4) sockets have credential mechanism.
|
Warning: Only UNIX (not IPv4) sockets have credential mechanism.
|
||||||
";
|
";
|
||||||
|
|
@ -1071,14 +1071,14 @@ module clixon-config {
|
||||||
type int32;
|
type int32;
|
||||||
default 4535;
|
default 4535;
|
||||||
description
|
description
|
||||||
"Inet socket port for communicating with clixon_backend
|
"Inet socket port for communicating with clixon_backend
|
||||||
(only IPv4|IPv6)";
|
(only IPv4|IPv6)";
|
||||||
}
|
}
|
||||||
leaf CLICON_SOCK_GROUP {
|
leaf CLICON_SOCK_GROUP {
|
||||||
type string;
|
type string;
|
||||||
default "clicon";
|
default "clicon";
|
||||||
description
|
description
|
||||||
"Group membership to access clixon_backend unix socket and gid for
|
"Group membership to access clixon_backend unix socket and gid for
|
||||||
deamon";
|
deamon";
|
||||||
}
|
}
|
||||||
leaf CLICON_SOCK_PRIO {
|
leaf CLICON_SOCK_PRIO {
|
||||||
|
|
@ -1097,7 +1097,7 @@ module clixon-config {
|
||||||
type int32;
|
type int32;
|
||||||
default 0;
|
default 0;
|
||||||
description
|
description
|
||||||
"Set if all configuration changes are committed automatically
|
"Set if all configuration changes are committed automatically
|
||||||
on every edit change. Explicit commit commands unnecessary
|
on every edit change. Explicit commit commands unnecessary
|
||||||
If confirm-commit, follow RESTCONF semantics: commit ephemeral but fail on
|
If confirm-commit, follow RESTCONF semantics: commit ephemeral but fail on
|
||||||
persistent confirming commit.
|
persistent confirming commit.
|
||||||
|
|
@ -1108,7 +1108,7 @@ module clixon-config {
|
||||||
default false;
|
default false;
|
||||||
description
|
description
|
||||||
"Set if all edit-config implicitly locks without the need of an explicit lock-db
|
"Set if all edit-config implicitly locks without the need of an explicit lock-db
|
||||||
In short, the lock is obtained by edit-config and copy-config and released by
|
In short, the lock is obtained by edit-config and copy-config and released by
|
||||||
discard and commit.
|
discard and commit.
|
||||||
Also, any edits in candidate are discarded if the client closes the connection.
|
Also, any edits in candidate are discarded if the client closes the connection.
|
||||||
This effectively disables shared candidate";
|
This effectively disables shared candidate";
|
||||||
|
|
@ -1118,7 +1118,7 @@ module clixon-config {
|
||||||
type datastore_cache;
|
type datastore_cache;
|
||||||
default cache;
|
default cache;
|
||||||
description
|
description
|
||||||
"Clixon datastore cache behaviour. There are three values: no cache,
|
"Clixon datastore cache behaviour. There are three values: no cache,
|
||||||
cache with copy, or cache without copy.
|
cache with copy, or cache without copy.
|
||||||
Note: 'cache' is default value and supported with regressions etc.
|
Note: 'cache' is default value and supported with regressions etc.
|
||||||
Others are experimental (in Clixon 5.5)
|
Others are experimental (in Clixon 5.5)
|
||||||
|
|
@ -1144,7 +1144,7 @@ module clixon-config {
|
||||||
type boolean;
|
type boolean;
|
||||||
default true;
|
default true;
|
||||||
description
|
description
|
||||||
"XMLDB datastore pretty print.
|
"XMLDB datastore pretty print.
|
||||||
If set, insert spaces and line-feeds making the XML/JSON human
|
If set, insert spaces and line-feeds making the XML/JSON human
|
||||||
readable. If not set, make the XML/JSON more compact.";
|
readable. If not set, make the XML/JSON more compact.";
|
||||||
}
|
}
|
||||||
|
|
@ -1152,7 +1152,7 @@ module clixon-config {
|
||||||
type boolean;
|
type boolean;
|
||||||
default false;
|
default false;
|
||||||
description
|
description
|
||||||
"If set, tag datastores with RFC 8525 YANG Module Library
|
"If set, tag datastores with RFC 8525 YANG Module Library
|
||||||
info.
|
info.
|
||||||
By default, modstate is added last in datastore.
|
By default, modstate is added last in datastore.
|
||||||
When loaded at startup, a check is made if the system
|
When loaded at startup, a check is made if the system
|
||||||
|
|
@ -1163,7 +1163,7 @@ module clixon-config {
|
||||||
default true;
|
default true;
|
||||||
description
|
description
|
||||||
"Controls behavior of check of startup in upgrade scenarios.
|
"Controls behavior of check of startup in upgrade scenarios.
|
||||||
If set, yang bind and check datastore syntax against the old Yang.
|
If set, yang bind and check datastore syntax against the old Yang.
|
||||||
The old yang must be accessible via YANG_DIR.
|
The old yang must be accessible via YANG_DIR.
|
||||||
Will fail startup if old yang not found or if old config does not match.
|
Will fail startup if old yang not found or if old config does not match.
|
||||||
If not set, no yang check of old config is made until it is upgraded to new yang.";
|
If not set, no yang check of old config is made until it is upgraded to new yang.";
|
||||||
|
|
@ -1201,8 +1201,8 @@ module clixon-config {
|
||||||
"Validate user state callback content.
|
"Validate user state callback content.
|
||||||
AND NETCONF reply sanity (misnomer)
|
AND NETCONF reply sanity (misnomer)
|
||||||
Users may register state callbacks using ca_statedata callback
|
Users may register state callbacks using ca_statedata callback
|
||||||
When set, the XML returned from the callback is validated after merging with
|
When set, the XML returned from the callback is validated after merging with
|
||||||
the running db. If it fails, an internal error is returned to the originating
|
the running db. If it fails, an internal error is returned to the originating
|
||||||
user.
|
user.
|
||||||
If the option is not set, the XML returned by the user is not validated.
|
If the option is not set, the XML returned by the user is not validated.
|
||||||
Note that enabling currently causes a large performance overhead for large
|
Note that enabling currently causes a large performance overhead for large
|
||||||
|
|
@ -1216,7 +1216,7 @@ module clixon-config {
|
||||||
"Debug option.
|
"Debug option.
|
||||||
If >0, make a check of resources before and after each plugin callback code
|
If >0, make a check of resources before and after each plugin callback code
|
||||||
to check if the plugin violated resources.
|
to check if the plugin violated resources.
|
||||||
This is primarily intended for development and debugging but may also be enabled
|
This is primarily intended for development and debugging but may also be enabled
|
||||||
in a running system.
|
in a running system.
|
||||||
If 1, errors will be logged to syslog as WARNINGs.
|
If 1, errors will be logged to syslog as WARNINGs.
|
||||||
If 2, the program will abort using assert() on first error
|
If 2, the program will abort using assert() on first error
|
||||||
|
|
@ -1233,7 +1233,7 @@ module clixon-config {
|
||||||
description
|
description
|
||||||
"Local/global flag for dlopen as described in the man page.
|
"Local/global flag for dlopen as described in the man page.
|
||||||
This applies to the opening of all clixon plugins (backend/cli/netconf/restconf)
|
This applies to the opening of all clixon plugins (backend/cli/netconf/restconf)
|
||||||
when loading the shared .so file with dlopen.
|
when loading the shared .so file with dlopen.
|
||||||
If false: Symbols defined in this shared object are not made available to resolve
|
If false: Symbols defined in this shared object are not made available to resolve
|
||||||
references in subsequently loaded shared objects (default).
|
references in subsequently loaded shared objects (default).
|
||||||
If true: The symbols defined by this shared object will be made available for symbol res‐
|
If true: The symbols defined by this shared object will be made available for symbol res‐
|
||||||
|
|
@ -1245,7 +1245,7 @@ module clixon-config {
|
||||||
description
|
description
|
||||||
"Undefine if you want to ensure strict namespace assignment on all netconf
|
"Undefine if you want to ensure strict namespace assignment on all netconf
|
||||||
and XML statements according to the standard RFC 6241.
|
and XML statements according to the standard RFC 6241.
|
||||||
If defined, top-level rpc calls need not have namespaces (eg using xmlns=<ns>)
|
If defined, top-level rpc calls need not have namespaces (eg using xmlns=<ns>)
|
||||||
since the default NETCONF namespace will be assumed. (This is not standard).
|
since the default NETCONF namespace will be assumed. (This is not standard).
|
||||||
See rfc6241 3.1: urn:ietf:params:xml:ns:netconf:base:1.0.";
|
See rfc6241 3.1: urn:ietf:params:xml:ns:netconf:base:1.0.";
|
||||||
}
|
}
|
||||||
|
|
@ -1266,7 +1266,7 @@ module clixon-config {
|
||||||
type nacm_mode;
|
type nacm_mode;
|
||||||
default disabled;
|
default disabled;
|
||||||
description
|
description
|
||||||
"RFC8341 network access configuration control model (NACM) mode: disabled,
|
"RFC8341 network access configuration control model (NACM) mode: disabled,
|
||||||
in regular (internal) config or separate external file given by CLICON_NACM_FILE";
|
in regular (internal) config or separate external file given by CLICON_NACM_FILE";
|
||||||
}
|
}
|
||||||
leaf CLICON_NACM_FILE {
|
leaf CLICON_NACM_FILE {
|
||||||
|
|
@ -1297,7 +1297,7 @@ module clixon-config {
|
||||||
default false;
|
default false;
|
||||||
description
|
description
|
||||||
"RFC 8341 and ietf-netconf-acm@2018-02-14.yang defines enable-nacm as true by
|
"RFC 8341 and ietf-netconf-acm@2018-02-14.yang defines enable-nacm as true by
|
||||||
default. Since also write-default is deny by default it leads to that empty
|
default. Since also write-default is deny by default it leads to that empty
|
||||||
configs can not be edited.
|
configs can not be edited.
|
||||||
This means that a startup config must always have a NACM configuration or
|
This means that a startup config must always have a NACM configuration or
|
||||||
that the NACM recovery session is used to edit an empty config.
|
that the NACM recovery session is used to edit an empty config.
|
||||||
|
|
@ -1309,11 +1309,11 @@ module clixon-config {
|
||||||
default "0";
|
default "0";
|
||||||
description
|
description
|
||||||
"Only if CLICON_YANG_LIBRARY enabled.
|
"Only if CLICON_YANG_LIBRARY enabled.
|
||||||
Contains a server-specific identifier representing the current set of modules
|
Contains a server-specific identifier representing the current set of modules
|
||||||
and submodules. The server MUST change the value of this leaf if the
|
and submodules. The server MUST change the value of this leaf if the
|
||||||
information represented by the 'module' list instances has changed.
|
information represented by the 'module' list instances has changed.
|
||||||
The /yang-library/content-id state-data leaf is set with this value
|
The /yang-library/content-id state-data leaf is set with this value
|
||||||
If CLICON_MODULE_LIBRARY_RFC7895 is enabled, it sets the modules-state/module-set-id
|
If CLICON_MODULE_LIBRARY_RFC7895 is enabled, it sets the modules-state/module-set-id
|
||||||
instead";
|
instead";
|
||||||
}
|
}
|
||||||
/* Notification streams */
|
/* Notification streams */
|
||||||
|
|
@ -1348,8 +1348,8 @@ module clixon-config {
|
||||||
type string;
|
type string;
|
||||||
default "https://localhost";
|
default "https://localhost";
|
||||||
description "Prepend this to CLICON_STREAM_PATH to form URL.
|
description "Prepend this to CLICON_STREAM_PATH to form URL.
|
||||||
See RFC 8040 Sec 9.3 location leaf:
|
See RFC 8040 Sec 9.3 location leaf:
|
||||||
'Contains a URL that represents the entry point for
|
'Contains a URL that represents the entry point for
|
||||||
establishing notification delivery via server-sent events.'
|
establishing notification delivery via server-sent events.'
|
||||||
Prepend this constant to name of stream.
|
Prepend this constant to name of stream.
|
||||||
Example: https://localhost/streams/NETCONF. Note this is the
|
Example: https://localhost/streams/NETCONF. Note this is the
|
||||||
|
|
@ -1362,7 +1362,7 @@ module clixon-config {
|
||||||
description "For stream publish using eg nchan, the base address
|
description "For stream publish using eg nchan, the base address
|
||||||
to publish to. Example value: http://localhost/pub
|
to publish to. Example value: http://localhost/pub
|
||||||
Example: stream NETCONF would then be pushed to
|
Example: stream NETCONF would then be pushed to
|
||||||
http://localhost/pub/NETCONF.
|
http://localhost/pub/NETCONF.
|
||||||
Note this may be a local/provate URL behind reverse-proxy.
|
Note this may be a local/provate URL behind reverse-proxy.
|
||||||
If not given, do NOT enable stream publishing using NCHAN.";
|
If not given, do NOT enable stream publishing using NCHAN.";
|
||||||
}
|
}
|
||||||
|
|
@ -1398,14 +1398,14 @@ module clixon-config {
|
||||||
type uint32;
|
type uint32;
|
||||||
default 0;
|
default 0;
|
||||||
description
|
description
|
||||||
"Length limitation of debug and log strings.
|
"Length limitation of debug and log strings.
|
||||||
Especially useful for dynamic debug strings, such as packet dumps.
|
Especially useful for dynamic debug strings, such as packet dumps.
|
||||||
0 means no limit";
|
0 means no limit";
|
||||||
}
|
}
|
||||||
/* SNMP */
|
/* SNMP */
|
||||||
leaf-list CLICON_SNMP_MIB {
|
leaf-list CLICON_SNMP_MIB {
|
||||||
description
|
description
|
||||||
"Names of MIBs that are used by clixon_snmp.
|
"Names of MIBs that are used by clixon_snmp.
|
||||||
For each MIB M, a YANG file M.yang is expected to be found.
|
For each MIB M, a YANG file M.yang is expected to be found.
|
||||||
If not found, an error is genereated.
|
If not found, an error is genereated.
|
||||||
The YANG file M.yang is typically generated from the source MIB but can also
|
The YANG file M.yang is typically generated from the source MIB but can also
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@ module clixon-lib {
|
||||||
"***** BEGIN LICENSE BLOCK *****
|
"***** BEGIN LICENSE BLOCK *****
|
||||||
Copyright (C) 2009-2019 Olof Hagsand
|
Copyright (C) 2009-2019 Olof Hagsand
|
||||||
Copyright (C) 2020-2022 Olof Hagsand and Rubicon Communications, LLC(Netgate)
|
Copyright (C) 2020-2022 Olof Hagsand and Rubicon Communications, LLC(Netgate)
|
||||||
|
|
||||||
This file is part of CLIXON
|
This file is part of CLIXON
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the \"License\");
|
Licensed under the Apache License, Version 2.0 (the \"License\");
|
||||||
|
|
@ -40,7 +40,7 @@ module clixon-lib {
|
||||||
in which case the provisions of the GPL are applicable instead
|
in which case the provisions of the GPL are applicable instead
|
||||||
of those above. If you wish to allow use of your version of this file only
|
of those above. If you wish to allow use of your version of this file only
|
||||||
under the terms of the GPL, and not to allow others to
|
under the terms of the GPL, and not to allow others to
|
||||||
use your version of this file under the terms of Apache License version 2,
|
use your version of this file under the terms of Apache License version 2,
|
||||||
indicate your decision by deleting the provisions above and replace them with
|
indicate your decision by deleting the provisions above and replace them with
|
||||||
the notice and other provisions required by the GPL. If you do not delete
|
the notice and other provisions required by the GPL. If you do not delete
|
||||||
the provisions above, a recipient may use your version of this file under
|
the provisions above, a recipient may use your version of this file under
|
||||||
|
|
@ -50,7 +50,7 @@ module clixon-lib {
|
||||||
|
|
||||||
Clixon Netconf extensions for communication between clients and backend.
|
Clixon Netconf extensions for communication between clients and backend.
|
||||||
This scheme adds:
|
This scheme adds:
|
||||||
- Added values of RFC6022 transport identityref
|
- Added values of RFC6022 transport identityref
|
||||||
- RPCs for debug, stats and process-control
|
- RPCs for debug, stats and process-control
|
||||||
- Informal description of attributes
|
- Informal description of attributes
|
||||||
|
|
||||||
|
|
@ -105,7 +105,7 @@ module clixon-lib {
|
||||||
}
|
}
|
||||||
revision 2022-12-01 {
|
revision 2022-12-01 {
|
||||||
description
|
description
|
||||||
"Added values of RFC6022 transport identityref
|
"Added values of RFC6022 transport identityref
|
||||||
Added description of internal netconf attributes";
|
Added description of internal netconf attributes";
|
||||||
}
|
}
|
||||||
revision 2021-12-05 {
|
revision 2021-12-05 {
|
||||||
|
|
@ -307,7 +307,7 @@ module clixon-lib {
|
||||||
}
|
}
|
||||||
identity netconf {
|
identity netconf {
|
||||||
description
|
description
|
||||||
"Just NETCONF without specific underlying transport,
|
"Just NETCONF without specific underlying transport,
|
||||||
Clixon uses stdio for its netconf client and therefore does not know whether it is
|
Clixon uses stdio for its netconf client and therefore does not know whether it is
|
||||||
invoked in a script, by a NETCONF/SSH subsystem, etc";
|
invoked in a script, by a NETCONF/SSH subsystem, etc";
|
||||||
base ncm:transport;
|
base ncm:transport;
|
||||||
|
|
@ -331,7 +331,7 @@ module clixon-lib {
|
||||||
In this way the non-config data can be partially read by the server, instead of reading
|
In this way the non-config data can be partially read by the server, instead of reading
|
||||||
the whole state on every pagination request.
|
the whole state on every pagination request.
|
||||||
It affects only the server/backend-side
|
It affects only the server/backend-side
|
||||||
It only handles the offset and limit attributes, all other attributes,
|
It only handles the offset and limit attributes, all other attributes,
|
||||||
such as where, sort-by, direction, etc, are ignored";
|
such as where, sort-by, direction, etc, are ignored";
|
||||||
}
|
}
|
||||||
extension ignore-compare {
|
extension ignore-compare {
|
||||||
|
|
@ -345,7 +345,7 @@ module clixon-lib {
|
||||||
description
|
description
|
||||||
"When split configuration stores are used, ie CLICON_XMLDB_MULTI is set,
|
"When split configuration stores are used, ie CLICON_XMLDB_MULTI is set,
|
||||||
This extension marks where in the configuration tree, one file terminates
|
This extension marks where in the configuration tree, one file terminates
|
||||||
and a new sub-file is written.
|
and a new sub-file is written.
|
||||||
A designer adds the 'xmldb-split' extension to a YANG node which should be split.
|
A designer adds the 'xmldb-split' extension to a YANG node which should be split.
|
||||||
For example, a split could be made at mountpoints.
|
For example, a split could be made at mountpoints.
|
||||||
See also the 'link 'attribute.
|
See also the 'link 'attribute.
|
||||||
|
|
@ -358,7 +358,7 @@ module clixon-lib {
|
||||||
One application is the clixon controller where multiple services can
|
One application is the clixon controller where multiple services can
|
||||||
create the same object. When such a service is deleted (or changed) one needs to keep
|
create the same object. When such a service is deleted (or changed) one needs to keep
|
||||||
track of which service created what.
|
track of which service created what.
|
||||||
Limitations: only objects that are actually added or deleted.
|
Limitations: only objects that are actually added or deleted.
|
||||||
A sub-object will not be noted";
|
A sub-object will not be noted";
|
||||||
}
|
}
|
||||||
rpc debug {
|
rpc debug {
|
||||||
|
|
@ -386,7 +386,7 @@ module clixon-lib {
|
||||||
output {
|
output {
|
||||||
container global{
|
container global{
|
||||||
description
|
description
|
||||||
"Clixon global statistics.
|
"Clixon global statistics.
|
||||||
These are global counters incremented by new() and decreased by free() calls.
|
These are global counters incremented by new() and decreased by free() calls.
|
||||||
This number is higher than the sum of all datastore/module residing objects, since
|
This number is higher than the sum of all datastore/module residing objects, since
|
||||||
objects may be used for other purposes than datastore/modules";
|
objects may be used for other purposes than datastore/modules";
|
||||||
|
|
@ -473,7 +473,7 @@ module clixon-lib {
|
||||||
rpc process-control {
|
rpc process-control {
|
||||||
description
|
description
|
||||||
"Control a specific process or daemon: start/stop, etc.
|
"Control a specific process or daemon: start/stop, etc.
|
||||||
This is for direct managing of a process by the backend.
|
This is for direct managing of a process by the backend.
|
||||||
Alternatively one can manage a daemon via systemd, containerd, kubernetes, etc.";
|
Alternatively one can manage a daemon via systemd, containerd, kubernetes, etc.";
|
||||||
input {
|
input {
|
||||||
leaf name {
|
leaf name {
|
||||||
|
|
@ -495,7 +495,7 @@ module clixon-lib {
|
||||||
"Output from status rpc";
|
"Output from status rpc";
|
||||||
leaf active {
|
leaf active {
|
||||||
description
|
description
|
||||||
"True if process is running, false if not.
|
"True if process is running, false if not.
|
||||||
More specifically, there is a process-id and it exists (in Linux: kill(pid,0).
|
More specifically, there is a process-id and it exists (in Linux: kill(pid,0).
|
||||||
Note that this is actual state and status is administrative state,
|
Note that this is actual state and status is administrative state,
|
||||||
which means that changing the administrative state, eg stopped->running
|
which means that changing the administrative state, eg stopped->running
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ module clixon-restconf {
|
||||||
"This YANG module provides a data-model for the Clixon RESTCONF daemon.
|
"This YANG module provides a data-model for the Clixon RESTCONF daemon.
|
||||||
There is also clixon-config also including some restconf options.
|
There is also clixon-config also including some restconf options.
|
||||||
The separation is not always logical but there are some reasons for the split:
|
The separation is not always logical but there are some reasons for the split:
|
||||||
1. Some data (ie 'socket') is structurally complex and cannot be expressed as a
|
1. Some data (ie 'socket') is structurally complex and cannot be expressed as a
|
||||||
simple option
|
simple option
|
||||||
2. clixon-restconf is defined as a macro/grouping and can be included in
|
2. clixon-restconf is defined as a macro/grouping and can be included in
|
||||||
other YANGs. In particular, it can be used inside a datastore, which
|
other YANGs. In particular, it can be used inside a datastore, which
|
||||||
|
|
@ -25,7 +25,7 @@ module clixon-restconf {
|
||||||
3. Related to (2), options that should not be settable in a datastore should be
|
3. Related to (2), options that should not be settable in a datastore should be
|
||||||
in clixon-config
|
in clixon-config
|
||||||
|
|
||||||
Some of this spec if in-lined from ietf-restconf-server@2022-05-24.yang
|
Some of this spec if in-lined from ietf-restconf-server@2022-05-24.yang
|
||||||
";
|
";
|
||||||
revision 2022-08-01 {
|
revision 2022-08-01 {
|
||||||
description
|
description
|
||||||
|
|
@ -162,7 +162,7 @@ module clixon-restconf {
|
||||||
}
|
}
|
||||||
leaf log-destination {
|
leaf log-destination {
|
||||||
description
|
description
|
||||||
"Log destination.
|
"Log destination.
|
||||||
If debug is not set, only notice, error and warning will be logged";
|
If debug is not set, only notice, error and warning will be logged";
|
||||||
type log-destination;
|
type log-destination;
|
||||||
default syslog;
|
default syslog;
|
||||||
|
|
@ -252,7 +252,7 @@ module clixon-restconf {
|
||||||
container call-home {
|
container call-home {
|
||||||
presence
|
presence
|
||||||
"Identifies that the server has been configured to initiate
|
"Identifies that the server has been configured to initiate
|
||||||
call home connections.
|
call home connections.
|
||||||
If set, address/port refers to destination.";
|
If set, address/port refers to destination.";
|
||||||
description
|
description
|
||||||
"See RFC 8071 NETCONF Call Home and RESTCONF Call Home";
|
"See RFC 8071 NETCONF Call Home and RESTCONF Call Home";
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue