netconfcentral YANG Modules

toaster.yang

This module contains an example YANG module used in some tutorials in YumaPro SDK.

The SIL callback functions for this module are installed in the /usr/share/yumapro/src/toaster directory.

  • Source Document: None

  • GitHub File: toaster.yang

  • YANG Tree: none

    module: toaster
      +--rw toaster!
         +--ro toasterManufacturer    DisplayString
         +--ro toasterModelNumber     DisplayString
         +--ro toasterStatus          enumeration
    
      rpcs:
        +---x make-toast
        |  +---w input
        |     +---w toasterDoneness?    uint32
        |     +---w toasterToastType?   identityref
        +---x cancel-toast
    
      notifications:
        +---n toastDone
           +--ro toastStatus?   enumeration
    

yuma-app-common.yang

This module contains some common groupings of CLI parameters supported by some or all YumaPro programs. Each program with CLI parameters defines its own module of CLI parameters (using the ncx:cli extension). The program name is used for the YANG module name as well (E.g., yangdump-pro.yang or netconfd-pro.yang).

The SIL callback functions for the common groupings in this module are found in ncx/val_util.c, such as the 'val_set_feature_parms' function.

yuma-arp.yang

This module contains a collection of YANG definitions for configuring and monitoring ARP.

If server source files are available, then the SIL code for this module can be found in the libyuma-arp/src directory. This SIL code uses deprecated GET1 and EDIT1 callback APIs and is no longer considered current.

Note

This module is obsolete. Do not use.

  • Source Document: None

  • GitHub File: yuma-arp.yang

  • YANG Tree:

    module: yuma-arp
      +--rw arp
         +--rw arp-settings
         |  +--rw maximum-entries?    uint32
         |  +--rw validity-timeout?   uint32
         +--rw static-arps
         |  +--rw static-arp* [ip-address]
         |     +--rw ip-address     inet:ipv4-address
         |     +--rw mac-address?   yang:mac-address
         +--ro dynamic-arps
            +--ro dynamic-arp* [ip-address]
               +--ro ip-address     inet:ipv4-address
               +--ro mac-address?   yang:mac-address
    

yuma-interfaces.yang

This module contains a collection of YANG definitions for monitoring interface statistics.

If server source files are available, then the SIL code for this module can be found in the libyuma-interfaces/src directory. This SIL code uses deprecated GET1 callback APIs and is no longer considered current.

Note

This module is obsolete. Do not use.

  • Source Document: None

  • GitHub File: yuma-interfaces.yang

  • YANG Tree:

    module: yuma-interfaces
      +--rw interfaces
         +--rw interface* [name]
            +--rw name        string
            +--ro counters
               +--ro inBytes?         yang:counter64
               +--ro inPackets?       yang:counter64
               +--ro inErrors?        yang:counter64
               +--ro inDrops?         yang:counter64
               +--ro inFifo?          yang:counter64
               +--ro inFrames?        yang:counter64
               +--ro inCompressed?    yang:counter64
               +--ro inMulticast?     yang:counter64
               +--ro outBytes?        yang:counter64
               +--ro outPackets?      yang:counter64
               +--ro outErrors?       yang:counter64
               +--ro outDrops?        yang:counter64
               +--ro outFifo?         yang:counter64
               +--ro outCollisions?   yang:counter64
               +--ro outCarrier?      yang:counter64
               +--ro outCompressed?   yang:counter64
    

yuma-mysession.yang

This module provides the YumaPro proprietary <get-my-session> and <set-my-session> RPC operations. These are used by the client to set some session output preferences, such as the desired line length, indentation amount, and defaults handling behavior. This is not a built-in module. It has to be loaded with the --module parameter.

The SIL callbacks for this module are located in the separate library libyuma-mysession.

  • Source Document: None

  • GitHub File: yuma-mysession.yang

  • YANG Tree:

    module: yuma-mysession
    
      rpcs:
        +---x get-my-session
        |  +--ro output
        |     +--ro indent?           yt:IndentType
        |     +--ro linesize?         uint32
        |     +--ro with-defaults?    wd:with-defaults-mode
        |     +--ro message-indent?   int8
        +---x set-my-session
           +---w input
              +---w indent?           yt:IndentType
              +---w linesize?         uint32
              +---w with-defaults?    wd:with-defaults-mode
              +---w message-indent?   int8
    

