Cisco-IOS-XR-infra-smartlicense-oper-sub1

This submodule contains a collection of YANG definitions for Cisco IOS-XR infra-smartlicense package operational data. Copyrigh...

  • Version: 2019-04-05

    Cisco-IOS-XR-infra-smartlicense-oper-sub1@2019-04-05


    
      submodule Cisco-IOS-XR-infra-smartlicense-oper-sub1 {
    
        yang-version 1;
    
        belongs-to
          Cisco-IOS-XR-infra-smartlicense-oper {
            prefix
              Cisco-IOS-XR-infra-smartlicense-oper;
        }
    
        import cisco-semver {
          prefix semver;
        }
    
        organization "Cisco Systems, Inc.";
    
        contact
          "Cisco Systems, Inc.
         Customer Service
         
         Postal: 170 West Tasman Drive
         San Jose, CA 95134
         
         Tel: +1 800 553-NETS
         
         E-mail: cs-yang@cisco.com";
    
        description
          "This submodule contains a collection of YANG definitions
         for Cisco IOS-XR infra-smartlicense package operational data.
         
         Copyright (c) 2013-2019 by Cisco Systems, Inc.
         All rights reserved.";
    
        revision "2019-04-05" {
          description
            "Establish semantic version baseline.";
        }
    
        revision "2015-11-09" {
          description "IOS XR 6.0 revision.";
        }
    
        semver:module-version "1.0.0";
    
        typedef Export-status-time-enum {
          type enumeration {
            enum "time-not-started" {
              value 0;
              description "time not started";
            }
            enum "time-in-progress" {
              value 1;
              description "time in progress";
            }
            enum "time-success" {
              value 2;
              description "time success";
            }
            enum "time-failed" {
              value 3;
              description "time failed";
            }
          }
          description "exportStatusTimeEnum";
        }
    
        typedef License-term-type-enum {
          type enumeration {
            enum "none" {
              value 0;
              description
                "There is no term information. Probably an error
               condition.";
            }
            enum "perpetual" {
              value 1;
              description
                "License term type is perpetual.";
            }
            enum "term" {
              value 2;
              description
                "term license that includes a start and end date";
            }
            enum "subscription" {
              value 3;
              description
                "License term type is subscription.";
            }
            enum "max" {
              value 4;
              description "max value";
            }
          }
          description "The license term type.";
        }
    
        typedef License-enforcement-type-enum {
          type enumeration {
            enum "invalid" {
              value 0;
              description "Invalid";
            }
            enum "not-enforced" {
              value 1;
              description
                "License type is not enforced.";
            }
            enum "enforced" {
              value 2;
              description
                "License type is enforced.";
            }
            enum "export" {
              value 3;
              description
                "License type is export restricted.";
            }
            enum "license-enforcement-max" {
              value 4;
              description "Max Value";
            }
          }
          description
            "The license (entitlement tag) type.";
        }
    
        typedef Install-status-enum {
          type enumeration {
            enum "in-progress" {
              value 0;
              description "in progress";
            }
            enum "not-installed" {
              value 1;
              description "not installed";
            }
            enum "type-universal" {
              value 2;
              description "type universal";
            }
            enum "type-specific" {
              value 3;
              description "type specific";
            }
          }
          description "install state";
        }
    
        typedef Export-entitlement-status-enum {
          type enumeration {
            enum "not-restricted" {
              value 1;
              description "not restricted";
            }
            enum "authorized" {
              value 2;
              description "authorized";
            }
            enum "not-authorized" {
              value 3;
              description "not authorized";
            }
          }
          description
            "exportEntitlementStatusEnum";
        }
    
        typedef Reservation-usage-status-enum {
          type enumeration {
            enum "not-installed" {
              value 0;
              description "not installed";
            }
            enum "plr-installed" {
              value 1;
              description "plr installed";
            }
            enum "slr-installed" {
              value 2;
              description "slr installed";
            }
            enum "in-progress" {
              value 3;
              description "in progress";
            }
          }
          description
            "reservationUsageStatusEnum";
        }
    
        typedef Enforcement-mode-enum {
          type enumeration {
            enum "waiting" {
              value 0;
              description
                "The initial state after an entitlement request
               while we are waiting for the Authorization
               request response. In this mode the device will
               already have established communications with
               Cisco and successfully registered with the
               Cisco Licensing cloud.";
            }
            enum "in-compliance" {
              value 1;
              description
                "Cisco Smart Software Manager (CSSM) has
               responded that the entitlement requested is in
               compliance.";
            }
            enum "out-of-compliance" {
              value 2;
              description
                "Cisco Smart Software Manager (CSSM) has
               responded that the entitlement requested is out
               of compliance. either too many licenses
               /entitlements are in use or the license has not
               been purchased ";
            }
            enum "overage" {
              value 3;
              description
                "more licenses are in use than were  purchased
               but the customer is still within the terms of
               their contract";
            }
            enum "evaluation" {
              value 4;
              description
                "The agent is using the evaluation period for
               this entitlement. In this mode the device has
               not established communications with Cisco and
               had not registered";
            }
            enum "evaluation-expired" {
              value 5;
              description
                " Eval period has expired";
            }
            enum "authorization-expired" {
              value 6;
              description
                "Authorization period has expired.  This will
               occur if the product has not been able to
               communicate  with Cisco or a satellite for an
               extended period of time, usually 90 days.";
            }
            enum "reservation-in-compliance" {
              value 7;
              description
                "The entitlement requested is in compliance
               because a reservation authorization code is
               installed and the product is in Permanent
               License Reservation mode.";
            }
            enum "invalid-tag" {
              value 8;
              description
                "The entitlement tag is invalid. The CSSM does
               not recognize the entitlement tag because it is
               not in the database. This usually only occurs
               during testing.";
            }
            enum "disabled" {
              value 9;
              description
                "Smart licensing has been disabled. The feature
               using this license should be disabled.";
            }
            enum "in-use" {
              value 10;
              description
                "This entitlement is in use";
            }
            enum "not-in-use" {
              value 11;
              description
                "This entitlement is not in use";
            }
            enum "not-authorized" {
              value 12;
              description
                "This entitlement is in use but is not
               authorized. The feature consuming this
               entitlement should be disabled";
            }
            enum "mode-invalid" {
              value 13;
              description
                "Error condition state";
            }
            enum "mode-init" {
              value 14;
              description
                "The initial state after the handle is created
               with SmartAgentCreateHandle This will be the
               mode if the entitlement is not in use.";
            }
            enum "grace-period" {
              value 15;
              description
                "The grace period has being deprecated.";
            }
            enum "grace-period-expired" {
              value 16;
              description
                "The grace period has been deprecated.";
            }
            enum "not-applicable" {
              value 17;
              description
                "This enforcement mode will only be set in case
               smart agent is operational in enhanced mode.";
            }
            enum "enforcement-max" {
              value 18;
              description
                "always the last state";
            }
          }
          description
            "For an entitlement tag (license) that is in use
           this enumeration tells us how the license is
           being enforced.";
        }
    
        typedef Transport-type-enum {
          type enumeration {
            enum "invalid" {
              value 0;
              description
                "Not used in most case";
            }
            enum "not-used" {
              value 1;
              description "Not used";
            }
            enum "callhome" {
              value 2;
              description
                "Smart Licensing is using callhome for
               communications.";
            }
            enum "smart" {
              value 3;
              description
                "Smart licensing is using the smart transport
               for communications.";
            }
            enum "clsu" {
              value 4;
              description
                "Smart licensing will communicate with the CSLU)
               for licensing operations";
            }
            enum "transport-off" {
              value 5;
              description "Transport off";
            }
          }
          description
            "The type of transport in use by smart licensing.";
        }
    
        typedef Utility-reporting-type-enum {
          type enumeration {
            enum "none" {
              value 0;
              description
                "The system is not reporting utility usage data.";
            }
            enum "subscription" {
              value 1;
              description
                "The system is reporting utility usage data
               because it has received subscription
               information from either the SSM or satellite";
            }
            enum "certificate" {
              value 2;
              description
                "The system is reporting utility usage data
               because it has received a utility certificate
               from a Third Party Billing Platform.";
            }
          }
          description
            "Is the system reporting utility data";
        }
    
        typedef Authorization-state-enum {
          type enumeration {
            enum "none" {
              value 0;
              description
                "No licenses are in use so there is no
               authorization state to report.";
            }
            enum "eval" {
              value 1;
              description
                "Evaluation period is in use and is counting
               down.";
            }
            enum "eval-expired" {
              value 2;
              description
                "Evaluation period in use but it has expired.";
            }
            enum "authorized" {
              value 3;
              description
                "All license usage is authorized and within
               terms of the customer's contract.";
            }
            enum "authorized-reservation" {
              value 4;
              description
                "All license usage is authorized because a
               reservation authorization code is installed.";
            }
            enum "out-of-compliance" {
              value 5;
              description
                "License usage is out of compliance with the
               terms of the contract. Either too many licenses
               are in use or licenses that were not purchased
               are in use.";
            }
            enum "authorization-expired" {
              value 6;
              description
                "The authorization period has expired because
               this product instance has not communicated with
               the SSM or satellite in over 90 days.";
            }
            enum "authorization-not-authorized" {
              value 7;
              description
                "AuthorizationNotAuthorized";
            }
          }
          description
            "The smart licensing authorization state.";
        }
    
        typedef Export-status-type-enum {
          type enumeration {
            enum "allowed" {
              value 0;
              description "ExportStatusAllowed";
            }
            enum "not-allowed" {
              value 1;
              description
                "ExportStatusNotAllowed";
            }
            enum "conditional" {
              value 2;
              description
                "ExportStatusConditional";
            }
          }
          description
            "Export control status information";
        }
    
        typedef Registration-state-enum {
          type enumeration {
            enum "not-registered" {
              value 0;
              description
                "This smart licensing instance is not registered
               .";
            }
            enum "complete" {
              value 1;
              description
                "Registration was successful";
            }
            enum "in-progress" {
              value 2;
              description
                "Registration is in progress.";
            }
            enum "retry" {
              value 3;
              description
                "The initial registration attempt failed but a
               retry is in progress.";
            }
            enum "failed" {
              value 4;
              description "Registration failed.";
            }
            enum "not-supported" {
              value 5;
              description
                "Registration is not supported in the current
               operating mode.";
            }
          }
          description
            "The smart licensing registration state.";
        }
    
        typedef Bool-state {
          type enumeration {
            enum "no" {
              value 0;
              description "No";
            }
            enum "yes" {
              value 1;
              description "Yes";
            }
          }
          description "Boolean State ";
        }
    
        grouping EXPORT-AUTH-KEY-UDI {
          description "EXPORT AUTH KEY UDI";
          container udi {
            description "UDI";
            uses SMARTAGENT-UDI;
          }  // container udi
    
          leaf num-strings {
            type int32;
            description "numStrings";
          }
    
          list return-key {
            description "returnKeyList";
            uses KEY-LIST;
          }  // list return-key
        }  // grouping EXPORT-AUTH-KEY-UDI
    
        grouping EXPORT-AUTH-KEY-LIST {
          description "EXPORT AUTH KEY LIST";
          leaf num-elements {
            type int32;
            description "NumElements";
          }
    
          list list {
            description "List";
            uses EXPORT-AUTH-KEY-UDI;
          }  // list list
        }  // grouping EXPORT-AUTH-KEY-LIST
    
        grouping KEY-LIST {
          description "KEY LIST";
          leaf key {
            type string;
            description "Key";
          }
        }  // grouping KEY-LIST
    
        grouping EXPORT-RETURN-KEY-UDI {
          description "EXPORT RETURN KEY UDI";
          container udi {
            description "UDI";
            uses SMARTAGENT-UDI;
          }  // container udi
    
          leaf num-strings {
            type int32;
            description "numStrings";
          }
    
          list return-key {
            description "returnKeyList";
            uses KEY-LIST;
          }  // list return-key
        }  // grouping EXPORT-RETURN-KEY-UDI
    
        grouping EXPORT-RETURN-KEY-LIST {
          description "EXPORT RETURN KEY LIST";
          leaf num-elements {
            type int32;
            description "NumElements";
          }
    
          list list {
            description "List";
            uses EXPORT-RETURN-KEY-UDI;
          }  // list list
        }  // grouping EXPORT-RETURN-KEY-LIST
    
        grouping EXPORT-STATUS-TIME {
          description "EXPORT STATUS TIME";
          leaf status {
            type Export-status-time-enum;
            description "Status";
          }
    
          leaf operation-time {
            type string;
            description "OperationTime";
          }
    
          leaf operation-next-time {
            type string;
            description "operationNextTime";
          }
    
          leaf failure-message {
            type string;
            description "FailureMessage";
          }
        }  // grouping EXPORT-STATUS-TIME
    
        grouping EXPORT-AUTH-KEYS {
          description "EXPORT AUTH KEYS";
          container export-key-request-status {
            description "ExportKeyRequestStatus";
            uses EXPORT-STATUS-TIME;
          }  // container export-key-request-status
    
          container export-key-return-status {
            description "ExportKeyReturnStatus";
            uses EXPORT-STATUS-TIME;
          }  // container export-key-return-status
    
          container export-return-keys {
            description " ExportReturnKeys";
            uses EXPORT-RETURN-KEY-LIST;
          }  // container export-return-keys
    
          container export-features-authorized {
            description
              "ExportFeaturesAuthorized";
            uses EXPORT-AUTH-KEY-LIST;
          }  // container export-features-authorized
        }  // grouping EXPORT-AUTH-KEYS
    
        grouping SMART-AGENT-TERM-INFO {
          description "SMART AGENT TERM INFO";
          leaf type {
            type License-term-type-enum;
            description
              "The type of the term license.";
          }
    
          leaf count {
            type int32;
            description
              "The count for this term.";
          }
    
          leaf start-date {
            type string;
            description
              "The date and time the term starts.";
          }
    
          leaf end-date {
            type string;
            description
              "The date and time the term ends.";
          }
    
          leaf subscription-id {
            type string;
            description "SubscriptionId";
          }
        }  // grouping SMART-AGENT-TERM-INFO
    
        grouping SMART-AGENT-HAUDI-TERM {
          description "SMART AGENT HAUDI TERM";
          container udi {
            description
              "the UDI and HA role for this reservation
             information";
            uses SMARTAGENT-UDI;
          }  // container udi
    
          list term-count {
            description
              "The list of term information";
            uses SMART-AGENT-TERM-INFO;
          }  // list term-count
        }  // grouping SMART-AGENT-HAUDI-TERM
    
        grouping SMARTAGENT-RESERVATION-ENTITLEMENTLIST {
          description
            "SMARTAGENT RESERVATION ENTITLEMENTLIST";
          leaf entitlement-tag {
            type string;
            description
              "The ISO 19770-2 entitlement tag used to define
             this license";
          }
    
          leaf short-name {
            type string;
            description
              "The human readable license name from the
             entitlement tag.";
          }
    
          leaf license-name {
            type string;
            description
              "The license name that can be seen on the Cisco
             Smart Software Manger (CSSM).";
          }
    
          leaf description {
            type string;
            description
              "The long description of this license.";
          }
    
          leaf total-count {
            type int32;
            description
              "The total aggregated count available for this
             license.";
          }
    
          leaf license-enforcement-type {
            type License-enforcement-type-enum;
            description
              "Indicates what type of license this is.";
          }
    
          list term-info {
            description
              "the list of term info for each UDI This is an
             array of structures";
            uses SMART-AGENT-HAUDI-TERM;
          }  // list term-info
        }  // grouping SMARTAGENT-RESERVATION-ENTITLEMENTLIST
    
        grouping LICENSE-AUTH-OVERALL-INFO {
          description
            "LICENSE AUTH OVERALL INFO";
          container udi {
            description "UDI of this device";
            uses SMARTAGENT-UDI;
          }  // container udi
    
          leaf install-status {
            type Install-status-enum;
            description "Install Status";
          }
    
          leaf status-time {
            type string;
            description "Status Time";
          }
    
          leaf export-control-status {
            type Export-status-type-enum;
            description
              "Export control status information";
          }
    
          leaf request-code {
            type string;
            description "Request code";
          }
    
          leaf return-code {
            type string;
            description "ReturnCode";
          }
    
          leaf confirmation-code {
            type string;
            description "ConfirmationCode";
          }
    
          leaf authorization-code {
            type string;
            description "AuthorizationCode";
          }
    
          leaf error-message {
            type string;
            description "ErrorMessage";
          }
        }  // grouping LICENSE-AUTH-OVERALL-INFO
    
        grouping IMPORTED-AUTHORIZATIONS {
          description "IMPORTED AUTHORIZATIONS";
          list overall-status {
            description
              "list of all reservation status information for
             all UDIs";
            uses LICENSE-AUTH-OVERALL-INFO;
          }  // list overall-status
    
          list authorization {
            description
              "Information about how a single license is
             authorized.";
            uses SMARTAGENT-RESERVATION-ENTITLEMENTLIST;
          }  // list authorization
        }  // grouping IMPORTED-AUTHORIZATIONS
    
        grouping RESERVATION-USAGE {
          description "RESERVATION USAGE";
          leaf reservation-usage-status {
            type Reservation-usage-status-enum;
            description "ReservationUsageStatus";
          }
    
          leaf total-reserved-count {
            type int32;
            description "totalReservedCount";
          }
        }  // grouping RESERVATION-USAGE
    
        grouping LICENSE-USAGE {
          description "LICENSE USAGE";
          container reservation-usage {
            description "Reservation Usage";
            uses RESERVATION-USAGE;
          }  // container reservation-usage
    
          leaf entitlement-tag {
            type string;
            description
              "The ISO 19770 entitlement tag used to define
             this license.";
          }
    
          leaf short-name {
            type string;
            description
              "The human readable license name from the
             entitlement tag.";
          }
    
          leaf license-name {
            type string;
            description
              "The license name that can be seen in the CSSM
             portal or on the satellite.This is only
             available after the product has registered.";
          }
    
          leaf description {
            type string;
            description
              "The long description of this license.This is
             only available after the product has registered.";
          }
    
          leaf count {
            type uint32;
            description
              "The in-use count of this license. Note that
             licensing only reports usage for licenses that
             are in use (count of 1 or greater).";
          }
    
          leaf enforce-mode {
            type Enforcement-mode-enum;
            description
              "The current enforcement mode of this license.";
          }
    
          leaf post-paid {
            type Bool-state;
            description
              "If true then this entitlement is being reported
             in a post paid mode with utility usage reports.
             Otherwise it will be reported in the regular
             prepaid mode.";
          }
    
          leaf subscription-id {
            type string;
            description
              "Subscription ID for this feature.";
          }
    
          leaf export-entitlement-status {
            type Export-entitlement-status-enum;
            description
              "exportEntitlementStatus";
          }
    
          leaf feature-description {
            type string;
            description "FeatureDescription";
          }
    
          leaf feature-name {
            type string;
            description "FeatureName";
          }
        }  // grouping LICENSE-USAGE
    
        grouping SMARTAGENT-UDI {
          description "SMARTAGENT UDI";
          leaf pid {
            type string;
            description
              "The Product Identifier. Always combined with sn.";
          }
    
          leaf sn {
            type string;
            description
              "The system serial number. Always combined with
             pid.";
          }
    
          leaf vid {
            type string;
            description
              "The version identifier. Usually combined with
             pid & sn.";
          }
    
          leaf uuid {
            type string;
            description
              "A 32 byte hex value generated by the system.
             This will be in proper UUID format 8-4-4-4-12.
             Often used by VMs or other systems that do not
             have a hardware identifier.";
          }
    
          leaf suvi {
            type string;
            description
              "Free form virtual identifier often used by
             software only devices like software routers or
             VMs.";
          }
    
          leaf host-identifier {
            type string;
            description
              "Host identifier available on some systems.
             Typically 8 hex digits.";
          }
    
          leaf mac-address {
            type string;
            description
              "The MAC address of the system. This is usually
             only used if there  is nothing else available to
             be used as an identifier.";
          }
        }  // grouping SMARTAGENT-UDI
    
        grouping EVAL-EXPIRE-TIME {
          description "EVAL EXPIRE TIME";
          leaf expire-time {
            type string;
            description
              "Date and time the evaluation period expired.";
          }
        }  // grouping EVAL-EXPIRE-TIME
    
        grouping EVAL-PERIOD-LEFT {
          description "EVAL PERIOD LEFT";
          leaf time-left {
            type uint64;
            units "second";
            description
              "Number of seconds of license usage until the
             evaluation period expires.";
          }
        }  // grouping EVAL-PERIOD-LEFT
    
        grouping EVAL-PERIOD-STATE {
          description "EVAL PERIOD STATE";
          container eval-period-left {
            description
              "If the evaluation period is not expired this is
             the number of seconds left in the period.";
            uses EVAL-PERIOD-LEFT;
          }  // container eval-period-left
    
          container eval-expire-time {
            description
              "If the evaluation period has expired then this
             is the time of the expiration.";
            uses EVAL-EXPIRE-TIME;
          }  // container eval-expire-time
    
          leaf eval-in-use {
            type Bool-state;
            description
              "Is the evaluation period currently in use and
             counting down.";
          }
    
          leaf eval-expired {
            type Bool-state;
            description
              "Has the evaluation period expired.";
          }
        }  // grouping EVAL-PERIOD-STATE
    
        grouping SMART-AGENT-PRIVACY-INFO {
          description "SMART AGENT PRIVACY INFO";
          leaf host-name {
            type Bool-state;
            description
              "If true then the hostname will not be sent in
             any messages.";
          }
    
          leaf version {
            type Bool-state;
            description
              "If true then the smart licensing version will
             not be sent in any messages.";
          }
        }  // grouping SMART-AGENT-PRIVACY-INFO
    
        grouping PROXY-INFO {
          description "PROXY INFO";
          leaf address {
            type string;
            description
              "Proxy address for sending message.";
          }
    
          leaf port {
            type string;
            description
              "Proxy port for sending message.";
          }
        }  // grouping PROXY-INFO
    
        grouping URL-SETTINGS {
          description "URL SETTINGS";
          leaf url-registration {
            type string;
            description
              "The URL used for registration, authorization and
             any other messages not related to utility.";
          }
    
          leaf url-utility {
            type string;
            description
              "The URL used for utility reporting. url-utility
             and url-registration may be the same or
             different. If a satellite is in use then they
             will probably be the same.";
          }
        }  // grouping URL-SETTINGS
    
        grouping SMART-AGENT-TRANSPORT-INFO {
          description
            "SMART AGENT TRANSPORT INFO";
          container url-settings {
            description
              "URLs in use if the transport type is smart.";
            uses URL-SETTINGS;
          }  // container url-settings
    
          container proxy-info {
            description
              "Proxy information if the transport type is smart
             .";
            uses PROXY-INFO;
          }  // container proxy-info
    
          leaf transport-type {
            type Transport-type-enum;
            description
              "The communications transport type set in the
             config";
          }
        }  // grouping SMART-AGENT-TRANSPORT-INFO
    
        grouping SMARTAGENT-CUSTOMER-INFO {
          description "SMARTAGENT CUSTOMER INFO";
          leaf id {
            type string;
            description
              "The cisco issued customer id which will be
             included in the utility usage (RUM) report.";
          }
    
          leaf name {
            type string;
            description
              "The customer company name which will be included
             in the utility usage (RUM) report.";
          }
    
          leaf street {
            type string;
            description
              "The customer company street address which will
             be included in the utility usage (RUM) report.";
          }
    
          leaf city {
            type string;
            description
              "The customer company city which will be included
             in the utility usage (RUM) report.";
          }
    
          leaf state {
            type string;
            description
              "The customer company state which will be
             included in the utility usage (RUM) report.";
          }
    
          leaf country {
            type string;
            description
              "The customer company country which will be
             included in the utility usage (RUM) report.";
          }
    
          leaf postal-code {
            type string;
            description
              "The customer location specific postal code which
             will be included in the utility usage (RUM)
             report.";
          }
        }  // grouping SMARTAGENT-CUSTOMER-INFO
    
        grouping SMART-AGENT-UTILITY-INFO {
          description "SMART AGENT UTILITY INFO";
          container customer-info {
            description
              "Customer address information that will be
             included in the utility usage reports.";
            uses SMARTAGENT-CUSTOMER-INFO;
          }  // container customer-info
    
          leaf utility-enable {
            type Bool-state;
            description
              "Flag to indicate if Utility is currently enabled";
          }
    
          leaf reporting {
            type Utility-reporting-type-enum;
            description
              "Is the system reporting utility data.";
          }
        }  // grouping SMART-AGENT-UTILITY-INFO
    
        grouping AUTHORIZATION-AUTHORIZATION-EXPIRED {
          description
            "AUTHORIZATION AUTHORIZATION EXPIRED";
          container authorization-info {
            description
              "Additional authorization state information used
             by some of the authorization states.";
            uses AUTHORIZATION-INFO;
          }  // container authorization-info
        }  // grouping AUTHORIZATION-AUTHORIZATION-EXPIRED
    
        grouping AUTHORIZATION-OUT-OF-COMPLIANCE {
          description
            "AUTHORIZATION OUT OF COMPLIANCE";
          container authorization-info {
            description
              "Additional authorization state information used
             by some of the authorization states.";
            uses AUTHORIZATION-INFO;
          }  // container authorization-info
    
          leaf ooc-time {
            type string;
            description
              "Time the product instance entered the out of
             compliance state.";
          }
        }  // grouping AUTHORIZATION-OUT-OF-COMPLIANCE
    
        grouping AUTHORIZATION-AUTHORIZED-RESERVATION {
          description
            "AUTHORIZATION AUTHORIZED RESERVATION";
          leaf reservation-time {
            type string;
            description
              "Time the reservation occurred.";
          }
        }  // grouping AUTHORIZATION-AUTHORIZED-RESERVATION
    
        grouping AUTHORIZATION-INFO {
          description "AUTHORIZATION INFO";
          leaf last-comm-status-success {
            type Bool-state;
            description
              "Last communication was successful or failed.";
          }
    
          leaf fail-message {
            type string;
            description
              "Failure message if the last communications
             attempt failed.This can be displayed for the
             user. It is not a parsable string.";
          }
    
          leaf last-comm-time {
            type string;
            description
              "Time the last communication attempt happened.";
          }
    
          leaf next-comm-time {
            type string;
            description
              "The next time communications will be attempted
             to the back end.This will be zero if the initial
             communication has not completed.";
          }
    
          leaf comm-deadline-time {
            type string;
            description
              "If there are no communications between now and
             this time smart licensing will enter the
             authorization expired state.This may be zero
             indicating there is no deadline.";
          }
        }  // grouping AUTHORIZATION-INFO
    
        grouping AUTHORIZATION-AUTHORIZED {
          description "AUTHORIZATION AUTHORIZED";
          container authorization-info {
            description
              "Additional authorization state information used
             by some of the authorization states.";
            uses AUTHORIZATION-INFO;
          }  // container authorization-info
        }  // grouping AUTHORIZATION-AUTHORIZED
    
        grouping AUTHORIZATION-EVAL-EXPIRED {
          description
            "AUTHORIZATION EVAL EXPIRED";
          leaf expire-time {
            type string;
            description
              "Time the evaluation period expired.";
          }
        }  // grouping AUTHORIZATION-EVAL-EXPIRED
    
        grouping EVALUATION-TIME-LEFT {
          description "EVALUATION TIME LEFT";
          leaf seconds-left {
            type uint64;
            units "second";
            description
              "Number of seconds of license usage until the
             evaluation period expires. Note that this not a
             hard date and time because if no licenses are in
             use the evaluation period stops counting down.";
          }
        }  // grouping EVALUATION-TIME-LEFT
    
        grouping AUTHORIZATION-EVAL {
          description "AUTHORIZATION EVAL";
          container evaluation-time-left {
            description
              "Number of seconds of license usage until the
             evaluation period expires.";
            uses EVALUATION-TIME-LEFT;
          }  // container evaluation-time-left
        }  // grouping AUTHORIZATION-EVAL
    
        grouping AUTHORIZATION-NONE {
          description "AUTHORIZATION NONE";
          leaf empty {
            type string;
            description
              "Empty string and container";
          }
        }  // grouping AUTHORIZATION-NONE
    
        grouping AUTHORIZATION-STATE {
          description "AUTHORIZATION STATE";
          container authorization-none {
            description
              "No licenses in use.This empty container is not
             needed but is a place holder to show there is no
             data for this state.";
            uses AUTHORIZATION-NONE;
          }  // container authorization-none
    
          container authorization-eval {
            description
              "Evaluation period is in use and counting down
             .The evaluation period only counts down when
             licenses are in use.";
            uses AUTHORIZATION-EVAL;
          }  // container authorization-eval
    
          container authorization-eval-expired {
            description
              "Evaluation period is in use but has expired.";
            uses AUTHORIZATION-EVAL-EXPIRED;
          }  // container authorization-eval-expired
    
          container authorization-authorized {
            description
              "All license usage is authorized and within terms
             of the contract. uses authorization-info";
            uses AUTHORIZATION-AUTHORIZED;
          }  // container authorization-authorized
    
          container authorization-authorized-reservation {
            description
              "All license usage is authorized because a
             reservation authorization code is installed.";
            uses AUTHORIZATION-AUTHORIZED-RESERVATION;
          }  // container authorization-authorized-reservation
    
          container authorization-out-of-compliance {
            description
              "License usage is out of compliance with the
             terms of the contract because more licenses are
             in use than were purchased.";
            uses AUTHORIZATION-OUT-OF-COMPLIANCE;
          }  // container authorization-out-of-compliance
    
          container authorization-authorization-expired {
            description
              "The authorization period has expired because the
             product instance ahs not communicated with the
             SSM or satellite in over 90 days.";
            uses AUTHORIZATION-AUTHORIZATION-EXPIRED;
          }  // container authorization-authorization-expired
    
          leaf authorization-state {
            type Authorization-state-enum;
            description
              "The current authorization state.";
          }
        }  // grouping AUTHORIZATION-STATE
    
        grouping REGISTRATION-COMPLETE {
          description "REGISTRATION COMPLETE";
          leaf complete-time {
            type string;
            description
              "Time the registration was successful.";
          }
    
          leaf last-renew-time {
            type string;
            description
              "Time the last registration renewal occurred. If
             empty then no renewal has occurred.";
          }
    
          leaf next-renew-time {
            type string;
            description
              "Time the registration will be automatically
             renewed.";
          }
    
          leaf expire-time {
            type string;
            description
              "Time the registration will expire if it is not
             renewed.";
          }
    
          leaf last-renew-success {
            type Bool-state;
            description
              "Was the last renewal attempt successful.";
          }
    
          leaf fail-message {
            type string;
            description
              "If the last renewal failed then this is a
             failure message that can be displayed for the
             user. This is not a parsable string. Only
             present if the last renewal failed";
          }
    
          leaf smart-account {
            type string;
            description
              "The smart account name for this registration.";
          }
    
          leaf virtual-account {
            type string;
            description
              "The virtual account name for this registration.";
          }
        }  // grouping REGISTRATION-COMPLETE
    
        grouping REGISTRATION-RETRY {
          description "REGISTRATION RETRY";
          container registration-info {
            description
              "Registration failed info.";
            uses REGISTRATION-FAILED;
          }  // container registration-info
    
          leaf retry-next-time {
            type string;
            description
              "Time the registration will be retried.";
          }
        }  // grouping REGISTRATION-RETRY
    
        grouping REGISTRATION-FAILED {
          description "REGISTRATION FAILED";
          leaf fail-time {
            type string;
            description
              "Time the registration failed.";
          }
    
          leaf fail-message {
            type string;
            description
              "Failure message that can be displayed for the
             user.This is not a parsable message.";
          }
        }  // grouping REGISTRATION-FAILED
    
        grouping REGISTRATION-IN-PROGRESS {
          description "REGISTRATION IN PROGRESS";
          leaf start-time {
            type string;
            description
              "Time the registration started.";
          }
        }  // grouping REGISTRATION-IN-PROGRESS
    
        grouping SMARTAGENT-REGISTER {
          description "SMARTAGENT REGISTER";
          container registration-in-progress {
            description
              "Registration is in progress.";
            uses REGISTRATION-IN-PROGRESS;
          }  // container registration-in-progress
    
          container registration-failed {
            description "Registration failed.";
            uses REGISTRATION-FAILED;
          }  // container registration-failed
    
          container registration-retry {
            description
              "Registration failed and doing a retry.";
            uses REGISTRATION-RETRY;
          }  // container registration-retry
    
          container registration-complete {
            description "Registration success.";
            uses REGISTRATION-COMPLETE;
          }  // container registration-complete
    
          leaf registration-state {
            type Registration-state-enum;
            description
              "The current registration state.";
          }
    
          leaf export-control-allowed {
            type Bool-state;
            description
              "Is the device allowed to enable export
             controlled features.";
          }
    
          leaf export-control-status {
            type Export-status-type-enum;
            description
              "Export control status information";
          }
        }  // grouping SMARTAGENT-REGISTER
    
        grouping STATE-INFO {
          description "STATE INFO";
          container registration {
            description
              "The state of the registration for this product
             instance.";
            uses SMARTAGENT-REGISTER;
          }  // container registration
    
          container authorization {
            description
              "State of license authorization.";
            uses AUTHORIZATION-STATE;
          }  // container authorization
    
          container utility {
            description "Utility settings.";
            uses SMART-AGENT-UTILITY-INFO;
          }  // container utility
    
          container transport {
            description
              "Transport layer settings.";
            uses SMART-AGENT-TRANSPORT-INFO;
          }  // container transport
    
          container privacy {
            description
              "Controls whether or not some information is sent
             in messages to the Cisco Smart Software Manger
             (CSSM) or satellite.";
            uses SMART-AGENT-PRIVACY-INFO;
          }  // container privacy
    
          container evaluation {
            description
              "State of the evaluation period. In use or not
             and time left.";
            uses EVAL-PERIOD-STATE;
          }  // container evaluation
    
          container udi {
            description "UDI of the system.";
            uses SMARTAGENT-UDI;
          }  // container udi
    
          container reservation {
            description
              "Information about all licenses that are
             authorized and how they were authorized";
            uses IMPORTED-AUTHORIZATIONS;
          }  // container reservation
    
          container export-authorization-keys {
            description
              "Export Authorization Keys";
            uses EXPORT-AUTH-KEYS;
          }  // container export-authorization-keys
    
          leaf custom-id {
            type string;
            description
              "The custom ID set by the customer that will be
             included in the utility usage (RUM) report and
             in th emessage header";
          }
    
          leaf conversion-enabled {
            type Bool-state;
            description
              "Conversion Enabled or not";
          }
    
          list usage {
            description
              "List of license (entitlement tag) usage
             information. This only contains the information
             for licenses that are in use.";
            uses LICENSE-USAGE;
          }  // list usage
        }  // grouping STATE-INFO
    
        grouping SMART-AGENT-STATE {
          description "SMART AGENT STATE";
          container state-info {
            description
              "This state-info is only available if
             smart-enabled = true";
            uses STATE-INFO;
          }  // container state-info
    
          leaf always-enabled {
            type Bool-state;
            description
              "Is Smart Licensing is always enabled.";
          }
    
          leaf smart-enabled {
            type Bool-state;
            description
              "Is smart licensing enabled";
          }
    
          leaf version {
            type string;
            description
              "The smart licensing version in use.";
          }
        }  // grouping SMART-AGENT-STATE
    
        grouping SMARTAGENT-LICENSING-INFO {
          description
            "All information of Smart Licensing common yang
           model";
          container state {
            description "Smart licensing state.";
            uses SMART-AGENT-STATE;
          }  // container state
        }  // grouping SMARTAGENT-LICENSING-INFO
      }  // submodule Cisco-IOS-XR-infra-smartlicense-oper-sub1
    

© 2024 YumaWorks, Inc. All rights reserved.