-- ===============================================================
-- == Copyright (C) 2004 Paradyne Corporation.                  ==
-- ===============================================================

PDN-PPP-LCP-EXT-MIB DEFINITIONS ::= BEGIN

IMPORTS
   MODULE-IDENTITY, OBJECT-TYPE, 
   Unsigned32, Counter32
      FROM SNMPv2-SMI
   OBJECT-GROUP, MODULE-COMPLIANCE
      FROM SNMPv2-CONF
   DisplayString
      FROM SNMPv2-TC
   ifIndex
      FROM IF-MIB
   pppLinkStatusEntry, pppLinkConfigEntry
      FROM PPP-LCP-MIB
   SwitchState, PdnPPPState
      FROM PDN-TC
   pdn-interfaces
      FROM PDN-HEADER-MIB;
        
pdnPppLcpExtMIB MODULE-IDENTITY
   LAST-UPDATED "200409100000Z"  -- September 10, 2004
   ORGANIZATION "Paradyne Networks
                 MIB Working Group
                 Other information about group editing the MIB"
   CONTACT-INFO "Paradyne Networks, Inc.
                 8545 126th Avenue North
                 Largo, FL 33733
                 www.paradyne.com
        
                 General Comments to: mibwg_team@paradyne.com

                 Editor
                    Clay Sikes"

   DESCRIPTION "The MIB module provides enterprise-specific extensions
                to the PPP-LCP-MIB for managing the Link Control 
                Protocol (LCP) and  Line Quality Monitoring on 
                subnetwork interfaces that use the family of 
                Point-to-Point protocols.

                The following documents should be referenced with 
                respect to this MIB module:
                [RFC 1471]    Kastenholz, F., `The Definitions of 
                              Managed Objects for the Link Control 
                              Protocol of the Point-to-Point Protocol,
                              PPP-LCP-MIB', June 1993.
                [RFC 1661]    Simpson, W., `The Point-to-Point 
                              Protocol', July 1994."

   REVISION    "200409100000Z"  -- September 10, 2004
   DESCRIPTION "Initial release."

::=  { pdn-interfaces 28 }



-- ====================================================================
-- == Define groups for Notifications, MIB Objects, Accessible for   ==
-- == Notifications (AFNs), and Conformance.                         ==
-- == These may just be place holders.                               ==
-- ====================================================================
pdnPppLcpExtNotifications OBJECT IDENTIFIER ::= { pdnPppLcpExtMIB 0 }
pdnPppLcpExtObjects       OBJECT IDENTIFIER ::= { pdnPppLcpExtMIB 1 }
pdnPppLcpExtAFNs          OBJECT IDENTIFIER ::= { pdnPppLcpExtMIB 2 } 
pdnPppLcpExtConformance   OBJECT IDENTIFIER ::= { pdnPppLcpExtMIB 3 }




-- ====================================================================
-- ==                  Textual Conventions                           ==
-- ====================================================================
-- None defined.



-- ====================================================================
-- ==                  MIB Objects                                   ==
-- ====================================================================