yuma-nacm.yang

This module contains a pre-standard version of the NACM data model for access control. The ietf-netconf-acm.yang module is based on this module.

Note

This module is obsolete. Do not use.

  • Source Document: None

  • GitHub File: yuma-nacm.yang

  • YANG Tree:

    module: yuma-nacm
      +--rw nacm!
         +--rw enable-nacm?          boolean
         +--rw read-default?         nacm-action
         +--rw write-default?        nacm-action
         +--rw exec-default?         nacm-action
         +--ro denied-rpcs?          yang:zero-based-counter32
         +--ro denied-data-writes?   yang:zero-based-counter32
         +--rw groups
         |  +--rw group* [group-identity]
         |     +--rw group-identity    nacm-group
         |     +--rw user-name*        nacm-user-name
         +--rw rules
            +--rw module-rule* [module-name rule-name]
            |  +--rw module-name       yt:yang-identifier
            |  +--rw rule-name         string
            |  +--rw allowed-rights    nacm-rights
            |  +--rw allowed-group*    nacm-group
            |  +--rw comment?          string
            +--rw rpc-rule* [rpc-module-name rpc-name rule-name]
            |  +--rw rpc-module-name    yt:yang-identifier
            |  +--rw rpc-name           yt:yang-identifier
            |  +--rw rule-name          string
            |  +--rw allowed-rights     nacm-rights
            |  +--rw allowed-group*     nacm-group
            |  +--rw comment?           string
            +--rw data-rule* [rule-name]
            |  +--rw path              schema-instance-identifier
            |  +--rw rule-name         string
            |  +--rw allowed-rights    nacm-rights
            |  +--rw allowed-group*    nacm-group
            |  +--rw comment?          string
            +--rw notification-rule* [notification-module-name notification-name rule-name]
               +--rw notification-module-name    yt:yang-identifier
               +--rw notification-name           yt:yang-identifier
               +--rw rule-name                   string
               +--rw allowed-rights              nacm-rights
               +--rw allowed-group*              nacm-group
               +--rw comment?                    string
    

yuma-ncx.yang

This module provides the YANG language extension statements that are used by YumaPro programs to automate certain parts of the NETCONF protocol, document generation, code generation, etc.

There are no SIL callback functions for this module. There are support functions within the src/ncx directory that include the obj_set_ncx_flags function in ncx/obj.c.

  • Source Document: None

  • GitHub File: yuma-ncx.yang

  • YANG Tree: none

yuma-netconf.yang

This module pre-dates ietf-netconf.yang. It is a superset of that module and used internally within the server to implement NETCONF operations.

The file agt/agt_ncx.c contains most the SIL callback functions for this module.

