Here is the latest revision of the prtChannelInformation object
definition. I've tried to incorporated all the decisions reached at the
October 30th conference call.
I took the liberty of changing "human-readable" to "textual" in the
description. We seem to keep tripping over the implications of
"human-readable." "Textual" seems more neutral, more appropriate, and
is in keeping with the description of the DisplayString textual
convention.
Question: UTF-8 apparently uses eight-bit codes, which causes problems
if we're saying data values are coded with only NVT ASCII graphic
characters (32-126). There's an RFC 1642 that describes UTF-7, a
seven-bit representation of Unicode, but I have no idea of whether it is
generally accepted. Suggestions from anyone?
Following the object definition are the specific semantics for the
handful of enum values I volunteered for, also updated.
Please let me know if anything is missing or mis-stated, or if you have
suggestions on clarifying the language.
:: David Kellerman Northlake Software 503-228-3383
::david_kellerman at nls.com Portland, Oregon fax 503-228-5662
prtChannelInformation OBJECT-TYPE
SYNTAX DisplayString (SIZE(0..255))
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Auxiliary information to allow a printing application to use
the channel for data submission to the printer. An application
capable of using a specific PrtChannelType should be able to use
the combined information from the prtChannelInformation and
other channel and interface group objects to 'bootstrap' its use
of the channel. prtChannelInformation is not intended to
provide a general channel description, nor to provide
information that is available once the channel is in use.
The encoding and interpretation of the prtChannelInformation
object is specific to channel type. The description of each
PrtChannelType enum value for which prtChannelInformation is
defined specifies the appropriate encoding and interpretation,
including interaction with other objects. For channel types
that do not specify a prtChannelInformation value, its value
shall be null (0 length).
When a new PrtChannelType enumeration value is registered, its
accompanying description must specify the encoding and
interpretation of the prtChannelInformation value for the
channel type. prtChannelInformation semantics for an existing
PrtChannelType may be added or amended in the same manner as
described in section 2.4.1 for type 2 enumeration values.
The prtChannelInformation specifies values for a collection of
channel attributes, represented as text according to the
following rules:
1. The prtChannelInformation is coded in the NVT ASCII
character set. It is not affected by localization.
2. The prtChannelInformation is a list of entries representing
the attribute values. Each entry consists of the following
items, in order:
a. a keyword, composed of alphabetic characters (A-Z,
a-z), that identifies a channel attribute,
b. an Equals Sign (=) to delimit the keyword,
c. a data value, consisting of NVT ASCII graphics
characters (codes 32-126),
d. a Line Feed character (code 10) to delimit the data
value.
No other characters shall be present.
Keywords are case-sensitive. Conventionally, keywords are
capitalized (including each word of a multi-word keyword),
and, since they occupy space in the prtChannelInformation,
they are kept short.
3. If a channel attribute has multiple values, it is
represented by multiple entries with the same keyword, each
specifying one value. Otherwise, there shall be at most
one entry for each attribute.
4. By default, entries may appear in any order. If there are
ordering constraints for particular entries, these must be
specified in their definitions.
5. The prtChannelInformation value may represent information
that is not normally coded in textual form, or that is coded
in a character set other than NVT ASCII. In these cases,
whatever symbolic representation is conventionally used for
the information should be used for encoding the
prtChannelInformation. (For instance, a binary port value
might be represented as a decimal number, Unicode would
be represented in UTF-8 format.)
6. For each PrtChannelType for which prtChannelInformation
entries are defined, the descriptive text associated with the
PrtChannelType enumeration value shall specify the following
information for each entry:
Title: Brief description phrase, e.g.: "Port name,"
"Service Name,"
Keyword: The keyword value, eg: "Port," "Service"
Syntax: The encoding of the entry value, if it
cannot be directly represented by NVT ASCII,
Status: "Mandatory," "Optional," or "Conditionally
Mandatory,"
Multiplicity: "Single" or "Multiple," to indicate whether
the entry may be present multiple times,
Description: Description of the use of the entry, other
information required to complete the
definition (e.g.: ordering contstraints,
interactions between entries).
Applications that interpret prtChannelInformation should ignore
unrecognized entries, so they are not affected if new entry
types are added.
"
::= { prtChannelEntry 9 }
Here are proposed prtChannelInformation definitions for selected
PrtChannelType values:
chLPDServer(8), -- ...
-- prtChannelInformation entries:
-- Printer queue name
-- Keyword: Queue
-- Syntax: name
-- Status: mandatory
-- Multiplicity: single
-- Description: queue name as defined in RFC 1179
chDECLAT(32), -- ...
-- prtChannelInformation entries:
-- Port name
-- Keyword: Port
-- Syntax: name
-- Status: conditionally mandatory
-- (see note below)
-- Multiplicity: single
-- Description: LAT port name
-- Service name
-- Keyword: Service
-- Syntax: name
-- Status: conditionally mandatory
-- (see note below)
-- Multiplicity: single
-- Description: LAT service name
-- The LAT channel may be identified by either a
-- port or service, so either a Port or Service
-- entry must be provided, but not both.
chPortTCP(37), -- ...
-- prtChannelInformation entries:
-- Port number
-- Keyword: Port
-- Syntax: decimal number
-- Status: mandatory
-- Multiplicity: single
-- Description: TCP port number
chBidirPortTCP(38), -- ...
-- prtChannelInformation entries:
-- Port number
-- Keyword: Port
-- Syntax: decimal number
-- Status: mandatory
-- Multiplicity: single
-- Description: TCP port number