/*
 * This module has been generated by smidump 0.4.8:
 *
 *      smidump -f yang --yang-smi-extensions SNMP-VIEW-BASED-ACM-MIB
 *
 * Do not edit. Edit the source file instead!
 */

module SNMP-VIEW-BASED-ACM-MIB {

   namespace "urn:ietf:params:xml:ns:yang:smiv2:SNMP-VIEW-BASED-ACM-MIB";
   prefix "snmp-view";

   import SNMP-FRAMEWORK-MIB { prefix "snmp-framework"; }
   import SNMPv2-TC          { prefix "smiv2"; }
   import yang-smi           { prefix "smi"; }

   import ietf-yang-types {
     prefix "yang";
   }

   /*** META INFORMATION ***/

   organization
     "SNMPv3 Working Group";

   contact
     "WG-email:   snmpv3@lists.tislabs.com
      Subscribe:  majordomo@lists.tislabs.com
                  In message body:  subscribe snmpv3

      Co-Chair:   Russ Mundy
                  Network Associates Laboratories
      postal:     15204 Omega Drive, Suite 300
                  Rockville, MD 20850-4601
                  USA
      email:      mundy@tislabs.com
      phone:      +1 301-947-7107

      Co-Chair:   David Harrington
                  Enterasys Networks
      Postal:     35 Industrial Way
                  P. O. Box 5004
                  Rochester, New Hampshire 03866-5005
                  USA
      EMail:      dbh@enterasys.com
      Phone:      +1 603-337-2614

      Co-editor:  Bert Wijnen
                  Lucent Technologies
      postal:     Schagen 33
                  3461 GL Linschoten
                  Netherlands
      email:      bwijnen@lucent.com
      phone:      +31-348-480-685

      Co-editor:  Randy Presuhn
                  BMC Software, Inc.

      postal:     2141 North First Street
                  San Jose, CA 95131
                  USA
      email:      randy_presuhn@bmc.com
      phone:      +1 408-546-1006

      Co-editor:  Keith McCloghrie
                  Cisco Systems, Inc.
      postal:     170 West Tasman Drive
                  San Jose, CA  95134-1706
                  USA
      email:      kzm@cisco.com
      phone:      +1-408-526-5260";

   description
     "The management information definitions for the
      View-based Access Control Model for SNMP.

      Copyright (C) The Internet Society (2002). This
      version of this MIB module is part of RFC 3415;
      see the RFC itself for full legal notices.";

   revision "2002-10-16" {
      description
        "Clarifications, published as RFC3415";
   }
   revision "1999-01-20" {
      description
        "Clarifications, published as RFC2575";
   }
   revision "1997-11-20" {
      description
        "Initial version, published as RFC2275";
   }