-- ====================================================================
-- == pdnPppLinkStatusExtTable                                       ==
-- ====================================================================
pdnPppLinkStatusExtTable  OBJECT-TYPE
   SYNTAX      SEQUENCE OF PdnPppLinkStatusExtEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION "Extensions to the PPP LCP Link Status Table, 
                pppLinkStatusTable.  Counters in this group contain
                `total' counts which are marked from the time the
                system was last re-initialized."
   ::= { pdnPppLcpExtObjects 1 }

pdnPppLinkStatusExtEntry  OBJECT-TYPE
   SYNTAX      PdnPppLinkStatusExtEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION "An entry in the PPP LCP Link Status Table."
   AUGMENTS    { pppLinkStatusEntry }
   ::= { pdnPppLinkStatusExtTable 1 }

PdnPppLinkStatusExtEntry ::=
   SEQUENCE {
      pdnPppLinkStatusCurrState                       PdnPPPState,
      pdnPppLinkStatusEstablishFailedReason           DisplayString,
      pdnPppLinkStatusLocalToRemoteMagicNumber        Unsigned32,
      pdnPppLinkStatusRemoteToLocalMagicNumber        Unsigned32,
      pdnPppLinkStatusTotalSentConfigRequests         Counter32,
      pdnPppLinkStatusTotalReceivedConfigRequests     Counter32,
      pdnPppLinkStatusTotalSentConfigAcks             Counter32,
      pdnPppLinkStatusTotalReceivedConfigAcks         Counter32,
      pdnPppLinkStatusTotalSentConfigNaks             Counter32,
      pdnPppLinkStatusTotalReceivedConfigNaks         Counter32,
      pdnPppLinkStatusTotalSentConfigRejects          Counter32,
      pdnPppLinkStatusTotalReceivedConfigRejects      Counter32,
      pdnPppLinkStatusTotalSentTerminateRequests      Counter32,
      pdnPppLinkStatusTotalReceivedTerminateRequests  Counter32,
      pdnPppLinkStatusTotalSentTerminateAcks          Counter32,
      pdnPppLinkStatusTotalReceivedTerminateAcks      Counter32,
      pdnPppLinkStatusTotalSentCodeRejects            Counter32,
      pdnPppLinkStatusTotalReceivedCodeRejects        Counter32,
      pdnPppLinkStatusTotalSentProtocolRejects        Counter32,
      pdnPppLinkStatusTotalReceivedProtocolRejects    Counter32,
      pdnPppLinkStatusTotalSentEchoRequests           Counter32,
      pdnPppLinkStatusTotalReceivedEchoRequests       Counter32,
      pdnPppLinkStatusTotalSentEchoReplies            Counter32,
      pdnPppLinkStatusTotalReceivedEchoReplies        Counter32,
      pdnPppLinkStatusTotalSentDiscardRequests        Counter32,
      pdnPppLinkStatusTotalReceivedDiscardRequests    Counter32,
      pdnPppLinkStatusTotalSentKeepAlives             Counter32,
      pdnPppLinkStatusTotalReceivedKeepAlives         Counter32,
      pdnPppLinkStatusTotalEchoRequestsTimeOuts       Counter32,
      pdnPppLinkStatusTotalEchoRequestsBadData        Counter32,
      pdnPppLinkStatusTotalEchoRequestsPassed         Counter32,
      pdnPppLinkStatusTotalKeepAlivesLost             Counter32,
      pdnPppLinkStatusTotalTerminates                 Counter32
   }

pdnPppLinkStatusCurrState OBJECT-TYPE
   SYNTAX      PdnPPPState
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The current state of the LCP State Machine."
   REFERENCE   "RFC 1661, Section 4.2, `State Transition Table'."
   ::= { pdnPppLinkStatusExtEntry 1 }

pdnPppLinkStatusEstablishFailedReason OBJECT-TYPE
   SYNTAX      DisplayString
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "Indicates why the PPP link failed to establish 
                a connection to the Network-Layer Protocol
                phase.  If the link was successfully established,
                a zero-length string will be returned. Otherwise,
                a string will be returned indicating why the LCP
                could not establish the phase."
   REFERENCE   "RFC 1661, Section 4.2, `State Transition Table'."
   ::= { pdnPppLinkStatusExtEntry 2 }

pdnPppLinkStatusLocalToRemoteMagicNumber  OBJECT-TYPE
   SYNTAX      Unsigned32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The Magic-Number negotiated for packets in the local 
                to remote direction."
   REFERENCE    "RFC 1661, Section 6.4, `Magic-Number'."
   ::= { pdnPppLinkStatusExtEntry 3 }

pdnPppLinkStatusRemoteToLocalMagicNumber  OBJECT-TYPE
   SYNTAX      Unsigned32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The Magic-Number negotiated for packets in the remote 
                to local direction."
   REFERENCE    "RFC 1661, Section 6.4, `Magic-Number'."
   ::= { pdnPppLinkStatusExtEntry 4 }

pdnPppLinkStatusTotalSentConfigRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Requests packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.1, `Configure-Request'."
   ::= { pdnPppLinkStatusExtEntry 5 }

pdnPppLinkStatusTotalReceivedConfigRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Requests packets received on 
                this link."
   REFERENCE    "RFC 1661, Section 5.1, `Configure-Request'."
   ::= { pdnPppLinkStatusExtEntry 6 }

pdnPppLinkStatusTotalSentConfigAcks  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Ack packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.2, `Configure-Ack'."
   ::= { pdnPppLinkStatusExtEntry 7 }

pdnPppLinkStatusTotalReceivedConfigAcks  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Ack packets received on this 
                link."
   REFERENCE    "RFC 1661, Section 5.2, `Configure-Ack'."
   ::= { pdnPppLinkStatusExtEntry 8 }

