Common CLI Parameters

--address

The --address parameter specifies the IP address of the main server. It is used by subsystem applications that are not on the same local system as the main server.

leaf address {
    type inet:ip-address;
}

Syntax

ip-address

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

combo-app sil-sa-app py-sil-app

Example:

sil-sa-app --address=192.168.1.25

--alt-names

The --alt-names parameter specifies whether the server will recognize the ywx:alt-name YANG extension which allows an alternate name to be used for a node in the database. This defines the alternate name search mode that should be used when resolving YANG node names in leafs or leaf-lists using the UrlPath data type.

  • If 'true' then nodes with an 'alt-name' defined will be considered a match if the YANG name or the alternative name matches the search string.

  • If 'false' then only the YANG node name will be used in node name searches.";

The real name will be checked before the alt-name if it is used, so the alt-name extension cannot be used if there is a node already in the system with a real name that matches the alt-name.

leaf alt-names {
  type ywt:AltNameMode;
}

Syntax

boolean

Default:

true

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --alt-names=false

--binary-display-maxlen

The --binary-display-maxlen parameter specifies the maximum number of bytes to display when dumping the contents of a binary value. Normally a message will be displayed showing the name and length.

If this parameter is set to a value greater than zero then a standard 8-byte per line hex dump of the binary type will also be displayed for a maximum number of bytes set by this parameter.

  • The value '0' disables display of binary data nodes

  • Debugging: Use a value such as '4000' to enable the hex dump

leaf binary-display-maxlen {
  type uint32;
  default 0;
}

Syntax

uint32

Default:

0

Min Allowed:

0

Max Allowed:

1

Supported by:

yangcli-pro, netconfd-pro

Example:

netconfd-pro --binary-display-maxlen=100

--ca

The --ca parameter specifies the gNMI server CA certificate file. The path to the CA certificate should be absolute.

--ca parameter

Syntax

filespec

Default:

none

Min Allowed:

1

Max Allowed:

1

Supported by:

ypgnmi-app

Example:

ypgnmi-app --ca=/tmp/ca.crt

--cert

The --cert parameter specifies the gNMI server certificate file. The path to the certificate should be absolute.

--cert parameter

Syntax

filespec

Default:

none

Min Allowed:

1

Max Allowed:

1

Supported by:

ypgnmi-app

Example:

ypgnmi-app --cert=/tmp/cert.crt

--config

The --config parameter specifies the name of a YumaPro configuration file that contains more parameters to process, in addition to the CLI parameters. The --no-config parameter can be used instead of this parameter to force the server to skip loading the default config file if it is present.

For netconfd-pro, this parameter is ignored if the --no-nvstore parameter is used.

Refer to the Configuration Files section for details on the format of this file.

leaf config {
  type string;
}

Syntax

string: complete file specification of the text file to parse for more parameters.

Default:

/etc/yumapro/<program-name>.conf

Min Allowed:

0

Max Allowed:

1

Supported by:

yangcli-pro
netconfd-pro
yangdiff-pro
yangdump-pro

Example:

yangcli-pro --config=~/testconf.conf

--datapath

The --datapath parameter specifies the directory search path to use while searching for data files. It consists of a colon (':') separated list of path specifications, commonly found in Unix, such as the $PATH environment variable.

This parameter overrides the $YUMAPRO_DATAPATH environment variable, if it is present.

leaf datapath {
  type yt:NcPathList;
}

Syntax

string: list of directory specifications

Default:

$YUMAPRO_DATAPATH environment variable

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

yangcli-pro --datapath=”~/work2:~/data”

--deviation

The --deviation parameter is a leaf-list of modules that should be loaded automatically when the program starts, as a deviation module. In this mode, only the deviation statements are parsed and then made available later when the module that contains the objects being deviated is parsed.

~/some/path ==> <my-home-dir>/some/path

~fred/some/path ==> <fred-home-dir>/some/path

$workdir/some/path ==> <workdir-env-var>/some/path

The deviations must be known to the parser before the target module is parsed.

This parameter is used to identify any modules that have deviation statements for the set of modules being parsed (e.g., --module and --subtree parameters).

A module can be listed with both the --module and --deviation parameters, but that is not needed unless the module contains external deviations. If the module only contains deviations for objects in the same module, then the --deviation parameter does not need to be used.

The program will attempt to load each module in deviation parsing mode, in the order the parameters are entered.

For the netconfd-pro program, If any modules have fatal errors then the program will terminate.

For the yangdump-pro and yangcli-pro programs, each module will be processed as requested.

Deviations are applied as patches to the target module. Since they are not identified in the target module at all (ala imports), they have to be specified explicitly, so they will be correctly processed.

If this string represents a filespec, ending with the '.yang' or '.yin' extension, then only that file location will be checked.

If this string represents a module name, then the module search path will be checked for a file with the module name and the '.yang' or '.yin' extension.

