module yuma-interfaces {

    namespace "http://netconfcentral.org/ns/yuma-interfaces";

    prefix "if";

    import yuma-ncx { prefix ncx; }
    import ietf-yang-types { prefix yang; }

    organization  "Netconf Central";

    contact "Andy Bierman <andy@netconfcentral.org>.";

    description 
      "Yuma interfaces table.

     Copyright (c) 2009 - 2012 Andy Bierman and the persons
     identified as authors of the code.  All rights reserved.

     Redistribution and use in source and binary forms, with or
     without modification, is permitted pursuant to, and subject
     to the license terms contained in, the BSD 3-Clause License
     http://opensource.org/licenses/BSD-3-Clause";


    revision 2012-01-13 {
        description  
	  "Added ncx:user-write restrictions";
    }

    revision 2009-11-21 {
        description  
	  "Changed name from interfaces to yuma-interfaces.";
    }

    revision 2009-07-17 {
        description  
	  "Initial version.";
    }

    container interfaces {
      ncx:user-write update;
      description
        "Container for all interfaces information.";
 
      list interface {
         key name;

         leaf name {
           description "Interface name string";
           type string;
         }

         container counters {

           config false;

           leaf inBytes {
             description "In bytes counter";
             type yang:counter64;
           }

           leaf inPackets {
             description "In packets counter";
             type yang:counter64;
           }

           leaf inErrors {
             description "In errors counter";
             type yang:counter64;
           }

           leaf inDrops {
             description "In drops counter";
             type yang:counter64;
           }

           leaf inFifo {
             description "In fifo counter";
             type yang:counter64;
           }

           leaf inFrames {
             description "In frame counter";
             type yang:counter64;
           }

           leaf inCompressed {
             description "In compressed counter";
             type yang:counter64;
           }

           leaf inMulticast {
             description "In multicast counter";
             type yang:counter64;
           }

           leaf outBytes {
             description "Out bytes counter";
             type yang:counter64;
           }

           leaf outPackets {
             description "Out packets counter";
             type yang:counter64;
           }

           leaf outErrors {
             description "Out errors counter";
             type yang:counter64;
           }

           leaf outDrops {
             description "Out drops counter";
             type yang:counter64;
           }

           leaf outFifo {
             description "Out fifo counter";
             type yang:counter64;
           }

           leaf outCollisions {
             description "Out collisions counter";
             type yang:counter64;
           }

           leaf outCarrier {
             description "Out carrier counter";
             type yang:counter64;
           }

           leaf outCompressed {
             description "Out compressed counter";
             type yang:counter64;
           }
         }
      }
   }
}