pdnPppLinkStatusTotalSentConfigNaks  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Nak packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.3, `Configure-Nak'."
   ::= { pdnPppLinkStatusExtEntry 9 }

pdnPppLinkStatusTotalReceivedConfigNaks  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Nak packets received on this 
                link."
   REFERENCE    "RFC 1661, Section 5.3, `Configure-Nak'."
   ::= { pdnPppLinkStatusExtEntry 10 }

pdnPppLinkStatusTotalSentConfigRejects  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Reject packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.4, `Configure-Reject'."
   ::= { pdnPppLinkStatusExtEntry 11 }

pdnPppLinkStatusTotalReceivedConfigRejects  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Configure-Reject packets received on 
                this link."
   REFERENCE    "RFC 1661, Section 5.4, `Configure-Reject'."
   ::= { pdnPppLinkStatusExtEntry 12 }

pdnPppLinkStatusTotalSentTerminateRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Terminate-Request packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.5, `Terminate-Request and
                 Terminate-Ack'."
   ::= { pdnPppLinkStatusExtEntry 13 }

pdnPppLinkStatusTotalReceivedTerminateRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Terminate-Request packets received on 
                this link."
   REFERENCE    "RFC 1661, Section 5.5, `Terminate-Request and
                 Terminate-Ack'."
   ::= { pdnPppLinkStatusExtEntry 14 }

pdnPppLinkStatusTotalSentTerminateAcks  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Terminate-Ack packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.5, `Terminate-Request and
                 Terminate-Ack'."   
   ::= { pdnPppLinkStatusExtEntry 15 }

pdnPppLinkStatusTotalReceivedTerminateAcks  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Terminate-Ack packets received on this 
                link."
   REFERENCE    "RFC 1661, Section 5.5, `Terminate-Request and
                 Terminate-Ack'."
   ::= { pdnPppLinkStatusExtEntry 16 }

pdnPppLinkStatusTotalSentCodeRejects  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Code-Reject packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.6, `Code-Reject'."
   ::= { pdnPppLinkStatusExtEntry 17 }

pdnPppLinkStatusTotalReceivedCodeRejects  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Code-Reject packets received on this 
                link."
   REFERENCE    "RFC 1661, Section 5.6, `Code-Reject'."
   ::= { pdnPppLinkStatusExtEntry 18 }

pdnPppLinkStatusTotalSentProtocolRejects  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Protocol-Reject packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.7, `Protocol-Reject'."
   ::= { pdnPppLinkStatusExtEntry 19 }

pdnPppLinkStatusTotalReceivedProtocolRejects  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Protocol-Reject packets received on this 
                link."
   REFERENCE    "RFC 1661, Section 5.7, `Protocol-Reject'."
   ::= { pdnPppLinkStatusExtEntry 20 }

pdnPppLinkStatusTotalSentEchoRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Request packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.8, `Echo-Request and
                 Echo-Reply'."
   ::= { pdnPppLinkStatusExtEntry 21 }

pdnPppLinkStatusTotalReceivedEchoRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Request packets received on this 
                link."
   REFERENCE    "RFC 1661, Section 5.8, `Echo-Request and
                 Echo-Reply'."
   ::= { pdnPppLinkStatusExtEntry 22 }

pdnPppLinkStatusTotalSentEchoReplies  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Reply packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.8, `Echo-Request and
                 Echo-Reply'."
   ::= { pdnPppLinkStatusExtEntry 23 }

pdnPppLinkStatusTotalReceivedEchoReplies  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Reply packets received on this 
                link."
   REFERENCE    "RFC 1661, Section 5.8, `Echo-Request and
                 Echo-Reply'."
   ::= { pdnPppLinkStatusExtEntry 24 }

pdnPppLinkStatusTotalSentDiscardRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Discard-Request packets sent on this 
                link."
   REFERENCE    "RFC 1661, Section 5.8, `Discard-Request'."
   ::= { pdnPppLinkStatusExtEntry 25 }

pdnPppLinkStatusTotalReceivedDiscardRequests  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Discard-Request packets received on this
                link."
   REFERENCE    "RFC 1661, Section 5.8, `Discard-Request'."
   ::= { pdnPppLinkStatusExtEntry 26 }

pdnPppLinkStatusTotalSentKeepAlives OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of automatically generated Echo-Request 
                packets sent on this link as a `Keep Alive' mechanism."
   REFERENCE    "RFC 1661, Section 5.8, `Echo-Request and
                 Echo-Reply'."
   ::= { pdnPppLinkStatusExtEntry 27 }

