User`s guide
DC 900-1516D 83
Chapter
5
ICP Packet Formats
This chapter describes the packet formats used by Protogate protocols. The packet
formats that are written to the ICP2432 are the same whether the ICP is attached to a
Freeway server or a PCI bus in your VMS system. Because most Protogate protocol pro-
grammer’s guides mention commands and responses as they apply to the Freeway
server, this chapter covers both Freeway and device driver use of packets.
5.1 DLI Packet Format
The OpenVMS ICP driver QIO interface provides a block-transfer interface between a
client application and the protocol software resident on the embedded ICP. From the
application’s perspective, these packets consist of message blocks composed of an ICP
header structure followed by a protocol header structure followed by an optional data
array. Figure 5–1 shows the “C” definition of this ICP packet structure.
When preparing a packet to write to the ICP, the application must initialize the
usICPCount field with the size in bytes of the PROT_HDR structure (16) plus the size of
the data array that follows it. After reading a packet from the driver, the application may
compute the size of the data array that follows the
PROT_HDR structure by subtracting
16 from the value of the usICPCount field in the
ICP_HDR structure.
Note that the
ICP_HDR structure must be in network byte-order (Big Endian). This
means that the VMS program must swap bytes in the ICP header before writing packets
to the ICP. The VMS program must also swap bytes in the ICP header after reading each
packet from the ICP. The
PROT_HDR structure remains in the client computer’s natural
byte order, which is Little Endian for AXP systems.
Roger — Bill
Reid’s review
comment
was “What is
this and why
is it?” Maybe
it’s
redundant
now that we
are putting
all the packet
info in the
protocol
documents
...Leslie