If this string begins with a '~' character, then a username is expected to follow or a directory separator character. If it begins with a '$' character, then an environment variable name is expected to follow.

leaf-list deviation {
    type yt:NcModuleSpec;
}

Syntax

module name or filespec

Default:

none

Min Allowed:

0

Max Allowed:

unlimited

Supported by:

netconfd-pro yangcli-pro yangdump-pro

Example:

netconfd-pro --deviation=test1_deviations

--feature-disable

The --feature-disable parameter directs all programs to disable a specific feature.

This parameter is a formatted string containing a module name, followed by a colon ':', followed by a feature name, e.g.,

test:feature1

It is an error if a --feature-enable and --feature-disable parameter specify the same feature.

Parameters for unknown features will be ignored.

leaf-list feature-disable {
  type yt:FeatureSpec;
}

Syntax

formatted string (module:feature

Default:

none

Min Allowed:

0

Max Allowed:

unlimited

Supported by:

yangcli-pro yangdiff-pro yangdump-pro netconfd-pro

Example:

netconfd-pro --feature-disable=test:feature1

--feature-enable

The --feature-enable parameter directs all programs to enable a specific feature.

This parameter is a formatted string containing a module name, followed by a colon ':', followed by a feature name, e.g.,

test:feature1

It is an error if a --feature-disable and --feature-enable parameter specify the same feature.

Parameters for unknown features will be ignored.

leaf-list feature-enable {
  type yt:FeatureSpec;
}

Syntax

formatted string (module:feature

Default:

none

Min Allowed:

0

Max Allowed:

unlimited

Supported by:

yangcli-pro yangdiff-pro yangdump-pro netconfd-pro

Example:

netconfd-pro --feature-enable=test:feature1

--feature-enable-default

The --feature-enable-default parameter controls how netconfd-pro will enabled YANG features in modules by default.

If 'true', then by default, features will be enabled.

If 'false', then by default, features will be disabled.

If a --feature-enable or --feature-disable parameter is present for a specific feature, then this parameter will be ignored for that feature.

leaf feature-enable-default {
  type boolean;
  default true;
}

Syntax

boolean (true or false)

Default:

true

Min Allowed:

0

Max Allowed:

1

Supported by:

yangcli-pro yangdiff-pro yangdump-pro netconfd-pro

Example:

netconfd-pro --feature-enable-default=false

--fileloc-fhs

The --fileloc-fhs parameter is used to control where data files are kept. It is used by the following programs

  • netconfd-pro

  • ypgrpc-go-app

  • ypgnmi-go-app

leaf fileloc-fhs {
   type boolean;
   default false;
}

Syntax

boolean (true or false)

Default:

false

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro ypgnmi-app

Example:

netconfd-pro --fileloc-fhs=true

fileloc-fhs behavior for netconfd-pro

The --fileloc-fhs parameter is used to control where the server keeps its data files.

If -fileloc-fhs=true:

if true, then the server should use Filesystem Hierarchy Standard (FHS) directory locations to create and store server data. May need to run as root..

The FHS server log file will be created by default unless the 'log' parameter is used, then that location will be used instead. If the 'no-log' parameter is present then no log will be created.

The FHS audit log file will be created by default unless the 'audit-log' parameter is used, then that location will be used instead. If the 'no-audit-log' parameter is present then no audit log will be created.

server log

/var/log/netconfd-pro/server.log

audit log

/var/log/netconfd-pro/audit.log

config file

/var/lib/netconfd-pro/startup-cfg.xml

TXID file

/var/lib/netconfd-pro/startup-cfg-txid.txt

backups

/var/lib/netconfd-pro/backups/backup1.xml

PID file

/var/run/netconfd-pro/netconfd-pro.pid

AF socket

/var/run/netconfd-pro/ncxserver.sock

If --fileloc-fhs=false:

If false then the server will use $HOME/.yumapro and other file locations to store server data.

File Type

Example

server log

STDOUT; no server log created by default

no output at all if --no-log used

audit log

STDOUT; no audit log created by default

config file

$HOME/.yumapro/startup-cfg.xml

TXID file

$HOME/.yumapro/startup-cfg-txid.txt

backups

$HOME/.yumapro/backups/backup1.xml

PID file

$HOME/.yumapro/netconfd-pro.pid

AF socket

/tmp/ncxserver.sock

fileloc-fhs behavior for ypgnmi-go-app and ypgrpc-go-app

The --fileloc-fhs parameter specifies whether the ypgnmi-app should use Filesystem Hierarchy Standard (FHS) directory locations to create, store and use data and files. May need to run as root. If false then the server will use $HOME/.yumapro and other file locations to store application data and to access the netconfd-pro files.

--help

The --help parameter causes program help text to be printed, and then the program will exit instead of running as normal.

This parameter can be combined with the --help-mode parameter to control the verbosity of the help text. Use --brief for less, and --full for more than the normal verbosity.

This parameter can be combined with the --version parameter in all programs. It can also be combined with the --show-errors parameter in yangdump-pro.

The program configuration parameters will be displayed in alphabetical order, not in schema order.

leaf help {
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --help

--help-mode

The --help-mode parameter is used to control the amount of detail printed when help text is requested in some command. It is always used with another command, and makes no sense by itself. It is ignored unless used with the --help parameter.

choice help-mode {
  default normal;
  leaf brief {
    type empty;
  }
  leaf normal {
    type empty;
  }
  leaf full {
    type empty;
  }
}

Syntax

choice of 3 empty leafs

--brief
--normal
--full

Default:

normal

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --help --brief

  • default choice: normal

  • choice help-mode

    • brief

      • type: empty

      • This parameter specifies that brief documentation mode should be used.

    • normal

      • type: empty

      • This parameter specifies that normal documentation mode should be used.

    • full

      • type: empty

      • This parameter specifies that full documentation mode should be used.

--home

The --home parameter over-rides the $HOME environment variable, if it is set. File searches that use the user's home directory will use this path specification instead.

leaf home {
    type string { length "1..max"; }
}

Syntax

string: pathspec

Default:

$HOME environment value

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --home=/var/run/netconfd-pro

--indent

The --indent parameter specifies the number of spaces that will be used to add to the indentation level, each time a child node is printed during program operation.

leaf indent {
  type yt:IndentType;
}

Syntax

uint32 (0 .. 9)

Default:

2

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --indent=4

--insecure-ok

The --insecure-ok parameter specifies if insecure NETCONF over TLS should be allowed. If true then X.509 certificates will be accepted even if they cannot be verified. Used for debugging only!

This parameter is only available if the image was built with the DEBUG=1 parameter.

leaf insecure-ok {
    type boolean;
    default false;
}

Syntax

boolean

Default:

FALSE

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --insecure-ok=true

--library

The --library parameter specifies the name of a SIL-SA library.

  • This can be a module name or a bundle name.

  • Multiple values are allowed

  • If this parameter is present at all in sil-sa-app or combo-app, then registration requests will only be done for the specified libraries.

  • If this parameter is not present, then the application will attempt to find a SIL-SA library for every module and bundle advertised by the server.

leaf-list library {
    type nt:NcxName;
}

Syntax

NcxName (string)

Default:

none

Min Allowed:

0

Max Allowed:

unlimited

Supported by:

combo-app sil-sa-app py-sil-app

Example:

sil-sa-app --library=interface-bundle --library=diag-bundle

--log

The --log parameter specifies a file name to be used for logging program messages, instead of STDOUT. It can be used with the optional parameters below to control how the log file is written. (See also --log-syslog which directs message output to a syslog daemon.)

If this string begins with a '~' character, then a username is expected to follow or a directory separator character. If it begins

with a '$' character, then an environment variable name is expected to follow.

If this parameter is used on the command line then the --log-append parameter must also be present on the command line if append mode is desired.

leaf log {
  type string;
}

Syntax

string: log file specification

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --log=~/server.log&

--log-append

The --log-append parameter specifies that the existing log file (if any) should be appended , instead of deleted. It is ignored unless the --log parameter is present.

leaf log-append {
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --log-append --log=~/server.log&

--log-backtrace

The --log-backtrace parameter specifies that stack frame trace information be appended to selected log messages. By default, this information will be included in all enabled output streams (STDOUT, STDERR, log file, and/or syslog). Such output may be further modified by inclusion of any of the log-backtrace-xxx commands below.

leaf log-backtrace {
  type uint32 {
    range "0 .. 100";
  }
}

Syntax

Max frame count: 0..200

Default:

0 means use internal default (20)

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-backtrace=0

--log-backtrace-detail

The --log-backtrace-detail adds compiler/OS dependent information to the output of --log-backtrace.

leaf log-backtrace-detail {
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-backtrace=0 --log-backtrace-detail

--log-backtrace-level

The --log-backtrace-level parameter specifies that stack frame trace information be appended only to selected log message levels (see --log-level). It indicates for which debug level(s) backtrace info will be generated.

leaf log-backtrace-level {
  type bits {
    bit write {
      description "Include backtrace info in write messages.";
    }
    bit dev0 {
      description "Include backtrace info in developer
                   level 0 messages.";
    }
    bit error {
      description "Include backtrace info in error messages.";
    }
    bit warn {
      description "Include backtrace info in warning messages.";
    }
    bit info {
      description "Include backtrace info in info messages.";
    }
    bit dev1 {
      description "Include backtrace info in developer
                   level 1 messages.";
    }
    bit debug {
      description "Include backtrace info in debug messages.";
    }
    bit debug2 {
      description "Include backtrace info in debug2 messages.";
    }
    bit debug3 {
      description "Include backtrace info in debug3 messages.";
    }
    bit debug4 {
      description "Include backtrace info in debug4 messages.";
    }
  }
}

Syntax

Bits: error warn info debug debug2 debug3 debug4

One or more bits may be specified

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-backtrace=0 --log-backtrace-level=”error debug”

--log-backtrace-stream

The --log-backtrace-stream parameter specifies that stack frame trace information will be limited to output streams specified by the argument list. Possible arguments include logfile, stdout, stderr, syslog, and vendor.

leaf log-backtrace-stream {
  type bits {
    bit logfile {
      description "Include backtrace in logfile stream.";
    }
    bit stderr {
      description "Include backtrace in stderr stream.";
    }
    bit stdout {
      description "Include backtrace in stdout stream.";
    }
    bit syslog {
      description "Include backtrace in syslog stream.";
    }
    bit vendor {
      description "Include backtrace in vendor stream.";
    }
  }
}

Syntax

Bits: logfile stdout stderr syslog vendor

One or more bits may be specified

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-syslog --log=server.log --log-backtrace=0 --log-backtrace-stream=”logfile”

--log-console

The --log-console parameter directs that log output will be be sent to STDOUT, after being sent to the log file and/or local syslog daemon.

This parameter has no effect unless --log and/or --log-syslog are present.

leaf log-console {
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log=file --log-syslog --log-console

--log-header

The --log-header parameter specifies that additional information (date/time/level) will be included in the log stream output. Possible arguments to this command include custom (add date/time/level info) and localtime (express date/time in local terms).

leaf log-header {
  type bits {
    bit custom {
      description "Include date, time, and level.";
    }
    bit localtime {
      description
        "Include localtime instead of Yang canonical format.";
    }
  }
}

Syntax

Bits: custom localtime

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-append

--log=~/server.log --log-header=”custom localtime”

--log-highres-datetime

The --log-highres-datetime parameter modifies the output of the logging timestamps.

  • If set to 'true' then the log timestamps string will contain a microseconds field.

  • If 'false' then this field will not contain a microseconds field.

  • This field is always 6 digits long and represents a fraction of one second as the number of microseconds.

  • The :ref:--log-header parameter is affected by this setting.

leaf log-highres-datetime {
  type boolean;
  default false;
}

Syntax

boolean

Default:

FALSE

Min Allowed:

0

Max Allowed:

1

Introduced:

22.10-1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-highres-datetime=true

Example:

Assume the following configuration is used:

netconfd-pro {
  log-level debug4
  log-highres-datetime true
  log-header localtime
}

The log snippet below shows some output with the microseconds field:

[2022-09-18 15:41:30.778069] [debug] Filling candidate config from running config
[2022-09-18 15:41:30.778086] [debug3] agt_callhome: skip init2; --with-callhome=false
[2022-09-18 15:41:30.778096] [debug2] ncx: Adding Mod load callback to slot 2
[2022-09-18 15:41:30.778101] [debug2] ncx: Adding Mod unload callback to slot 1
[2022-09-18 15:41:30.778108] [debug] netconfd-pro init OK, ready for sessions

If the parameter is set to 'false', the microseconds field will not be present:

[2022-09-18 15:41:30] [debug] Filling candidate config from running config
[2022-09-18 15:41:30] [debug3] agt_callhome: skip init2; --with-callhome=false
[2022-09-18 15:41:30] [debug2] ncx: Adding Mod load callback to slot 2
[2022-09-18 15:41:30] [debug2] ncx: Adding Mod unload callback to slot 1
[2022-09-18 15:41:30] [debug] netconfd-pro init OK, ready for sessions

--log-level

The --log-level parameter controls the verbosity level of messages printed to the log file or STDOUT, if no log file is specified.

The log levels are incremental, meaning that each higher level includes everything from the previous level, plus additional messages.

There are 8 settings that can be used:

  • none: All logging is suppressed. Use with extreme caution!

  • error: Error messages are printed, indicating problems that require attention.

  • warn: Warning messages are printed, indicating problems that may require attention.

  • info: Informational messages are printed, that indicate program status changes.

  • debug: Debugging messages are printed that indicate program activity.

  • debug2: Protocol debugging and trace messages are enabled.

  • debug3: Very verbose debugging messages are enabled. This has an impact on resources and performance, and should be used with caution.

  • debug4: Maximum debugging messages are enabled. This has an impact on resources and performance, and should be used with caution.

leaf log-level {
  type yt:NcDebugType;
}

Syntax

enumeration: off error warn info debug debug2 debug3 debug4

Default:

info

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --log-level=debug --log=~/server.log&

--log-mirroring

The --log-mirroring parameter is a synonym for --log-console.

--log-stderr

The --log-stderr parameter directs that error level log output be directed to STDERR rather than STDOUT. (Note however that if --log is present, all error level messages will be directed to the specified log file. This parameter has no effect in this case.

leaf log-stderr {
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-stderr > logFile&

! All log messages redirected to logFile except ...

! Error level messages displayed on console

--log-suppress-ctrl

The --log-suppress-ctrl parameter causes certain control parameters to br stripped from log messages.

leaf log-suppress-ctrl {
  ncx:hidden;
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-suppress-ctrl

--log-syslog

The --log-syslog parameter directs log output to be sent to the local syslog daemon, rather than to STDOUT. See the --log-console parameter for information on how log output may also be duplicated via STDOUT.

leaf log-syslog {
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-syslog

--log-syslog-level

The --log-syslog-level parameter acts as a filter for the message level sent to the syslog or vendor output stream. The filter level is set by default to “info” if not specified.

The log levels are incremental, meaning that each higher level includes everything from the previous level, plus additional messages.

This parameter uses the same values as the --log-level parameter.

leaf log-syslog-level {
  type yt:NcDebugType;
}

Syntax

enumeration: off error warn info debug debug2 debug3 debug4

Default:

info (debug for DEBUG builds)

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --log-logfile --log-level=debug3 --log-syslog --log-syslog-level=debug2

--key

The --key parameter specifies the gNMI or gRPC server private key file. The path to the key should be absolute.

Syntax

filespec

Default:

none

Min Allowed:

1

Max Allowed:

1

Supported by:

ypgnmi-app ypgrpc-app

Example:

ypgnmi-app --key=/tmp/cert.crt

--match-names

The --match-names parameter specifies how names are matched when performing UrlPath searches. For 'yangcli-pro' and 'yp-shell' programs, this parameter only refers to Configuration Mode Editing. Use the --match-names-exec-mode parameter for Exec Mode commands.

The following values are supported:

Enum

Description

exact

The name must exactly match the node name for all characters in both name strings. This mode must be used in the server to be compliant with the NETCONF and RESTCONF protocols.

exact-nocase

The name must match the node name for all characters in both name strings. Strings are not case-sensitive.

one

The name must exactly match the first N characters of just one node name, which must be the only partial name match found.

one-nocase

The name must exactly match the first N characters of just one node name, which must be the only partial name match found. Strings are not case-sensitive.

first

The name must exactly match the first N characters of any node name. The first one found will be used.

first-nocase

The name must exactly match the first N characters of any node name. The first one found will be used. Strings are not case-sensitive.

leaf match-names {
  type ywt:NameMatchMode;
}

Syntax

enum:
exact
exact-nocase
one
one-nocase
first
first-nocase

Default:

yangcli: one-nocase, server: exact

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yp-shell

Example:

netconfd-pro --match-names=first

--message-indent

The --message-indent parameter specifies the number of spaces that will be used to add to the indentation level, each time a child node is printed during protocol messages such as NETCONF requests. This does not affect the indentation for logging messages, which is controlled by the --indent parameter.

  • The values 0 to 9 indicate the number of spaces to indent after each new line.

  • The value -1 requests that no newlines or indentation will be used in protocol messages..

leaf message-indent {
  type int8 {
    range "-1 .. 9";
  }
  default -1;
}

Syntax

int32 (-1 .. 9)

Default:

-1

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

yangcli-pro --message-indent=2

--modpath

The --modpath parameter specifies the YANG module search path to use while searching for YANG files. It consists of a colon (':') separated list of path specifications, commonly found in Unix, such as the $PATH environment variable.

This parameter overrides the $YUMAPRO_MODPATH environment variable, if it is present.

leaf modpath {
  type yt:NcPathList;
}

Syntax

string: list of directory specifications

Default:

$YUMAPRO_MODPATH environment variable

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

yangcli-pro --modpath=”~/testmodules:~/modules:~/trunk/netconf/modules”

--module

The --module parameter is a leaf-list of modules that should be loaded automatically when the program starts.

  • The program will attempt to load each module in the order the parameters were entered.

  • For the netconfd-pro program, If any modules have fatal errors then the program will terminate.

  • For the yangdump-pro program, each module will be processed as requested.

leaf-list module {
    type yt:NcModuleSpec;
}

Syntax

module name or filespec

Default:

none

Min Allowed:

0

Max Allowed:

unlimited

Supported by:

netconfd-pro yangcli-pro yangdump-pro

Example:

yangcli-pro --module=test1 --module=test2

--no-config

The --no-config parameter specifies that the default configuration file (e.g., /etc/yumapro/yangcli_pro.conf) should not be loaded, even if it is present.

choice config-choice {
  leaf config {
     type string;
  }
  leaf no-config {
    type empty;
  }
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

yangcli-pro --no-config

--output

The --output parameter specifies where the output files generated by the program will be stored.

  • The default is STDOUT if this parameter is not specified and the --defnames parameter is set to 'false'.

  • If this parameter represents an existing directory, then the --defnames parameter will be set to 'true' by default.

  • If this parameter represents a file name, then the --defnames parameter will be ignored, and all translation output will be directed to the specified file.

  • If this string begins with a '~' character, then a username is expected to follow or a directory separator character. If it begins with a '$' character, then an environment variable name is expected to follow.

    ~/some/path ==> <my-home-dir>/some/path
    
    ~fred/some/path ==> <fred-home-dir>/some/path
    
    $workdir/some/path ==> <workdir-env-var>/some/path
    
  • If the target specified in this parameter does not exist:

    • If there is only one file to be output, then this parameter is used as the file name.

    • If there are multiple files to be output, then this parameter is used as a directory name. A new directory will be created, if it is needed.

  • If the target specified in this parameter does exist:

    • If there is only one file to be output:

      • If the existing target is also a file, then the current file is over-written.

      • If the existing target is a directory, then the output file will be created in this directory.

    • If there are multiple files to be output:

      • If the existing target is a file, then an error will be generated instead of the output files.

      • If the existing target is a directory, then the output files will be created in the specified directory.

  • Use a trailing path separator character to force this parameter value to be treated as a path specification (e.g., '~/workfiles/').

  • This parameter is ignored if the --format parameter is missing.

leaf output {
  type string;
}

Syntax

string (path or file specification)

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

yangdump-pro yangdiff-pro

Example:

yangdiff-pro --output=~/diff-files

--port

port for netconfd-pro

The --port parameter specifies the TCP port number(S) that should be used for NETCONF sessions.

This parameter specifies the TCP port numbers to accept NETCONF session from. If any instances of this parameter are found, then the default (port 830) will not be added automatically. Up to 4 port parameter values can be entered.

--port parameter

Syntax

uint32

Default:

830

Min Allowed:

0

Max Allowed:

4

Supported by:

netconfd-pro

Example:

netconfd-pro --port=22 --port=830

port for ypgrpc-go-app

The --port parameter specifies the gRPC server binding. This is the address that the gRPC client will use top contact the gRPC server. By default the address is the local host and default port is 50830.

--port parameter

Syntax

inet:port-number

Default:

:50830

Min Allowed:

0

Max Allowed:

1

Supported by:

ypgrpc-go-app

Example:

ypgrpc-go-app --port=50051

--protocols

The --protocols parameter specifies which protocol versions the program or session will attempt to use. Empty set is not allowed.

leaf protocols {
      must ". != ''";
   type bits {
      bit netconf1.0 {
         description "RFC 4741 base:1.0";
         position 0;
      }
      bit netconf1.1 {
         description "RFC 6241 base:1.1";
         position 1;
      }
      bit yang-api {
         description "YANG-API protocol";
         reference "draft-bierman-netconf-yang-api-01.txt";
         position 2;
         status deprecated;
      }
      bit restconf {
         description "RESTCONF Protocol";
         reference "RFC 8040";
         position 3;
      }
   }
   /* default "netconf1.0 netconf1.1"; */
}

Syntax

bits

Default:

netconf1.0 netconf1.1

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

yangcli-pro --protocols=netconf1.0

--runpath

The --runpath parameter specifies the directory search path to use while searching for script files. It consists of a colon (':') separated list of path specifications, commonly found in Unix, such as the $PATH environment variable.

This parameter overrides the $YUMAPRO_RUNPATH environment variable, if it is present.

leaf runpath {
  type yt:NcPathList;
}

Syntax

string: list of directory specifications

Default:

$YUMAPRO_RUNPATH environment variable

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

yangcli-pro --runpath=”~/testscripts”

--server

The --server parameter specifies the IP address or DNS name of the NETCONF server that should be connected to automatically, when the program starts.

leaf server {
   type inet:host;
   mandatory true;
 }

Syntax

string:IP address or DNS name

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

yangcli-pro ypgrpc-go-app ypgnmi-go-app

Example:

yangcli-pro --server=myserver

--server-id

The --server-id parameter specifies the Server Identifier string to use for this server. Used in YControl and SIL-SA messages to identifier the server to all subsystems. Used in YP-HA to identify this server in the YP-HA server pool.

leaf server-id {
  type nt:NcxName;
  default "server1";
}

Syntax

NcxName

Default:

server1

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro ypgnmi-app

Example:

netconfd-pro --server-id=main

--subdirs

The --subdirs parameter controls whether sub-directories should be searched or not, if they are found during a module search.

  • If false, the file search paths for modules, scripts, and data files will not include sub-directories if they exist in the specified path.

  • If true, then these file search paths will include sub-directories, if present. Any directory name beginning with a dot '.' character, or named 'CVS', will be ignored.";

leaf subdirs {
  description
  type boolean;
  default true;
}

Syntax

boolean

Default:

TRUE

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangdump-pro

Example:

netconfd-pro --subdirs=false

--subsys-id

The --subsys-id parameter specifies the subsystem identifier to use when registering with the netconfd-pro server. The default is 'yp-gnmi' if no value is specified.

--subsys-id parameter

Syntax

string

Default:

yp-gnmi

Min Allowed:

0

Max Allowed:

1

Supported by:

ypgnmi-app ypgrpc-go-app

Example:

ypgnmi-app --subsys-id=subsys1

--tcp-connect-timeout

The --tcp-connect-timeout parameter specifies the number of seconds to wait for a TCP connect operation to complete before timing out.

  • The value zero indicates that blocking mode should be used.

  • A non-zero value indicates the timeout value for the 'connect' function in non-blocking mode. The connect may timeout before this number of seconds, but should not be longer.

This parameter introduced in 22.10-6. For all prior releases, the 'connect' function is invoked in blocking mode.

A typical TCP connect timeout is different depending on the target address. If this parameter is set to zero then the system configured timeout will be used.

  • local network, reached but connection refused: takes about 10 milliseconds.

  • local network, no answer: takes about 2 seconds

  • non-local network, no answer: takes up to 135 seconds

--tcp-connect-timeout parameter

leaf tcp-connect-timeout {
  type uint16;
  units seconds;
  default 10;
}

Syntax

uint16

Default:

10

Min Allowed:

0

Max Allowed:

1

Introduced:

22.10-7

Supported by:

yangcli-pro yp-shell netconfd-pro

Example:

yangcli-pro --tcp-connect-timeout=30

--version

The --version parameter causes the program version string to be printed, and then the program will exit instead of running as normal.

All YumaPro version strings use the same format:

DEBUG: <major>.<minor>.<svn-build-version>

or

NON-DEBUG: <major>.<minor>-<release>

The netconfd-pro version string has a feature code string appended to it. This is a hex string that identifies several of the make flag feature variants used in the server binary.

An example version number that may be printed:

netconfd-pro-20.10-8-3fcf

This parameter can be combined with the --help parameter.

leaf version {
  type empty;
}

Syntax

empty

Default:

none

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --version

--warn-error

The --warn-error parameter controls whether all warnings are elevated to errors.

  • If true then warnings that are enabled will be elevated to errors for reporting purposes.

  • If false then warnings will not be elevated to an error.

  • The --warn-up parameter can override this parameter for a specific error number.

leaf warn-error {
  type boolean;
  default false;
}

Syntax

boolean

Default:

false

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --warn-error=true

--warn-idlen

The --warn-idlen parameter controls whether identifier length warnings will be generated.

The value zero disables all identifier length checking. If non-zero, then a warning will be generated if an identifier is defined which has a length is greater than this amount.

leaf warn-idlen {
  type uint32 {
    range "0 | 8 .. 1023";
  }
  default 64;
}

Syntax

uint32: 0 to disable, or 8 .. 1023

Default:

64

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --warn-idlen=50

--warn-linelen

The --warn-linelen parameter controls whether line length warnings will be generated.

The value zero disables all line length checking. If non-zero, then a warning will be generated if a YANG file line is entered which has a length is greater than this amount.

Tab characters are counted as 8 spaces.

leaf warn-linelen {
  type uint32 {
    range "0 | 40 .. 4095";
  }
  // default 72;
  default 0;
}

Syntax

uint32: 0 to disable, or 40 .. 4095

Default:

72

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --warn-linelen=79

--warn-off

The --warn-off parameter suppresses a specific warning number.

The error and warning numbers, and the default messages, can be viewed with the yangdump-pro program by using the --show-errors configuration parameter.

The specific warning message will be disabled for all modules. No message will be printed and the warning will not count towards the total for that module.

leaf-list warn-off {
  type uint32 {
    range "1000 .. 1999";
  }
}

Syntax

uint32: 400 .. 899

Default:

none

Min Allowed:

0

Max Allowed:

499

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --warn-off=435 # revision order not descending

--warn-off-yang

The --warn-off-yang parameter suppresses all YANG warnings.

The following warnings are affected by this parameter:

1001        include file not found
1009        no instance found
1011        duplicate import
1012        duplicate import with different prefix value
1013        local typedef not used
1014        local grouping not used
1015        import not used
1016        duplicate unique-stmt argument
1017        statement ignored
1018        duplicate include
1019        include not used
1020        revision date before 1970
1021        revision date in the future
1022        enum value order
1023        bit position order
1024        invalid status for child node
1025        duplicate sibling node name from external augment
1026        duplicate if-feature statement
1027        using deprecated definition
1028        XPath object predicate check limit reached
1029        empty XPath result in must or when expr
1030        no ancestor node available
1031        no parent node available
1032        no child node available
1033        no descendant node available
1034        no nodes available
1035        bad revision-stmt order
1036        duplicate prefix
1037        identifier length exceeded
1038        display line length exceeded
1039        received unknown capability
1040        invalid module capability URI
1041        unknown child node, using anyxml
1042        invalid value used for parm
1043        changing object type to string
1044        using a reserved name
1045        conf file parm already exists
1046        no valid revision statements found
1047        dependency file has errors
1048        top-level object is mandatory
1049        file name does not match [sub]module name
1050        unique-stmt component conditions do not match parent list
1051        reentrant call detected (retry)
1052        XPath compare value invalid for YANG type
1053        XPath comparing different YANG object types
1054        Revision date has already been used
1055        Non-config object referenced in config node XPath
1056        Mandatory nodes not allowed in external augments
1057        Self-referencing XPath expression
1058        Referencing XPath node removed for when-stmt
leaf warn-off-yang {
  type boolean;
  default false;
}

Syntax

boolean

Default:

FALSE

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --warn-off-yang=true

yangdump-pro Example

The following module has a warning (no revision statement)

module string4 {
  yang-version 1.1;
  namespace "urn:yumaworks:params:xml:ns:yang:string4";
  prefix s4;

  container con1;
}

The default value is 'false' so warnings are reported:

user1:~/modules$ yangdump-pro string4.yang

Warning: no revision statements for module 'string4'
string4.yang:4.12: warning(1046): no valid revision statements found

*** /home/user1/modules/string4.yang
*** 0 Errors, 1 Warnings

If this parameter is set to 'true' then no YANG warnings are reported:

user1:~/modules$ yangdump-pro string4.yang --warn-off-yang=true

*** /home/user1/modules/string4.yang
*** 0 Errors, 0 Warnings

--warn-up

The --warn-up parameter elevates a specific warning number to an error.

The error and warning numbers, and the default messages, can be viewed with the yangdump-pro program by using the --show-errors configuration parameter.

The specific warning message will be elevated for all modules. An error message will be printed and the warning will be counted towards the error total for that module.

leaf-list warn-up {
  type uint32 {
    range "1000 .. 1999";
  }
}

Syntax

uint32: 1000 .. 1999

Default:

none

Min Allowed:

0

Max Allowed:

unlimited

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --warn-up=1022

--wildcard-keys

The --wildcard-keys parameter controls whether the server will support YANG-API/RESTCONF URL requests that contain a dash character '-' to indicate all instances of that key leaf.

  • Set to 'true' if UrlPath targets for GET operations are allowed to replace key values with the dash '-' character to indicate that all instances of that key are requested.

  • Set to false to treat the '-' character as a plain character if entered as a key value in a UrlPath string.

leaf wildcard-keys {
  type boolean;
}

Syntax

boolean

Default:

FALSE

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro

Example:

netconfd-pro --wildcard-keys=true

--with-ocpattern

The --with-ocpattern parameter controls whether the server will support the OpenConfig usage of the YANG pattern statement.

  • If true, then OpenConfig patterns with be checked

    • If the module name starts with the string 'openconfig-' then all pattern statements within that module are treated as POSIX patterns, not YANG patterns.

    • Otherwise the module pattern statements will be checked as YANG patterns.

  • If false, then the pattern statements in all modules will be checked as YANG patterns.

  • If the oc-ext:regexp-posix extension is found in the module then this parameter will be ignored and Posix patterns will be used.

    leaf with-ocpattern {
        type boolean;
        default false;
    }
    

Syntax

boolean

Default:

false

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro

yangcli-pro

yangdump-pro

Example:

yangcli-pro --with-ocpattern=true

--yumapro-home

The --yumapro-home parameter specifies the project directory root to use when searching for files.

If present, this directory location will override the $YUMAPRO_HOME environment variable, if it is set. If this parameter is set to a zero-length string, then the $YUMAPRO_HOME environment variable will be ignored.

The following directories are searched when either the $YUMAPRO_HOME environment variable or this parameter is set:

  • $YUMAPRO_HOME/modules

    • This sub-tree is searched for YANG files.

  • $YUMAPRO_HOME/data

    • This directory is searched for data files.

  • $YUMAPRO_HOME/scripts

    • This directory is searched for yangcli-pro script files.

leaf yumapro-home {
  type string;
}

Syntax

string: directory specification

Default:

$YUMAPRO_HOME environment variable

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yangdiff-pro yangdump-pro

Example:

netconfd-pro --yumapro-home=~/sw/netconf --log=~/server.log&

--with-term-msg

The --with-term-msg parameter specifies if the <term-msg> notification should be supported. If set to 'true', then the yumaworks-term-msg module will be loaded and enabled. Otherwise, this module will not be loaded. The <term-msg> notification is used by yp-shell for displaying terminal diagnostic messages.

The server API function agt_make_term_msg can be used by SIL or SIL-SA code to generate a <term-msg> notification.

The yp-shell and yangcli-pro programs will automatically display the <term-msg> as a terminal message if the --with-term-msg parameter is also set to “true” for the client program.

leaf with-term-msg {
  type boolean;
  default true;
}

Syntax

boolean

Default:

TRUE

Min Allowed:

0

Max Allowed:

1

Supported by:

netconfd-pro yangcli-pro yp-shell

Example:

netconfd-pro --with-term-msg=false