pdnPppLinkStatusTotalReceivedKeepAlives OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Request packets received on this 
                link as a `Keep Alive' mechanism."
   REFERENCE    "RFC 1661, Section 5.8, `Echo-Request and
                 Echo-Reply'."
   ::= { pdnPppLinkStatusExtEntry 28 }

pdnPppLinkStatusTotalEchoRequestsTimeOuts  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Request packets that have been sent,
                but no Echo-Reply packet was received."
   ::= { pdnPppLinkStatusExtEntry 29 }

pdnPppLinkStatusTotalEchoRequestsBadData  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Request packets that have been 
                received, but the data field in the packet received 
                did not match the data in the packet sent."
   ::= { pdnPppLinkStatusExtEntry 30 }

pdnPppLinkStatusTotalEchoRequestsPassed  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Request packets that have been 
                received and the data field in the packet received 
                matched the data in the packet sent."
   ::= { pdnPppLinkStatusExtEntry 31 }

pdnPppLinkStatusTotalKeepAlivesLost  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of Echo-Request packets that have been sent
                as a `Keep Alive' mechanism which have not been
                replied and are considered 'lost'."
   ::= { pdnPppLinkStatusExtEntry 32 }

pdnPppLinkStatusTotalTerminates  OBJECT-TYPE
   SYNTAX      Counter32
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "The number of times the link was terminated where
                user traffic could not be sent."
   ::= { pdnPppLinkStatusExtEntry 33 }



-- ====================================================================
-- == pdnPppLinkConfigExtTable                                       ==
-- ====================================================================
pdnPppLinkConfigExtTable  OBJECT-TYPE
   SYNTAX      SEQUENCE OF PdnPppLcpLinkConfigExtEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION "Extensions to the PPP LCP Link Configuration Table, 
                pppLinkconfigTable."
   ::= { pdnPppLcpExtObjects 2 }

pdnPppLinkConfigExtEntry  OBJECT-TYPE
   SYNTAX      PdnPppLcpLinkConfigExtEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION "An entry in the PPP LCP Link Configuration Table."
   AUGMENTS    { pppLinkConfigEntry }
   ::= { pdnPppLinkConfigExtTable 1 }

PdnPppLcpLinkConfigExtEntry ::=
   SEQUENCE {
      pdnPppLinkConfigPFC                 SwitchState,
      pdnPppLinkConfigACFC                SwitchState,
      pdnPppLinkConfigKeepAliveQuietTime  Unsigned32,
      pdnPppLinkConfigKeepAliveTimeout    Unsigned32
   }

pdnPppLinkConfigPFC  OBJECT-TYPE
   SYNTAX      SwitchState         
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION "Configures whether or not Protocol-Field-Compression
                is desired.

                When set to enabled(1), the local entity will attempt
                to negotiate the compression of the Protocol Field.
 
                When set to disabled(2), the local entity will not
                negotiate compression of the Protocol Field. 

                The result of the negotiation is indicated in the 
                pppLinkStatusLocalToRemoteProtocolCompression and the
                pppLinkStatusRemoteToLocalProtocolCompression objects."
   REFERENCE    "RFC 1661, Section 6.5, `Protocol-Field-Compression'."
   ::= { pdnPppLinkConfigExtEntry 1 }

pdnPppLinkConfigACFC  OBJECT-TYPE
   SYNTAX      SwitchState       
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION "Configures whether or not Data Link Layer Address and
                Control fields compression is desired.

                When set to enabled(1), the local entity will attempt
                to negotiate the compression of the fields.

                When set to disabled(2), the local entity will not
                negotiate compression of the fields.

                The result of the negotiation is indicated in the 
                pppLinkStatusLocalToRemoteACCompression and the
                pppLinkStatusRemoteToLocalACCompression objects."
   REFERENCE    "RFC 1661, Section 6.6, 
                 `Address-and-Control-Field-Compression'."
   ::= { pdnPppLinkConfigExtEntry 2 }

pdnPppLinkConfigKeepAliveQuietTime  OBJECT-TYPE
   SYNTAX      Unsigned32(0..3600)
   UNITS       "seconds"        
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION "If no PPP packets are received for this amount of 
                time, the local PPP entity will send an Echo-Request
                as a `Keep Alive' mechanism to make sure the link
                is still active.  A value of 0 indicates that the
                `Keep Alive' mechanism is disabled.  The largest
                `quit time` as supported by the syntax is an hour."
   REFERENCE   "RFC 1661, Section 5.8, `Echo-Request and Echo-Reply'."
   ::= { pdnPppLinkConfigExtEntry 3 }