This module is not advertised in the server capabilities. It is only used internally within the server.

  • Source Document: None

  • GitHub File: yuma-netconf.yang

  • YANG Tree:

    module: yuma-netconf
      +--rw server-hello
      |  +--ro capabilities
      |  |  +--ro capability*   inet:uri
      |  +--ro session-id?     session-id-type
      +--rw client-hello
      |  +--ro capabilities
      |     +--ro capability*   inet:uri
      +--rw operation?      edit-operation-type
      +--rw rpc
      +--rw rpc-reply
      |  +--ro (ok-or-data-error)
      |     +--:(ok)
      |     |  +--ro ok?          empty
      |     +--:(data-error)
      |        +--ro rpc-error* []
      |           +--ro error-type        ErrorType
      |           +--ro error-tag         error-tag-type
      |           +--ro error-severity    error-severity-type
      |           +--ro error-app-tag?    string
      |           +--ro error-path?       yang:xpath1.0
      |           +--ro error-message?    LangString
      |           +--ro error-info?       <anyxml>
      +--rw config
    
      rpcs:
        +---x get-config
        |  +---w input
        |  |  +---w source
        |  |  |  +---w (config-source)
        |  |  |     +--:(candidate)
        |  |  |     |  +---w candidate?   empty {candidate}?
        |  |  |     +--:(running)
        |  |  |     |  +---w running?     empty
        |  |  |     +--:(startup)
        |  |  |        +---w startup?     empty {startup}?
        |  |  +---w filter?   <anyxml>
        |  +--ro output
        |     +--ro data!
        +---x edit-config
        |  +---w input
        |     +---w target
        |     |  +---w (config-target)
        |     |     +--:(candidate)
        |     |     |  +---w candidate?   empty {candidate}?
        |     |     +--:(running)
        |     |        +---w running?     empty {writable-running}?
        |     +---w default-operation?   DefaultOperationType
        |     +---w test-option?         TestOptionType {validate}?
        |     +---w error-option?        ErrorOptionType
        |     +---w (edit-content)
        |        +--:(config)
        |        |  +---w config
        |        +--:(url)
        |           +---w url?           inet:uri {url}?
        +---x copy-config
        |  +---w input
        |     +---w target
        |     |  +---w (config-target)
        |     |     +--:(candidate)
        |     |     |  +---w candidate?   empty {candidate}?
        |     |     +--:(running)
        |     |     |  +---w running?     empty {writable-running}?
        |     |     +--:(startup)
        |     |     |  +---w startup?     empty {startup}?
        |     |     +--:(url)
        |     |        +---w url?         inet:uri {url}?
        |     +---w source
        |        +---w (config-source)
        |           +--:(candidate)
        |           |  +---w candidate?   empty {candidate}?
        |           +--:(running)
        |           |  +---w running?     empty
        |           +--:(startup)
        |           |  +---w startup?     empty {startup}?
        |           +--:(url)
        |           |  +---w url?         inet:uri {url}?
        |           +--:(config)
        |              +---w config
        +---x delete-config
        |  +---w input
        |     +---w target
        |        +---w (config-target)
        |           +--:(startup)
        |           |  +---w startup?   empty {startup}?
        |           +--:(url)
        |              +---w url?       inet:uri {url}?
        +---x lock
        |  +---w input
        |     +---w target
        |        +---w (config-target)
        |           +--:(candidate)
        |           |  +---w candidate?   empty {candidate}?
        |           +--:(running)
        |           |  +---w running?     empty
        |           +--:(startup)
        |              +---w startup?     empty {startup}?
        +---x unlock
        |  +---w input
        |     +---w target
        |        +---w (config-target)
        |           +--:(candidate)
        |           |  +---w candidate?   empty {candidate}?
        |           +--:(running)
        |           |  +---w running?     empty
        |           +--:(startup)
        |              +---w startup?     empty {startup}?
        +---x get
        |  +---w input
        |  |  +---w filter?   <anyxml>
        |  +--ro output
        |     +--ro data!
        +---x close-session
        +---x kill-session
        |  +---w input
        |     +---w session-id    session-id-type
        +---x commit {candidate}?
        |  +---w input
        |     +---w confirmed?         empty {confirmed-commit}?
        |     +---w confirm-timeout?   ConfirmTimeoutType {confirmed-commit}?
        |     +---w persist?           string {confirmed-commit}?
        |     +---w persist-id?        string {confirmed-commit}?
        +---x discard-changes {candidate}?
        +---x cancel-commit {confirmed-commit}?
        |  +---w input
        |     +---w persist-id?   string
        +---x validate {validate}?
        |  +---w input
        |     +---w source
        |        +---w (config-source)
        |           +--:(candidate)
        |           |  +---w candidate?   empty {candidate}?
        |           +--:(running)
        |           |  +---w running?     empty
        |           +--:(startup)
        |           |  +---w startup?     empty {startup}?
        |           +--:(url)
        |           |  +---w url?         inet:uri {url}?
        |           +--:(config)
        |              +---w config
        +---x load-config
           +---w input
              +---w config
    

yuma-proc.yang

This module provides some Unix /proc file-system data, in nested XML format. This module will not load if the files /proc/meminfo and /proc/cpuinfo are not found.

