-- Changes to RFC1318 (Parallel Printer MIB)
--      No changes needed.


                    RFC1318-MIB DEFINITIONS ::= BEGIN

                    IMPORTS
                            Counter
                                    FROM RFC1155-SMI
                            transmission
                                    FROM RFC1213-MIB
                            OBJECT-TYPE
                                    FROM RFC-1212;

            -- this is the MIB module for Parallel-printer-like
            -- hardware devices

            para    OBJECT IDENTIFIER ::= { transmission 34 }

            -- the generic Parallel-printer-like group

            -- Implementation of this group is mandatory for all
            -- systems that have Parallel-printer-like hardware
            -- ports supporting higher level services such as
            -- character streams

            paraNumber OBJECT-TYPE
                SYNTAX INTEGER
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The number of ports (regardless of their current
                    state) in the Parallel-printer-like port table."
                ::= { para 1 }


            -- the Parallel-printer-like Port table

            paraPortTable OBJECT-TYPE
                SYNTAX SEQUENCE OF ParaPortEntry
                ACCESS not-accessible
                STATUS mandatory
                DESCRIPTION
                    "A list of port entries.  The number of entries is
                    given by the value of paraNumber."
                ::= { para 2 }


            paraPortEntry OBJECT-TYPE
                SYNTAX ParaPortEntry
                ACCESS not-accessible
                STATUS mandatory
                DESCRIPTION
                    "Status and parameter values for a port."
                INDEX { paraPortIndex }
                ::= { paraPortTable 1 }

            ParaPortEntry ::=
                SEQUENCE {
                    paraPortIndex
                        INTEGER,
                    paraPortType
                        INTEGER,
                    paraPortInSigNumber
                        INTEGER,
                    paraPortOutSigNumber
                        INTEGER
                }

            paraPortIndex OBJECT-TYPE
                SYNTAX INTEGER
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "A unique value for each port.  Its value ranges
                    between 1 and the value of paraNumber.  By
                    convention and if possible, hardware port numbers
                    map directly to external connectors.  The value for
                    each port must remain constant at least from one
                    re-initialization of the network management agent to
                    the next."
                ::= { paraPortEntry 1 }

            paraPortType OBJECT-TYPE
                SYNTAX INTEGER {
                    other(1),
                    centronics(2),
                    dataproducts(3)
                }
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The port's hardware type."
                ::= { paraPortEntry 2 }

            paraPortInSigNumber OBJECT-TYPE
                SYNTAX INTEGER
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The number of input signals for the port in the
                    input signal table (paraPortInSigTable).  The table
                    contains entries only for those signals the software
                    can detect."
                ::= { paraPortEntry 3 }

            paraPortOutSigNumber OBJECT-TYPE
                SYNTAX INTEGER
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The number of output signals for the port in the
                    output signal table (paraPortOutSigTable).  The
                    table contains entries only for those signals the
                    software can assert."
                ::= { paraPortEntry 4 }


            -- the Input Signal table

            paraInSigTable OBJECT-TYPE
                SYNTAX SEQUENCE OF ParaInSigEntry
                ACCESS not-accessible
                STATUS mandatory
                DESCRIPTION
                    "A list of port input control signal entries."
                ::= { para 3 }

            paraInSigEntry OBJECT-TYPE
                SYNTAX ParaInSigEntry
                ACCESS not-accessible
                STATUS mandatory
                DESCRIPTION
                    "Input control signal status for a hardware port."
                INDEX { paraInSigPortIndex, paraInSigName }
                ::= { paraInSigTable 1 }

            ParaInSigEntry ::=
                SEQUENCE {
                    paraInSigPortIndex
                        INTEGER,
                    paraInSigName
                        INTEGER,
                    paraInSigState
                        INTEGER,
                    paraInSigChanges
                        Counter
                }

            paraInSigPortIndex OBJECT-TYPE
                SYNTAX INTEGER
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The value of paraPortIndex for the port to which
                    this entry belongs."
                ::= { paraInSigEntry 1 }

            paraInSigName OBJECT-TYPE
                SYNTAX INTEGER { power(1), online(2), busy(3),
                                 paperout(4), fault(5) }
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "Identification of a hardware signal."
                ::= { paraInSigEntry 2 }

            paraInSigState OBJECT-TYPE
                SYNTAX INTEGER { none(1), on(2), off(3) }
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The current signal state."
                ::= { paraInSigEntry 3 }

            paraInSigChanges OBJECT-TYPE
                SYNTAX Counter
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The number of times the signal has changed from
                    'on' to 'off' or from 'off' to 'on'."
                ::= { paraInSigEntry 4 }


            -- the Output Signal table

            paraOutSigTable OBJECT-TYPE
                SYNTAX SEQUENCE OF ParaOutSigEntry
                ACCESS not-accessible
                STATUS mandatory
                DESCRIPTION
                    "A list of port output control signal entries."
                ::= { para 4 }

            paraOutSigEntry OBJECT-TYPE
                SYNTAX ParaOutSigEntry
                ACCESS not-accessible
                STATUS mandatory
                DESCRIPTION
                    "Output control signal status for a hardware port."
                INDEX { paraOutSigPortIndex, paraOutSigName }
                ::= { paraOutSigTable 1 }

            ParaOutSigEntry ::=
                SEQUENCE {
                    paraOutSigPortIndex
                        INTEGER,
                    paraOutSigName
                        INTEGER,
                    paraOutSigState
                        INTEGER,
                    paraOutSigChanges
                        Counter
                }

            paraOutSigPortIndex OBJECT-TYPE
                SYNTAX INTEGER
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The value of paraPortIndex for the port to which
                    this entry belongs."
                ::= { paraOutSigEntry 1 }

            paraOutSigName OBJECT-TYPE
                SYNTAX INTEGER { power(1), online(2), busy(3),
                                 paperout(4), fault(5) }
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "Identification of a hardware signal."
                ::= { paraOutSigEntry 2 }

            paraOutSigState OBJECT-TYPE
                SYNTAX INTEGER { none(1), on(2), off(3) }
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The current signal state."
                ::= { paraOutSigEntry 3 }

            paraOutSigChanges OBJECT-TYPE
                SYNTAX Counter
                ACCESS read-only
                STATUS mandatory
                DESCRIPTION
                    "The number of times the signal has changed from
                    'on' to 'off' or from 'off' to 'on'."
                ::= { paraOutSigEntry 4 }

            END