pdnPppLinkConfigKeepAliveTimeout  OBJECT-TYPE
   SYNTAX      Unsigned32(1..300)   
   UNITS       "seconds"        
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION "The maximum amount of time to wait for an Echo-Reply 
                in response to an Echo-Request sent as a `Keep Alive' 
                mechanism.  When this time has exceeded, the link will
                be terminated and will attempt to reestablish a
                connection with its remote peer. The maximum amount of 
                time to wait as supported by the syntax is 5 minutes." 
   REFERENCE   "RFC 1661, Section 5.8, `Echo-Request and Echo-Reply'."
   ::= { pdnPppLinkConfigExtEntry 4 }


-- =====================================================================
-- == pdnPppLinkTestTable                                             ==
-- =====================================================================
pdnPppLinkTestTable  OBJECT-TYPE
   SYNTAX      SEQUENCE OF PdnPppLinkTestExtEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION "A table to support the testing of a PPP link."
   ::= { pdnPppLcpExtObjects 3 }

pdnPppLinkTestEntry  OBJECT-TYPE
   SYNTAX      PdnPppLinkTestExtEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION "An entry in the PPP LCP Link Test Table."
   INDEX       { ifIndex }
   ::= { pdnPppLinkTestTable 1 }

PdnPppLinkTestExtEntry ::=
   SEQUENCE {
      pdnPppLinkTestSendEchoTest           INTEGER,
      pdnPppLinkTestEchoTestTimeout        Unsigned32,
      pdnPppLinkTestSendDiscardTest        INTEGER,
      pdnPppLinkTestLastEchoTestResults    INTEGER
   }

pdnPppLinkTestSendEchoTest  OBJECT-TYPE
   SYNTAX      INTEGER {
                  noOp(1),
                  runTest(2)                
               }                    
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION "Controls the initiation of a PPP Echo-Request to the
                remote PPP entity.  The agent fills in the data to
                be echoed.  The value read from this object is 
                noOp(1).  If an Echo Test is in progress and this
                object is set to noOp(1),the test will be aborted
                and the result object below will be set to none(1)."
   REFERENCE   "RFC 1661, Section 5.8, `Echo-Request and Echo-Reply'."
   ::= { pdnPppLinkTestEntry 1 }

pdnPppLinkTestEchoTestTimeout  OBJECT-TYPE
   SYNTAX      Unsigned32(1..300)   
   UNITS       "seconds"        
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION "The maximum amount of time to wait for an Echo-Reply 
                in response to an Echo-Request.  If an Echo-Reply
                is not seen in the amount of time specified, the test
                will be considered `timed-out'.  The maximum amount 
                of time to wait as supported by the syntax is 
                5 minutes."
   REFERENCE   "RFC 1661, Section 5.8, `Echo-Request and Echo-Reply'."
   ::= { pdnPppLinkTestEntry 2 }

pdnPppLinkTestSendDiscardTest  OBJECT-TYPE
   SYNTAX      INTEGER {
                   noOp(1),
                   sendDiscard(2)                
               }                    
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION "Controls the initiation of a PPP Discard-Request to 
                the remote PPP entity.  The value read from this 
                object is noOp(1)."
   REFERENCE   "RFC 1661, Section 5.9, `Discard-Request'."
   ::= { pdnPppLinkTestEntry 3 }

pdnPppLinkTestLastEchoTestResults  OBJECT-TYPE
   SYNTAX      INTEGER {
                  none(1),
                  inProgress(2),
                  success(3),
                  timedOut(4),
                  compareFailed(5)
               }                    
   MAX-ACCESS  read-only
   STATUS      current
   DESCRIPTION "Displays the results of the last Echo Test.  A value 
                of none(1) will be returned if no Echo Tests have
                been performed.  If an Echo Test is currently being
                performed and neither a Echo Reply was received nor
                the Echo Timeout Period has been satisfied, 
                inProgress(2) will be read.  If the last Echo Test 
                received a Echo Reply and the echo data received 
                matched that which was sent, a success(3) will be 
                returned.  If an Echo Test was initiated and no Echo
                Reply was received within the Echo Timeout Period, 
                a timedOut(4) will be read.  If the Echo Reply was 
                returned, but the data received did not match the
                data that was sent, a compareFailed(5) will be read."
   REFERENCE   "RFC 1661, Section 5.8, `Echo-Request and Echo-Reply'."
   ::= { pdnPppLinkTestEntry 4 }