If server source files are available, then the SIL code for this module can be found in the libyuma-proc/src directory. This SIL code uses deprecated GET1 callback APIs and is no longer considered current.

  • Source Document: None

  • GitHub File: yuma-proc.yang

  • YANG Tree:

    module: yuma-proc
      +--ro proc
         +--ro cpuinfo
         |  +--ro cpu* [processor]
         |     +--ro processor           uint32
         |     +--ro vendor_id?          string
         |     +--ro cpu_family?         uint32
         |     +--ro model?              uint32
         |     +--ro model_name?         string
         |     +--ro stepping?           uint32
         |     +--ro microcode?          string
         |     +--ro cpu_MHz?            decimal64
         |     +--ro cache_size?         string
         |     +--ro physical_id?        uint32
         |     +--ro siblings?           uint32
         |     +--ro core_id?            uint32
         |     +--ro cpu_cores?          uint32
         |     +--ro apicid?             uint32
         |     +--ro initial_apicid?     uint32
         |     +--ro fdiv_bug?           YesNo
         |     +--ro hlt_bug?            YesNo
         |     +--ro f00f_bug?           YesNo
         |     +--ro coma_bug?           YesNo
         |     +--ro fpu?                YesNo
         |     +--ro fpu_exception?      YesNo
         |     +--ro cpuid_level?        uint32
         |     +--ro wp?                 YesNo
         |     +--ro flags?              string
         |     +--ro bogomips?           decimal64
         |     +--ro TLB_size?           string
         |     +--ro clflush_size?       uint32
         |     +--ro cache_alignment?    uint32
         |     +--ro address_sizes?      string
         |     +--ro power_management?   string
         +--ro meminfo
            +--ro MemTotal?            string
            +--ro MemFree?             string
            +--ro Buffers?             string
            +--ro Cached?              string
            +--ro SwapCached?          string
            +--ro Active?              string
            +--ro Active_anon_?        string
            +--ro Active_file_?        string
            +--ro Inactive?            string
            +--ro Inactive_anon_?      string
            +--ro Inactive_file_?      string
            +--ro Unevictable?         string
            +--ro Mlocked?             string
            +--ro HighTotal?           string
            +--ro HighFree?            string
            +--ro LowTotal?            string
            +--ro LowFree?             string
            +--ro SwapTotal?           string
            +--ro SwapFree?            string
            +--ro Dirty?               string
            +--ro Writeback?           string
            +--ro AnonPages?           string
            +--ro Mapped?              string
            +--ro Shmem?               string
            +--ro Slab?                string
            +--ro SReclaimable?        string
            +--ro SUnreclaim?          string
            +--ro KernelStack?         string
            +--ro PageTables?          string
            +--ro NFS_Unstable?        string
            +--ro Bounce?              string
            +--ro WritebackTmp?        string
            +--ro CommitLimit?         string
            +--ro Committed_AS?        string
            +--ro VmallocTotal?        string
            +--ro VmallocUsed?         string
            +--ro VmallocChunk?        string
            +--ro HardwareCorrupted?   string
            +--ro AnonHugePages?       string
            +--ro HugePages_Total?     uint32
            +--ro HugePages_Free?      uint32
            +--ro HugePages_Rsvd?      uint32
            +--ro HugePages_Surp?      uint32
            +--ro Hugepagesize?        string
            +--ro DirectMap4k?         string
            +--ro DirectMap2M?         string
            +--ro DirectMap4M?         string
    

yuma-system.yang

This module contains the YumaPro /system data structure, providing basic server information, unix 'uname' data, and all the YumaPro proprietary notification event definitions.

The --with-yuma-system CLI parameter must be set to true for this module to be present in the server.

