
--
--  /****************************************************************/
--  /* (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1996.  ALL RIGHTS      */
--  /* RESERVED.  NO PART OF THIS DOCUMENT MAY BE PHOTOCOPIED,      */
--  /* REPRODUCED OR TRANSLATED WITHOUT THE PRIOR WRITTEN CONSENT   */
--  /* OF HEWLETT-PACKARD COMPANY.                                  */
--  /****************************************************************/
--
--
-- This MIB file is the Master MIB file for the JetDirect SNMP implementation.
-- It includes all objects defined for both internal cards and external boxes.
--
-- This MIB successfully compiles with mosy 7.1. (as of 7/25/95)
--
-- Last Updated:  April 24, 1998 
--

-- HP OBJECT IDENTIFIER ::= { iso org(3) dod(6) internet(1) private(4) enterprises(1) 11 }

JETDIRECT3-MIB DEFINITIONS ::= BEGIN

-- TAddress ::= OCTET STRING  
-- A TAddress is 6 octets long, the initial 4 octets
-- containing the IP address in network byte order and the last 2 containing
-- the UDP port in network byte order.

--RowStatus ::= INTEGER {
--               active(1),
--               notInService(2),
--               notReady(3),
--               createAndGo(4),
--               createAndWait(5),
--               destroy(6)
--               }

IMPORTS
     OBJECT-TYPE, private, enterprises, Counter, Gauge, TimeTicks, NetworkAddress, mgmt, IpAddress
          FROM RFC1155-SMI
		DdpAddress FROM RFC1243-MIB
		Utf8String FROM HP-httpManageable-MIB
		;
         
	  -- textual conventions

          DisplayString ::=
              OCTET STRING
          -- This data type is used to model textual information taken
          -- from the NVT ASCII character set.  By convention, objects
          -- with this syntax are declared as having
          --
          --      SIZE (0..255)

mib-2               OBJECT IDENTIFIER ::= { mgmt 1}
interfaces          OBJECT IDENTIFIER ::= { mib-2 2}

hp                  OBJECT IDENTIFIER ::= { enterprises 11 }
nm                  OBJECT IDENTIFIER ::= { hp 2 }
system              OBJECT IDENTIFIER ::= { nm 3 }
interface           OBJECT IDENTIFIER ::= { nm 4 }
at                  OBJECT IDENTIFIER ::= { mib-2 3 }
ip                  OBJECT IDENTIFIER ::= { mib-2 4 }
icmp                OBJECT IDENTIFIER ::= { mib-2 5 }
tcp                 OBJECT IDENTIFIER ::= { mib-2 6 }
udp                 OBJECT IDENTIFIER ::= { mib-2 7 }
snmp                OBJECT IDENTIFIER ::= { mib-2 11 }
appletalk           OBJECT IDENTIFIER ::= { mib-2 13 }
net-peripheral      OBJECT IDENTIFIER ::= { system 9 }
net-printer         OBJECT IDENTIFIER ::= { net-peripheral 1 }
generalDeviceStatus OBJECT IDENTIFIER ::= { net-printer 1 }
netPrinterType      OBJECT IDENTIFIER ::= { net-printer 2 }
ieee8023Mac         OBJECT IDENTIFIER ::= { interface 1 }
ieee8025Mac         OBJECT IDENTIFIER ::= { interface 2 }
npCard              OBJECT IDENTIFIER ::= { interface 3 }
npSys               OBJECT IDENTIFIER ::= { npCard 1 }
npConns             OBJECT IDENTIFIER ::= { npCard 4 }
npCfg               OBJECT IDENTIFIER ::= { npCard 5 }
npTcp               OBJECT IDENTIFIER ::= { npCard 6 }
npCtl               OBJECT IDENTIFIER ::= { npCard 7 }
npNpi               OBJECT IDENTIFIER ::= { npCard 8 }
npElt               OBJECT IDENTIFIER ::= { npCard 9 }
npIpx               OBJECT IDENTIFIER ::= { npCard 10 }
npDm                OBJECT IDENTIFIER ::= { npCard 11 }
llcconstategroup    OBJECT IDENTIFIER ::= { npCard 12 }
npPort              OBJECT IDENTIFIER ::= { npCard 13 }
npXip               OBJECT IDENTIFIER ::= { npCard 14 }
npCRC               OBJECT IDENTIFIER ::= { npCard 15 }
npDhcp              OBJECT IDENTIFIER ::= { npCard 16 }
npScan              OBJECT IDENTIFIER ::= { npCard 17 }
npWeb		    OBJECT IDENTIFIER ::= { npCard 18 }
trap                OBJECT IDENTIFIER ::= { nm 13 }
trapDest            OBJECT IDENTIFIER ::= { trap 1 } 

-- added for download
icf                 OBJECT IDENTIFIER ::= { nm 14 }

snmpAccess          OBJECT IDENTIFIER ::= { nm 15 }
community           OBJECT IDENTIFIER ::= { snmpAccess 1}

-- Icf Common Objects
hpicfAdmin          OBJECT IDENTIFIER ::= { icf 10 }
hpicfObjects        OBJECT IDENTIFIER ::= { icf 11 }

hpicfCommon         OBJECT IDENTIFIER ::= { hpicfObjects 1 }
hpicfChain          OBJECT IDENTIFIER ::= { hpicfCommon 1 }

hpicfDomains        OBJECT IDENTIFIER ::= { hpicfAdmin 1 }
hpicfLLCDomain      OBJECT IDENTIFIER ::= { hpicfDomains 1 }
hpicfNBPDomain      OBJECT IDENTIFIER ::= { hpicfCommon 2 }
hpicfDownload       OBJECT IDENTIFIER ::= { hpicfCommon 3 }

atport              OBJECT IDENTIFIER ::= { appletalk 3 }
status-prt-eng      OBJECT IDENTIFIER ::= { print-engine 2 }

-- PML objects added to accomodate the object total-ENGINE-PAGE-COUNT

netPML              OBJECT IDENTIFIER ::= { net-peripheral 4 }
netPMLmgmt          OBJECT IDENTIFIER ::= { netPML 2 }
device                 OBJECT IDENTIFIER   ::= { netPMLmgmt 1 }
destination-subsystem  OBJECT IDENTIFIER   ::= { device 4 }
print-engine           OBJECT IDENTIFIER   ::= { destination-subsystem 1 }
-- status-prt-eng         OBJECT IDENTIFIER   ::= { print-engine 2 }

-- toptools branch
hpWebMgmt             OBJECT IDENTIFIER ::= { nm 36 }
hpHttpMgMod           OBJECT IDENTIFIER ::= { hpWebMgmt 1 }
hpHttpMgObjects       OBJECT IDENTIFIER ::= { hpHttpMgMod 1 } 
hpHttpMgDefaults      OBJECT IDENTIFIER ::= { hpHttpMgObjects 1 }