-- =====================================================================
-- ==                  Accessible for Notifications (AFNs)            ==
-- =====================================================================
-- None defined



-- =====================================================================
-- ==                  Traps/Notifications                            ==
-- =====================================================================
-- None defined



-- =====================================================================
-- ==                  Conformance Information                        ==
-- =====================================================================

pdnPppLcpExtCompliances  OBJECT IDENTIFIER ::= 
   { pdnPppLcpExtConformance 1 }
pdnPppLcpExtGroups       OBJECT IDENTIFIER ::= 
   { pdnPppLcpExtConformance 2 }


-- ===========================
-- == Compliance Statements ==
-- ===========================


pdnPppLcpExtCompliance  MODULE-COMPLIANCE
   STATUS      current
   DESCRIPTION "The compliance statement for network elements 
                implementing PPP Link Control Protocol."
   MODULE      -- this module
   -- No mandatory groups are specified.  PPP LCP can be implemented
   -- with only objects defined in the PPP-LCP-MIB.  However, this MIB
   -- module specifies optional objects to enhance a PPP LCP 
   -- implementation.

   GROUP       pdnPppLcpExtStateMachineGroup
   DESCRIPTION "This group is only required for implementations that
                need to display the LCP State Machine's state."

   GROUP       pdnPppLcpExtEstablishFailedGroup
   DESCRIPTION "This group is only required for implementations that
                need to display the reason the LCP establishment
                failed."

   GROUP       pdnPppLcpExtMagicNumberGroup
   DESCRIPTION "This group is only required for implementations that
                need to display the Magic Number that has been 
                negotiated for a particular direction."

   GROUP       pdnPppLcpExtPacketCountersGroup
   DESCRIPTION "This group is only required for implementations that
                need to display counters for LCP packets."

   GROUP       pdnPppLcpExtKeepAliveCountersGroup
   DESCRIPTION "This group is only required for implementations that
                 need to display counters for `Keep Alive' packets."

   GROUP       pdnPppLcpExtPFCGroup
   DESCRIPTION "This group is only required for implementations that
                need to configure Protocol-Field-Compression."

   GROUP       pdnPppLcpExtACFCGroup
   DESCRIPTION "This group is only required for implementations that
                need to configure Data Link Layer Address and Control
                field compression."

   GROUP       pdnPppLcpExtKeepAliveConfGroup
   DESCRIPTION "This group is only required for implementations that
                need to configure Keep Alive parameters."

   GROUP       pdnPppLcpExtEchoTestGroup
   DESCRIPTION "This group is only required for implementations that
                need to allow an Echo Test to be performed."

   GROUP       pdnPpppLcpExtDiscardTestGroup
   DESCRIPTION "This group is only required for implementations that
                need to allow a Discard Test to be performed."

   GROUP       pdnPpppLcpExtLinkStateCounterGroup
   DESCRIPTION "This group is only required for implementations that
                need to count state machine states."

   ::= { pdnPppLcpExtCompliances 1 }


-- ==========================
-- == Units of Conformance ==
-- ==========================

pdnPppLcpExtObjGroups   OBJECT IDENTIFIER ::= { pdnPppLcpExtGroups 1 }
pdnPppLcpExtAfnGroups   OBJECT IDENTIFIER ::= { pdnPppLcpExtGroups 2 }
pdnPppLcpExtNtfyGroups  OBJECT IDENTIFIER ::= { pdnPppLcpExtGroups 3 }


-- ===================
-- == Object Groups ==
-- ===================


pdnPppLcpExtStateMachineGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkStatusCurrState
   }
   STATUS      current
   DESCRIPTION "Displays LCP State Machine's state."
   ::= { pdnPppLcpExtObjGroups 1 }

pdnPppLcpExtEstablishFailedGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkStatusEstablishFailedReason
   }
   STATUS      current
   DESCRIPTION "Displays the reason the last link establishment 
                failed."
   ::= { pdnPppLcpExtObjGroups 2 }

pdnPppLcpExtMagicNumberGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkStatusLocalToRemoteMagicNumber,
      pdnPppLinkStatusRemoteToLocalMagicNumber
   }
   STATUS      current
   DESCRIPTION "Displays the Magic Number negotiated."
   ::= { pdnPppLcpExtObjGroups 3 }

pdnPppLcpExtPacketCountersGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkStatusTotalSentConfigRequests,
      pdnPppLinkStatusTotalReceivedConfigRequests,
      pdnPppLinkStatusTotalSentConfigAcks,
      pdnPppLinkStatusTotalReceivedConfigAcks,
      pdnPppLinkStatusTotalSentConfigNaks,
      pdnPppLinkStatusTotalReceivedConfigNaks,
      pdnPppLinkStatusTotalSentConfigRejects,
      pdnPppLinkStatusTotalReceivedConfigRejects,
      pdnPppLinkStatusTotalSentTerminateRequests,
      pdnPppLinkStatusTotalReceivedTerminateRequests,
      pdnPppLinkStatusTotalSentTerminateAcks,
      pdnPppLinkStatusTotalReceivedTerminateAcks,
      pdnPppLinkStatusTotalSentCodeRejects,
      pdnPppLinkStatusTotalReceivedCodeRejects,
      pdnPppLinkStatusTotalSentProtocolRejects,
      pdnPppLinkStatusTotalReceivedProtocolRejects,
      pdnPppLinkStatusTotalSentEchoRequests,
      pdnPppLinkStatusTotalReceivedEchoRequests,
      pdnPppLinkStatusTotalSentEchoReplies,
      pdnPppLinkStatusTotalReceivedEchoReplies,
      pdnPppLinkStatusTotalSentDiscardRequests,
      pdnPppLinkStatusTotalReceivedDiscardRequests      
   }
   STATUS      current
   DESCRIPTION "Counters for various PPP LCP packets."
   ::= { pdnPppLcpExtObjGroups 4 }

pdnPppLcpExtKeepAliveCountersGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkStatusTotalSentKeepAlives,
      pdnPppLinkStatusTotalReceivedKeepAlives,
      pdnPppLinkStatusTotalKeepAlivesLost
   }
   STATUS      current
   DESCRIPTION "Counters relative to `Keep Alive'."
   ::= { pdnPppLcpExtObjGroups 5 }

pdnPppLcpExtPFCGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkConfigPFC
   }
   STATUS      current
   DESCRIPTION "Configuration for Protocol-Field Compression."
   ::= { pdnPppLcpExtObjGroups 6 }

pdnPppLcpExtACFCGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkConfigACFC
   }
   STATUS      current
   DESCRIPTION "Configuration for Data Link Layer Address and Control
                field compression."
   ::= { pdnPppLcpExtObjGroups 7 }

pdnPppLcpExtKeepAliveConfGroup OBJECT-GROUP
   OBJECTS {
        pdnPppLinkConfigKeepAliveQuietTime,
        pdnPppLinkConfigKeepAliveTimeout
   }
   STATUS      current
   DESCRIPTION "Configuration of parameters relative to `Keep Alive'."
   ::= { pdnPppLcpExtObjGroups 8 }

pdnPppLcpExtEchoTestGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkTestSendEchoTest,
      pdnPppLinkTestEchoTestTimeout,
      pdnPppLinkTestLastEchoTestResults,
      pdnPppLinkStatusTotalEchoRequestsTimeOuts,
      pdnPppLinkStatusTotalEchoRequestsBadData,
      pdnPppLinkStatusTotalEchoRequestsPassed
   }
   STATUS      current
   DESCRIPTION "Support configuration, initiation, and results of
                an Echo Test."
   ::= { pdnPppLcpExtObjGroups 9 }

pdnPpppLcpExtDiscardTestGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkTestSendDiscardTest
   }
   STATUS      current
   DESCRIPTION "Supports the initiation of a Discard Test."
   ::= { pdnPppLcpExtObjGroups 10 }

pdnPpppLcpExtLinkStateCounterGroup OBJECT-GROUP
   OBJECTS {
      pdnPppLinkStatusTotalTerminates
   }
   STATUS      current
   DESCRIPTION "Counters relative to the link state."
   ::= { pdnPppLcpExtObjGroups 11 }




-- =========================================
-- == Accessible for Notifications Groups ==
-- =========================================
-- None defined



-- =========================
-- == Notification Groups ==
-- =========================
-- None defined




-- =========
-- == END ==
-- =========
END