The file agt/agt_sys.c contains the SIL callback functions for this module.

  • Source Document: None

  • GitHub File: yuma-system.yang

  • YANG Tree:

    module: yuma-system
      +--ro system
         +--ro sysName?                         string
         +--ro sysCurrentDateTime?              yang:date-and-time
         +--ro sysBootDateTime?                 yang:date-and-time
         +--ro sysLogLevel?                     nt:NcDebugType
         +--ro sysNetconfServerId?              string
         +--ro sysNetconfStartupSource?         enumeration
         +--ro sysNetconfStartupFilespec?       string
         +--ro sysNetconfStartupTxidFilespec?   string
         +--ro sysNetconfServerCLI?             <anyxml>
         +--ro uname
            +--ro sysname?    string
            +--ro release?    string
            +--ro version?    string
            +--ro machine?    string
            +--ro nodename?   string
    
      rpcs:
        +---x set-log-level
        |  +---w input
        |     +---w log-level    nt:NcDebugType
        +---x load
        |  +---w input
        |  |  +---w module       nt:NcxName
        |  |  +---w revision?    nt:Date
        |  |  +---w deviation*   yt:NcModuleSpec
        |  +--ro output
        |     +--ro mod-revision?   nt:Date
        +---x restart
        +---x shutdown
        +---x no-op
    
      notifications:
        +---n sysStartup
        |  +--ro startupSource?   string
        |  +--ro bootError* []
        |     +--ro error-type        enumeration
        |     +--ro error-tag         nc:error-tag-type
        |     +--ro error-severity    nc:error-severity-type
        |     +--ro error-app-tag?    string
        |     +--ro error-path?       yang:xpath1.0
        |     +--ro error-message?    LangString2
        |     +--ro error-info?       <anyxml>
        +---n sysConfigChange
        |  +--ro userName?     string
        |  +--ro sessionId     nc:session-id-type
        |  +--ro remoteHost?   inet:ip-address
        |  +--ro edit* []
        |     +--ro target?      instance-identifier
        |     +--ro operation?   nc:edit-operation-type
        +---n sysCapabilityChange
        |  +--ro changed-by
        |  |  +--ro (server-or-user)?
        |  |     +--:(server)
        |  |     |  +--ro server?       empty
        |  |     +--:(by-user)
        |  |        +--ro userName?     string
        |  |        +--ro sessionId     nc:session-id-type
        |  |        +--ro remoteHost?   inet:ip-address
        |  +--ro added-capability*     inet:uri
        |  +--ro deleted-capability*   inet:uri
        +---n sysSessionStart
        |  +--ro userName?     string
        |  +--ro sessionId     nc:session-id-type
        |  +--ro remoteHost?   inet:ip-address
        +---n sysSessionEnd
        |  +--ro userName?            string
        |  +--ro sessionId            nc:session-id-type
        |  +--ro remoteHost?          inet:ip-address
        |  +--ro killedBy?            nc:session-id-type
        |  +--ro terminationReason    enumeration
        +---n sysConfirmedCommit
           +--ro userName?       string
           +--ro sessionId       nc:session-id-type
           +--ro remoteHost?     inet:ip-address
           +--ro confirmEvent    enumeration
    

yuma-time-filter.yang

This module contains the YumaPro last-modified leaf, which extends the standard /netconf-state/datastores/datastore structure in ietf-netconf-monitoring.yang, with the database last-modified timestamp. The standard <get> and <get-config> operations are augmented with the if-modified-since leaf, to allow all-or-none filtering of the configuration, based on its modification timestamp.

This module will not be present in the server if the --with-yuma-time-filter CLI parameter is set to false.

The file agt/agt_sys.c contains the SIL callback functions for this module.

  • Source Document: None

  • GitHub File: yuma-time-filter.yang

  • YANG Tree:

    module: yuma-time-filter
    
      augment /mon:netconf-state/mon:datastores/mon:datastore:
        +--ro last-modified?   yang:date-and-time
      augment /nc:get-config/nc:input:
        +---w if-modified-since?   yang:date-and-time
      augment /nc:get/nc:input:
        +---w if-modified-since?   yang:date-and-time
    

yuma-types.yang

This module provides some common data types that are used by other YumaPro YANG modules.

There are no SIL callback functions for this module.

yuma-xsd.yang

This module provides some internal data types that used to be used by the yangdump-pro program to translate YANG modules to XSD files.

There are no SIL callback functions for this module.

Note

This module is obsolete. Do not use.

  • Source Document: None

  • GitHub File: yuma-xsd.yang

  • YANG Tree: None