-- object types
-- The MIB-II Objects supported by JetDirect products

          -- the System group

          sysDescr OBJECT-TYPE
              SYNTAX  DisplayString (SIZE (256))
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A textual description of the entity.  This value
                      should include the full name and version
                      identification of the system's hardware type,
                      software operating-system, and networking
                      software.  It is mandatory that this only contain
                      printable ASCII characters."
              ::= { system 1 }

          sysObjectID OBJECT-TYPE
              SYNTAX  OBJECT IDENTIFIER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The vendor's authoritative identification of the
                      network management subsystem contained in the
                      entity.  This value is allocated within the SMI
                      enterprises subtree (1.3.6.1.4.1) and provides an
                      easy and unambiguous means for determining `what
                      kind of box' is being managed.  The value for this
                      device is constructed by appending the peripheral 
                      attribute class npNpiPaeClass to the sysObjId base:
                      .1.3.6.1.4.1.11.2.3.9.  See description of npNpiPaeClass
                      below." 
              ::= { system 2 }

          sysUpTime OBJECT-TYPE
              SYNTAX  TimeTicks
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The time (in hundredths of a second) since the
                      network management portion of the system was last
                      re-initialized."
              ::= { system 3 }

          sysContact OBJECT-TYPE
              SYNTAX  DisplayString (SIZE (256))
              ACCESS  read-write  
              STATUS  mandatory
              DESCRIPTION
                      "The textual identification of the contact person
                      for this managed node, together with information
                      on how to contact this person."
              ::= { system 4 }

          -- Note that this may be either a bootp, DHCP or JetAdmin (SNMP)
	  -- assigned name
          sysName OBJECT-TYPE
              SYNTAX  DisplayString (SIZE (256))
              ACCESS  read-write 
              STATUS  mandatory
              DESCRIPTION
                      "An administratively-assigned name for this
                      managed node.  By convention, this is the node's
                      fully-qualified domain name."
              ::= { system 5 }

          sysLocation OBJECT-TYPE
              SYNTAX  DisplayString (SIZE (64))
              ACCESS  read-write  
              STATUS  mandatory
              DESCRIPTION
                      "The physical location of this node (e.g.,
                      `telephone closet, 3rd floor').  This string
                       can be set using two different methods.  The first
                       is through the tftp config file for the TCP solution.  
                       The other is using SNMP over any of the protocols.  
                       This value is saved in NVRAM.  Using SNMP to set this
                       object will cause the tftp version to be overwritten.  
                       If this object is set using SNMP then the tftp 
                       version from the tftp config file will NOT cause an
                       overwrite at boot time."
              ::= { system 6 }

          sysServices OBJECT-TYPE
              SYNTAX  INTEGER (0..127)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A value which indicates the set of services that
                      this entity primarily offers.
                      The value is a sum.  This sum initially takes the
                      value zero, Then, for each layer, L, in the range
                      1 through 7, that this node performs transactions
                      for, 2 raised to (L - 1) is added to the sum."
              ::= { system 7 }


          -- the Interfaces group

          ifNumber OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of network interfaces (regardless of
                      their current state) present on this system."
              ::= { interfaces 1 }

          ifTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF IfEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A list of interface entries.  The number of
                      entries is given by the value of ifNumber."
              ::= { interfaces 2 }

          ifEntry OBJECT-TYPE
              SYNTAX  IfEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "An interface entry containing objects at the
                      subnetwork layer and below for a particular
                      interface."
              INDEX   { ifIndex }
              ::= { ifTable 1 }

          IfEntry ::=
              SEQUENCE {
                  ifIndex
                      INTEGER,
                  ifDescr
                      DisplayString,
                  ifType
                      INTEGER,
                  ifMtu
                      INTEGER,
                  ifSpeed
                      Gauge,
                  ifPhysAddress
                      OCTET STRING,
                  ifAdminStatus
                      INTEGER,
                  ifOperStatus
                      INTEGER,
                  ifLastChange
                      TimeTicks,
                  ifInOctets
                      Counter,
                  ifInUcastPkts
                      Counter,
                  ifInNUcastPkts
                      Counter,
                  ifInDiscards
                      Counter,
                  ifInErrors
                      Counter,
                  ifInUnknownProtos
                      Counter,
                  ifOutOctets
                      Counter,
                  ifOutUcastPkts
                      Counter,
                  ifOutNUcastPkts
                      Counter,
                  ifOutDiscards
                      Counter,
                  ifOutErrors
                      Counter,
                  ifOutQLen
                      Gauge,
                  ifSpecific
                      OBJECT IDENTIFIER
              }

          ifIndex OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A unique value for each interface.  Its value
                      ranges between 1 and the value of ifNumber.  The
                      value for each interface must remain constant at
                      least from one re-initialization of the entity's
                      network management system to the next re-
                      initialization."
              ::= { ifEntry 1 }

          ifDescr OBJECT-TYPE
              SYNTAX  DisplayString (SIZE (256))
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A textual string containing information about the
                      interface.  This string should include the name of
                      the manufacturer, the product name and the version
                      of the hardware interface."
              ::= { ifEntry 2 }

          ifType OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The type of interface, distinguished according to
                      the physical/link protocol(s) immediately `below'
                      the network layer in the protocol stack."
              ::= { ifEntry 3 }

          ifMtu OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The size of the largest datagram which can be
                      sent/received on the interface, specified in
                      octets.  For interfaces that are used for
                      transmitting network datagrams, this is the size
                      of the largest network datagram that can be sent
                      on the interface."
              ::= { ifEntry 4 }

          ifSpeed OBJECT-TYPE
              SYNTAX  Gauge
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "An estimate of the interface's current bandwidth
                      in bits per second.  For interfaces which do not
                      vary in bandwidth or for those where no accurate
                      estimation can be made, this object should contain
                      the nominal bandwidth."
              ::= { ifEntry 5 }

          ifPhysAddress OBJECT-TYPE
              SYNTAX  OCTET STRING
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The interface's address at the protocol layer
                      immediately `below' the network layer in the
                      protocol stack.  For interfaces which do not have
                      such an address (e.g., a serial line), this object
                      should contain an octet string of zero length."
              ::= { ifEntry 6 }

          ifAdminStatus OBJECT-TYPE
              SYNTAX  INTEGER {
                                up(1),
                                down(2),
                                testing(3)
                              }
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The desired state of the interface.  The
                      testing(3) state indicates that no operational
                      packets can be passed."
              ::= { ifEntry 7 }

          ifOperStatus OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The current operational state of the interface.
                      The testing(3) state indicates that no operational
                      packets can be passed."
              ::= { ifEntry 8 }

          ifLastChange OBJECT-TYPE
              SYNTAX  TimeTicks
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The value of sysUpTime at the time the interface
                      entered its current operational state.  If the
                      current state was entered prior to the last re-
                      initialization of the local network management
                      subsystem, then this object contains a zero
                      value."
              ::= { ifEntry 9 }

          ifInOctets OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of octets received on the
                      interface, including framing characters."
              ::= { ifEntry 10 }

          ifInUcastPkts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of subnetwork-unicast packets
                      delivered to a higher-layer protocol."
              ::= { ifEntry 11 }

          ifInNUcastPkts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of non-unicast (i.e., subnetwork-
                      broadcast or subnetwork-multicast) packets
                      delivered to a higher-layer protocol."
              ::= { ifEntry 12 }

          ifInDiscards OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of inbound packets which were chosen
                      to be discarded even though no errors had been
                      detected to prevent their being deliverable to a
                      higher-layer protocol.  One possible reason for
                      discarding such a packet could be to free up
                      buffer space."
              ::= { ifEntry 13 }

          ifInErrors OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of inbound packets that contained
                      errors preventing them from being deliverable to a
                      higher-layer protocol."
              ::= { ifEntry 14 }

          ifInUnknownProtos OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of packets received via the interface
                      which were discarded because of an unknown or
                      unsupported protocol."
              ::= { ifEntry 15 }

          ifOutOctets OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of octets transmitted out of the
                      interface, including framing characters."
              ::= { ifEntry 16 }

          ifOutUcastPkts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of packets that higher-level
                      protocols requested be transmitted to a
                      subnetwork-unicast address, including those that
                      were discarded or not sent."
              ::= { ifEntry 17 }

          ifOutNUcastPkts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of packets that higher-level
                      protocols requested be transmitted to a non-
                      unicast (i.e., a subnetwork-broadcast or
                      subnetwork-multicast) address, including those
                      that were discarded or not sent."
              ::= { ifEntry 18 }

          ifOutDiscards OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of outbound packets which were chosen
                      to be discarded even though no errors had been
                      detected to prevent their being transmitted.  One
                      possible reason for discarding such a packet could
                      be to free up buffer space."
              ::= { ifEntry 19 }

          ifOutErrors OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of outbound packets that could not be
                      transmitted because of errors."
              ::= { ifEntry 20 }

          ifOutQLen OBJECT-TYPE
              SYNTAX  Gauge
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The length of the output packet queue (in
                      packets)."
              ::= { ifEntry 21 }

          ifSpecific OBJECT-TYPE
              SYNTAX  OBJECT IDENTIFIER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "A reference to MIB definitions specific to the
                      particular media being used to realize the
                      interface.  For example, if the interface is
                      realized by an ethernet, then the value of this
                      object refers to a document defining objects
                      specific to ethernet.  If this information is not
                      present, its value should be set to the OBJECT
                      IDENTIFIER { 0 0 }, which is a syntatically valid
                      object identifier, and any conformant
                      implementation of ASN.1 and BER must be able to
                      generate and recognize this value."
              ::= { ifEntry 22 }


          -- the Address Translation group

          -- Implementation of the Address Translation group is
          -- mandatory for all systems.  Note however that this group
          -- is deprecated by MIB-II. That is, it is being included
          -- solely for compatibility with MIB-I nodes, and will most
          -- likely be excluded from MIB-III nodes.  From MIB-II and
          -- onwards, each network protocol group contains its own
          -- address translation tables.

          -- The Address Translation group contains one table which is
          -- the union across all interfaces of the translation tables
          -- for converting a NetworkAddress (e.g., an IP address) into
          -- a subnetwork-specific address.  For lack of a better term,
          -- this document refers to such a subnetwork-specific address
          -- as a `physical' address.

          -- Examples of such translation tables are: for broadcast
          -- media where ARP is in use, the translation table is
          -- equivalent to the ARP cache; or, on an X.25 network where
          -- non-algorithmic translation to X.121 addresses is
          -- required, the translation table contains the
          -- NetworkAddress to X.121 address equivalences.

          atTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF AtEntry
              ACCESS  not-accessible
              STATUS  deprecated
              DESCRIPTION
                      "The Address Translation tables contain the
                      NetworkAddress to `physical' address equivalences.
                      Some interfaces do not use translation tables for
                      determining address equivalences (e.g., DDN-X.25
                      has an algorithmic method); if all interfaces are
                      of this type, then the Address Translation table
                      is empty, i.e., has zero entries."
              ::= { at 1 }

          atEntry OBJECT-TYPE
              SYNTAX  AtEntry
              ACCESS  not-accessible
              STATUS  deprecated
              DESCRIPTION
                      "Each entry contains one NetworkAddress to
                      `physical' address equivalence."
              INDEX   { atIfIndex,
			atNetAddress }
              ::= { atTable 1 }

          AtEntry ::=
              SEQUENCE {
                  atIfIndex
                      INTEGER,
                  atPhysAddress
                      OCTET STRING,
                  atNetAddress
                      IpAddress
              }

          atIfIndex OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  deprecated
              DESCRIPTION
                      "The interface on which this entry's equivalence
                      is effective.  The interface identified by a
                      particular value of this index is the same
                      interface as identified by the same value of
                      ifIndex."
              ::= { atEntry 1 }

          atPhysAddress OBJECT-TYPE
              SYNTAX  OCTET STRING
              ACCESS  read-only  
              STATUS  deprecated
              DESCRIPTION
                      "The media-dependent `physical' address.

                      Setting this object to a null string (one of zero
                      length) has the effect of invaliding the
                      corresponding entry in the atTable object.  That
                      is, it effectively dissasociates the interface
                      identified with said entry from the mapping
                      identified with said entry.  It is an
                      implementation-specific matter as to whether the
                      agent removes an invalidated entry from the table.
                      Accordingly, management stations must be prepared
                      to receive tabular information from agents that
                      corresponds to entries not currently in use.
                      Proper interpretation of such entries requires
                      examination of the relevant atPhysAddress object."
              ::= { atEntry 2 }

          atNetAddress OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only  
              STATUS  deprecated
              DESCRIPTION
                      "The NetworkAddress (e.g., the IP address)
                      corresponding to the media-dependent `physical'
                      address."
              ::= { atEntry 3 }


          -- the IP group

          ipForwarding OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The indication of whether this entity is acting
                      as an IP gateway in respect to the forwarding of
                      datagrams received by, but not addressed to, this
                      entity.  IP gateways forward datagrams.  IP hosts
                      do not (except those source-routed via the host).

                      Note that for some managed nodes, this object may
                      take on only a subset of the values possible.
                      Accordingly, it is appropriate for an agent to
                      return a `badValue' response if a management
                      station attempts to change this object to an
                      inappropriate value."
              ::= { ip 1 }

          ipDefaultTTL OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The default value inserted into the Time-To-Live
                      field of the IP header of datagrams originated at
                      this entity, whenever a TTL value is not supplied
                      by the transport layer protocol."
              ::= { ip 2 }

          ipInReceives OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of input datagrams received from
                      interfaces, including those received in error."
              ::= { ip 3 }

          ipInHdrErrors OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of input datagrams discarded due to
                      errors in their IP headers, including bad
                      checksums, version number mismatch, other format
                      errors, time-to-live exceeded, errors discovered
                      in processing their IP options, etc."
              ::= { ip 4 }

          ipInAddrErrors OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of input datagrams discarded because
                      the IP address in their IP header's destination
                      field was not a valid address to be received at
                      this entity.  This count includes invalid
                      addresses (e.g., 0.0.0.0) and addresses of
                      unsupported Classes (e.g., Class E).  For entities
                      which are not IP Gateways and therefore do not
                      forward datagrams, this counter includes datagrams
                      discarded because the destination address was not
                      a local address."
              ::= { ip 5 }

          ipForwDatagrams OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of input datagrams for which this
                      entity was not their final IP destination, as a
                      result of which an attempt was made to find a
                      route to forward them to that final destination.
                      In entities which do not act as IP Gateways, this
                      counter will include only those packets which were
                      Source-Routed via this entity, and the Source-
                      Route option processing was successful."
              ::= { ip 6 }

          ipInUnknownProtos OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of locally-addressed datagrams
                      received successfully but discarded because of an
                      unknown or unsupported protocol."
              ::= { ip 7 }

          ipInDiscards OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of input IP datagrams for which no
                      problems were encountered to prevent their
                      continued processing, but which were discarded
                      (e.g., for lack of buffer space).  Note that this
                      counter does not include any datagrams discarded
                      while awaiting re-assembly."
              ::= { ip 8 }

          ipInDelivers OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of input datagrams successfully
                      delivered to IP user-protocols (including ICMP)."
              ::= { ip 9 }

          ipOutRequests OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of IP datagrams which local IP
                      user-protocols (including ICMP) supplied to IP in
                      requests for transmission.  Note that this counter
                      does not include any datagrams counted in
                      ipForwDatagrams."
              ::= { ip 10 }

          ipOutDiscards OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of output IP datagrams for which no
                      problem was encountered to prevent their
                      transmission to their destination, but which were
                      discarded (e.g., for lack of buffer space).  Note
                      that this counter would include datagrams counted
                      in ipForwDatagrams if any such packets met this
                      (discretionary) discard criterion."
              ::= { ip 11 }

          ipOutNoRoutes OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of IP datagrams discarded because no
                      route could be found to transmit them to their
                      destination.  Note that this counter includes any
                      packets counted in ipForwDatagrams which meet this
                      `no-route' criterion.  Note that this includes any
                      datagarms which a host cannot route because all of
                      its default gateways are down."
              ::= { ip 12 }

          ipReasmTimeout OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The maximum number of seconds which received
                      fragments are held while they are awaiting
                      reassembly at this entity."
              ::= { ip 13 }

          ipReasmReqds OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of IP fragments received which needed
                      to be reassembled at this entity."
              ::= { ip 14 }

          ipReasmOKs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of IP datagrams successfully re-
                      assembled."
              ::= { ip 15 }

          ipReasmFails OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of failures detected by the IP re-
                      assembly algorithm (for whatever reason: timed
                      out, errors, etc).  Note that this is not
                      necessarily a count of discarded IP fragments
                      since some algorithms (notably the algorithm in
                      RFC 815) can lose track of the number of fragments
                      by combining them as they are received."
              ::= { ip 16 }

          ipFragOKs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of IP datagrams that have been
                      successfully fragmented at this entity."
              ::= { ip 17 }

          ipFragFails OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of IP datagrams that have been
                      discarded because they needed to be fragmented at
                      this entity but could not be, e.g., because their
                      Don't Fragment flag was set."
              ::= { ip 18 }

          ipFragCreates OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of IP datagram fragments that have
                      been generated as a result of fragmentation at
                      this entity."
              ::= { ip 19 }


          -- the IP address table

          ipAddrTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF IpAddrEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "The table of addressing information relevant to
                      this entity's IP addresses."
              ::= { ip 20 }

          ipAddrEntry OBJECT-TYPE
              SYNTAX  IpAddrEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "The addressing information for one of this
                      entity's IP addresses."
              INDEX   { ipAdEntAddr }
              ::= { ipAddrTable 1 }

          IpAddrEntry ::=
              SEQUENCE {
                  ipAdEntAddr
                      IpAddress,
                  ipAdEntIfIndex
                      INTEGER,
                  ipAdEntNetMask
                      IpAddress,
                  ipAdEntBcastAddr
                      INTEGER,
                  ipAdEntReasmMaxSize
                      INTEGER (0..65535)
              }

          ipAdEntAddr OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The IP address to which this entry's addressing
                      information pertains."
              ::= { ipAddrEntry 1 }

          ipAdEntIfIndex OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The index value which uniquely identifies the
                      interface to which this entry is applicable.  The
                      interface identified by a particular value of this
                      index is the same interface as identified by the
                      same value of ifIndex."
              ::= { ipAddrEntry 2 }

          ipAdEntNetMask OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The subnet mask associated with the IP address of
                      this entry.  The value of the mask is an IP
                      address with all the network bits set to 1 and all
                      the hosts bits set to 0."
              ::= { ipAddrEntry 3 }

          ipAdEntBcastAddr OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The value of the least-significant bit in the IP
                      broadcast address used for sending datagrams on
                      the (logical) interface associated with the IP
                      address of this entry.  For example, when the
                      Internet standard all-ones broadcast address is
                      used, the value will be 1.  This value applies to
                      both the subnet and network broadcasts addresses
                      used by the entity on this (logical) interface."
              ::= { ipAddrEntry 4 }

          ipAdEntReasmMaxSize OBJECT-TYPE
              SYNTAX  INTEGER (0..65535)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The size of the largest IP datagram which this
                      entity can re-assemble from incoming IP fragmented
                      datagrams received on this interface."
              ::= { ipAddrEntry 5 }


          -- the IP routing table

          ipRouteTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF IpRouteEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "This entity's IP Routing table."
              ::= { ip 21 }

          ipRouteEntry OBJECT-TYPE
              SYNTAX  IpRouteEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A route to a particular destination."
              INDEX   { ipRouteDest }
              ::= { ipRouteTable 1 }

          IpRouteEntry ::=
              SEQUENCE {
                  ipRouteDest
                      IpAddress,
                  ipRouteIfIndex
                      INTEGER,
                  ipRouteMetric1
                      INTEGER,
                  ipRouteMetric2
                      INTEGER,
                  ipRouteMetric3
                      INTEGER,
                  ipRouteMetric4
                      INTEGER,
                  ipRouteNextHop
                      IpAddress,
                  ipRouteType
                      INTEGER,
                  ipRouteProto
                      INTEGER,
                  ipRouteAge
                      INTEGER,
                  ipRouteMask
                      IpAddress,
                  ipRouteMetric5
                      INTEGER,
                  ipRouteInfo
                      OBJECT IDENTIFIER
              }

          ipRouteDest OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The destination IP address of this route.  An
                      entry with a value of 0.0.0.0 is considered a
                      default route.  Multiple routes to a single
                      destination can appear in the table, but access to
                      such multiple entries is dependent on the table-
                      access mechanisms defined by the network
                      management protocol in use."
              ::= { ipRouteEntry 1 }

          ipRouteIfIndex OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The index value which uniquely identifies the
                      local interface through which the next hop of this
                      route should be reached.  The interface identified
                      by a particular value of this index is the same
                      interface as identified by the same value of
                      ifIndex."
              ::= { ipRouteEntry 2 }

          ipRouteMetric1 OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The primary routing metric for this route.  The
                      semantics of this metric are determined by the
                      routing-protocol specified in the route's
                      ipRouteProto value.  If this metric is not used,
                      its value should be set to -1."
              ::= { ipRouteEntry 3 }

          ipRouteMetric2 OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "An alternate routing metric for this route.  The
                      semantics of this metric are determined by the
                      routing-protocol specified in the route's
                      ipRouteProto value.  If this metric is not used,
                      its value should be set to -1."
              ::= { ipRouteEntry 4 }

          ipRouteMetric3 OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "An alternate routing metric for this route.  The
                      semantics of this metric are determined by the
                      routing-protocol specified in the route's
                      ipRouteProto value.  If this metric is not used,
                      its value should be set to -1."
              ::= { ipRouteEntry 5 }

          ipRouteMetric4 OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "An alternate routing metric for this route.  The
                      semantics of this metric are determined by the
                      routing-protocol specified in the route's
                      ipRouteProto value.  If this metric is not used,
                      its value should be set to -1."
              ::= { ipRouteEntry 6 }

          ipRouteNextHop OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The IP address of the next hop of this route.
                      (In the case of a route bound to an interface
                      which is realized via a broadcast media, the value
                      of this field is the agent's IP address on that
                      interface.)"
              ::= { ipRouteEntry 7 }

          ipRouteType OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The type of route.  Note that the values
                      direct(3) and indirect(4) refer to the notion of
                      direct and indirect routing in the IP
                      architecture.

                      Setting this object to the value invalid(2) has
                      the effect of invalidating the corresponding entry
                      in the ipRouteTable object.  That is, it
                      effectively dissasociates the destination
                      identified with said entry from the route
                      identified with said entry.  It is an
                      implementation-specific matter as to whether the
                      agent removes an invalidated entry from the table.
                      Accordingly, management stations must be prepared
                      to receive tabular information from agents that
                      corresponds to entries not currently in use.
                      Proper interpretation of such entries requires
                      examination of the relevant ipRouteType object."
              ::= { ipRouteEntry 8 }

          ipRouteProto OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The routing mechanism via which this route was
                      learned.  Inclusion of values for gateway routing
                      protocols is not intended to imply that hosts
                      should support those protocols."
              ::= { ipRouteEntry 9 }

          ipRouteAge OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The number of seconds since this route was last
                      updated or otherwise determined to be correct.
                      Note that no semantics of `too old' can be implied
                      except through knowledge of the routing protocol
                      by which the route was learned."
              ::= { ipRouteEntry 10 }

          ipRouteMask OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "Indicate the mask to be logical-ANDed with the
                      destination address before being compared to the
                      value in the ipRouteDest field.  For those systems
                      that do not support arbitrary subnet masks, an
                      agent constructs the value of the ipRouteMask by
                      determining whether the value of the correspondent
                      ipRouteDest field belong to a class-A, B, or C
                      network, and then using one of:

                           mask           network
                           255.0.0.0      class-A
                           255.255.0.0    class-B
                           255.255.255.0  class-C

                      If the value of the ipRouteDest is 0.0.0.0 (a
                      default route), then the mask value is also
                      0.0.0.0.  It should be noted that all IP routing
                      subsystems implicitly use this mechanism."
              ::= { ipRouteEntry 11 }

          ipRouteMetric5 OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "An alternate routing metric for this route.  The
                      semantics of this metric are determined by the
                      routing-protocol specified in the route's
                      ipRouteProto value.  If this metric is not used,
                      its value should be set to -1."
              ::= { ipRouteEntry 12 }

          ipRouteInfo OBJECT-TYPE
              SYNTAX  OBJECT IDENTIFIER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "A reference to MIB definitions specific to the
                      particular routing protocol which is responsible
                      for this route, as determined by the value
                      specified in the route's ipRouteProto value.  If
                      this information is not present, its value should
                      be set to the OBJECT IDENTIFIER { 0 0 }, which is
                      a syntatically valid object identifier, and any
                      conformant implementation of ASN.1 and BER must be
                      able to generate and recognize this value."
              ::= { ipRouteEntry 13 }


          -- the IP Address Translation table

          ipNetToMediaTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF IpNetToMediaEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "The IP Address Translation table used for mapping
                      from IP addresses to physical addresses."
              ::= { ip 22 }

          ipNetToMediaEntry OBJECT-TYPE
              SYNTAX  IpNetToMediaEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "Each entry contains one IpAddress to `physical'
                      address equivalence."
              INDEX   { ipNetToMediaIfIndex,
			ipNetToMediaNetAddress }
              ::= { ipNetToMediaTable 1 }

          IpNetToMediaEntry ::=
              SEQUENCE {
                  ipNetToMediaIfIndex
                      INTEGER,
                  ipNetToMediaPhysAddress
                      OCTET STRING,
                  ipNetToMediaNetAddress
                      IpAddress,
                  ipNetToMediaType
                      INTEGER
              }

          ipNetToMediaIfIndex OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The interface on which this entry's equivalence
                      is effective.  The interface identified by a
                      particular value of this index is the same
                      interface as identified by the same value of
                      ifIndex."
              ::= { ipNetToMediaEntry 1 }

          ipNetToMediaPhysAddress OBJECT-TYPE
              SYNTAX  OCTET STRING
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The media-dependent `physical' address."
              ::= { ipNetToMediaEntry 2 }

          ipNetToMediaNetAddress OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The IpAddress corresponding to the media-
                      dependent `physical' address."
              ::= { ipNetToMediaEntry 3 }

          ipNetToMediaType OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The type of mapping.

                      Setting this object to the value invalid(2) has
                      the effect of invalidating the corresponding entry
                      in the ipNetToMediaTable.  That is, it effectively
                      dissasociates the interface identified with said
                      entry from the mapping identified with said entry.
                      It is an implementation-specific matter as to
                      whether the agent removes an invalidated entry
                      from the table.  Accordingly, management stations
                      must be prepared to receive tabular information
                      from agents that corresponds to entries not
                      currently in use.  Proper interpretation of such
                      entries requires examination of the relevant
                      ipNetToMediaType object."
              ::= { ipNetToMediaEntry 4 }


          -- additional IP objects

          ipRoutingDiscards OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of routing entries which were chosen
                      to be discarded even though they are valid.  One
                      possible reason for discarding such an entry could
                      be to free-up buffer space for other routing
                      entries."
              ::= { ip 23 }


          -- the ICMP group

          icmpInMsgs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of ICMP messages which the
                      entity received.  Note that this counter includes
                      all those counted by icmpInErrors."
              ::= { icmp 1 }

          icmpInErrors OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP messages which the entity
                      received but determined as having ICMP-specific
                      errors (bad ICMP checksums, bad length, etc.)."
              ::= { icmp 2 }

          icmpInDestUnreachs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Destination Unreachable
                      messages received."
              ::= { icmp 3 }

          icmpInTimeExcds OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Time Exceeded messages
                      received."
              ::= { icmp 4 }

          icmpInParmProbs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Parameter Problem messages
                      received."
              ::= { icmp 5 }

          icmpInSrcQuenchs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Source Quench messages
                      received."
              ::= { icmp 6 }

          icmpInRedirects OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Redirect messages received."
              ::= { icmp 7 }

          icmpInEchos OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Echo (request) messages
                      received."
              ::= { icmp 8 }

          icmpInEchoReps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Echo Reply messages received."
              ::= { icmp 9 }

          icmpInTimestamps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Timestamp (request) messages
                      received."
              ::= { icmp 10 }

          icmpInTimestampReps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Timestamp Reply messages
                      received."
              ::= { icmp 11 }

          icmpInAddrMasks OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Address Mask Request messages
                      received."
              ::= { icmp 12 }

          icmpInAddrMaskReps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Address Mask Reply messages
                      received."
              ::= { icmp 13 }

          icmpOutMsgs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of ICMP messages which this
                      entity attempted to send.  Note that this counter
                      includes all those counted by icmpOutErrors."
              ::= { icmp 14 }

          icmpOutErrors OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP messages which this entity did
                      not send due to problems discovered within ICMP
                      such as a lack of buffers.  This value should not
                      include errors discovered outside the ICMP layer
                      such as the inability of IP to route the resultant
                      datagram.  In some implementations there may be no
                      types of error which contribute to this counter's
                      value."
              ::= { icmp 15 }

          icmpOutDestUnreachs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Destination Unreachable
                      messages sent."
              ::= { icmp 16 }

          icmpOutTimeExcds OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Time Exceeded messages sent."
              ::= { icmp 17 }

          icmpOutParmProbs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Parameter Problem messages
                      sent."
              ::= { icmp 18 }

          icmpOutSrcQuenchs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Source Quench messages sent."
              ::= { icmp 19 }

          icmpOutRedirects OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Redirect messages sent.  For a
                      host, this object will always be zero, since hosts
                      do not send redirects."
              ::= { icmp 20 }

          icmpOutEchos OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Echo (request) messages sent."
              ::= { icmp 21 }

          icmpOutEchoReps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Echo Reply messages sent."
              ::= { icmp 22 }

          icmpOutTimestamps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Timestamp (request) messages
                      sent."
              ::= { icmp 23 }

          icmpOutTimestampReps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Timestamp Reply messages
                      sent."
              ::= { icmp 24 }

          icmpOutAddrMasks OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Address Mask Request messages
                      sent."
              ::= { icmp 25 }

          icmpOutAddrMaskReps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of ICMP Address Mask Reply messages
                      sent."
              ::= { icmp 26 }


          -- the TCP group

          tcpRtoAlgorithm OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The algorithm used to determine the timeout value
                      used for retransmitting unacknowledged octets."
              ::= { tcp 1 }

          tcpRtoMin OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The minimum value permitted by a TCP
                      implementation for the retransmission timeout,
                      measured in milliseconds.  More refined semantics
                      for objects of this type depend upon the algorithm
                      used to determine the retransmission timeout.  In
                      particular, when the timeout algorithm is rsre(3),
                      an object of this type has the semantics of the
                      LBOUND quantity described in RFC 793."
              ::= { tcp 2 }

          tcpRtoMax OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The maximum value permitted by a TCP
                      implementation for the retransmission timeout,
                      measured in milliseconds.  More refined semantics
                      for objects of this type depend upon the algorithm
                      used to determine the retransmission timeout.  In
                      particular, when the timeout algorithm is rsre(3),
                      an object of this type has the semantics of the
                      UBOUND quantity described in RFC 793."
              ::= { tcp 3 }

          tcpMaxConn OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The limit on the total number of TCP connections
                      the entity can support.  In entities where the
                      maximum number of connections is dynamic, this
                      object should contain the value -1."
              ::= { tcp 4 }

          tcpActiveOpens OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of times TCP connections have made a
                      direct transition to the SYN-SENT state from the
                      CLOSED state."
              ::= { tcp 5 }

          tcpPassiveOpens OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of times TCP connections have made a
                      direct transition to the SYN-RCVD state from the
                      LISTEN state."
              ::= { tcp 6 }

          tcpAttemptFails OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of times TCP connections have made a
                      direct transition to the CLOSED state from either
                      the SYN-SENT state or the SYN-RCVD state, plus the
                      number of times TCP connections have made a direct
                      transition to the LISTEN state from the SYN-RCVD
                      state."
              ::= { tcp 7 }

          tcpEstabResets OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of times TCP connections have made a
                      direct transition to the CLOSED state from either
                      the ESTABLISHED state or the CLOSE-WAIT state."
              ::= { tcp 8 }

          tcpCurrEstab OBJECT-TYPE
              SYNTAX  Gauge
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of TCP connections for which the
                      current state is either ESTABLISHED or CLOSE-
                      WAIT."
              ::= { tcp 9 }

          tcpInSegs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of segments received, including
                      those received in error.  This count includes
                      segments received on currently established
                      connections."
              ::= { tcp 10 }

          tcpOutSegs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of segments sent, including
                      those on current connections but excluding those
                      containing only retransmitted octets."
              ::= { tcp 11 }

          tcpRetransSegs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of segments retransmitted - that
                      is, the number of TCP segments transmitted
                      containing one or more previously transmitted
                      octets."
              ::= { tcp 12 }

          -- the TCP Connection table

          tcpConnTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF TcpConnEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table containing TCP connection-specific
                      information."
              ::= { tcp 13 }

          tcpConnEntry OBJECT-TYPE
              SYNTAX  TcpConnEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "Information about a particular current TCP
                      connection.  An object of this type is transient,
                      in that it ceases to exist when (or soon after)
                      the connection makes the transition to the CLOSED
                      state."
              INDEX   { tcpConnLocalAddress,
			tcpConnLocalPort,
			tcpConnRemAddress,
			tcpConnRemPort }
              ::= { tcpConnTable 1 }

          TcpConnEntry ::=
              SEQUENCE {
                  tcpConnState
                      INTEGER,
                  tcpConnLocalAddress
                      IpAddress,
                  tcpConnLocalPort
                      INTEGER (0..65535),
                  tcpConnRemAddress
                      IpAddress,
                  tcpConnRemPort
                      INTEGER (0..65535)
              }

          tcpConnState OBJECT-TYPE
              SYNTAX  INTEGER {
                          closed(1),
                          listen(2),
                          synSent(3),
                          synReceived(4),
                          established(5),
                          finWait1(6),
                          finWait2(7),
                          closeWait(8),
                          lastAck(9),
                          closing(10),
                          timeWait(11),
                          deleteTCB(12)
                      }
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "The state of this TCP connection.

                      The only value which may be set by a management
                      station is deleteTCB(12).  Accordingly, it is
                      appropriate for an agent to return a `badValue'
                      response if a management station attempts to set
                      this object to any other value.

                      If a management station sets this object to the
                      value deleteTCB(12), then this has the effect of
                      deleting the TCB (as defined in RFC 793) of the
                      corresponding connection on the managed node,
                      resulting in immediate termination of the
                      connection.

                      As an implementation-specific option, a RST
                      segment may be sent from the managed node to the
                      other TCP endpoint (note however that RST segments
                      are not sent reliably)."
              ::= { tcpConnEntry 1 }

          tcpConnLocalAddress OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The local IP address for this TCP connection.  In
                      the case of a connection in the listen state which
                      is willing to accept connections for any IP
                      interface associated with the node, the value
                      0.0.0.0 is used."
              ::= { tcpConnEntry 2 }

          tcpConnLocalPort OBJECT-TYPE
              SYNTAX  INTEGER (0..65535)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The local port number for this TCP connection."
              ::= { tcpConnEntry 3 }

          tcpConnRemAddress OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The remote IP address for this TCP connection."
              ::= { tcpConnEntry 4 }

          tcpConnRemPort OBJECT-TYPE
              SYNTAX  INTEGER (0..65535)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The remote port number for this TCP connection."
              ::= { tcpConnEntry 5 }


          -- additional TCP objects

          tcpInErrs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of segments received in error
                      (e.g., bad TCP checksums)."
              ::= { tcp 14 }

          tcpOutRsts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of TCP segments sent containing the
                      RST flag."
              ::= { tcp 15 }

          -- the UDP group

          udpInDatagrams OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of UDP datagrams delivered to
                      UDP users."
              ::= { udp 1 }

          udpNoPorts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of received UDP datagrams for
                      which there was no application at the destination
                      port."
              ::= { udp 2 }

          udpInErrors OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The number of received UDP datagrams that could
                      not be delivered for reasons other than the lack
                      of an application at the destination port."
              ::= { udp 3 }

          udpOutDatagrams OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of UDP datagrams sent from this
                      entity."
              ::= { udp 4 }


          -- the UDP Listener table

          udpTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF UdpEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "A table containing UDP listener information."
              ::= { udp 5 }

          udpEntry OBJECT-TYPE
              SYNTAX  UdpEntry
              ACCESS  not-accessible
              STATUS  mandatory
              DESCRIPTION
                      "Information about a particular current UDP
                      listener."
              INDEX   { udpLocalAddress,
			udpLocalPort }
              ::= { udpTable 1 }

          UdpEntry ::=
              SEQUENCE {
                  udpLocalAddress
                      IpAddress,
                  udpLocalPort
                      INTEGER (0..65535)
              }

          udpLocalAddress OBJECT-TYPE
              SYNTAX  IpAddress
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The local IP address for this UDP listener.  In
                      the case of a UDP listener which is willing to
                      accept datagrams for any IP interface associated
                      with the node, the value 0.0.0.0 is used."
              ::= { udpEntry 1 }

          udpLocalPort OBJECT-TYPE
              SYNTAX  INTEGER (0..65535)
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The local port number for this UDP listener."
              ::= { udpEntry 2 }


          -- the SNMP group

          snmpInPkts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of Messages delivered to the
                      SNMP entity from the transport service."
              ::= { snmp 1 }

          snmpOutPkts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Messages which were
                      passed from the SNMP protocol entity to the
                      transport service."
              ::= { snmp 2 }

          snmpInBadVersions OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Messages which were
                      delivered to the SNMP protocol entity and were for
                      an unsupported SNMP version."
              ::= { snmp 3 }

          snmpInBadCommunityNames OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Messages delivered to
                      the SNMP protocol entity which used a SNMP
                      community name not known to said entity."
              ::= { snmp 4 }

          snmpInBadCommunityUses OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Messages delivered to
                      the SNMP protocol entity which represented an SNMP
                      operation which was not allowed by the SNMP
                      community named in the Message."
              ::= { snmp 5 }

          snmpInASNParseErrs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of ASN.1 or BER errors
                      encountered by the SNMP protocol entity when
                      decoding received SNMP Messages."
              ::= { snmp 6 }

          -- { snmp 7 } is not used

          snmpInTooBigs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      delivered to the SNMP protocol entity and for
                      which the value of the error-status field is
                      `tooBig'."
              ::= { snmp 8 }

          snmpInNoSuchNames OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      delivered to the SNMP protocol entity and for
                      which the value of the error-status field is
                      `noSuchName'."
              ::= { snmp 9 }

          snmpInBadValues OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      delivered to the SNMP protocol entity and for
                      which the value of the error-status field is
                      `badValue'."
              ::= { snmp 10 }

          snmpInReadOnlys OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number valid SNMP PDUs which were
                      delivered to the SNMP protocol entity and for
                      which the value of the error-status field is
                      `readOnly'.  It should be noted that it is a
                      protocol error to generate an SNMP PDU which
                      contains the value `readOnly' in the error-status
                      field, as such this object is provided as a means
                      of detecting incorrect implementations of the
                      SNMP."
              ::= { snmp 11 }

          snmpInGenErrs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      delivered to the SNMP protocol entity and for
                      which the value of the error-status field is
                      `genErr'."
              ::= { snmp 12 }

          snmpInTotalReqVars OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of MIB objects which have been
                      retrieved successfully by the SNMP protocol entity
                      as the result of receiving valid SNMP Get-Request
                      and Get-Next PDUs."
              ::= { snmp 13 }

          snmpInTotalSetVars OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of MIB objects which have been
                      altered successfully by the SNMP protocol entity
                      as the result of receiving valid SNMP Set-Request
                      PDUs."
              ::= { snmp 14 }

          snmpInGetRequests OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Get-Request PDUs which
                      have been accepted and processed by the SNMP
                      protocol entity."
              ::= { snmp 15 }

          snmpInGetNexts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Get-Next PDUs which have
                      been accepted and processed by the SNMP protocol
                      entity."
              ::= { snmp 16 }

          snmpInSetRequests OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Set-Request PDUs which
                      have been accepted and processed by the SNMP
                      protocol entity."
              ::= { snmp 17 }

          snmpInGetResponses OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Get-Response PDUs which
                      have been accepted and processed by the SNMP
                      protocol entity."
              ::= { snmp 18 }

          snmpInTraps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Trap PDUs which have
                      been accepted and processed by the SNMP protocol
                      entity."
              ::= { snmp 19 }

          snmpOutTooBigs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      generated by the SNMP protocol entity and for
                      which the value of the error-status field is
                      `tooBig.'"
              ::= { snmp 20 }

          snmpOutNoSuchNames OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      generated by the SNMP protocol entity and for
                      which the value of the error-status is
                      `noSuchName'."
              ::= { snmp 21 }

          snmpOutBadValues OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      generated by the SNMP protocol entity and for
                      which the value of the error-status field is
                      `badValue'."
              ::= { snmp 22 }

          -- { snmp 23 } is not used

          snmpOutGenErrs OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP PDUs which were
                      generated by the SNMP protocol entity and for
                      which the value of the error-status field is
                      `genErr'."
              ::= { snmp 24 }

          snmpOutGetRequests OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Get-Request PDUs which
                      have been generated by the SNMP protocol entity."
              ::= { snmp 25 }

          snmpOutGetNexts OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Get-Next PDUs which have
                      been generated by the SNMP protocol entity."
              ::= { snmp 26 }

          snmpOutSetRequests OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Set-Request PDUs which
                      have been generated by the SNMP protocol entity."
              ::= { snmp 27 }

          snmpOutGetResponses OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Get-Response PDUs which
                      have been generated by the SNMP protocol entity."
              ::= { snmp 28 }

          snmpOutTraps OBJECT-TYPE
              SYNTAX  Counter
              ACCESS  read-only
              STATUS  mandatory
              DESCRIPTION
                      "The total number of SNMP Trap PDUs which have
                      been generated by the SNMP protocol entity."
              ::= { snmp 29 }

          snmpEnableAuthenTraps OBJECT-TYPE
              SYNTAX  INTEGER { enabled(1), disabled(2) }
              ACCESS  read-only  
              STATUS  mandatory
              DESCRIPTION
                      "Indicates whether the SNMP agent process is
                      permitted to generate authentication-failure
                      traps.  The value of this object overrides any
                      configuration information; as such, it provides a
                      means whereby all authentication-failure traps may
                      be disabled.

                      Note that it is strongly recommended that this
                      object be stored in non-volatile memory so that it
                      remains constant between re-initializations of the
                      network management system.

                      For JetDirect, this object is only implemented for
                      agents which include a tcpip stack.  This is generally
                      the case, but with the advent of NOVELL only products
                      this object will not be available."

              ::= { snmp 30 }

	  -- The ATPort Group

          atportTable OBJECT-TYPE
                  SYNTAX SEQUENCE OF AtportEntry
                  ACCESS not-accessible
                  STATUS mandatory
                  DESCRIPTION
                      "A list of AppleTalk ports for this entity."
                  ::= { atport 1 }

          atportEntry OBJECT-TYPE
                  SYNTAX AtportEntry
                  ACCESS not-accessible
                  STATUS mandatory
                  DESCRIPTION
                      "The description of one of the AppleTalk
                      ports on this entity."
                  INDEX { atportIndex }


                  ::= { atportTable 1 }

          AtportEntry ::= SEQUENCE {
                  atportIndex               INTEGER,
                  atportDescr               DisplayString,
                  atportType                INTEGER,
                  atportNetStart            OCTET STRING (SIZE(2)),
                  atportNetEnd              OCTET STRING (SIZE(2)),
                  atportNetAddress          DdpAddress,
                  atportStatus              INTEGER,
                  atportNetConfig           INTEGER,
                  atportZoneConfig          INTEGER,
                  atportZone                OCTET STRING,
                  atportIfIndex             INTEGER
          }

          atportIndex OBJECT-TYPE
                  SYNTAX INTEGER
                  ACCESS read-only
                  STATUS mandatory
                  DESCRIPTION
                      "A unique value for each AppleTalk port.
                      Its value is between 1 and the total number of
                      AppleTalk ports.  The value for each port must
                      remain constant at least from the
                      re-initialization of the entity's network
		      management system to the next
                      re-initialization."
                  ::= { atportEntry 1 }

          atportDescr OBJECT-TYPE
                  SYNTAX DisplayString
                  ACCESS read-only
                  STATUS mandatory
                  DESCRIPTION
                      "A text string containing information about the
                      port.  This string is intended for presentation
                      to a human; it must not contain anything but
                      printable ASCII characters."
                  ::= { atportEntry 2 }

          atportType OBJECT-TYPE
                  SYNTAX INTEGER {
                       other(1),       -- none of the following
                       localtalk(2),
                       ethertalk1(3),
                       ethertalk2(4),
                       tokentalk(5),


                       iptalk(6),
                       serial-ppp(7),
                       serial-nonstandard(8),
                       virtual(9)
                  }
                  ACCESS read-write
                  STATUS mandatory
                  DESCRIPTION
                      "The type of port, distinguished by the protocol
                      immediately below DDP in the protocol stack."
                  ::= { atportEntry 3 }

          atportNetStart OBJECT-TYPE
                  SYNTAX OCTET STRING (SIZE(2))
                  ACCESS read-write
                  STATUS mandatory
                  DESCRIPTION
                      "The first AppleTalk network address in the range
                      configured for this port.  This is a two octet
                      DDP network address in network byte order."
                  ::= { atportEntry 4 }

	  atportNetEnd OBJECT-TYPE
                  SYNTAX OCTET STRING (SIZE(2))
                  ACCESS read-write
                  STATUS mandatory
                  DESCRIPTION
                      "The last AppleTalk network address in the range
                      configured for this port.  This is a two octet
                      DDP network address in network byte order.  If the
                      network to which this AppleTalk port is
                      connected is a Phase 1 network or a non-extended
                      network, the value for atportNetEnd shall be two
                      octets of zero."
                  ::= { atportEntry 5 }

          atportNetAddress OBJECT-TYPE
                  SYNTAX DdpAddress
                  ACCESS read-write
                  STATUS mandatory
                  DESCRIPTION
                      "The AppleTalk network address configured for this
                      port."
                  ::= { atportEntry 6 }

          atportStatus OBJECT-TYPE
                  SYNTAX INTEGER {
                       operational(1),
                       unconfigured(2),
                       off(3),
                       invalid(4)
                  }
                  ACCESS read-write
                  STATUS mandatory
                  DESCRIPTION
                      "The configuration status of this port.

                      Setting this object to the value invalid(4)
                      has the effect of invalidating the corresponding
                      entry in the atportTable.  That is, it
                      effectively disassociates the mapping identified
                      with said entry.  It is an
                      implementation-specific matter as to whether the
                      agent removes an invalidated entry from the table.
                      Accordingly, management stations must be
                      prepared to receive from agents tabular
                      information corresponding to entries not
                      currently in use.  Proper interpretation of such
                      entries requires examination of the relevant
                      atportStatus object."
                          ::= { atportEntry 7 }

          atportNetConfig OBJECT-TYPE
                  SYNTAX INTEGER {
                      configured(1),  -- explicit configuration.
                      garnered(2),    -- assumed from inspection of net.
                      guessed(3),     -- a "random" configuration.
                      unconfigured(4)
                  }
                  ACCESS read-only
                  STATUS mandatory
                  DESCRIPTION
                      "The configuration status of this port."
                  ::= { atportEntry 8 }

          atportZoneConfig OBJECT-TYPE
                  SYNTAX INTEGER {
                      configured(1),  -- explicit configuration
                      garnered(2),    -- assumed from inspection of net
                      guessed(3),     -- a "random" configuration.
                      unconfigured(4)
                  }
                  ACCESS read-only
                  STATUS mandatory
                  DESCRIPTION
                      "The configuration status of the zone information


                      for this port."
                  ::= { atportEntry 9 }

          atportZone OBJECT-TYPE
                  SYNTAX OCTET STRING
                  ACCESS read-write
                  STATUS mandatory
                  DESCRIPTION
                      "The zone name configured for this AppleTalk port."
                  ::= { atportEntry 10 }

          atportIfIndex OBJECT-TYPE
                  SYNTAX INTEGER
                  ACCESS read-write
                  STATUS mandatory
                  DESCRIPTION
                      "The physical interface associated with this
                      AppleTalk port.  The interface identified by a
                      particular value of this index is the same
                      interface as identified by the same value of
                      ifIndex."
                  ::= { atportEntry 11 }

-- End of MIB-II objects
-- Printer MIB prefixes
-- 	printmib_oid[] = 	{ 1,3,6,1,2,1,43};
-- 	printmib_oid_end[] =    { 1,3,6,1,2,1,44};

-- Start HP proprietary objects

-- The Status Group

gdStatusBytes OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of valid bytes in the gdStatusEntry
         array."
    ::={ generalDeviceStatus 1 }

gdStatusEntry OBJECT-TYPE
    SYNTAX  OCTET STRING 
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "The networked peripheral's 32 octet status
         information that is shared between the peripheral
         and the LAN card."
    ::={ generalDeviceStatus 2 }

GdStatusEntry ::=
    SEQUENCE {
        gdStatusLineState
            INTEGER,
        gdStatusPaperState
            INTEGER,
        gdStatusInterventionState
            INTEGER,
        gdStatusNewMode
            INTEGER,
        gdStatusConnectionTerminationAck
            INTEGER,
        gdStatusPeripheralError
            INTEGER,
        gdStatusPaperOut
            INTEGER,
        gdStatusPaperJam
            INTEGER,
        gdStatusTonerLow
            INTEGER,
        gdStatusPagePunt
            INTEGER,
        gdStatusMemoryOut
            INTEGER,
        gdStatusIoActive
            INTEGER,
        gdStatusBusy
            INTEGER,
        gdStatusWait
            INTEGER,
        gdStatusInitialize
            INTEGER,
        gdStatusDoorOpen
            INTEGER,
        gdStatusPrinting
            INTEGER,
        gdStatusPaperOutput
            INTEGER,
        gdStatusReserved
            OCTET STRING,
        gdStatusNovBusy
            INTEGER,
        gdStatusLlcBusy
            INTEGER,
        gdStatusTcpBusy
            INTEGER,
        gdStatusAtBusy
            INTEGER
}

gdStatusLineState OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This describes the line state of the peripheral.
         When non-zero, the peripheral is off-line.  When
         zero the peripheral is on-line."
    ::={ gdStatusEntry 1 }

gdStatusPaperState OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This describes the state of the paper on the peripheral.
         When non-zero, the peripheral has a paper problem. When
         zero, the peripheral does not have a paper problem."
    ::={ gdStatusEntry 2 }

gdStatusInterventionState OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This describes the intervention state of the
         peripheral.  When non-zero, the peripheral requires
         human intervention to continue working.  When
         zero, it requires no assistance."
    ::={ gdStatusEntry 3 }

gdStatusNewMode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates to which read channel state the
         card should move.  When non-zero, the card should
         indicate that the read channel is idle.  When zero,
         the card should indicate that the read channel is
         operating.  This object is Lan Manager io channel 
         specific.  It is kept here for backward compatibility."
    ::={ gdStatusEntry 4 }

gdStatusConnectionTerminationAck OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates whether the peripheral is waiting for
         the Connection termination ACK.  When non-zero, it
         is waiting.  When zero, it is not waiting."
    ::={ gdStatusEntry 5 }

gdStatusPeripheralError OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the error code from the peripheral."
    ::={ gdStatusEntry 6 }

gdStatusPaperOut OBJECT-TYPE
    SYNTAX  INTEGER 
--                OFF(0),
--                PAPER-OUT-OR-PAPER-MOUNT(1),
--                MANUAL-PAPER-FEED-NEEDED(2)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral is out of paper.

         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 8 }

gdStatusPaperJam OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              PAPER-JAM(1)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral has a paper jam.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 9 }

gdStatusTonerLow OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              TONER-LOW(1),
--              NO-TONER-CARTRIDGE(2)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral has a low toner condition.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 10 }

gdStatusPagePunt OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral did not receive data fast
         enough to keep up with the print engine when generating a page.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 11 }

gdStatusMemoryOut OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral did not have enough memory
         to render an image on a page.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 12 }

gdStatusIoActive OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral is processing data from
         this I/O interface card.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 13 }

gdStatusBusy OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral is busy processing
         print/plot data.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 14 }

gdStatusWait OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral is waiting for print/plot
         data to process.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 15 }

gdStatusInitialize OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              INITIALIZING(1),
--              WARM-UP(2)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral is initializing or
         warming up.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 16 }

gdStatusDoorOpen OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral cover or door is open.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 17 }

gdStatusPrinting OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              ORDINARY-PAGE(1),
--              TEST-FONTS-CONFIG-OR-START-PAGE(2)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral is printing or otherwise
         marking or moving paper.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 18 }

gdStatusPaperOutput OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              OUTPUT-STORAGE-FULL(1)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the peripheral has a paper output problem
         such as the output storage bin being full.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this value is always a zero (0)."
    ::={ gdStatusEntry 19 }

gdStatusReserved OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE (0..13))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the reserved area that is not currently
         used, but will allow for growth within the gdStatusEntry table."
    ::={ gdStatusEntry 20 }

gdStatusNovBusy OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates if this channel is active.  If the 
         value is 0 then this channel is active or the peripheral
         is idle.  If this value is non-zero then another channel
         is active.  This is the Novell io channel"
    ::={ gdStatusEntry 21 }

gdStatusLlcBusy OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates if this channel is active.  If the 
         value is 0 then this channel is active or the peripheral
         is idle.  If this value is non-zero then another channel
         is active.  This is the LLC io channel"
    ::={ gdStatusEntry 22 }

gdStatusTcpBusy OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates if this channel is active.  If the 
         value is 0 then this channel is active or the peripheral
         is idle.  If this value is non-zero then another channel
         is active.  This is the TCP io channel"
    ::={ gdStatusEntry 23 }

gdStatusAtBusy OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates if this channel is active.  If the 
         value is 0 then this channel is active or the peripheral
         is idle.  If this value is non-zero then another channel
         is active.  This is the Apple talk io channel"
    ::={ gdStatusEntry 24 }

gdStatusDisplay OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The string diplayed on the peripheral front panel.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this is always a zero length string."
    ::={ generalDeviceStatus 3 }

gdStatusJobName OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The current job name set by the peripheral.
         For some peripherals, such as the HP LaserJet IIISi printer
         or HP DesignJet plotter, this is always a zero length string."
    ::={ generalDeviceStatus 4 }

gdStatusSource OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "A string indicating the name of the physical port or protocol
         the printer is currently getting data from."
    ::={ generalDeviceStatus 5 }

gdStatusPapstatus OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "A string indicating the Appletalk papstatus response."
    ::={ generalDeviceStatus 6 }

gdStatusId OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "A formatted string describing this peripheral."
    ::={ generalDeviceStatus 7 }

gdStatusDisplayCode OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the display code that the peripheral uses
         to tell the card what type of display the front
         panel of the printer is."
    ::={ generalDeviceStatus 8 }

gdStatusNlsCode OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This value is the representation of what native
         language the printer is in currently."
    ::={ generalDeviceStatus 9 }

gdStatusJobTimeout OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This value represents (in seconds) the maximum time of
         inactivity which must elapse before the JetDirect card
         switches from the current network protocol to another when
         a normal end of job is not detected."
    ::={ generalDeviceStatus 10 }

gdStatusPjlUstatus OBJECT-TYPE
    SYNTAX  INTEGER
--                  DISABLED(0),
--                  ENABLED(1)
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This object will enable/disable PJL ustatus."
    ::={ generalDeviceStatus 11 }

gdStatusLaaSupport OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This value represents what protocols Locally Administered
         addressing is supported over.  This is currently 0 for
         802.3 cards and 7 for 802.5 cards.  LAA is not supported
         on 802.3.  The value is a mask of bits, 1 for each of the
         protocols below. 
         +-----------------------------------------------+
         | NA  | NA  | NA  | NA  | NA  | TCP | LLC | NOV |
         +-----------------------------------------------+"
    ::={ generalDeviceStatus 12 }


gdPasswords OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE (0..255))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This object is used as a 256 byte NVRAM area for JetAdmin.  It
         is completely managed by JetAdmin.  Initially it is initialized
         to all zeros.  A coldboot will re-initialize to all zeros."
    ::={ generalDeviceStatus 13 }
   
-- the following objects are not supported after EX+3.
-- They were moved to the npPort sub-tree. In the EX+3 box,
-- they appear in both sub-trees.

npPortNumPorts OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "iThe number of peripheral interfaces supported by this device "
    ::={ generalDeviceStatus 14 }

npPortType OBJECT-TYPE
    SYNTAX  INTEGER
--                unknown(1),
--                MIO(2),
--                XIO(3),
--                parallel(4),
--                Centronics(5),
--                Bitronics(6),
--                ECP(7),
--                serial(8),
--                SCSI(9)
--                MIO2(10)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The type of the peripheral interface.  A parallel port will return
         the specific protocl currently in use.  If the parallel port is
         disconnected it will return parallel(4)."
    ::={ generalDeviceStatus 15 }

npSysModelNumber OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(6))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The HP model number of the device."
    ::={ generalDeviceStatus 16 }

npSysNetworkConnectors OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This object describes the network connectors supported by the
         device.  The value is a bit mask.  A set bit indicates the
         connector is supported.
         Bit      Value     Connector
          0       0x01      Ethernet, BNC
          1       0x02      Ethernet, AUI
          2       0x04      Ethernet, RJ-45
          3       0x08      TokenRing, DB-9
          4       0x10      TokenRing, RJ-45
          5       0x20      LocalTalk"
    ::={ generalDeviceStatus 17 }

-----------
-- These are new objects I am adding for EX+3.  They need to
-- get merged in above eventually.

-- Additions to the gdStatus tree.
-- These objects are only present in EX+3.
-- The OIDs are temporary.  I would prefer to use 14 and 15 once the obsolete
-- objects with those OIDs are removed from the code.  XXX

gdStatusAtPrinterName OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..255))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "The AppleTalk name of the printer."
    ::={ generalDeviceStatus 18 }

gdStatusAtPrinterType OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The AppleTalk type of the printer."
    ::={ generalDeviceStatus 19 }


-- the netPrinterType group

    lj6SI     OBJECT IDENTIFIER ::={ netPrinterType 1 }
    lj5M      OBJECT IDENTIFIER ::={ netPrinterType 2 }
    lj6P      OBJECT IDENTIFIER ::={ netPrinterType 3 }
    lj4000    OBJECT IDENTIFIER ::={ netPrinterType 5 }
    lj5000    OBJECT IDENTIFIER ::={ netPrinterType 6 }
    lj8000    OBJECT IDENTIFIER ::={ netPrinterType 9 }
     
-- PML prefixes
-- 	pml_oid[] =              { 1,3,6,1,4,1,11,2,3,9,4,2 };
-- 	pml_trap_enable_oid[] =  { 1,3,6,1,4,1,11,2,3,9,4,1,1,0 };
-- 	pml_trap_disable_oid[] = { 1,3,6,1,4,1,11,2,3,9,4,1,2,0 };
--	pml_magic_oid[] =        { 1,3,6,1,4,1,11,2,3,9,4,2,99,1,0 }

-- Printer MIB prefixes 
--	printmib_channel_number[] = {1,3,6,1,4,1,11,2,3,9,4,2,1,6,1,0}
-- 	printmib_trap_oid[] =  { 1,3,6,1,4,1,11,2,3,9,4,2,1,6,2,0}
--	printmib_channel_table[5][17] = {
--        {1,3,6,1,4,1,11,2,3,9,4,2,1,6,3,1,2},
--        {1,3,6,1,4,1,11,2,3,9,4,2,1,6,3,1,3},
--        {1,3,6,1,4,1,11,2,3,9,4,2,1,6,3,1,4},
--        {1,3,6,1,4,1,11,2,3,9,4,2,1,6,3,1,5},
--        {1,3,6,1,4,1,11,2,3,9,4,2,1,6,3,1,6},}
-- End Printer MIB prefixes

-- the Ieee8023Mac group

ieee8023MacTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Ieee8023MacEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "A list of ieee8023MacEntry entries."
    ::= { ieee8023Mac 1 }

ieee8023MacEntry OBJECT-TYPE
    SYNTAX  Ieee8023MacEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "An entry containing the hp ieee8023 extentions."
    INDEX   { ieee8023MacIndex }
    ::= { ieee8023MacTable 1 }

Ieee8023MacEntry ::= SEQUENCE {
    ieee8023MacIndex
        INTEGER,
    ieee8023MacTransmitteds
        Counter,
    ieee8023MacNotTransmitteds
        Counter,
    ieee8023MacDeferreds
        Counter,
    ieee8023MacCollisions
        Counter,
    ieee8023MacSingleCollisions
        Counter,
    ieee8023MacMultipleCollisions
        Counter,
    ieee8023MacExcessCollisions
        Counter,
    ieee8023MacLateCollisions
        Counter,
    ieee8023MacCarrierLostErrors
        Counter,
    ieee8023MacNoHeartBeatErrors
        Counter,
    ieee8023MacFramesReceiveds
        Counter,
    ieee8023MacUndeliverableFramesReceiveds
        Counter,
    ieee8023MacCrcErrors
        Counter,
    ieee8023MacAlignmentErrors
        Counter,
    ieee8023MacResourceErrors
        Counter,
    ieee8023MacControlFieldErrors
        Counter,
    ieee8023MacUnknownProtocolErrors
        Counter,
    ieee8023MacMulticastsAccepteds
        Counter,
    --ieee8023MacMulticastsAccepteds
    --    Counter,
    ieee8023MacInfiniteDeferrals
        Counter,
    ieee8023MacUnderflowErrors
        Counter,
    ieee8023MacNoResources
        Counter,
    ieee8023MacLengthErrors
        Counter
}

ieee8023MacIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The index value which uniquely identifies the interface/port to
         which this entry is applicable.  The interface/port identified by
         a particular value of this index is the same interface/port as
         identified by the same value of ifIndex."
    ::= { ieee8023MacEntry 1 }

ieee8023MacTransmitteds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames successfully transmitted."
    ::= { ieee8023MacEntry 2 }

ieee8023MacNotTransmitteds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames not transmitted."
    ::= { ieee8023MacEntry 3 }

ieee8023MacDeferreds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of frames which were successfully transmitted after a
         deferral.  If any collisions occurred before transmission,
         xmtDeferredTransmission isn't incremented."
    ::= { ieee8023MacEntry 4 }

ieee8023MacCollisions OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Total number of transmit attempts that were retransmitted due to
         collisions, and are subsequently transmitted successfully."
    ::= { ieee8023MacEntry 5 }

ieee8023MacSingleCollisions OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of transmit attempts that are involved in a single
         collision, and are subsequently transmitted successfully."
    ::= { ieee8023MacEntry 6 }

ieee8023MacMultipleCollisions OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of transmit attempts that are involved in between one and
         fifteen collision attempts, and are subsequently transmitted
         successfully."
    ::= { ieee8023MacEntry 7 }

ieee8023MacExcessCollisions OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of transmits that occur after more than 15 collisions,
         and are subsequently transmitted successfully."
    ::= { ieee8023MacEntry 8 }

ieee8023MacLateCollisions OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of collisions that occured after one end-to-end frame
         propagation delay."
    ::= { ieee8023MacEntry 9 }

ieee8023MacCarrierLostErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of times that carrier sense was lost when attempting to
         transmit."
    ::= { ieee8023MacEntry 10 }

ieee8023MacNoHeartBeatErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of times the MAU failed to assert SQE after
         transmitting a packet."
    ::= { ieee8023MacEntry 11 }

ieee8023MacFramesReceiveds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames successfully received."
    ::= { ieee8023MacEntry 12 }

ieee8023MacUndeliverableFramesReceiveds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames received that could not be delivered because
         the software buffer was overrun when frames were sent faster than
         they could be received."
    ::= { ieee8023MacEntry 13 }

ieee8023MacCrcErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of Cyclical Redundancy Check (CRC) errors detected."
    ::= { ieee8023MacEntry 14 }

ieee8023MacAlignmentErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames received that were both misaligned and had
         bad CRC."
    ::= { ieee8023MacEntry 15 }

ieee8023MacResourceErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames received that were lost due to lack of
         resources."
    ::= { ieee8023MacEntry 16 }

ieee8023MacControlFieldErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames received with errors in the control field."
    ::= { ieee8023MacEntry 17 }

ieee8023MacUnknownProtocolErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number frames dropped because the type field or sap field
         referenced an invalid protocol."
    ::= { ieee8023MacEntry 18 }

ieee8023MacMulticastsAccepteds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of accepted muliticast addresses."
    ::= { ieee8023MacEntry 19 }

ieee8023MacInfiniteDeferrals OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames not transmitted successfully
         due to excessive number of deferrals."
    ::= { ieee8023MacEntry 20 }

ieee8023MacUnderflowErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames not transmitted successfully
         because an underflow occurred on the transmit."
    ::= { ieee8023MacEntry 21 }

ieee8023MacNoResources OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames not transmitted successfully
         because the MAC lacked resources to handle the frame."
    ::= { ieee8023MacEntry 22 }

ieee8023MacLengthErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames received that have length errors."
    ::= { ieee8023MacEntry 23 }


--  The 802.3 Multicast Address Table

ieee8023MacMcaTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Ieee8023MacMcaTableEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "The 802.3 multicast address table."
    ::= { ieee8023Mac 2 }

ieee8023MacMcaTableEntry OBJECT-TYPE
    SYNTAX  Ieee8023MacMcaTableEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "Entries in the ieee8023MacMcaTable."
    INDEX   { ieee8023MacMcaIndex }
    ::= { ieee8023MacMcaTable 1 }

Ieee8023MacMcaTableEntry ::=
    SEQUENCE {
        ieee8023MacMcaIndex
            INTEGER,
        ieee8023MacMcaAddress
            OCTET STRING
    }

ieee8023MacMcaIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The index corresponding to a particular instance
         in the ieee8023MacMcaTable."
    ::= { ieee8023MacMcaTableEntry 1 }

ieee8023MacMcaAddress OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The multicast address of a particular instance in
         the ieee8023McaTable."
    ::= { ieee8023MacMcaTableEntry 2 }


--  Other 802.3 Objects

ieee8023MacState OBJECT-TYPE
    SYNTAX  INTEGER {
                offline(1),
                initializing(2),
                online(4),
                error(5),
                io-not-ready(6)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "A state variable that indicates the current state of the MAC
         driver."
    ::= { ieee8023Mac 3 }

ieee8023MacConfigurationStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                internal-mau-selected1(1),
                internal-mau-selected5(5),
                internal-mau-selected13(13),
                external-mau-selected(14)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "These are the four bits of hardware power sense and
         jumper sense registers:

            15  14  13  12  11
            +---+---+---+---+----------+
            |apa|mpa|ext|int|  unused  |
            +---+---+---+---+----------+

            unused    Reserved for future status.
            apa       12v power detected at the AUI connector.
            mpa       12v power detected at the Peripheral
            interface.
            ext       External AUI connector selected.
            int       Internal tranceiver selected."
    ::= { ieee8023Mac 4 }

ieee8023MacNumberActiveMCAs OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of entries in the multicast address table."
    ::= { ieee8023Mac 5 }

-- .1.3.6.1.4.1.11.2.4.1.6.0
ieee8023MacMauType OBJECT-TYPE
    SYNTAX  INTEGER {
               unknownOrOther(1),
                aui(2),
                a10BASE-5(3),
                foirl(4),
                a10BASE-2(5),
                a10BASE-TDuplexModeUnknown(6),
                a10BASE-FP(7),
                a10BASE-FB(8),
                a10BASE-FL-duplex-mode-unknown(9),
                a10BROAD36(10),
                a10BASE-T-half-duplex-mode(11),
                a10BASE-T-full-duplex-mode(12),
                a10BASE-FL-half-duplex-mode(13),
                a10BASE-FL-full-duplex-mode(14),
                a100BASE-T4(15),
                a100BASE-TX-half-duplex-mode(16),
                a100BASE-TX-full-duplex-mode(17),
                a100BASE-FX-half-duplex-mode(18),
                a100BASE-FX-full-duplex-mode(19),
                a100BASE-T2-half-duplex-mode(20),
                a100BASE-T2-full-duplex-mode(21)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
       "This object identifies the 10 or 100 Mb/s MAU type.
        It represents the operational type of the MAU, as
        determined by (1) auto-negotiation, (2) manual 
        configuration, or (3) port selection logic."
    ::= { ieee8023Mac 6 }
          
-- .1.3.6.1.4.1.11.2.4.1.7.0
ieee8023MacJackType OBJECT-TYPE
    SYNTAX  INTEGER {
                other(1),
                rj45(2),
                rj45S(3), -- RJ45 shielded
                db9(4),
                bnc(5),
                faui(6), -- female AUI
                maui(7), -- male AUI
                fiberSC(8),
                fiberMIC(9),
                fiberST(10),
                telco(11)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
       "Jack type associated with the selected MAU type."
    ::= { ieee8023Mac 7 }
    
          
-- .1.3.6.1.4.1.11.2.4.1.8.0
ieee8023MacMauAutoNegAdminStatus OBJECT-TYPE
    SYNTAX  INTEGER {
                enabled(1),
                disabled(2)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
       "This object indicates whether the interface
        with auto-negotiation signaling has this
        ability enabled."
    ::= { ieee8023Mac 8 }


-- the Ieee8025Mac group

ieee8025MacTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Ieee8025MacEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "A list of ieee8025MacEntry entries."
    ::= { ieee8025Mac 1 }

ieee8025MacEntry OBJECT-TYPE
    SYNTAX  Ieee8025MacEntry
    ACCESS  not-accessible
    STATUS  mandatory
    DESCRIPTION
        "An entry containing the hp ieee8025 extentions."
    INDEX   { ieee8025MacIndex }
    ::= { ieee8025MacTable 1 }

Ieee8025MacEntry ::= SEQUENCE {
    ieee8025MacIndex
        INTEGER,
    ieee8025MacTransmitteds
        Counter,
    ieee8025MacUnderflowErrors
        Counter,
    ieee8025MacNoResources
        Counter,
    ieee8025MacFramesReceiveds
        Counter,
    ieee8025MacLineErrors
        Counter,
    ieee8025MacBurstErrors
        Counter,
    ieee8025MacFSSetErrors
        Counter,
    ieee8025MacCongestions
        Counter,
    ieee8025MacLostFrameErrors
        Counter,
    ieee8025MacFrameCopiedErrors
        Counter,
    ieee8025MacTooLongErrors
        Counter,
    ieee8025MacLengthErrors
        Counter,
    ieee8025MacOverflowErrors
        Counter,
    ieee8025MacTokenErrors
        Counter
}

ieee8025MacIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The index value which uniquely identifies the interface/port to
         which this entry is applicable.  The interface/port identified by
         a particular value of this index is the same interface/port as
         identified by the same value of ifIndex."
    ::= { ieee8025MacEntry 1 }

ieee8025MacTransmitteds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames successfully transmitted."
    ::= { ieee8025MacEntry 2 }

ieee8025MacUnderflowErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames not transmitted due to
         underflow errors."
    ::= { ieee8025MacEntry 3 }

ieee8025MacNoResources OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of frames which were not transmitted
         due to no outbound resources. "
    ::= { ieee8025MacEntry 4 }

ieee8025MacFramesReceiveds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Total number of frames received."
    ::= { ieee8025MacEntry 5 }

ieee8025MacLineErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of received line error frames."
    ::= { ieee8025MacEntry 6 }

ieee8025MacBurstErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of received burst errors."
    ::= { ieee8025MacEntry 7 }

ieee8025MacFSSetErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of received FS set errors."
    ::= { ieee8025MacEntry 8 }

ieee8025MacCongestions OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of received congestion packets."
    ::= { ieee8025MacEntry 9 }

ieee8025MacLostFrameErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "Number of received lost frame errors."
    ::= { ieee8025MacEntry 10 }

ieee8025MacFrameCopiedErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of received frame copied errors."
    ::= { ieee8025MacEntry 11 }

ieee8025MacTooLongErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number received too long errors."
    ::= { ieee8025MacEntry 12 }

ieee8025MacLengthErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of recevied length errors."
    ::= { ieee8025MacEntry 13 }

ieee8025MacOverflowErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of received overflow errors."
    ::= { ieee8025MacEntry 14 }

ieee8025MacTokenErrors OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "The number of token errors."
    ::= { ieee8025MacEntry 15 }

--  The 802.5 Multicast Address Table

ieee8025MacMcaTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF Ieee8025MacMcaTableEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "The 802.5 multicast address table."
    ::= { ieee8025Mac 2 }

ieee8025MacMcaTableEntry OBJECT-TYPE
    SYNTAX  Ieee8025MacMcaTableEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "Entries in the ieee8025MacMcaTable."
    INDEX { ieee8025MacMcaIndex }
    ::= { ieee8025MacMcaTable 1 }


Ieee8025MacMcaTableEntry ::=
    SEQUENCE {
        ieee8025MacMcaIndex
            INTEGER,
        ieee8025MacMcaAddress
            OCTET STRING
    }

ieee8025MacMcaIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The index corresponding to a particular instance
         in the ieee8025MacMcaTable."
    ::= { ieee8025MacMcaTableEntry 1 }

ieee8025MacMcaAddress OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The multicast address of a particular instance in
         the ieee8025McaTable."
    ::= { ieee8025MacMcaTableEntry 2 }

--  Other 802.5 Objects

ieee8025MacState OBJECT-TYPE
    SYNTAX  INTEGER
    --            OFFLINE(1),
    --            INITIALIZING(2),
    --            ONLINE(4),
    --            ERROR(5),
    --            IO_NOT_READY(6)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "A state variable that indicates the current state of the MAC
         driver."
    ::= { ieee8025Mac 3 }


ieee8025MacConfigurationStatus OBJECT-TYPE
    SYNTAX  INTEGER
         --       INTERNAL_MAU_SELECTED1(1),
         --       INTERNAL_MAU_SELECTED5(5),
         --       INTERNAL_MAU_SELECTED13(13),
         --       EXTERNAL_MAU_SELECTED(14)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "These are the four bits of hardware power sense and
         jumper sense registers:

            15  14  13  12  11
            +---+---+---+---+----------+
            |apa|mpa|ext|int|  unused  |
            +---+---+---+---+----------+

            unused    Reserved for future status.
            apa       12v power detected at the AUI connector.
            mpa       12v power detected at the Peripheral
            interface.
            ext       External AUI connector selected.
            int       Internal tranceiver selected."
    ::= { ieee8025Mac 4 }

ieee8025MacNumberActiveMCAs OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of entries in the multicast address table."
    ::= { ieee8025Mac 5 }

-- The HP Network Peripheral Card (npCard) Group

-- The System subgroup of npCard

npSysState OBJECT-TYPE
    SYNTAX  INTEGER {
                offline(1),
                initializing(2),
                online(4),
                error(5),
                io-not-ready(6)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The state of the LAN card to network peripheral
         interface driver."
    ::={ npSys 1 }

npSysStatusMessage OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "A status string reflecting the current state of the card
         and peripheral."
    ::={ npSys 2 }

npSysPeripheralFatalError OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The most recent peripheral fatal error that is
         being displayed on the peripheral's display panel.
         The error typically appears as a '80 Service
         (00xx)' error.  Refer to peripheral documentation
         to determine what the error means."
    ::={ npSys 3 }

npSysCardFatalError OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The most recent LAN Card error that is being
         displayed on the peripheral's display panel.  The
         error typically appears as a '80 Service (01xx)'
         error.  Refer to peripheral documentation to
         determine what the error means."
    ::={ npSys 4 }

npSysMaximumWriteBuffers OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The maximum number of write buffers configured for
         the LAN card (this translates to the write window
         size of the connection)."
    ::={ npSys 5 }

npSysMaximumReadBuffers OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The maximum number of read buffers configured for
         the LAN card (this translates to the read window
         size of the connection)."
    ::={ npSys 6 }

npSysTotalBytesRecvs OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The total number of bytes received since reset."
    ::={ npSys 7 }

npSysTotalBytesSents OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The total number of bytes sent since reset."
    ::={ npSys 8 }

npSysCurrReadReq OBJECT-TYPE
    SYNTAX  Gauge
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The current number of read data buffers owned by
         the LAN card."
    ::={ npSys 9 }

-- Additions to the npSys tree. (for EX+3)

npSysModelNumber OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(6))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"The HP model number of the device."
    ::={ npSys 10 }

npSysNetworkConnectors OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This object describes the network connectors supported by the
	 device.  The value is a bit mask.  A set bit indicates the
         connector is supported.
         Bit      Value     Connector
          0       0x01      Ethernet, BNC
          1       0x02      Ethernet, AUI
          2       0x04      Ethernet, RJ-45
          3       0x08      TokenRing, DB-9
          4       0x10      TokenRing, RJ-45
          5       0x20      LocalTalk
          6       0x40      100VG, RJ-45
          7       0x80      100T, RJ-45"
    ::={ npSys 11 }


npSysStatusPage OBJECT-TYPE
    SYNTAX  SEQUENCE OF NpSysStatusPageLine
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
	"A table of all the lines which the card prints on the self-test page."
    ::={ npSys 12 }

npSysStatusPageLine OBJECT-TYPE
    SYNTAX  NpSysStatusPageLine
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
	"An entry containing one line of the status page."
    INDEX   { npSysStatusPageIndex }
    ::={ npSysStatusPage 1 }

NpSysStatusPageLine ::= SEQUENCE {
    npSysStatusPageIndex
        INTEGER,
    npSysStatusPageText
        OCTET STRING
}

npSysStatusPageIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"The index value of this entry in the table."
    ::={ npSysStatusPageLine 1 }

npSysStatusPageText OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"The text of one line of the card status.  This is the same text that
	 is shown on the printer's selftest page.  The text is localized."
    ::={ npSysStatusPageLine 2 }


npSysManufactureInfo OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"This object provides information about the hardware that the
	 firmware is running on as well as manufacturing codes."
    ::={ npSys 13 }


npSysPeekAddress OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
	"This object specifies an address for subsequent peeks."
    ::={ npSys 14 }

npSysPeek OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"This object specifies an address for subsequent peeks."
    ::={ npSys 15 }

-- The following 2 objects are from the original Lan Manager MIB.  They
-- need to exist for backward compatibility.

npCardPFatalErr OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The most recent peripheral fatal error that is
         being displayed on the peripheral's display panel.
         The error typically appears as a '80 Service
         (00xx)' error.  Refer to peripheral documentation
         to determine what the error means."
    ::={ npCard 2 }

npCardIoFatalErr OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The most recent LAN Card error that is being
         displayed on the peripheral's display panel.  The
         error typically appears as a '80 Service (01xx)'
         error.  Refer to peripheral documentation to
         determine what the error means."
    ::={ npCard 3 }

--- The Card Connection Statistics subgroup of npCard

npConnsAccepts OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of connections accepted since reset."
    ::={ npConns 1 }

npConnsRefuseds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of connections refused since reset.  Connections
         are refused for the following reasons: a connection is already
         active, the peripheral is offline, the network peripheral
         interface is not ready for connections after a power-up or
         reset, or there isn't enough buffer space on the card to
         establish a connection."
    ::={ npConns 2 }

npConnsDenys OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of connections that the card denied due to failure
         to match the access list."
    ::={ npConns 3 }

npConnsDenysIP OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The IP address of the last node to be denied a connection
         due to failure to match the access list."
    ::={ npConns 4 }

npConnsAborts OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of connections aborted due to a network problem."
    ::={ npConns 5 }

npConnsAbortReason OBJECT-TYPE
    SYNTAX  DisplayString (SIZE (0..255))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The textual description of why the last abort on the
         card occurred."
    ::={ npConns 6 }

npConnsAbortIP OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The IP address of the last node to establish a connection
         before the card aborted."
    ::={ npConns 7 }

npConnsAbortPort OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The port of the last node to establish a connection
         before the card aborted."
    ::={ npConns 8 }

npConnsAbortTime OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The time (in hundredths of a second) since the last
         time the card was aborted."
    ::={ npConns 9 }

npConnsState OBJECT-TYPE
    SYNTAX  INTEGER {
                up(1),
                down(2)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "State of current connection to card."
    ::={ npConns 10 }

npConnsIP OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Remote IP address of the node currently connected to the card.
         Zero if no connection is active."
    ::={ npConns 11 }

npConnsPort OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Remote port number of the node currently connected to the card.
         Zero if no connection is active."
    ::={ npConns 12 }

npConnsPeriphClose OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of connections closed in response to a peripheral
         request I/O channel reset request."
    ::={ npConns 13 }

npConnsIdleTimeouts OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of connections closed due to an idle timeout."
    ::={ npConns 14 }

npConnsNmClose OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of connections closed by SetRequests to the MIB
         variable, npCtlCloseConnection."
    ::={ npConns 15 }

npConnsBytesRecvds OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of bytes received by this connection."
    ::={ npConns 16 }

npConnsBytesSents OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of bytes transmitted by this connection."
    ::={ npConns 17 }


--- The Card Configuration subgroup of npCard

-- npCfgSource defined below	 
-- We changed the enumeration and added new values.

npCfgSource OBJECT-TYPE
    SYNTAX  INTEGER {
--          bootp(0),          historical only
            manual-one(1),         -- read-only, depreciate after intro of box products. 
            bootp-two(2),          -- read-only, depreciate after intro of box products.
            manual-three(3),         -- read/write, must write ip_addr in same packet.
            bootp-four(4),          -- read/write, ignores other npCfg if in same packet.
            dhcp(5),           -- read/write, ignores other npCfg if in same packet.
            not-configured(6), -- read-only
            default-config(7), -- read-only
            rarp(8)            -- read-only
            }
    ACCESS  read-write
    STATUS  mandatory
    DESCRIPTION
        "This object indicates how the device obtained its IP configuration."
    ::={ npCfg 1 }

npCfgYiaddr OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "The IP address assigned to the card from the BOOTP reply
         yiaddr field."
    ::={ npCfg 2 }

npCfgSiaddr OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The IP address of the TFTP server from the BOOTP reply
         siaddr field."
    ::={ npCfg 3 }

npCfgGiaddr OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The IP address of the TFTP gateway from the BOOTP reply
         giaddr field."
    ::={ npCfg 4 }

npCfgLogServer OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The IP address of the Log Server from the BOOTP reply
         Tag: 7 field."
    ::={ npCfg 5 }

npCfgSyslogFacility OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This specifies the facility identifier used in syslog messages
         generated by the card."
    ::={ npCfg 6 }

npCfgAccessState OBJECT-TYPE
    SYNTAX  INTEGER {
                allowed(1),
                not-allowed(2)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "An indication of whether or not the requesting host
         is allowed to connect to the card as dictated by the
         access list."
    ::={ npCfg 7 }

npCfgAccessListNum OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of access list entries."
    ::={ npCfg 8 }

npCfgAccessListTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF AccessListEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "List of access addresses and masks."
    ::={ npCfg 9 }

accessListEntry OBJECT-TYPE
    SYNTAX  AccessListEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "Each entry contains an access address and mask."
    INDEX    { npCfgAccessListIndex }
    ::={ npCfgAccessListTable 1 }

AccessListEntry ::=
    SEQUENCE {
        npCfgAccessListIndex
            INTEGER,
        npCfgAccessListAddress
            IpAddress,
        npCfgAccessListAddrMask
            IpAddress
    }

npCfgAccessListIndex OBJECT-TYPE
    SYNTAX  INTEGER (0..9)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Index to the configuration access list table."
    ::={ accessListEntry 1 }

npCfgAccessListAddress OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Address to compare with after applying the wildcard to
         the requestor's address."
    ::={ accessListEntry 2 }

npCfgAccessListAddrMask OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Address mask used to help determine whether or not a given
         IP address is allowed access to the card.  An IP address is
         allowed access if (Addr & AddrMask) == (IP & AddrMask)."
    ::={ accessListEntry 3 }

npCfgIdleTimeout OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The idle timeout is the length in seconds after which an
         idle connection is terminated.  A value of zero disables
         the timeout."
    ::={ npCfg 10 }

--npCfgLocalSubnets OBJECT-TYPE (replace in bunker)
--   SYNTAX  INTEGER 
--              none(0),
--              exist(1)
--    ACCESS  read-only
--    STATUS  optional
--    DESCRIPTION
--        "An indication of whether or not the card recognizes
--         any local subnets."
--   ::={ npCfg 11 }

--.1.3.6.1.4.1.11.2.4.3.5.11.0 (new in bunker)
npCfgTcpMss OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-write
	STATUS optional	
	DESCRIPTION
	"Enumerate as follows:
	0 = treat all hosts as local which means JetDirect sends a maximum of
	    1460 bytes of data in all outbound packets.
	1 = treat hosts on different subnets but in the same network as local
	    which means for hosts in the same network, send 1460 bytes; else send 536 
	    bytes in outbound packets.
	2 = treat only hosts on the same network and same subnet as local (use
	    1460 bytes); otherwise treat them as remote hosts (send 536 bytes)." 
  ::={ npCfg 11 }


-- These objects are present in EX+3  
-- added into the master mib on 9/8/95

npCfgSubnetMask OBJECT-TYPE
    SYNTAX      IpAddress
    ACCESS      read-write
    STATUS      optional
    DESCRIPTION
        "The subnet mask associated with the IP address of this card."
    ::= { npCfg 12}

npCfgDefaultGateway     OBJECT-TYPE
    SYNTAX      IpAddress
    ACCESS      read-write
    STATUS      optional
    DESCRIPTION
        "This variable contains the IP address of the default router for this
         card."
    ::= { npCfg 13}


-- redirector objects removed in bunker npCfg 14, 15,16
--npCfgRootURL    OBJECT-TYPE
--    SYNTAX      OCTET STRING
--    ACCESS      read-write
--    STATUS      optional
--    DESCRIPTION
--        "The HTTP root(/) directory redirect location."
--   ::= { npCfg 14}

--npCfgGenURL     OBJECT-TYPE
--    SYNTAX      OCTET STRING
--    ACCESS      read-write
--   STATUS      optional
--    DESCRIPTION
--        "The HTTP /redirect directory location."
--    ::= { npCfg 15}

--npCfgDomainName     OBJECT-TYPE
--    SYNTAX          OCTET STRING
--    ACCESS          read-write
--    STATUS          optional
--    DESCRIPTION
--        "The JetDirect domain name as configured by Web JetAdmin."
--    ::= { npCfg 16}


-- .1.3.6.1.4.1.11.2.4.3.5.17.0
npCfgSlpTtl OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-write
  STATUS optional
  DESCRIPTION
    "The TTL value is used in the IP header of SLP multicast 
     pkts sent by JetDirect. "
  ::= { npCfg 17 }

-- .1.3.6.1.4.1.11.2.4.3.5.18.0
npCfgIPP OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-write
  STATUS optional
  DESCRIPTION
    "The value can be 0, meaning IPP has been disabled, 
     or 1, meaning IPP has been enabled."
  ::= { npCfg 18 }

-- The TCP subgroup of npCard

npTcpInSegInOrders OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of TCP segments received in order."
    ::={ npTcp 1 }

npTcpInSegOutOfOrders OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of TCP segments received out of order."
    ::={ npTcp 2 }

npTcpInSegZeroProbes OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of TCP zero window probes received."
    ::={ npTcp 3 }

npTcpInDiscards OBJECT-TYPE
    SYNTAX  Counter
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of TCP segments received that were
         discarded."
    ::={ npTcp 4 }


-- The Card Control subgroup of npCard

npCtlReconfigIP OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The IP address of the last node to request a reconfig
         of the card.  This value is preserved across a reconfig."
    ::={ npCtl 1 }

npCtlReconfigPort OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The port of the last node to request a reconfig of the
         card.  This value is preserved across a reconfig."
    ::={ npCtl 2 }

npCtlReconfigTime OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The time (in hundredths of a second) since the last
         time the card was reconfigured."
    ::={ npCtl 3 }

npCtlCloseIP OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The IP address of the last node to request a close of
         the peripheral data connection on the card.  This
         value is cleared on a reconfig."
    ::={ npCtl 4 }

npCtlClosePort OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The port of the last node to request a close of the
         peripheral data connection on the card.  This
         value is cleared on a reconfig."
    ::={ npCtl 5 }

npCtlImageDump OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              DUMP(1)
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "Writing a one (1) to this variable causes the card to dump
         its RAM image into a file using TFTP.  The file is dumped
         onto the BOOTP server machine whose IP address is in the MIB
         variable, npCfgSiaddr { npCfg 3 }.  The file name is:
         npi.<IPaddr> in the tftp directory, where <IPaddr> is the
         IP address of the card.  The file must be writable by TFTP."
    ::= { npCtl 6 }

npCtlCloseConnection OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              CLOSE(1)
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "Writing a one (1) to this variable causes the card to close
         the current peripheral data connection"
    ::= { npCtl 7 }

npCtlReconfig OBJECT-TYPE
    SYNTAX  INTEGER 
--              OFF(0),
--              REBOOT(1)
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "Writing any value to this variable causes the card to
         reconfigure itself by doing the BOOTP/TFTP configuration
         activity."
    ::= { npCtl 8 }

npCtlProtocolSet OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This is a 4 byte integer value.  The least significant bytes
         represent the protocols on the card.  A value of '1' indicates
         a protocol that is enabled.  A value of '0' indicates a
         protocol that is disabled.  
         The 32-bit protocol enable 'structure' is defined as:

    bits 31-28:  Number of I/O channels/protocols present (NUM_CHAN)
    bits 27-24:  Number of I/O channels which may operate concurrently
                    (NUM_OP_CHAN)
    bits 23-16:  unused, reserved
    bits 15-1:   Individual I/O channel/protocol enable bits,
                    0 == disable, 1 == enable
                    MIO_IOCHAN_NOVELL   bit   1
                    MIO_IOCHAN_LLC      bit   2
                    MIO_IOCHAN_TCP      bit   3
                    MIO_IOCHAN_ATALK    bit   4
    bit  0:      When NUM_OP_CHAN == 1, auto-protocol select enable bit,
                    0 == disable, 1 == enable  (APS_ON)"
    ::={ npCtl 9 }

-- added for EX+3 

npCtlStatusPageLang OBJECT-TYPE
    SYNTAX  INTEGER {
                pcl(1),
                ascii(2),
                postscript(3),
                hpgl(4)
            }
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This object specifies the PDL used to print the status page."
    ::= { npCtl 10 }

npCtlPrintStatusPage OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "Writing any value to this object causes the device to print
	 a status page."
    ::= { npCtl 11 }


npCtlErrorBehavior OBJECT-TYPE
    SYNTAX  INTEGER { 
--                not-supported-on-this-platform(0),  mib compiler will not take zero
                dump-then-reboot(1),
                reboot-without-dump(2),
                dump-then-halt(3),
                halt-without-dump(4),      
                deliberate-panic(256),   
                cold-reset-novram(512),
                deliberate-restart(1024)
            }
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This object provides management capability to specify
         various error/panic/reset modes as are enumerated above.
         Default is halt_without-dump(4)."
    ::= { npCtl 12 }

npCtlCrcControl OBJECT-TYPE
    SYNTAX  INTEGER {
--               off(0), mib compiler will not take zero
                on(1)
            }
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This object controls and manages the collection of crc data  
         for paperless print testing."
    ::= { npCtl 13 }



-- The HP Modular Input/Output (MIO) subgroup of npCard
-- The Card Status Entry

npNpiCardStatusEntry OBJECT-TYPE
    SYNTAX  SEQUENCE OF NpNpiCardStatusEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "These are the set of status bytes that the
         peripheral passes to the network card.  The
         peripheral and LAN card exchange these status
         bytes whenever an event causes the status to
         change."
    ::={ npNpi 1 }

NpNpiCardStatusEntry ::=
    SEQUENCE {
        npNpiCseDataState
            INTEGER,
        npNpiCseErrorCode
            INTEGER,
        npNpiCseLinkEvent
            INTEGER,
        npNpiCseReadMode
            INTEGER,
        npNpiCseWriteMode
            INTEGER,
        npNpiCseWarningCode
            INTEGER,
        npNpiCseConnectionState
            INTEGER,
        npNpiCseNovWarningCode
            INTEGER,
        npNpiCseLlcWarningCode
            INTEGER,
        npNpiCseTcpWarningCode
            INTEGER,
        npNpiCseAtkWarningCode
            INTEGER
}

npNpiCseDataState OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The data state of the LAN card."
    ::={ npNpiCardStatusEntry 1 }

npNpiCseErrorCode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The LAN card's error code."
    ::={ npNpiCardStatusEntry 2 }

npNpiCseLinkEvent OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The LAN link event (reset or initialized or
         triggered)."
    ::={ npNpiCardStatusEntry 3 }

npNpiCseReadMode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The state of the LAN card's read channel (operate
         or idle)."
    ::={ npNpiCardStatusEntry 4 }

npNpiCseWriteMode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The state of the LAN card's write channel (operate
         or idle)."
    ::={ npNpiCardStatusEntry 5 }

npNpiCseWarningCode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the LAN card channel zero
         has encountered an error condition which isn't 
         serious enough to shut the peripheral down, 
         but should be checked out."
    ::={ npNpiCardStatusEntry 6 }

npNpiCseConnectionState OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Indicates whether or not the peripheral is
         currently connected to a server."
    ::={ npNpiCardStatusEntry 7 }

npNpiCseNovWarningCode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the Novell stack has encountered
         an error condition which isn't serious enough to
         shut the peripheral down, but should be checked
         out."
    ::={ npNpiCardStatusEntry 8 }

npNpiCseLlcWarningCode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the LLC stack has encountered
         an error condition which isn't serious enough to
         shut the peripheral down, but should be checked
         out."
    ::={ npNpiCardStatusEntry 9 }

npNpiCseTcpWarningCode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the TCP stack has encountered
         an error condition which isn't serious enough to
         shut the peripheral down, but should be checked
         out."
    ::={ npNpiCardStatusEntry 10 }

npNpiCseAtkWarningCode OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This indicates that the AppleTalk stack has encountered
         an error condition which isn't serious enough to
         shut the peripheral down, but should be checked
         out."
    ::={ npNpiCardStatusEntry 11 }

--  The Peripheral Attribute Entry

npNpiPeripheralAttributeCount OBJECT-TYPE
    SYNTAX  INTEGER (0..32)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of valid bytes of peripheral attributes
         received from the peripheral."
    ::={ npNpi 2 }

npNpiPeripheralAttributeEntry OBJECT-TYPE
    SYNTAX  NpNpiPeripheralAttributeEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "The set of bytes that describe the peripheral's
         attributes as received from the peripheral during
         the setup of the peripheral to LAN card
         communications."
   INDEX { npNpiPaeLinkDirection }
    ::={ npNpi 3 }

NpNpiPeripheralAttributeEntry ::=
    SEQUENCE {
        npNpiPaeLinkDirection
            INTEGER,
        npNpiPaeClass
            INTEGER,
        npNpiPaeIdentification
            INTEGER,
        npNpiPaeRevision
            INTEGER,
        npNpiPaeAppleTalk
            INTEGER,
        npNpiPaeMessage
            INTEGER,
        npNpiPaeReserved 
            INTEGER,
        npNpiPaeMultichanFlag
            INTEGER,
        npNpiPaeDatagramFlag
            INTEGER
}

npNpiPaeLinkDirection OBJECT-TYPE
    SYNTAX  INTEGER 
--              NO-PERIPH-DATA-XFER(0),
--              XFER-PERIPH-TO-HOST(1),
--              XFER-HOST-TO-PERIPH(2),
--              BI-DIRECT-PERIPH-DATA-XFER(3)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The directions that the peripheral is able to
         transfer data (read and write channels, read
         channel only, or write channel only)."
    ::={ npNpiPeripheralAttributeEntry 1 }

npNpiPaeClass OBJECT-TYPE
    SYNTAX  INTEGER 
--              UNDEFINED-CLASS(0),
--              PRINTER(1),
--              PLOTTER(2),
--              XStation(3)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The class assigned to the peripheral onto which
         this card is plugged."
    ::={ npNpiPeripheralAttributeEntry 2 }

npNpiPaeIdentification OBJECT-TYPE
    SYNTAX  INTEGER 
--              UNDEFINED-PERIPH(0),
--              LASERJET-IIISI(1),
--              LASERJET-4SI(5)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The Identification number of the peripheral.  These values are
         defined in the MIO spec.  DesignJet, PaintJet XL300, and 
         DesignJet/600 peripherals will identify themselves as 
         LaserJet-IIIsi."
    ::={ npNpiPeripheralAttributeEntry 3 }

npNpiPaeRevision OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The revision number of the peripheral."
    ::={ npNpiPeripheralAttributeEntry 4 }

npNpiPaeAppleTalk OBJECT-TYPE
    SYNTAX  INTEGER
--              NO-APPLETALK-SUPPORT(0),
--              APPLETALK-SUPPORT(1)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Indicates the peripheral supports functionality
         that the apple talk protocol network provides."
    ::={ npNpiPeripheralAttributeEntry 5 }

npNpiPaeMessage OBJECT-TYPE
    SYNTAX  INTEGER 
--              NO-MSGMODE-SUPPORT(0),
--              MSGMODE-SUPPORT(1)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Reserved for future use."
    ::={ npNpiPeripheralAttributeEntry 6 }

npNpiPaeReserved OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This field is an unused byte."
    ::={ npNpiPeripheralAttributeEntry 7 }

npNpiPaeMultichanFlag OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "An indication of how many MIO channels the peripheral supports."
    ::={ npNpiPeripheralAttributeEntry 8 }

npNpiPaeDatagramFlag OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "An indication of how many MIO datagram channels the peripheral 
         supports."
    ::={ npNpiPeripheralAttributeEntry 9 }


--  The Card Attribute Entry

npNpiCardAttributeEntry OBJECT-TYPE
    SYNTAX  NpNpiCardAttributeEntry 
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "The set of bytes describing the card's attributes
         as stored in the ROM of this particular LAN card."
    INDEX { npNpiPaeLinkDirection }
    ::={ npNpi 4 }

NpNpiCardAttributeEntry ::=
    SEQUENCE {
        npNpiCaeLinkDirection
            INTEGER,
        npNpiCaeClass
            INTEGER,
        npNpiCaeIdentification
            INTEGER,
        npNpiCaeRevision
            INTEGER,
        npNpiCaeAppleTalk
            INTEGER,
        npNpiCaeMessage
            INTEGER,
        npNpiCaeReserved
            INTEGER,
        npNpiCaeMultichan
            INTEGER,
        npNpiCaeDatagram
            INTEGER
}

npNpiCaeLinkDirection OBJECT-TYPE
    SYNTAX  INTEGER 
--              NO-LINK-DATA-XFER(0),
--              XFER-LINK-TO-HOST(1),
--              XFER-HOST-TO-LINK(2),
--              BI-DIRECT-LINK-DATA-XFER(3)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The directions that this particular network
         peripheral card is able to transfer data (read and
         write, read only or write only)."
    ::={ npNpiCardAttributeEntry 1 }

npNpiCaeClass OBJECT-TYPE
    SYNTAX  INTEGER 
--              UNDEFINED-CLASS(0),
--              RS-232(1),
--              CENTRONICS(2),
--              CSMA-CD-NETWORK(3),
--              TOKEN-RING-NETWORK(4),
--              SCSI(5),
--              HPIB(6),
--              LOCALTALK(7)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The class of this network peripheral card."
    ::={ npNpiCardAttributeEntry 2 }

npNpiCaeIdentification OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The identification number assigned this network
         peripheral card."
    ::={ npNpiCardAttributeEntry 3 }

npNpiCaeRevision OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The revision number of the network peripheral
         connection card code on this card."
    ::={ npNpiCardAttributeEntry 4 }

npNpiCaeAppleTalk OBJECT-TYPE
    SYNTAX  INTEGER 
--              NO-APPLETALK-SUPPORT(0),
--              APPLETALK-SUPPORT(1)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Indicates that the card supports the apple talk
         protocol network."
    ::={ npNpiCardAttributeEntry 5 }

npNpiCaeMessage OBJECT-TYPE
    SYNTAX  INTEGER 
--              NO-MSGMODE-SUPPORT(0),
--              MSGMODE-SUPPORT(1)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Indicates that the card supports the messaging mode protocol."
    ::={ npNpiCardAttributeEntry 6 }

npNpiCaeReserved OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Reserved object for future use."
    ::={ npNpiCardAttributeEntry 7 }

npNpiCaeMultichan OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "An indication of how many MIO channels the I/O card supports."
    ::={ npNpiCardAttributeEntry 8 }

npNpiCaeDatagram OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "An indication of how many MIO datagram channels the I/O 
         card supports."
    ::={ npNpiCardAttributeEntry 9 }

--  The Error Log Table subgroup of npCard

npEltErrorLogTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF NpEltEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "The LAN card's error log."
    ::={ npElt 1 }

npEltEntry OBJECT-TYPE
    SYNTAX  NpEltEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "The LAN card's error log table entries."
    INDEX { npEltErrIndex }
    ::={ npEltErrorLogTable 1 }

NpEltEntry ::=
    SEQUENCE {
        npEltErrIndex
            INTEGER,
        npEltErrErrorId
            INTEGER,
        npEltErrErrorParam
            INTEGER,
        npEltErrTimeStamp
            TimeTicks
    }

npEltErrIndex OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The index that uniquely identifies an error log
         entry."
    ::={ npEltEntry 1 }

npEltErrErrorId OBJECT-TYPE
    SYNTAX  INTEGER (0..65535)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Identification for this error."
    ::={ npEltEntry 2 }

npEltErrErrorParam OBJECT-TYPE
    SYNTAX  INTEGER (0..4294967295)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Error Parameter value."
    ::={ npEltEntry 3 }

npEltErrTimeStamp OBJECT-TYPE
    SYNTAX  TimeTicks
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "Time in timer ticks when error log entry was made."
    ::={ npEltEntry 4 }

--  The IPX group

npIpxGetUnitCfgResp OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This object is the Get Unit Config Response
         structure described in the IPX code.  This
         structure is of variable length depending
         on how many servers are configured."
    ::={ npIpx 1 }

npIpx8022frametype OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of IPX FT8022 frames received."
    ::={ npIpx 2 }

npIpxSNAPframetype OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of IPX FTSNAP frames received."
    ::={ npIpx 3 }

npIpxEthernetframetype OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of IPX FTEthernet frames received."
    ::={ npIpx 4 }

npIpx8023Rawframetype OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of IPX FT8023RAW frames received."
    ::={ npIpx 5 }

npIpxSapInfo OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is a 50 byte array that contains the following
         information.
           2 bytes:  bindery object type (always 030c in hi-lo order)
          12 bytes:  Mac address of card (ASCII)
           2 bytes:  frame type
                     also high bit (8000) is set if card is not configured
           2 bytes : unit type (hex 81 for NetJet card)
           32 bytes: node name (ASCII) which is:
                     print server name for Queue Server mode
                     printer name for RPTR mode"
    ::={ npIpx 6 }

npIpxGetUnitCfgResp2 OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This object is the Get Unit Config Response
         structure described in the IPX code.  This
         structure is of variable length depending
         on how many servers are configured.  This is
         the second set of info when more than
         8 print servers are configured."
    ::={ npIpx 7 }

-- Additions to the npIpx tree.  
-- These will not appear in the code until NDS is merged (not in EX+3).

npIpxUnitName OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..29))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "This is the name by which the device advertises over NetWare.  In
	 remote printer mode, this is referred to as the node name.  In
	 queue server mode this name doubles as the print server name used
	 to log into a file server (in bindery mode).

	 This value is settable.  If a string that is longer than the
	 maximum length is sent, the value will be truncated to the max.
	 The max size does not include a null-terminating octet, nor does
	 the string include a null octet.

	 Setting this value to a zero length string or a single null
	 character will cause the card to reset to factory defaults in the
	 Novell mode only.  Returning the node name to the NPIxxxxxx
	 standard, resetting all options, and returning all slots to
	 unconfigured.

	 Any sets to this object will cause the card to reset, dropping all
	 connections immediately (even in the middle of a job).  This reset
	 will occur even if the name sent is identical to the prior name."
    ::={ npIpx 8 }

npIpxNdsTreeName OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..32))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
	"This is the name of the NDS tree by which the JetDirect attempts
	 to connect and authenticate.  NDS support is enabled when this
	 value is provided (although connections do not become initiated
	 until ipxUnitName is reset).

	 To deconfigure the NDS support it is necessary to remove this tree
	 name by setting the value to a zero length octet string or setting
	 it to a single null character."
    ::={ npIpx 9 }

npIpxNdsFullyQualifiedName OBJECT-TYPE
    SYNTAX  NpIpxNdsFullyQualifiedName
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
	"These objects contain the NDS fully qualified print server name.
	 If the npIpxNdsTreeName object is unconfigured, then this value is
	 unused.

	 The name is in length-preceded unicode format.  The length is a
	 four octet, little-endian integer.  Following the length is a
	 string of two octet unicode characters.  The name is terminated by
	 two zero octets.

	 Example:
              CN=PS_Name.OU=boise.O=hp

	      <50><0><0><0>C<0>N<0>=<0>P<0>S<0>_<0>N<0>a<0>m<0>e<0>.<0>O<0>
	      U<0>=<0>b<0>o<0>i<0>s<0>e<0>.<0>O<0>=<0>h<0>p<0><0><0>

	 Because the name can be very large, it is split up into two
	 objects.  The second object may be an empty string if the name is
	 less than 128 characters long."
    INDEX { npIpxNdsFullyQualifiedName1 }
    ::={ npIpx 10 }

NpIpxNdsFullyQualifiedName ::= SEQUENCE {
    npIpxNdsFullyQualifiedName1
        OCTET STRING,
    npIpxNdsFullyQualifiedName2
        OCTET STRING
}

npIpxNdsFullyQualifiedName1 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(6..260))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
	"The length and the first 128 characters of the NDS fully qualified
	 print server name.  "
    ::={ npIpxNdsFullyQualifiedName 1 }

npIpxNdsFullyQualifiedName2 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..258))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
	"The rest of the NDS fully qualified print server name.  This is
	 the continuation of npIpxNdsFullyQualifiedName1 for names longer
	 than 128 characters.  The value will be an empty string if the
	 name is less than 128 characters long."
    ::={ npIpxNdsFullyQualifiedName 2 }


npIpxServerConnTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF NpIpxServerConnEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "A list of npIpxServerConn entries."
    ::= { npIpx 11 }

npIpxServerConnEntry OBJECT-TYPE
    SYNTAX  NpIpxServerConnEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
	"An entry contains the status of a file server connection.  Each
	 entry indicates the file server dynamically connected in the given
	 slot, the connection status, NCP status, and NDS status.

   To set a new serverConnTable entry perform an snmpset of the serverConn name
   including only the column.  The row will be returned.  

   IpxUnitName {.1.3.6.1.4.1.11.2.4.3.10.8.0} is used to synchronize novell
   stack operation when multiple connTable entries are required.
    
   Normally, all connTable entries are first set, and then
   IpxUnitName is set.  This triggers novell stack to reconfigure to use the
   the new connTable entries.
 
   New connTable entries are retrievable with get/getnext only after
   setting of the ipxUnixName.

  examples:
    To set connTable entry:
      $  snmpset -cinternal 15.29.43.73 .1.3.6.1.4.1.11.2.4.3.10.11.1.3 octetstring server1
        .1.3.6.1.4.1.11.2.4.3.10.11.1.3.2 : OCTET STRING- (ascii):      server1
 
      $  snmpset -cinternal 15.29.43.73 .1.3.6.1.4.1.11.2.4.3.10.11.1.3 octetstring server2
       .1.3.6.1.4.1.11.2.4.3.10.11.1.3.2 : OCTET STRING- (ascii):      server2
 
   To set ipxUnitName:
      $  snmpset -cinternal 15.29.43.73 .1.3.6.1.4.1.11.2.4.3.10.8.0 octetstring UNIT_A
            .1.3.6.1.4.1.11.2.4.3.10.8.0 : OCTET STRING- (ascii):   UNIT_A
 
   To walk connTable:
      $ snmpwalk 15.29.43.73 .1.3.6.1.4.1.11.2.4.3.10.11
           .1.3.6.1.4.1.11.2.4.3.10.11.1.1.1 : INTEGER: 1
           .1.3.6.1.4.1.11.2.4.3.10.11.1.2.1 : INTEGER: 2
           .1.3.6.1.4.1.11.2.4.3.10.11.1.3.1 : OCTET STRING- (ascii):      server1
           .1.3.6.1.4.1.11.2.4.3.10.11.1.4.1 : INTEGER: 4
           .1.3.6.1.4.1.11.2.4.3.10.11.1.5.1 : INTEGER: 0
           .1.3.6.1.4.1.11.2.4.3.10.11.1.6.1 : INTEGER: 0
 
           .1.3.6.1.4.1.11.2.4.3.10.11.1.1.2 : INTEGER: 2
           .1.3.6.1.4.1.11.2.4.3.10.11.1.2.2 : INTEGER: 2
           .1.3.6.1.4.1.11.2.4.3.10.11.1.3.2 : OCTET STRING- (ascii):      server2
           .1.3.6.1.4.1.11.2.4.3.10.11.1.4.2 : INTEGER: 1
           .1.3.6.1.4.1.11.2.4.3.10.11.1.5.2 : INTEGER: 0
           .1.3.6.1.4.1.11.2.4.3.10.11.1.6.2 : INTEGER: 0
    "

    INDEX   { npIpxServerConnIndex }
    ::= { npIpxServerConnTable 1 }

NpIpxServerConnEntry ::= SEQUENCE {
    npIpxServerConnIndex
        INTEGER,
    npIpxServerConnMode
	INTEGER,
    npIpxServerConnName
        OCTET STRING,
    npIpxServerConnStatus
        INTEGER,
    npIpxServerConnNcpStatus
        INTEGER,
    npIpxServerConnNdsStatus
        INTEGER
}

npIpxServerConnIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The index value which uniquely identifies the server connection to
         which this entry is applicable."
    ::= { npIpxServerConnEntry 1 }

npIpxServerConnMode OBJECT-TYPE
    SYNTAX  INTEGER {
		not-connected(1),
                qserver-bindery(2),
                rprinter(3),
                qserver-nds(4)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The operating mode of the server."
    ::= { npIpxServerConnEntry 2 }

npIpxServerConnName OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(0..48))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "The name of the server."
    ::= { npIpxServerConnEntry 3 }

npIpxServerConnStatus OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The RCFG connection status of the server."
    ::= { npIpxServerConnEntry 4 }

npIpxServerConnNcpStatus OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The last NCP code of the server."
    ::= { npIpxServerConnEntry 5 }

npIpxServerConnNdsStatus OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The last NDS code of the server."
    ::= { npIpxServerConnEntry 6 }


npIpxObsoleteServerConnInfo OBJECT-TYPE
    SYNTAX  NpIpxObsoleteServerConnInfo
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        "These objects are obsolets, but are here for backwards compatility
	 with pre-release software."
    INDEX { npIpxObsoleteServerConnInfo1 }
    ::={ npIpx 12 }

NpIpxObsoleteServerConnInfo ::= SEQUENCE {
    npIpxObsoleteServerConnInfo1
        OCTET STRING,
    npIpxObsoleteServerConnInfo2
        OCTET STRING
}

npIpxObsoleteServerConnInfo1 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(448))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"This object contains a list of 8 structures that refer to the
	 status of the first eight file server connection slot entries.
	 Each entry indicates the file server dynamically connected in the
	 given slot.  Besides the name of the file server, connection
	 status, NCP status, and NDS status is provided.

	 If the file server name in a given slot has '\0' in the first
	 byte, that slot is not in use.

	 The structure applied:
	      struct {
		  uchar   opMode;     // Operating mode of server
				      // 0x00 = QServer (bindery)
				      // 0x01 = RPrinter
				      // 0x03 = QServer (nds)
		  char    fsName[48]; // name of file server in slot
		  uchar   connStat;   // RCFG connection status
		  uchar   ncpStat;    // last NCP code
	          uchar   pad;
		  uint32  ndsStat;    // last NDS code (big-endian)
              } slots[8];"
    ::={ npIpxObsoleteServerConnInfo 1 }

npIpxObsoleteServerConnInfo2 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(448))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"The server connection info for slots 9-16.  See above for format."
    ::={ npIpxObsoleteServerConnInfo 2 }

-- The following is not an NDS related object (will be in EX+3)

npIpxRcfgAddress OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(12))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
	"The 12 octet IPX address of the Novell RCFG socket.  The address
	 is in network byte order."
    ::={ npIpx 13 }

npIpxRcfgRemotePrintServerName OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(12))
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "Remote print server name. "
    ::={ npIpx 14 }

npIpxRcfgRemotePrinterNumber OBJECT-TYPE
    SYNTAX INTEGER 
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "remote Printer Number (valid in remote Printer Mode only)
     range: 0-255 for 4.X servers
            0-15 for 3.X servers  "
    ::={ npIpx 15 }

npIpxRestart OBJECT-TYPE
    SYNTAX INTEGER 
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "Setting of this object to zero causes a soft reset of the board,
     setting to one causes a hard reset of the board. "
    ::={ npIpx 16 }

npIpxSourceRoute OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "This object provides control/status for source route. Options
     for Token Ring networks are as follows:
     
     00 - Auto Sensing mode
     01 - Send without SR, receive only if same ring
     02 - Send with SR, single route
     03 - Send with SR, all routes used receive any "

    ::={ npIpx 17 }

npIpxFrameType OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "This object returns the frame type current enabled,
     possibilities are as follows:

     00 - Auto
     01 - Ethernet 8023 or Token-ring
     02 - Ethernet II or Token-ring SNAP
     03 - Ethernet 8022
     04 - Ethernet SNAP"
    ::={ npIpx 18 }

npIpxJobPollInterval OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "Queue server job poll interval."
    ::={ npIpx 19 }

npIpxSapBroadcastInterval OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "Currently effective SAP broadcast Interval:
     range: 0-3600 seconds
     default: 60 seconds
     0 value indicates SAP broadcasts are disabled. "
    ::={ npIpx 20 }

npIpxPjlEnableFlag OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "Currently effective PJL Enable Flag, possible values include:
      
     00 - PJL disable
     01 - PJL Job, banner
     02 - Ustatus for end of job detection
     03 - banners and end of job detection "
    ::={ npIpx 21 }

npIpxTonerLowNotification OBJECT-TYPE
    SYNTAX INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
    "Current Configuration for toner low notification. Possible
     values include:
 
     00 - notify only if intervention is required.
     01 - Notify even if peripheral is still operational. "
    ::={ npIpx 22 }

--.1.3.6.1.4.1.11.2.4.3.5.10.0
npIpxNetNumber OBJECT-TYPE
	SYNTAX INTEGER
	ACCESS read-only
	STATUS optional
	DESCRIPTION
  	"Current Ipx network number."
  ::={ npIpx 23 }





--  Direct Mode Objects

npDmConnSupp OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the number of current active Direct Mode connections."
    ::={ npDm 1 }

npDmConnAvail OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the number of Direct Mode connections available."
    ::={ npDm 2 }

npDmProtSupp OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is a bit string that contains a list of protocols over
         which DirectMode is supported.  A specified bit represents each
         protocol statck.  Support for more than one stack is indicated
         by multiple bits ORed together.
         0x01 = IPX/SPX
         0x02 = TCP/IP
         0x04 = DLC/LLC
         0x08 = AppleTalk"
    ::={ npDm 3 }

npDmServerInfo1 OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(7..15))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This object shows the address of the server that is connected
         to the DirectMode slot.  This structure returns AT_AVAIL
         if there is no server attached to this slot and AT_NOSUPP if
         the slot number is out of range.
           struct{
                  ushort16 addrType;    /* type of address */  
                  ushort16 pktSize;     /* size of negotiate packet size */
                  uchar8   addr[4-12];  /* address */
                 }
           AT_AVAIL      0   /* connection available */
           AT_NOTSUPP    1   /* connection slot not supported */
           AT_SPX        2   /* 12-byte SPX address */
           AT_TCP        3   /* 4-byte TCP address */
           AT_LLC        4   /* 6-byte LLC address */
           AT_AT         5   /* Appletalk address */
         Only AT_AVAIL, AT_NOTSUPP, and AT_SPX are currently supported."
    ::={ npDm 4 }

--  LLC 

llcN2Value OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the value of the N2 variable used in the 802.2 type II
         connection.  This value is the number of retransmissions that
         could occur if a host peer is not responding.  The Ti timer is
         this value (N2) times 3 (N2 x 3).  The value of the T1 timer is
         this value (N2) in seconds."
    ::={ llcconstategroup 1 }

llcConnectionstate OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the llc connection state for Lan Manager
         and Lan Server."
    ::={ llcconstategroup 7 }

-- New LLC object

npLlcServerAddress OBJECT-TYPE
    SYNTAX  OCTET STRING (SIZE(6))
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "This is the LLC server address for Lan Manager and Lan Server."
    ::={ llcconstategroup 8 }

-- This is a new sub-tree for port information.  The first two apply to all
-- JetDirect devices.  The rest apply only to EX boxes.

npPortNumPorts OBJECT-TYPE
    SYNTAX  INTEGER (0..255)
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of peripheral interfaces supported by this device."
    ::={ npPort 1 }

-- 1.3.6.1.4.1.11.2.4.3.13.2.0
npPortType OBJECT-TYPE
    SYNTAX  INTEGER {
                unknown(1),
                mio(2),
                xio(3),
                parallel(4),
                centronics(5),
                bitronics(6),
                ecpNoMLC(7),
                serial(8),
                scsi(9),
		ecpMLC(10)
            }
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"The type of the peripheral interface.  A parallel port will return
	 the specific protocl currently in use.  If the parallel port is
	 disconnected it will return parallel(4)."
    ::={ npPort 2 }

-- 1.3.6.1.4.1.11.2.4.3.13.3.0
npPortDesiredMode OBJECT-TYPE
    SYNTAX  INTEGER {
       bitronics(1), -- compatibility forward, nibble-mode backchannel
       centronics(2), -- compatibility forward
       ecpWithMLC(3), -- Full bi-directional ECP w/ MLC
       ecpWithNibbleMLC(4), -- ECP forward, nibble-mode back-channel w/ MLC
       ecp(5) -- Full bi-directional ECP w/o MLC
    }
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "The desired (remotely specified) operating mode of the parallel port.

	 The following map is used to determine mode availability and provides
	 the definition for each mode:
	                        Available When
	    npPortDesiredMode   Definition
	    ------------------  --------------
	    1 bitronics         always
				EX will attempt to retrieve nibble mode back
				channel data from the printer.  If the printer
				does not support bitronics, EX will default
				back to compatibility mode.
	    2 centronics        npPortMaxModeAvailable >= 1
				EX will only support compatibility (centronics)
				mode when talking to the printer
	    3 ecpWithNibbleMLC  npPortMaxModeAvailable >= 1
				EX will attempt to talk to the printer across
				MLC.  This is done by using ECP in the forward
				direction and nibble-mode bitronics in the
				reverse direction.  If the printer does not
				support both MLC and ECP, EX will fall back to 
				regular bitronics, as described above.
	    4 ecpWithMLC        npPortMaxModeAvailable >= 1
				EX will attempt to talk to the printer across
				MLC.  This is done by using ECP in both forward
				and reverse directions.  If the printer does
				not support both MLC and ECP, EX will fall back
				to regular bitronics, as described above.
	    5 ecp               npPortMaxModeAvailable >= 1
				EX will attempt to talk to the printer using
				ECP in both the forward and reverse directions.
				If the printer does not support ECP, EX will
				fall back to regular bitronics, as described
				above."
    ::={ npPort 3 }

npPortCentronicsHandshaking OBJECT-TYPE
    SYNTAX  INTEGER {
                nack-and-busy(1),
                nack-only(2),
                busy-only(3)
            }
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "The handshaking to be used in sending data over the parallel port."
    ::={ npPort 4 }

npPortStatusLines OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The state of the centronics status lines from the peripheral.  The
	 value is a bit mask.
         Bit      Value     Signal
          0       0x01      nACK
          1       0x02      
          2       0x04      
          3       0x08      
          4       0x10      nFAULT
          5       0x20      SELECT
          6       0x40      PERROR
          7       0x80      BUSY"
    ::={ npPort 5 }


-- 1.3.6.1.4.1.11.2.4.3.13.6.0
npPortMaxModeAvaliable OBJECT-TYPE
      SYNTAX  INTEGER
      ACCESS  read-only
      STATUS  optional
      DESCRIPTION
         "The maximum available parallel mode by which the print-server may
          connect to an attached peripheral.  This is a function of the
	  the available hardware and firmware capabilities.  The value 
	  represents a mode of parallel operation, as defined in the 
	  following table:
          Value     Mode
	  -----     -----------------
          0x01      Centronics
          0x03      ECP/MLC w/ nibble
	  0x04      ECP/MLC
	  0x05      ECP, No MLC"
    ::={ npPort 6 }

-- 1.3.6.1.4.1.11.2.4.3.13.7.0
npPortBidiPollRate OBJECT-TYPE
      SYNTAX  INTEGER
      ACCESS  read-write
      STATUS  optional
      DESCRIPTION
          "Poll rate for bi-directional data.  
          Range is 10 to 100 seconds.
          Defaults to 40 seconds."
      ::={ npPort 7 }
          


--  npXip

xipActive OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        " This indicates whether the card and peripheral support XIP and
          at least one of the protocol stacks is enables (UDP or IPX)."
    ::= { npXip 1}

--  CRC 

npCRCTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF NpCRCEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
        ""
    ::= { npCRC 1 }

npCRCEntry OBJECT-TYPE
    SYNTAX  NpCRCEntry
    ACCESS  not-accessible
    STATUS  optional
    DESCRIPTION
	" "
    INDEX   { npCRCIndex }
    ::= { npCRCTable 1 }

NpCRCEntry ::= SEQUENCE {
    npCRCIndex
        INTEGER,
    npCRCText
	OCTET STRING,
    npCRCChannel
        INTEGER
}

npCRCIndex OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        ""
    ::= { npCRCEntry 1 }

npCRCText OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        ""
    ::= { npCRCEntry 2 }

npCRCChannel OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        ""
    ::= { npCRCEntry 3 }

-- The DHCP group

 npDHCPconfig OBJECT-TYPE  
     SYNTAX INTEGER {
                  dhcpDisable(1),
                  dhcpEnable(2)
                  }
     ACCESS  read-write
     STATUS  mandatory
     DESCRIPTION
         "This object allows a user to enable or disable 
          configuration via DHCP. If DHCP is disabled, 
          bootp is used for configuration. Supported in 
          firmware revisions beginning with D-04-15, E-04-20(initial version, and 
          ending at A,D,E-05."
     ::={ npDhcp 1 }


-- 1.3.6.1.4.1.11.2.4.3.16.2.0
npDHCPserver OBJECT-TYPE
    SYNTAX  IpAddress
    ACCESS  read-only
    STATUS  mandatory
    DESCRIPTION
        "IP address of DHCP server that provided this unit with an IP
         address via the DHCP protocol."
    ::={ npDhcp 2 }


--npScan group
-- 1.3.6.1.4.1.11.2.4.3.17.1.0
npScanIdleTimeout OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
	"The idle time, in seconds, after which an idle connection may
	 be terminated.  A value of zero disables the timeout."
    ::={ npScan 1 }

-- 1.3.6.1.4.1.11.2.4.3.17.2.0
npScanTimeRemaining OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"The time remaining, in seconds, until the current connection's
	 lock expires.  Once a connection's lock expires, JetDirect will
	 terminate it if another connect request arrives.  The time is
	 reset whenever there is activity on the connection.  A value of
	 zero indicates there is no connection."
    ::={ npScan 2 }


-- 1.3.6.1.4.1.11.2.4.3.17.3
npScanCurrentAddr OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"The remote address of the current scan connection.  The format
	 is a sockaddr structure containing an IP or IPX address."
    ::={ npScan 3 }


-- 1.3.6.1.4.1.11.2.4.3.17.4.0
npScanCurrentName OBJECT-TYPE
    SYNTAX  OCTET STRING
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
	"Human readable name of the current scan client.  This object is
	 a scratchpad for client software to provide the current user
	 name so that other clients can include it in busy messages.
	 JetDirect does not use this value; it is provided for
	 cooperating software packages to notify each other of the
	 current user name."
    ::={ npScan 4 }

-- 1.3.6.1.4.1.11.2.4.3.17.5.0
npScanStatus OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
	"Current status of scanner.  Status values TBD."
    ::={ npScan 5 }


-- npWeb group
-- .1.3.6.1.4.1.11.2.4.3.18.1.0
embeddedWebCfg  OBJECT-TYPE
  SYNTAX INTEGER
  ACCESS read-only
  STATUS optional
  DESCRIPTION
  "Functionality provided by embedded web server (ews). 
     0 = no ews
     1 = ews on JetDirect for JetDirect status/configuration 
     4 = ews on JetDirect for scanner status/configuration
     8 = ews on device for device status/configuration" 
    ::={ npWeb 1 }

-- .1.3.6.1.4.1.11.2.4.3.18.2.0
wjaFrameworkURL OBJECT-TYPE
  SYNTAX OCTET STRING
  ACCESS read-write
  STATUS optional
  DESCRIPTION
  "Set by a present WJA system.  Once set, the WJD user interface will 
   add a framework link from the WJD navigation bar.   This link will 
   allow user navigation to the highest level page of WJA. This will allow 
   users to easily navigate to WJA to manage other devices with the network. 
   Since the URL can become stale, it is required that the WJD code verifies 
   that the URL is active before actually using it. This is required since the 
   WJA system may not always be operable.  Maximum length of the url must be 
   less than 255 bytes."
   ::={ npWeb 2 }


-- .1.3.6.1.4.1.11.2.4.3.18.3.0
wjaFrameworkName OBJECT-TYPE
  SYNTAX OCTET STRING
  ACCESS read-write
  STATUS optional
  DESCRIPTION
  "Used by  WJA systems as a scratch pad location for communication of 
    current wja name.  Name will be truncated to 64 characters."
   ::={ npWeb 3 }

-- .1.3.6.1.4.1.11.2.4.3.18.4.0
extFrameworkURL OBJECT-TYPE
  SYNTAX OCTET STRING
  ACCESS read-write
  STATUS optional
  DESCRIPTION
  "Set by a present external system.  Once set, the WJD user interface
  will add a framework link from the WHD navigation bar.  This link 
  will allow user navigation to the highest level page of WJA.  This will
  allow users to easily navigate to external systems to manage other
  devices with the network.  Since the URL can become stale, it is required
  that the WJD code verifies that the URL is active before
  actually using it.  This is required since the WJA system may not always be
  operable.  Maximum length of the url must be less than 255 bytes."
  ::={ npWeb 4 }


-- .1.3.6.1.4.1.11.2.4.3.18.5.0
extFrameworkName OBJECT-TYPE
  SYNTAX OCTET STRING
  ACCESS read-write
  STATUS optional
  DESCRIPTION
  "Used by external systems as a scratch pad location for communication of
  current wja name.  Name will be truncated to 64 characters."
  ::={ npWeb 5 }

-- .1.3.6.1.4.1.11.2.4.3.18.6.0
ippUrl OBJECT-TYPE
  SYNTAX OCTET STRING
  ACCESS read-write
  STATUS optional
  DESCRIPTION
  " Used by Internet Printing Protocol managers to define current URL.
    Maximum length of the url must be less than 255 bytes."
  ::={ npWeb 6 }


-- Parallel port objects

--- The Trap Group

trapDestinationNum OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-only
    STATUS  optional
    DESCRIPTION
        "The number of trap destinations."
    ::={ trapDest 1 }

----------- The Trap Destination Table --------------
-- The code which processes the trap destination table
-- utilizes a union to minimize data space.  This is a very
-- common "C" coding technique and adds important value.
-- However, it introduces a complication to the design of this
-- mib.  The "C" union results in multiple definitions for the 
-- table entries, depending on protocol.  There is no way (that
-- I know of) to provide a compilable mib which shows multiple
-- definitions for the objects.  To resolve this I am showing the 
-- AF_IPX object definitions commented out. 
 
trapDestinationTable OBJECT-TYPE
    SYNTAX  SEQUENCE OF TrapDestinationEntry
    ACCESS  not-accessible
    STATUS optional 
    DESCRIPTION
        "Protocol specific list of destinations
                  to which the agent sends traps."
    ::= { trapDest 2 }

trapDestinationEntry OBJECT-TYPE
    SYNTAX  TrapDestinationEntry
    ACCESS  not-accessible
    STATUS  optional 
    DESCRIPTION
        "Entries are a protocol specific sequence of trap
          destination parameters."
    INDEX    { trapAddrFamily }
    ::= { trapDestinationTable 1 }

TrapDestinationEntry ::= SEQUENCE {
    trapAddrFamily
        INTEGER,
    -- for ip trapAddrFamily
    trapAddrIp
        IpAddress,
    trapPort
        INTEGER,
    trapCommunityName
        OCTET STRING

   -- for ipx trapAddrFamily
   -- trapAddrNetwork
   --     INTEGER,
   -- trapAddrNode
   --     INTEGER,
   -- trapSocket,
   --     INTEGER,
   -- trapFrameType,
   --     INTEGER,
   -- trapPacketType,
   --     INTEGER,
   -- trapCommunityName,
   --     OCTET STRING,
  }

-- for all protocols
trapAddrFamily OBJECT-TYPE
    SYNTAX  NetworkAddress
    ACCESS  read-write
    STATUS  optional 
    DESCRIPTION
        "Protocol family for trap.  Possible values: 

                   0  NOT_SET
                   1  AF_UDP
                   2  AF_IPX
                   3  AF_LLC
                   4  AF_DDP"

    ::= { trapDestinationEntry 1 }

-- AF_UDP
trapAddrIp  OBJECT-TYPE
    SYNTAX  IpAddress 
    ACCESS  read-write 
    STATUS  optional 
    DESCRIPTION
        "Ip address of trap destination."
    ::= { trapDestinationEntry 2 }

-- AF_UDP
trapPort  OBJECT-TYPE
    SYNTAX  INTEGER 
    ACCESS  read-write 
    STATUS  optional 
    DESCRIPTION
        "Host port to which traps are sent."
    ::= { trapDestinationEntry 3 } 

-- AF_UDP
trapCommunityName  OBJECT-TYPE
    SYNTAX  OCTET STRING 
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
         "Trap community name specified in the trap packet."
    ::= { trapDestinationEntry 4 }

-- AF_IPX
-- trapAddrNetwork  OBJECT-TYPE
--    SYNTAX  INTEGER
--    ACCESS  read-write
--    STATUS  optional
--    DESCRIPTION
--        "Network address of host to which traps are sent."
--    ::= { trapDestinationEntry 2 }

-- AF_IPX
-- trapAddrNode  OBJECT-TYPE
--    SYNTAX  INTEGER
--    ACCESS  read-write
--    STATUS  optional
--    DESCRIPTION
--         "Node address of host to which traps are sent."
--    ::= { trapDestinationEntry 3 }

-- AF_IPX
-- trapSocket  OBJECT-TYPE
--    SYNTAX  INTEGER
--    ACCESS  read-write
--    STATUS  optional
--    DESCRIPTION
--         "Host socket to which traps are sent."
--    ::= { trapDestinationEntry 4 }

-- AF_IP
-- trapFrameType  OBJECT-TYPE
--    SYNTAX  INTEGER
--    ACCESS  read-write
--    STATUS  optional
--    DESCRIPTION
--         "Frame type for outbound packet"
--    ::= { trapDestinationEntry 5 }

-- AF_IPX
-- trapPacketType  OBJECT-TYPE
--    SYNTAX  INTEGER
--    ACCESS  read-write
--    STATUS  optional
--    DESCRIPTION
--         "Packet type for outbound packet"
--    ::= { trapDestinationEntry 6 }

-- AF_IPX
-- trapCommunityName  OBJECT-TYPE
--    SYNTAX OCTET STRING 
--    ACCESS  read-write
--    STATUS  optional
--    DESCRIPTION
--         "Trap community name specified in the trap packet."
--    ::= { trapDestinationEntry 7 }

trapTest OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "Causes agent to send an snmp trap to hosts registered in the trap
               destination table.  Value specified will be used as the specific trap id."
    ::={ trapDest 3 }

trapSource OBJECT-TYPE
    SYNTAX  INTEGER
    ACCESS  read-write
    STATUS  optional
    DESCRIPTION
        "Sets the agent internal source for traps.  Possibilities are as follows:
         0 = ALL_TRAPS_ON
         1 = ASYNC_PERIPHERAL_STATUS traps only
         2 = proprietary pml traps only
         3 = alert table traps only  "
    ::={ trapDest 4 }



-- Download Objects from ICF

hpicfDownloadTable   OBJECT-TYPE
    SYNTAX           SEQUENCE OF HpicfDownloadEntry
    ACCESS           not-accessible
    STATUS           mandatory
	DESCRIPTION
		"A table of firmware downloads to this device.  There will
		at any time be either 0 or 1 rows in this table, and the
		only valid index for this table is 1.  It is only a table
		so that we may take advantage of the RowStatus textual
		convention for configuring the download parameters."
	::= { hpicfDownload 1 }

hpicfDownloadEntry OBJECT-TYPE
	SYNTAX     HpicfDownloadEntry
	ACCESS     not-accessible
	STATUS     mandatory
	DESCRIPTION
		"The row in the hpicfDownloadTable containing the download
		parameters."
	INDEX      { hpicfDownloadIndex }
	::= { hpicfDownloadTable 1 }

HpicfDownloadEntry ::=
	SEQUENCE {
		hpicfDownloadIndex          INTEGER,
		hpicfDownloadOwnerAddress	OCTET STRING,
		hpicfDownloadOwnerDomain	OBJECT IDENTIFIER,
		hpicfDownloadTAddress		OCTET STRING,
		hpicfDownloadTDomain		OBJECT IDENTIFIER,
		hpicfDownloadFilename		DisplayString,
        	hpicfDownloadResetType      INTEGER,
		hpicfDownloadErrorStatus	INTEGER,
		hpicfDownloadErrorText		DisplayString,
--      	hpicfDownloadStatus         RowStatus
        	hpicfDownloadStatus         INTEGER
	}

hpicfDownloadIndex OBJECT-TYPE
	SYNTAX     INTEGER {
			dlInstance(1)
	}
	ACCESS     not-accessible
	STATUS     optional
	DESCRIPTION
		"The index which uniquely identifies this row.  The only
		legal value for this object is 1."
	::= { hpicfDownloadEntry 1 }

hpicfDownloadOwnerAddress OBJECT-TYPE
	SYNTAX     OCTET STRING
	ACCESS     read-only
	STATUS     optional
	DESCRIPTION
		"The transport address of the management station that
		initiated this download attempt, formatted according to
		the value of hpicfDownloadOwnerDomain.
		
		An attempt to modify this value will fail if the associated
		hpicfDownloadStatus object would be equal to 'active' both
		before and after the modification attempt."
	::= { hpicfDownloadEntry 2 }

hpicfDownloadOwnerDomain  OBJECT-TYPE
	SYNTAX     OBJECT IDENTIFIER
	ACCESS     read-only
	STATUS     optional
	DESCRIPTION
		"The kind of transport service used by the management
		station that initiated this download attempt.
		
		An attempt to modify this value will fail if the associated
		hpicfDownloadStatus object would be equal to 'active' both
		before and after the modification attempt."
	::= { hpicfDownloadEntry 3 }

hpicfDownloadTAddress OBJECT-TYPE
	SYNTAX     OCTET STRING
	ACCESS     read-write
	STATUS     optional
	DESCRIPTION
		"The transport address of the node to download firmware from,
		formatted according to the value of hpicfDownloadTDomain.
		
		An attempt to modify this value will fail if the associated
		hpicfDownloadStatus object would be equal to 'active' both
		before and after the modification attempt."
	::= { hpicfDownloadEntry 4 }

hpicfDownloadTDomain OBJECT-TYPE
	SYNTAX     OBJECT IDENTIFIER
	ACCESS     read-write
	STATUS     optional
	DESCRIPTION
		"The kind of transport service to be used for the download.
		Currently supports snmpUDPDomain and snmpIPXDomain.
		
		An attempt to modify this value will fail if the associated
		hpicfDownloadStatus object would be equal to 'active' both
		before and after the modification attempt."
	::= { hpicfDownloadEntry 5 }

hpicfDownloadFilename OBJECT-TYPE
	SYNTAX     DisplayString
	ACCESS     read-write
	STATUS     optional
	DESCRIPTION
		"Filename and path of file to download (maximum length of
		63 characters + NULL).
		
		An attempt to modify this value will fail if the associated
		hpicfDownloadStatus object would be equal to 'active' both
		before and after the modification attempt."
	::= { hpicfDownloadEntry 6 }

hpicfDownloadResetType OBJECT-TYPE
    SYNTAX     INTEGER {
            noReset(1),
            warmReset(2),
            factoryReset(3)
            }
    ACCESS     read-write
    STATUS     optional
    DESCRIPTION
           "The type of reset to perform after completion of the 
            firmware download.  Note that not all agents will support
            all possible values, and there may be other agent-specific 
            values for this object."
    ::= { hpicfDownloadEntry 7 }

hpicfDownloadErrorStatus OBJECT-TYPE
	SYNTAX     INTEGER {
			fileNotFound(1),
			accessViolation(2),
			diskFull(3),
			illegalOperation(4),
			unknownTID(5),
			fileExists(6),
			noSuchUser(7),
			notDefined(8),
			corruptFile(9),
			noServer(10),
			tftpTimeout(11),
			hardwareError(12),
			success(13),
            inProgress(14),
			idle(15),
            erasing(16),
            incomplete(17)
	}
	ACCESS     read-only
	STATUS     optional
	DESCRIPTION
		"Status of download.  The first seven codes are equal to the
		codes defined by the TFTP protocol.  'notDefined' is the same
		as TFTP protocol error 0.  'corruptFile' means that the agent
		detected a problem with the download file format.  'noServer'
		means the TFTP server at hpicfDownloadTAddress did not
		respond to the TFTP request.  'tftpTimeout' means that the 
		download was aborted due to excessive timeouts. 'hardwareError'
		means that there was a hardware problem on the agent that
		forced an abort of the download (see hpicfDownloadErrorText
		for more detailed information).  'success' means that the 
		download has completed successfully.  'inProgress' means that
		the TFTP transfer is currently active.  'idle means' that the 
		download has not yet started (i.e. the value of 
		hpicfDownloadStatus has not yet been set to 'active')."
	::= { hpicfDownloadEntry 8 }

hpicfDownloadErrorText OBJECT-TYPE
	SYNTAX     DisplayString
	ACCESS     read-only
	STATUS     optional
	DESCRIPTION
		"A textual description of the current error status of the
		firmware download."
	::= { hpicfDownloadEntry 9 }

hpicfDownloadStatus OBJECT-TYPE
--  SYNTAX     RowStatus
    SYNTAX     INTEGER {
                  active(1),
                  notInService(2),
                  notReady(3),
                  createAndGo(4),
                  createAndWait(5),
                  destroy(6)
                  }

	ACCESS     read-write
	STATUS     optional
	DESCRIPTION
		"The status of this download entry.  This object
		may not be set to 'active' unless the following columnar
		objects exist in this row: hpicfDownloadOwnerAddress,
		hpicfDownloadOwnerDomain, hpicfDownloadTAddress,
		hpicfDownloadTDomain, and hpicfDownloadFilename."
	::= { hpicfDownloadEntry 10 }

hpicfDownloadLogMaxSize OBJECT-TYPE
    SYNTAX     INTEGER
    ACCESS     read-only
    STATUS     mandatory
    DESCRIPTION
        "The maximum number of the download log entries 
         supported by this agent.  Note that 0 is a legal
         value for this variable."
    ::= { hpicfDownload 2 }


-- Access Control Objects

setCommunityName OBJECT-TYPE
    SYNTAX      OCTET STRING
    ACCESS      read-write
    STATUS      optional
    DESCRIPTION
      "This object controls access of snmp read-write requests.  Factory
        default configuration provides authentication of incoming packets 
        with community names: internal and public.  This object overrides the 
        factory default settings so that the factory default setttings no longer
        work. This object returns SET or NOT_SET."
  ::= { community 1 }

getCommunityName OBJECT-TYPE
    SYNTAX      OCTET STRING
    ACCESS      read-only
    STATUS      optional
    DESCRIPTION
      "This object controls access of snmp read requests.  Factory
        default configuration provides authentication of incoming packets
        with community names: internal and public.  This object provides
        access in addition to the factory default settings. This object
        returns SET or NOT_SET."
  ::= { community 2 }


-- toptools group
hpHttpMgDefaultURL    OBJECT-TYPE
	SYNTAX      Utf8String 
	MAX-ACCESS  read-write
	STATUS      optional 
	DESCRIPTION
	"A Uniform Resource Locator (URL), as defined in RFC1738,
	for the default management information for this device. This URL is typically used by a HTTP browser to display management information for this device.  This default page should contain links to any other management
	pages for this device."
  ::= { hpHttpMgDefaults 1}


-- PML objects
-- Generally, if PML is supported by the JD card and printer, PML object 
-- requests are repackaged by JetDirect from snmp format into "pml"
-- and transmitted to the printer.  Upon asynchronous return from the 
-- printer, the "pml" format data is repackaged back to snmp format
-- and returned to the originator.  If a pml object request is received
-- by the JD card, and PML is not supported on that hardware combination
-- then JD card returns a NONAME error.

-- PML objects (.1.3.6.1.4.1.11.2.3.9.4.2...) are not defined by this mib.
-- For definitions see appropriate printer mibs.

-- The following PML objects are exceptions to the "general" passthru
-- processing described above.  For hardware combinations that support
-- PML, these requests are passed thru as described above.  For hardware
-- that does not support PML, JD attempts to provide the data from another
-- source (BIO, or Novell jobAccounting) rather than return the error
-- specified  above.  Mib definitions for these objects are contained in
-- the PML mib.  These are repeated here for reference.  They are commented
-- out to avoid compile errors resulting from incomplete tree. 

-- 1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.5.0
--totalEnginePageCount OBJECT-TYPE
--    SYNTAX     INTEGER
--    ACCESS     read-only
--    STATUS     mandatory
--    DESCRIPTION
--        "The total number of pages printed on the device as determined by
--         PJL requests/responses.  This value is normally a printer based
--         MIB value.  However, the JetDirect product can use PJL to determine
--         an approximate page count in some situations.  See the PML object
--         definition (TOTAL-ENGINE-PAGE-COUNT) for more details."
--    ::= { notYetStubbed 5 }

-- 1.3.6.1.4.1.11.2.3.9.4.2.1.4.1.2.7.0
--totalColorPageCount OBJECT-TYPE
--    SYNTAX     INTEGER
--    ACCESS     read-only
--    STATUS     mandatory
--    DESCRIPTION
--        "The total number of color pages printed on the device as determined
--         by PJL requests/responses.  This value is normally a printer based
--         MIB value.  However, the JetDirect product can use PJL to determine
--         an approximate page count in some situations.  See the PML object
--         definition (TOTAL-COLOR-PAGE-COUNT) for more details."
--    ::= { notYetStubbed 7 }


END
