Cisco-IOS-XE-yang-interfaces-cfg

Configuration for YANG model-based interfaces. Copyright (c) 2018-2021 by Cisco Systems, Inc. All rights reserved.

  • Version: 2021-07-01

    Cisco-IOS-XE-yang-interfaces-cfg@2021-07-01


    
      module Cisco-IOS-XE-yang-interfaces-cfg {
    
        yang-version 1;
    
        namespace
          "http://cisco.com/ns/yang/Cisco-IOS-XE-yang-interfaces-cfg";
    
        prefix yang-interfaces-cfg;
    
        import Cisco-IOS-XE-dmi-common-types {
          prefix dmi-common-types;
        }
        import cisco-semver {
          prefix cisco-semver;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
    
         Postal: 170 W Tasman Drive
         San Jose, CA 95134
    
         Tel: +1 1800 553-NETS
    
         E-mail: cs-yang@cisco.com";
    
        description
          "Configuration for YANG model-based interfaces.
         Copyright (c) 2018-2021 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2021-07-01" {
          description
            "- Added netconf SSH local VRF configuration
           - Allow usage of special characters in netconf ACL name";
          reference
            "1.2.0";
    
        }
    
        revision "2019-05-21" {
          description
            "- Add semantic version
           - Add SNMP to NETCONF/YANG configuration";
          reference
            "1.1.0";
    
        }
    
        revision "2018-11-01" {
          description "Initial revision";
          reference
            "1.0.0";
    
        }
    
        cisco-semver:module-version "1.2.0";
        cisco-semver:module-version "1.1.0";
        cisco-semver:module-version "1.0.0";
    
        grouping dmi-acl-nbi-type {
          description
            "Configure an access-list for the selected service";
          leaf ipv4-acl-name {
            type string {
              length "1..32";
            }
            description
              "Validate access using an IPv4 access-list";
          }
    
          leaf ipv6-acl-name {
            type string {
              length "1..32";
            }
            description
              "Validate access using an IPv6 access-list";
          }
        }  // grouping dmi-acl-nbi-type
    
        grouping dmi-acl {
          description
            "Service ACLs for YANG Interfaces";
          container netconf-yang-ssh {
            description
              "NETCONF-YANG SSH service";
            uses yang-interfaces-cfg:dmi-acl-nbi-type;
          }  // container netconf-yang-ssh
    
          container restconf {
            description "RESTCONF service";
            uses yang-interfaces-cfg:dmi-acl-nbi-type;
          }  // container restconf
        }  // grouping dmi-acl
    
        grouping dmi-snmp-trap {
          description
            "SNMP trap to NETCONF translation";
          leaf trap-oid {
            type string {
              pattern
                '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))(\.(0|([1-9]\d*)))*';
              pattern '\d*(\.\d*){1,127}';
            }
            description "The OID for this trap";
          }
    
          leaf description {
            type string;
            default "";
            description
              "A description for this trap";
          }
    
          leaf forward {
            type boolean;
            default "true";
            description
              "Enables or disables forwarding for this trap";
          }
        }  // grouping dmi-snmp-trap
    
        grouping dmi-general {
          description
            "Configuration applicable to all YANG model-based interfaces";
          leaf snmp-global-forwarding {
            type boolean;
            default "true";
            description
              "Enables or disables forwarding for all SNMP traps";
          }
    
          list snmp-trap {
            key "trap-oid";
            description
              "List of SNMP traps considered for automatic translation to NETCONF
             notifications";
            uses yang-interfaces-cfg:dmi-snmp-trap;
          }  // list snmp-trap
    
          leaf snmp-community {
            type string;
            default "private";
            description
              "The community string for communication with the SNMP agent";
          }
        }  // grouping dmi-general
    
        grouping dmi-ssh-local-vrf {
          description
            "Configuration details of NETCONF access on local host in a specific VRF";
          leaf vrf-name {
            type dmi-common-types:enm-local-vrf-name;
            description
              "The name of the given VRF";
          }
    
          leaf vrf-enable {
            type boolean;
            default "false";
            description
              "Determines whether NETCONF access for local host in a given VRF
             is enabled";
          }
    
          leaf vrf-port {
            type uint32 {
              range "1 .. 65535";
            }
            default "830";
            description
              "Determines the port number to be open in a given VRF on local host
             for NETCONF access";
          }
        }  // grouping dmi-ssh-local-vrf
    
        container yang-interfaces-cfg-data {
          description
            "Configuration for YANG model-based interfaces";
          container acl {
            description
              "Optionally configure an access-list to validate access
             to the device";
            uses yang-interfaces-cfg:dmi-acl;
          }  // container acl
    
          container general {
            description
              "Configuration applicable to all YANG model-based interfaces";
            uses yang-interfaces-cfg:dmi-general;
          }  // container general
    
          list local-vrf {
            key "vrf-name";
            description
              "Configuration of NETCONF access on local host in a specific VRF";
            uses yang-interfaces-cfg:dmi-ssh-local-vrf;
          }  // list local-vrf
        }  // container yang-interfaces-cfg-data
      }  // module Cisco-IOS-XE-yang-interfaces-cfg
    

© 2023 YumaWorks, Inc. All rights reserved.