   container SNMP-VIEW-BASED-ACM-MIB {
      container vacmContextTable {
         list vacmContextEntry {

            key "vacmContextName";
            description
              "Information about a particular context.";
            smi:oid "1.3.6.1.6.3.16.1.1.1";


            leaf vacmContextName {
               type snmp-framework:SnmpAdminString {
                  length "0..32";
               }
               smi:oid "1.3.6.1.6.3.16.1.1.1.1";
            }
         }
      }

      container vacmSecurityToGroupTable {
         list vacmSecurityToGroupEntry {

            key "vacmSecurityModel vacmSecurityName";
            smi:oid "1.3.6.1.6.3.16.1.2.1";

            leaf vacmSecurityModel {
               type snmp-framework:SnmpSecurityModel {
                  range "1..2147483647";
               }
               smi:oid "1.3.6.1.6.3.16.1.2.1.1";
            }

            leaf vacmSecurityName {
               type snmp-framework:SnmpAdminString {
                  length "1..32";
               }
               smi:oid "1.3.6.1.6.3.16.1.2.1.2";
            }

            leaf vacmGroupName {
               type snmp-framework:SnmpAdminString {
                  length "1..32";
               }
               smi:oid "1.3.6.1.6.3.16.1.2.1.3";
            }

            leaf vacmSecurityToGroupStorageType {
               type smiv2:StorageType;
               smi:default "nonVolatile";
               smi:oid "1.3.6.1.6.3.16.1.2.1.4";
            }

            leaf vacmSecurityToGroupStatus {
               type smiv2:RowStatus;
               smi:oid "1.3.6.1.6.3.16.1.2.1.5";
            }
         }
      }

      container vacmAccessTable {
         list vacmAccessEntry {

            key "vacmGroupName vacmAccessContextPrefix vacmAccessSecurityModel vacmAccessSecurityLevel";
            smi:oid "1.3.6.1.6.3.16.1.4.1";

            leaf vacmGroupName {
               type string {
                 length "1 .. 32";
               }
               description
                 "Automagically generated keyref leaf.";
            }

            leaf vacmAccessContextPrefix {
               type snmp-framework:SnmpAdminString {
                  length "0..32";
               }
               smi:oid "1.3.6.1.6.3.16.1.4.1.1";
            }

            leaf vacmAccessSecurityModel {
               type snmp-framework:SnmpSecurityModel;
               smi:oid "1.3.6.1.6.3.16.1.4.1.2";
            }

            leaf vacmAccessSecurityLevel {
               type snmp-framework:SnmpSecurityLevel;
               smi:oid "1.3.6.1.6.3.16.1.4.1.3";
            }

            leaf vacmAccessContextMatch {
               type enumeration {
                  enum exact  { value 1; }
                  enum prefix { value 2; }
               }
               smi:default "exact";
               smi:oid "1.3.6.1.6.3.16.1.4.1.4";
            }

            leaf vacmAccessReadViewName {
               type snmp-framework:SnmpAdminString {
                  length "0..32";
               }
               smi:oid "1.3.6.1.6.3.16.1.4.1.5";
            }

            leaf vacmAccessWriteViewName {
               type snmp-framework:SnmpAdminString {
                  length "0..32";
               }
               smi:oid "1.3.6.1.6.3.16.1.4.1.6";
            }

            leaf vacmAccessNotifyViewName {
               type snmp-framework:SnmpAdminString {
                  length "0..32";
               }
               smi:oid "1.3.6.1.6.3.16.1.4.1.7";
            }

            leaf vacmAccessStorageType {
               type smiv2:StorageType;
               smi:default "nonVolatile";
               smi:oid "1.3.6.1.6.3.16.1.4.1.8";
            }

            leaf vacmAccessStatus {
               type smiv2:RowStatus;
               smi:oid "1.3.6.1.6.3.16.1.4.1.9";
            }
         }
      }

      container vacmMIBViews {

         leaf vacmViewSpinLock {
            type smiv2:TestAndIncr;
            smi:oid "1.3.6.1.6.3.16.1.5.1";
         }

         list vacmViewTreeFamilyEntry {

            key "vacmViewTreeFamilyViewName vacmViewTreeFamilySubtree";
            description
              "Information on a particular family of view subtrees
               included in or excluded from a particular SNMP
               context's MIB view.

               Implementations must not restrict the number of
               families of view subtrees for a given MIB view,
               except as dictated by resource constraints on the
               overall number of entries in the
               vacmViewTreeFamilyTable.

               If no conceptual rows exist in this table for a given
               MIB view (viewName), that view may be thought of as
               consisting of the empty set of view subtrees.";
            smi:oid "1.3.6.1.6.3.16.1.5.2.1";


            leaf vacmViewTreeFamilyViewName {
               type snmp-framework:SnmpAdminString {
                  length "1..32";
               }
               description
                 "The human readable name for a family of view subtrees.";
               smi:oid "1.3.6.1.6.3.16.1.5.2.1.1";
            }

            leaf vacmViewTreeFamilySubtree {
               type yang:object-identifier;
               description
                 "The MIB subtree which when combined with the
                  corresponding instance of vacmViewTreeFamilyMask
                  defines a family of view subtrees.";
               smi:oid "1.3.6.1.6.3.16.1.5.2.1.2";
            }

            leaf vacmViewTreeFamilyMask {
               type binary {
                  length "0..16";
               }
               smi:oid "1.3.6.1.6.3.16.1.5.2.1.3";
            }

            leaf vacmViewTreeFamilyType {
               type enumeration {
                  enum included { value 1; }
                  enum excluded { value 2; }
               }
               description
                 "Indicates whether the corresponding instances of
                  vacmViewTreeFamilySubtree and vacmViewTreeFamilyMask
                  define a family of view subtrees which is included in
                  or excluded from the MIB view.";
               smi:default "included";
               smi:oid "1.3.6.1.6.3.16.1.5.2.1.4";
            }

            leaf vacmViewTreeFamilyStorageType {
               type smiv2:StorageType;
               description
                 "The storage type for this conceptual row.

                  Conceptual rows having the value 'permanent' need not
                  allow write-access to any columnar objects in the row.";
               smi:default "nonVolatile";
               smi:oid "1.3.6.1.6.3.16.1.5.2.1.5";
            }

            leaf vacmViewTreeFamilyStatus {
               type smiv2:RowStatus;
               description
                 "The status of this conceptual row.

                  The  RowStatus TC [RFC2579] requires that this
                  DESCRIPTION clause states under which circumstances
                  other objects in this row can be modified:

                  The value of this object has no effect on whether
                  other objects in this conceptual row can be modified.";
               smi:oid "1.3.6.1.6.3.16.1.5.2.1.6";
            }
         }
      }
   }
}
