2278 lines
76 KiB
HTML
2278 lines
76 KiB
HTML
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||
|
<html>
|
||
|
<head>
|
||
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||
|
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
|
||
|
<title>Receive Data (QOLRECV) API</title>
|
||
|
<!-- Begin Header Records ========================================== -->
|
||
|
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
||
|
<!-- US Government Users Restricted Rights -->
|
||
|
<!-- Use, duplication or disclosure restricted by -->
|
||
|
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
||
|
<!-- NETMG2 SCRIPT A converted by B2H R4.1 (346) (CMS) by HOLTJM at -->
|
||
|
<!-- RCHVMW2 on 29 Jan 1999 at 10:01:37 -->
|
||
|
<!-- This file has undergone html cleanup June 2002 by JET -->
|
||
|
<!-- Change History: -->
|
||
|
<!-- YYMMDD USERID Change description -->
|
||
|
<!--File Edited December 2001 -->
|
||
|
<!--End Header Records -->
|
||
|
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
|
||
|
</head>
|
||
|
<body>
|
||
|
<a name="Top_Of_Page"></a>
|
||
|
<!-- Java sync-link -->
|
||
|
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript">
|
||
|
</script>
|
||
|
|
||
|
<h2>Receive Data (QOLRECV) API</h2>
|
||
|
|
||
|
<div class="box" style="width: 70%;">
|
||
|
Required Parameter Group:<br>
|
||
|
<!-- iddvc RMBR -->
|
||
|
<br>
|
||
|
<table width="100%">
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="10%">1</td>
|
||
|
<td align="left" valign="top" width="50%">Return code</td>
|
||
|
<td align="left" valign="top" width="20%">Output</td>
|
||
|
<td align="left" valign="top" width="20%">Binary(4)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">2</td>
|
||
|
<td align="left" valign="top">Reason code</td>
|
||
|
<td align="left" valign="top">Output</td>
|
||
|
<td align="left" valign="top">Binary(4)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">3</td>
|
||
|
<td align="left" valign="top">Existing user connection end point ID</td>
|
||
|
<td align="left" valign="top">Output</td>
|
||
|
<td align="left" valign="top">Binary(4)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">4</td>
|
||
|
<td align="left" valign="top">New provider connection end point ID</td>
|
||
|
<td align="left" valign="top">Output</td>
|
||
|
<td align="left" valign="top">Binary(4)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">5</td>
|
||
|
<td align="left" valign="top">Operation</td>
|
||
|
<td align="left" valign="top">Output</td>
|
||
|
<td align="left" valign="top">Char(2)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">6</td>
|
||
|
<td align="left" valign="top">Number of data units</td>
|
||
|
<td align="left" valign="top">Output</td>
|
||
|
<td align="left" valign="top">Binary(4)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">7</td>
|
||
|
<td align="left" valign="top">Data available</td>
|
||
|
<td align="left" valign="top">Output</td>
|
||
|
<td align="left" valign="top">Char(1)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">8</td>
|
||
|
<td align="left" valign="top">Diagnostic data</td>
|
||
|
<td align="left" valign="top">Output</td>
|
||
|
<td align="left" valign="top">Char(40)</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top">9</td>
|
||
|
<td align="left" valign="top">Communications handle</td>
|
||
|
<td align="left" valign="top">Input</td>
|
||
|
<td align="left" valign="top">Char(10)</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
Default Public Authority: *USE<br>
|
||
|
<!-- iddvc RMBR -->
|
||
|
<br>
|
||
|
Threadsafe: No<br>
|
||
|
<!-- iddvc RMBR -->
|
||
|
<br>
|
||
|
</div>
|
||
|
|
||
|
<p>The Receive Data (QOLRECV) API performs an input operation on a link that is
|
||
|
currently enabled in the job in which the application program is running. The
|
||
|
type of data received is returned in the operation parameter. The data itself,
|
||
|
is returned in the input buffer that was created when the link was enabled. For
|
||
|
X'0001' operations, a description of that data is also be returned in the input
|
||
|
buffer descriptor that is created when the link was enabled.</p>
|
||
|
|
||
|
<p>The QOLRECV API can receive different types of data depending on the type of
|
||
|
communications line the link is using. See <a href="#HDRLANOPRR">LAN Input
|
||
|
Operations</a> for more information on the types of data that can be received
|
||
|
on links using a token-ring, Ethernet, wireless, or FDDI communications line.
|
||
|
See <a href="#HDRX25OPRR">X.25 SVC and PVC Input Operations</a> for more
|
||
|
information on the types of data that can be received on links using an X.25
|
||
|
communications line.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> The QOLRECV API should only be called when the
|
||
|
user-defined communications support has data available to be received. This is
|
||
|
indicated either by an incoming-data entry on the data queue or user queue, or
|
||
|
by the data available parameter on the QOLRECV API.</p>
|
||
|
|
||
|
<br>
|
||
|
<!-- Please NOTE: DO NOT DELETE THIS SECTION if this API has no authorities and locks. -->
|
||
|
<!-- Instead, use the commented out coding below to indicate NONE. -->
|
||
|
<h3>Authorities and Locks</h3>
|
||
|
|
||
|
<!-- Use this if there are no authorities and locks. -->
|
||
|
<p>None.</p>
|
||
|
|
||
|
<br>
|
||
|
<h3>Required Parameter Group</h3>
|
||
|
|
||
|
<dl>
|
||
|
<dt><strong>Return code</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; BINARY(4)
|
||
|
|
||
|
<p>The recovery action to take. See <a href="#HDRRECVRR">Return and Reason
|
||
|
Codes</a>.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Reason code</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; BINARY(4)
|
||
|
|
||
|
<p>The error that occurred. See <a href="#HDRRECVRR">Return and Reason
|
||
|
Codes</a>.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Existing user connection end point ID</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; BINARY(4)
|
||
|
|
||
|
<p>The user connection end point (UCEP) ID that the data was received on. For
|
||
|
links using a token-ring, Ethernet, wireless, or FDDI communications line, the
|
||
|
content of this parameter will always be 1.</p>
|
||
|
|
||
|
<p>For links using an X.25 communications line, the content of this parameter
|
||
|
is only valid when the operation parameter is X'0001', X'B001', X'B101',
|
||
|
X'B301', or X'BF01'. It will contain the UCEP ID that was provided in the new
|
||
|
user connection end point ID parameter on the call to the QOLSEND API with
|
||
|
operation X'B000' or X'B400'.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> If an incoming X.25 SVC call is rejected by the
|
||
|
user-defined communications application program by calling the QOLSEND API with
|
||
|
operation X'B100', the content of this parameter will be set to zero when
|
||
|
notification of the completion of the X'B100' operation is received from the
|
||
|
QOLRECV API (operation X'B101').</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>New provider connection end point ID</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; BINARY(4)
|
||
|
|
||
|
<p>The provider connection end point (PCEP) ID for the connection that is to be
|
||
|
established. This identifier must be used on all subsequent calls to the
|
||
|
QOLSEND API for this connection.</p>
|
||
|
|
||
|
<p>The content of this parameter is only valid for links using an X.25
|
||
|
communications line and when the operation parameter is X'B201'.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Operation</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; CHAR(2)
|
||
|
|
||
|
<p>The type of data received by the application program. With the exception of
|
||
|
X'0001', all values are only valid for links using an X.25 communications line.
|
||
|
The valid values are as follows:</p>
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<!-- cols="15 85" -->
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'0001'</em></td>
|
||
|
<td valign="top">User data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'B001'</em></td>
|
||
|
<td valign="top">Completion of the X'B000' output operation.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'B101'</em></td>
|
||
|
<td valign="top">Completion of the X'B100' output operation.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'B111'</em></td>
|
||
|
<td valign="top">Completion of the X'B110' output operation.
|
||
|
|
||
|
<p>Cleanup of all connections complete. No data is associated with this
|
||
|
operation.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'B201'</em></td>
|
||
|
<td valign="top">Incoming X.25 switched virtual circuit (SVC) call.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'B301'</em></td>
|
||
|
<td valign="top">Connection failure or reset indication received.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'B311'</em></td>
|
||
|
<td valign="top">Connection failure applying to all connections for this link.
|
||
|
|
||
|
<p>This operation is only received when the extended operations parameter for
|
||
|
the QOLELINK API is set to operations supported.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'BF01'</em></td>
|
||
|
<td valign="top">Completion of the reset (X'BF00') output operation.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Note:</strong> The special value of X'0000' will be returned in the
|
||
|
operation parameter to indicate no data was received from the QOLRECV API. See
|
||
|
<a href="#HDRRECVRR">Return and Reason Codes</a> for more information.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Number of data units</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; BINARY(4)
|
||
|
|
||
|
<p>The number of data units in the input buffer that contain data. Any value
|
||
|
between 1 and the number of data units created in the input buffer may be
|
||
|
returned when the operation parameter is X'0001'. Otherwise, any value between
|
||
|
0 and 1 may be returned.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> The number of data units created in the input buffer
|
||
|
was returned in the data units created parameter on the call to the QOLELINK
|
||
|
API. See <a href="qolelink.htm">Enable Link (QOLELINK) API</a> for
|
||
|
more information.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Data available</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; CHAR(1)
|
||
|
|
||
|
<p>Specifies whether more data is available for the user-defined communications
|
||
|
application program to receive. The valid values are as follows:</p>
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<!-- cols="15 85" -->
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">No more data is available for the user-defined communications
|
||
|
application program to receive.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">More data is available for the user-defined communications
|
||
|
application program to receive. The QOLRECV API must be called again prior to
|
||
|
any other operations.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Note:</strong> An incoming-data entry will be sent to the data queue
|
||
|
or user queue only when the content of this parameter is X'00' and then more
|
||
|
data is subsequently available to be received.
|
||
|
See <a href="comm3.htm#HDRIDATAEN">Incoming-data entry</a>
|
||
|
for more information.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Diagnostic data</strong></dt>
|
||
|
|
||
|
<dd>OUTPUT; CHAR(40)
|
||
|
|
||
|
<p>Specifies additional diagnostic data. See <a href="#HDRRADDERR">Format of
|
||
|
Diagnostic Data Parameter</a> for more information.</p>
|
||
|
|
||
|
<p>The content of this parameter is only valid when the operation parameter is
|
||
|
X'B001', X'B101', X'B301', X'B311', or X'BF01'.</p>
|
||
|
</dd>
|
||
|
|
||
|
<dt><strong>Communications handle</strong></dt>
|
||
|
|
||
|
<dd>INPUT; CHAR(10)
|
||
|
|
||
|
<p>The name of the link on which to receive the data.</p>
|
||
|
</dd>
|
||
|
</dl>
|
||
|
|
||
|
<br>
|
||
|
<h3><a name="HDRRADDERR">Format of Diagnostic Data Parameter</a></h3>
|
||
|
|
||
|
<p>The format of the diagnostic data parameter is shown below. The contents of
|
||
|
the fields within this parameter are only valid on X'B001', X'B101', X'B301',
|
||
|
X'B311', and X'BF01' operations for the indicated return and reason codes.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(2)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Error code</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(4)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies hexadecimal diagnostic
|
||
|
information that can be used to determine recovery actions.
|
||
|
|
||
|
<p>The content of this field is only valid for 83/4001 and 83/4002
|
||
|
return/reason codes.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Time stamp</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(8)</td>
|
||
|
<td align="left" valign="top" width="60%">The time the error occurred.
|
||
|
|
||
|
<p>The content of this field is only valid for 83/4001 and 83/4002
|
||
|
return/reason codes.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Error log identifier</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(4)</td>
|
||
|
<td align="left" valign="top" width="60%">The hexadecimal identifier that can
|
||
|
be used for locating error information in the error log.
|
||
|
|
||
|
<p>The content of this field is only valid for 83/4001 and 83/4002
|
||
|
return/reason codes.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(10)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Indicators</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The indicators that the user-defined
|
||
|
communications application program can use to diagnose a potential error
|
||
|
condition. This is a bit-sensitive field.
|
||
|
|
||
|
<p>The valid values for bit 0 (leftmost bit) are as follows:</p>
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'0'B</em></td>
|
||
|
<td valign="top">Either there is no message in the QSYSOPR message queue, or
|
||
|
there is a message and it does not have the capability to run problem analysis
|
||
|
report (PAR) to determine the cause of the error.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'1'B</em></td>
|
||
|
<td valign="top">There is a message in the QSYSOPR message queue for this
|
||
|
error, and it does have the capability to run problem analysis report (PAR) to
|
||
|
determine the cause of the error.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>The valid values for bit 1 are as follows:</p>
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'0'B</em></td>
|
||
|
<td valign="top">The line error can be retried.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'1'B</em></td>
|
||
|
<td valign="top">The line error is not able to be restarted.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>The valid values for bit 2 are as follows:</p>
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'0'B</em></td>
|
||
|
<td valign="top">The cause and diagnostic codes fields are not valid.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'1'B</em></td>
|
||
|
<td valign="top">The cause and diagnostic codes fields are valid.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>The valid values for bit 3 are as follows:</p>
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'0'B</em></td>
|
||
|
<td valign="top">The error has not been reported to the system operator message
|
||
|
queue.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'1'B</em></td>
|
||
|
<td valign="top">The error has been reported to the system operator message
|
||
|
queue.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>The valid values for bit 4 are as follows:</p>
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'0'B</em></td>
|
||
|
<td valign="top">A reset request packet was transmitted on the network</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>'1'B</em></td>
|
||
|
<td valign="top">A reset confirmation packet was transmitted on the network
|
||
|
instead of a reset request packet.
|
||
|
|
||
|
<p>The content of bit 4 is only valid for operation X'BF01' with 00/0000
|
||
|
return/reason codes.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>The content of the indicators field is only valid for 83/4001, 83/4002, and
|
||
|
83/3202 return/reason codes, and 00/0000 return/reason codes for operation
|
||
|
X'BF01'.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 cause code</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies additional information on
|
||
|
the condition reported. See the <a href="../books/sc415405.pdf" target=
|
||
|
"_blank">X.25 Network Support</a> <img src="wbpdf.gif" alt="Link to PDF"> book
|
||
|
for interpreting the values of this field.
|
||
|
|
||
|
<p>The content of this field is only valid for 83/4001, 83/4002 and 83/3202
|
||
|
return/reason codes.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 diagnostic code</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies additional information on
|
||
|
the condition reported. See the <a href="../books/sc415405.pdf" target=
|
||
|
"_blank">X.25 Network Support</a> <img src="wbpdf.gif" alt="Link to PDF"> book
|
||
|
for interpreting the values of this field.
|
||
|
|
||
|
<p>The content of this field is only valid for 83/4001, 83/4002 and 83/3202
|
||
|
return/reason codes.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Error offset</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(4)</td>
|
||
|
<td align="left" valign="top" width="60%">The offset from the top of the input
|
||
|
buffer to the incorrect data in the input buffer.
|
||
|
|
||
|
<p>The content of this field is only valid for a 83/1999 return/reason
|
||
|
code.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(4)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
<br>
|
||
|
<h3><a name="HDRLANOPRR">LAN Input Operations</a></h3>
|
||
|
|
||
|
<p>The only type of data that an application program can receive from the
|
||
|
QOLRECV API on links using a token-ring, Ethernet, wireless, or FDDI
|
||
|
communications line is user data (operation X'0001'). User-defined
|
||
|
communications support returns the following information for each data frame
|
||
|
received from the QOLRECV API:</p>
|
||
|
|
||
|
<ul>
|
||
|
<li>One or more data units. The first data unit contains a general LAN header,
|
||
|
routing information if a token ring is used, and user data.<br>
|
||
|
<br>
|
||
|
</li>
|
||
|
|
||
|
<li>Total length of the data unit. This information is reported in the
|
||
|
corresponding input buffer descriptor element.</li>
|
||
|
</ul>
|
||
|
|
||
|
<p>For example, suppose two data frames came in from the network and the
|
||
|
user-defined communications application program was notified of this by an
|
||
|
incoming-data entry on the data queue or user queue. On return from the QOLRECV
|
||
|
API, the information for the first frame would be in the first data unit of the
|
||
|
input buffer and described in the first element of the input buffer descriptor.
|
||
|
The information for the second frame would be in the second data unit of the
|
||
|
input buffer and described in the second element of the input buffer
|
||
|
descriptor. The number of data units parameter would be set to 2.</p>
|
||
|
|
||
|
<p><strong>Data Unit Format-LAN Operation X'0001'</strong></p>
|
||
|
|
||
|
<p>Each data frame received from the QOLRECV API corresponds to a data unit in
|
||
|
the input buffer. The information in each of these data units is made up of a
|
||
|
general LAN header, routing information (for token-ring links only), followed
|
||
|
by user data.</p>
|
||
|
|
||
|
<p>The general LAN header is used to pass information about the frame to the
|
||
|
communications support. The fields in the general LAN header are used for all
|
||
|
LAN link types, although some of them are link specific. For example, routing
|
||
|
information is only for token-ring links, and the length of routing information
|
||
|
is X'00' to X'18'. For non-token-ring links, the length of the routing
|
||
|
information is always X'00'. Also, DSAP and SSAP are defined for protocols that
|
||
|
use the 802.2 logical link control interface and do not apply to Ethernet
|
||
|
Version 2. A DSAP and SSAP of X'00' tells the communications support that the
|
||
|
data frame is an Ethernet Version 2 frame.</p>
|
||
|
|
||
|
<p><strong><a name="TBLLLCINFR">Format of the General LAN
|
||
|
Information</a></strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Length of general LAN
|
||
|
information</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The length of the general LAN
|
||
|
information in the data unit, including this field. This field is always set to
|
||
|
16.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Sending adapter address</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(6)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies, in packed form, the
|
||
|
adapter address from which this frame was sent. The possible values returned in
|
||
|
this field depend on the filters activated for this link. See <a href=
|
||
|
"qolsetf.htm">Set Filter (QOLSETF) API</a> for more information.
|
||
|
|
||
|
<p><strong>Note:</strong> Because user-defined communications support only
|
||
|
allows connectionless service over LANs, all frames received on a single call
|
||
|
to the QOLRECV API may not have the same source adapter address.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">DSAP address</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The service access point on which the
|
||
|
iSeries server received this frame. The possible values returned in this field
|
||
|
depend on the filters activated for this link. See <a href=
|
||
|
"qolsetf.htm">Set Filter (QOLSETF) API</a> for more information.
|
||
|
|
||
|
<p><strong>Note:</strong> The Ethernet Version 2 standard does not define a
|
||
|
DSAP address in an Ethernet Version 2 frame. Therefore, when receiving Ethernet
|
||
|
Version 2 frames, the DSAP address will be null (X'00').</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">SSAP address</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The service access point on which the
|
||
|
source system sent this frame. The possible values returned in this field
|
||
|
depend on the filters activated for this link. See <a href=
|
||
|
"qolsetf.htm">Set Filter (QOLSETF) API</a> for more information.
|
||
|
|
||
|
<p><strong>Note:</strong> The Ethernet Version 2 standard does not define a
|
||
|
SSAP address in an Ethernet Version 2 frame. Therefore, when receiving Ethernet
|
||
|
Version 2 frames, the SSAP address will be null (X'00').</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(2)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Length of token-ring routing
|
||
|
information</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The length of the routing information
|
||
|
in the data unit. For links using a token-ring communications line, any value
|
||
|
between 0 and 18 may be returned, where 0 indicates that there is no routing
|
||
|
information.
|
||
|
|
||
|
<p>For links using an Ethernet, wireless, or FDDI communications line, the
|
||
|
content of this field is not applicable and will be set to 0 indicating that
|
||
|
there is no routing information.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Length of user data</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The length of the user data in the
|
||
|
data unit. This will be less than or equal to the maximum frame size allowed on
|
||
|
the service access point returned in the DSAP address field. See <a href=
|
||
|
"qolqlind.htm">Query Line Description (QOLQLIND) API</a> to
|
||
|
determine the maximum frame size allowed on the service access point returned
|
||
|
in the DSAP address field.
|
||
|
|
||
|
<p>For Ethernet Version 2 frames, this will be at least 48 and not more than
|
||
|
1502 (including 2 bytes for the Ethernet type field).</p>
|
||
|
|
||
|
<p><strong>Note:</strong> Ethernet 802.3 frames will be padded when the user
|
||
|
data is less than 46 bytes.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>Token-ring routing information follows the general LAN header. The length of
|
||
|
this field is specified by the length of token-ring routing information field
|
||
|
found in the general LAN header. If the length of the routing information is
|
||
|
nonzero, the user data follows the routing information header.</p>
|
||
|
|
||
|
<p>The following table shows the fields and offsets used for Ethernet 802.3,
|
||
|
wireless, and token-ring frames without routing information.</p>
|
||
|
|
||
|
<table border width="40%">
|
||
|
<tr>
|
||
|
<th valign="top">General LAN Header</th>
|
||
|
<th valign="top">User Data</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="50%">0</td>
|
||
|
<td align="center" valign="top" width="50%">16</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>The length of the user data is described in the length of user data field in
|
||
|
the general LAN header. For Ethernet Version 2 frames, the first 2 bytes of
|
||
|
user data are used for the <em>frame type</em>. The type field is a 2-byte
|
||
|
field that specifies the upper layer protocol of the frame.</p>
|
||
|
|
||
|
<p>The adapter address, DSAP, SSAP, and frame type fields are all used to
|
||
|
define inbound routing information used by the QOLSETF API. Refer to <a href=
|
||
|
"qolsetf.htm">Set Filter (QOLSETF) API</a> for information on the
|
||
|
QOLSETF API and how inbound routing information is used to route inbound data
|
||
|
to the application program.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> Inbound routing information is not related to the
|
||
|
token-ring routing information described in the general LAN header.</p>
|
||
|
|
||
|
<p>The following table shows the fields and offsets used for token-ring frames
|
||
|
with routing information.</p>
|
||
|
|
||
|
<table border width="60%">
|
||
|
<tr>
|
||
|
<th valign="top">General LAN Header</th>
|
||
|
<th valign="top">Routing Information</th>
|
||
|
<th valign="top">User Data</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">0</td>
|
||
|
<td align="center" valign="top" width="30%">16</td>
|
||
|
<td align="center" valign="top" width="40%">16 + Length of Routing
|
||
|
Information</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p>The following table shows the fields and offsets used for Ethernet Version 2
|
||
|
frames.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> For Ethernet Version 2, the frame type field is the
|
||
|
first 2 bytes of user data, following the general LAN information, with user
|
||
|
data starting at offset 18.</p>
|
||
|
|
||
|
<table border width="60%">
|
||
|
<tr>
|
||
|
<th valign="middle" rowspan="2">General LAN Header</th>
|
||
|
<th valign="top" colspan="2">User Data</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<th valign="top">Frame Type</th>
|
||
|
<th valign="top">Data</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="33%">0</td>
|
||
|
<td align="center" valign="top" width="33%">16</td>
|
||
|
<td align="center" valign="top" width="34%">18</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong><a name="TBLLANELER">Input Buffer Descriptor Element Format-LAN
|
||
|
Operation X'0001'</a></strong></p>
|
||
|
|
||
|
<p>The information returned in each data unit of the input buffer will be
|
||
|
described in the corresponding element of the input buffer descriptor. The
|
||
|
following table shows the format of each element in the input buffer
|
||
|
descriptor.</p>
|
||
|
|
||
|
<table border width="60%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of information in
|
||
|
the corresponding data unit of the input buffer. This will be equal to the
|
||
|
length of the general LAN information with the length of the routing
|
||
|
information and the length of the user data. See <a href="#TBLLLCINFR">Format
|
||
|
of the General LAN Information</a> for general LAN information fields and
|
||
|
descriptions.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(30)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
<br>
|
||
|
<h3><a name="HDRX25OPRR">X.25 SVC and PVC Input Operations</a></h3>
|
||
|
|
||
|
<p>The following table shows the types of data that can be received from the
|
||
|
QOLRECV API on links using an X.25 communications line.</p>
|
||
|
|
||
|
<table border width="60%">
|
||
|
<tr>
|
||
|
<th valign="top">Operation</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">X'0001'</td>
|
||
|
<td align="left" valign="top" width="70%">User data (SVC or PVC).</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">X'B001'</td>
|
||
|
<td align="left" valign="top" width="70%">Completion of the X'B000' output
|
||
|
operation (SVC or PVC).</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">X'B101'</td>
|
||
|
<td align="left" valign="top" width="70%">Completion of the X'B100' output
|
||
|
operation (SVC or PVC).</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">X'B201'</td>
|
||
|
<td align="left" valign="top" width="70%">Incoming X.25 call (SVC).</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">X'B301'</td>
|
||
|
<td align="left" valign="top" width="70%">Connection failure or reset
|
||
|
indication (SVC or PVC).</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">X'B311'</td>
|
||
|
<td align="left" valign="top" width="70%">Connection failure applying to all
|
||
|
connections for this link.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="30%">X'BF01'</td>
|
||
|
<td align="left" valign="top" width="70%">Completion of the X'BF00' output
|
||
|
operation (SVC or PVC).</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong><a name="HDRX250001">X.25 Operation X'0001'</a></strong></p>
|
||
|
|
||
|
<p>This operation indicates that user data was received on an X.25 SVC or PVC
|
||
|
connection. User-defined communications support will return the following
|
||
|
information:</p>
|
||
|
|
||
|
<ul>
|
||
|
<li>User data in the next data unit of the input buffer, starting with the
|
||
|
first data unit<br>
|
||
|
<br>
|
||
|
</li>
|
||
|
|
||
|
<li>A description, in the corresponding element of the input buffer descriptor,
|
||
|
of the user data in that data unit</li>
|
||
|
</ul>
|
||
|
|
||
|
<p>For example, suppose two data units of user data came in from the network
|
||
|
and the application program was notified of this by an incoming-data entry on
|
||
|
the data queue or user queue. On return from the QOLRECV API, the first portion
|
||
|
of the user data would be in the first data unit of the input buffer and
|
||
|
described in the first element of the input buffer descriptor. The second
|
||
|
portion of the user data would be in the second data unit of the input buffer
|
||
|
and described in the second element of the input buffer descriptor. The number
|
||
|
of data units parameter would be set to 2.</p>
|
||
|
|
||
|
<p>User-defined communications support will automatically reassemble the X.25
|
||
|
data packet(s) from a complete packet sequence into the next data unit of the
|
||
|
input buffer. If the amount of user data in a complete packet sequence is more
|
||
|
than what can fit into a data unit, the more data indicator field in the
|
||
|
corresponding element of the input buffer descriptor will be set to X'01' and
|
||
|
the next data unit will be used for the remaining user data, and so on.</p>
|
||
|
|
||
|
<p><strong>Data Unit Format-X.25 Operation X'0001'</strong></p>
|
||
|
|
||
|
<p>Each data unit in the input buffer consists solely of user data and starts
|
||
|
offset 0 from the top of the data unit.</p>
|
||
|
|
||
|
<p><strong><a name="HDRXDE0001">Input Buffer Descriptor Element Format-X.25
|
||
|
Operation X'0001'</a></strong></p>
|
||
|
|
||
|
<p>The user data returned in each data unit of the input buffer will be
|
||
|
described in the corresponding element of the input buffer descriptor.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of user data in
|
||
|
the corresponding data unit of the input buffer. This will always be less than
|
||
|
or equal to the X.25 user data size parameter that was specified on the call to
|
||
|
the QOLELINK API when the link was enabled. See <a href=
|
||
|
"qolelink.htm">Enable Link (QOLELINK) API</a> for more information.
|
||
|
|
||
|
<p><strong>Note:</strong> The maximum amount of user data in a data unit of the
|
||
|
input buffer may be further limited by the maximum data unit assembly size for
|
||
|
a connection. See <a href="qolsend.htm">Send Data (QOLSEND) API</a>
|
||
|
for more information.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">More data indicator</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies whether the remaining
|
||
|
amount of user data from a complete X.25 packet sequence is more than can fit
|
||
|
into the corresponding data unit. The valid values are as follows:<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">The remaining amount of user data from a complete X.25 packet
|
||
|
sequence fit into the corresponding data unit.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">The remaining amount of user data from a complete X.25 packet
|
||
|
sequence could not all fit into the corresponding data unit. The next data unit
|
||
|
will be used.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Qualified data indicator</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies whether the X.25 qualifier
|
||
|
bit (Q-bit) was set on or off in all X.25 packets reassembled into the
|
||
|
corresponding data unit. The valid values are as follows:<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">The Q-bit was set off in all X.25 packets reassembled into the
|
||
|
corresponding data unit.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">The Q-bit was set on in all X.25 packets reassembled into the
|
||
|
corresponding data unit.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Interrupt packet indicator</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies whether the user data in
|
||
|
the corresponding data unit was received in an X.25 interrupt packet. The valid
|
||
|
values are as follows:
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">The user data in the corresponding data unit was received in
|
||
|
one or more data packets.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">The user data in the corresponding data unit was received in
|
||
|
an X.25 interrupt packet.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Delivery confirmation indicator</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies whether the X.25 delivery
|
||
|
confirmation bit (D-bit) was set on or off in all X.25 packets reassembled into
|
||
|
the corresponding data unit. The valid values are as follows:
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">The D-bit was set off in all X.25 packets reassembled into the
|
||
|
corresponding data unit.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">The D-bit was set on in all X.25 packets reassembled into the
|
||
|
corresponding data unit.
|
||
|
|
||
|
<p><strong>Note:</strong> A packet-level confirmation is sent by the
|
||
|
input/output processor (IOP) when a packet is received with the X.25 D-bit set
|
||
|
on.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(26)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong><a name="HDRX25B001">X.25 Operation X'B001'</a></strong></p>
|
||
|
|
||
|
<p>This operation indicates that a X'B000' output operation has completed.
|
||
|
User-defined communications support will return the data for this operation (if
|
||
|
any) in the first data unit of the input buffer. The input buffer descriptor is
|
||
|
not used.</p>
|
||
|
|
||
|
<p>Data will be returned in the input buffer for the following return and
|
||
|
reason codes:</p>
|
||
|
|
||
|
<ul>
|
||
|
<li>0/0<br>
|
||
|
<br>
|
||
|
</li>
|
||
|
|
||
|
<li>83/1999<br>
|
||
|
<br>
|
||
|
</li>
|
||
|
|
||
|
<li>83/4002 (only when the number of data units parameter is set to one)</li>
|
||
|
</ul>
|
||
|
|
||
|
<p>The format of the data returned in the input buffer for the X'B001'
|
||
|
operation depends on whether the X'B000' output operation was used to initiate
|
||
|
an SVC call or to open a PVC connection. Each format will be explained
|
||
|
below.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> The formats below only apply to 0/0 and 83/4002
|
||
|
return and reason codes. When the X'B001' operation is received with a 83/1999
|
||
|
return and reason code, the data returned starts at offset 0 from the top of
|
||
|
the first data unit in the input buffer and contains the data specified in the
|
||
|
output buffer on the X'B000' output operation. See <a href=
|
||
|
"qolsend.htm">Send Data (QOLSEND) API</a> for more information.</p>
|
||
|
|
||
|
<p><strong>Data Unit Format-X.25 Operation X'B001' (Completion of SVC
|
||
|
Call)</strong></p>
|
||
|
|
||
|
<p>The data returned starts at offset 0 from the top of the first data unit in
|
||
|
the input buffer.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th align="left" valign="top">Field</th>
|
||
|
<th align="left" valign="top">Type</th>
|
||
|
<th align="left" valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(2)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Logical channel identifier</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The logical channel identifier
|
||
|
assigned to the SVC connection.<sup>1</sup></td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Transmit packet size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated transmit packet size
|
||
|
for this connection.<sup>1</sup></td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Transmit window size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated transmit window size
|
||
|
for this connection.<sup>1</sup></td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Receive packet size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated receive packet size
|
||
|
for this connection.<sup>1</sup></td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Receive window size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated receive window size
|
||
|
for this connection.<sup>1</sup></td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(32)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Delivery confirmation support</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies whether the X.25 delivery
|
||
|
confirmation bit (D-bit) was set on or off in the call connected packet. This
|
||
|
also specifies the D-bit support for this connection.<sup>1</sup> The valid
|
||
|
values are as follows:<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">The D-bit was set off in the call connected packet. D-bit will
|
||
|
be supported for sending data but not for receiving data.
|
||
|
|
||
|
<p><strong>Note:</strong> When this value is returned and an X.25 packet is
|
||
|
received with the D-bit set on, the input/output processor (IOP) will send a
|
||
|
reset packet.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">The D-bit was set on in the call connected packet. D-bit will
|
||
|
be supported for sending data and for receiving data.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(11)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
X.25 facilities field. Any value between 0 and 109 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(109)</td>
|
||
|
<td align="left" valign="top" width="60%">The X.25 facilities data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(48)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Call/clear user data length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
call/clear user data field. Any value between 0 and 128 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Call/clear user data</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(128)</td>
|
||
|
<td align="left" valign="top" width="60%">For a 0/0 return and reason code,
|
||
|
this specifies the call user data. For an 83/4002 return and reason code, this
|
||
|
specifies the clear user data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(168)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" colspan="3">
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td><em><sup>1</sup></em></td>
|
||
|
<td>The content of this field is only valid for a 0/0 return and reason
|
||
|
code.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Data Unit Format-X.25 Operation X'B001' (Completion of Open
|
||
|
PVC)</strong></p>
|
||
|
|
||
|
<p>The data returned starts at offset 0 from the top of the first data unit in
|
||
|
the input buffer.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(4)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Transmit packet size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated transmit packet size
|
||
|
for this connection.
|
||
|
|
||
|
<p><strong>Note:</strong> This will be the same as the requested transmit
|
||
|
packet size specified on the X'B000' output operation.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Transmit window size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated transmit window size
|
||
|
for this connection.
|
||
|
|
||
|
<p><strong>Note:</strong> This will be the same as the requested transmit
|
||
|
window size specified on the X'B000' output operation.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Receive packet size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated receive packet size
|
||
|
for this connection.
|
||
|
|
||
|
<p><strong>Note:</strong> This will be the same as the requested receive packet
|
||
|
size specified on the X'B000' output operation.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Receive window size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The negotiated receive window size
|
||
|
for this connection.
|
||
|
|
||
|
<p><strong>Note:</strong> This will be the same as the requested receive window
|
||
|
size specified on the X'B000' output operation.</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(500)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong><a name="HDRX25B101">X.25 Operation X'B101'</a></strong></p>
|
||
|
|
||
|
<p>This operation indicates that a X'B100' output operation has completed.
|
||
|
User-defined communications support will return the data for this operation (if
|
||
|
any) in the first data unit of the input buffer. The input buffer descriptor is
|
||
|
not used.</p>
|
||
|
|
||
|
<p>Data will be returned in the input buffer for the following return and
|
||
|
reason codes:</p>
|
||
|
|
||
|
<ul>
|
||
|
<li>0/0 (only when the number of data units parameter is set to one)<br>
|
||
|
<br>
|
||
|
</li>
|
||
|
|
||
|
<li>83/1999</li>
|
||
|
</ul>
|
||
|
|
||
|
<p><strong>Note:</strong> The format below only applies for a 0/0 return and
|
||
|
reason code. When the X'B101' operation is received with an 83/1999 return and
|
||
|
reason code, the data returned starts at offset 0 from the top of the first
|
||
|
data unit in the input buffer and contains the data specified in the output
|
||
|
buffer on the X'B100' output operation. See <a href="qolsend.htm">
|
||
|
Send Data (QOLSEND) API</a> for more information.</p>
|
||
|
|
||
|
<p><strong>Data Unit Format-X.25 Operation X'B101'</strong></p>
|
||
|
|
||
|
<p>The data returned starts at offset 0 from the top of the first data unit in
|
||
|
the input buffer.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Clear type</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The type of clear user data returned.
|
||
|
The valid values are as follows:<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'0001'</em></td>
|
||
|
<td valign="top">Clear confirmation data included.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'0002'</em></td>
|
||
|
<td valign="top">Clear indication data included.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Cause code</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The X.25 cause code.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Diagnostic code</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The X.25 diagnostic code.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(4)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
X.25 facilities field. Any value between 0 and 109 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(109)</td>
|
||
|
<td align="left" valign="top" width="60%">The X.25 facilities data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(48)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Clear user data length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
clear user data field. Any value between 0 and 128 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Clear user data</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(128)</td>
|
||
|
<td align="left" valign="top" width="60%">The clear user data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(216)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>X.25 Operation X'B111'</strong></p>
|
||
|
|
||
|
<p>This operation indicates a X'B110' output operation has completed. All
|
||
|
connections have been closed and the clean up of connection control information
|
||
|
is complete. All UCEPs and PCEPs are freed. There is no data associated with
|
||
|
this operation.</p>
|
||
|
|
||
|
<p><strong><a name="HDRX25B201">X.25 Operation X'B201'</a></strong></p>
|
||
|
|
||
|
<p>This operation indicates that an incoming X.25 SVC call was received.
|
||
|
User-defined communications support returns the data for this operation in the
|
||
|
first data unit of the input buffer. The input buffer descriptor is not
|
||
|
used.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> It is the responsibility of the application program
|
||
|
to either accept or reject the incoming call. This is done by calling the
|
||
|
QOLSEND API with operation X'B400' or X'B100', respectively.</p>
|
||
|
|
||
|
<p><strong>Data Unit Format-X.25 Operation X'B201'</strong></p>
|
||
|
|
||
|
<p>The data returned starts at offset 0 from the top of the first data unit in
|
||
|
the input buffer.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(2)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Logical channel identifier</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The logical channel identifier
|
||
|
assigned to the incoming SVC call.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Transmit packet size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The requested transmit packet size
|
||
|
for this connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Transmit window size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The requested transmit window size
|
||
|
for this connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Receive packet size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The requested receive packet size for
|
||
|
this connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Receive window size</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The requested receive window size for
|
||
|
this connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(7)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Calling DTE address length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of binary coded decimal
|
||
|
(BCD) digits in the calling DTE address.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Calling DTE address</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(16)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies, in binary coded decimal
|
||
|
(BCD), the calling DTE address. The address will be left justified and padded
|
||
|
on the right with BCD zeros.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(8)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Delivery confirmation support</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies whether the X.25 delivery
|
||
|
confirmation bit (D-bit) was set on or off in the incoming call packet. The
|
||
|
valid values are as follows:<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">The D-bit was set off in the incoming call packet.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">The D-bit was set on in the incoming call packet.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(9)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reverse charging indicator</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies reverse charging options.
|
||
|
The valid values are as follows:<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">Reverse charging not requested.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">Reverse charging requested.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Fast select indicator</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(1)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies fast select options. The
|
||
|
valid values are as follows:<br>
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<table cellpadding="3">
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'00'</em></td>
|
||
|
<td valign="top">Fast select not requested.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'01'</em></td>
|
||
|
<td valign="top">Fast select with restriction requested.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top"><em>X'02'</em></td>
|
||
|
<td valign="top">Fast select without restriction requested.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
X.25 facilities field. Any value between 0 and 109 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(109)</td>
|
||
|
<td align="left" valign="top" width="60%">The X.25 facilities data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(48)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Call user data length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
call user data field. Any value between 0 and 128 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Call user data</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(128)</td>
|
||
|
<td align="left" valign="top" width="60%">The call user data.
|
||
|
|
||
|
<p><strong>Note:</strong> The iSeries server treats the first byte of call user
|
||
|
data as the protocol identifier (PID).</p>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Called DTE address length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of binary coded decimal
|
||
|
(BCD) digits in the called DTE address.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Called DTE address</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(16)</td>
|
||
|
<td align="left" valign="top" width="60%">Specifies, in binary coded decimal
|
||
|
(BCD), the called DTE address. The address will be left-justified and padded on
|
||
|
the right with BCD zeros.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(111)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong><a name="HDRX25B301">X.25 Operation X'B301'</a></strong></p>
|
||
|
|
||
|
<p>This operation indicates that a failure has occurred, or a reset indication
|
||
|
has been received, on an X.25 SVC or PVC connection. User-defined
|
||
|
communications support will return data for this operation in the first data
|
||
|
unit of the input buffer only on a 83/4002 return and reason code when the
|
||
|
number of data units parameter is set to one. The input buffer descriptor is
|
||
|
not used.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> The diagnostic data parameter will contain the X.25
|
||
|
cause and diagnostic codes when a reset indication is received.</p>
|
||
|
|
||
|
<p><strong>Data Unit Format-X.25 Operation X'B301'</strong></p>
|
||
|
|
||
|
<p>The data returned starts at offset 0 from the top of the first data unit in
|
||
|
the input buffer.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Field</th>
|
||
|
<th valign="top">Type</th>
|
||
|
<th valign="top">Description</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(8)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(1)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
X.25 facilities field. Any value between 0 and 109 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">X.25 facilities</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(109)</td>
|
||
|
<td align="left" valign="top" width="60%">The X.25 facilities data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(48)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Clear user data length</td>
|
||
|
<td align="left" valign="top" width="20%">BINARY(2)</td>
|
||
|
<td align="left" valign="top" width="60%">The number of bytes of data in the
|
||
|
clear user data field. Any value between 0 and 128 may be returned.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Clear user data</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(128)</td>
|
||
|
<td align="left" valign="top" width="60%">The clear user data.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top" width="20%">Reserved</td>
|
||
|
<td align="left" valign="top" width="20%">CHAR(216)</td>
|
||
|
<td align="left" valign="top" width="60%">Reserved for extension.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong><a name="HDRX25B311">X.25 Operation X'B311'</a></strong></p>
|
||
|
|
||
|
<p>This operation indicates that an error has occurred that has caused the
|
||
|
system to close all connections on the link. The error may be a system error or
|
||
|
a network error. The error information is returned in the diagnostic data and
|
||
|
no additional data is provided.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> This operation is only received when the extended
|
||
|
operation parameter on the QOLELINK API is set to operation supported. If the
|
||
|
extended operations are not supported and an error occurs that will close all
|
||
|
connections, X'B301' is received for each connection.</p>
|
||
|
|
||
|
<p><strong><a name="HDRX25BF01">X.25 Operation X'BF01'</a></strong></p>
|
||
|
|
||
|
<p>This operation indicates that a X'BF00' output operation has been completed.
|
||
|
Neither the input buffer nor the input buffer descriptor is used for this
|
||
|
operation.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> When the X'BF01' operation is received with a 0/0
|
||
|
return and reason code, the diagnostic data parameter will contain information
|
||
|
indicating if a reset request or reset confirmation packet was sent.</p>
|
||
|
|
||
|
<br>
|
||
|
<h3><a name="HDRRECVRR">Return and Reason Codes</a></h3>
|
||
|
|
||
|
<p>The return and reason codes that can be returned from the QOLRECV API depend
|
||
|
on the type of communications line the link is using and on the type of data
|
||
|
(operation) that was received.</p>
|
||
|
|
||
|
<p><strong><a name="HDRRECVLRR">LAN Return and Reason Codes</a></strong></p>
|
||
|
|
||
|
<p>The following table shows the return and reason codes that indicate data
|
||
|
could not be received from the QOLRECV API.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> When these return and reason codes are returned, all
|
||
|
output parameters except the return and reason codes will contain hexadecimal
|
||
|
zeros.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/3203</td>
|
||
|
<td align="left" valign="top" width="40%">No data available to be
|
||
|
received.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure that user-defined
|
||
|
communications support has data available to be received before calling the
|
||
|
QOLRECV API. Try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/2200</td>
|
||
|
<td align="left" valign="top" width="40%">Queue error detected. Escape message
|
||
|
CPF91F1 will be sent to the application program when this return and reason
|
||
|
code is received.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. Correct the error, enable the
|
||
|
link, and try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/2401</td>
|
||
|
<td align="left" valign="top" width="40%">Input buffer or input buffer
|
||
|
descriptor error detected. Escape message CPF91F1 will be sent to the
|
||
|
application program when this return and reason code is received.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. Correct the error, enable the
|
||
|
link, and try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/3002</td>
|
||
|
<td align="left" valign="top" width="40%">A previous error occurred on this
|
||
|
link that was reported to the application program by escape message CPF91F0 or
|
||
|
CPF91F1. However, the application program has attempted another operation.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. If escape message CPF91F0 was
|
||
|
sent to the application program, then report the problem using the ANZPRB
|
||
|
command. Otherwise, correct the error, enable the link, and try the request
|
||
|
again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/4000</td>
|
||
|
<td align="left" valign="top" width="40%">Error recovery has been canceled for
|
||
|
this link.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. Correct the condition, enable
|
||
|
the link, and try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/9999</td>
|
||
|
<td align="left" valign="top" width="40%">Internal system error detected.
|
||
|
Escape message CPF91F0 will be sent to the application program when this return
|
||
|
and reason code is received.</td>
|
||
|
<td align="left" valign="top" width="40%">See messages in the job log for
|
||
|
further information. Report the problem using the ANZPRB command.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3001</td>
|
||
|
<td align="left" valign="top" width="40%">Link not enabled.</td>
|
||
|
<td align="left" valign="top" width="40%">Correct the communications handle
|
||
|
parameter. Try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3004</td>
|
||
|
<td align="left" valign="top" width="40%">Link is enabling.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait for the enable-complete entry to
|
||
|
be sent to the data queue or user queue. If the link was successfully enabled,
|
||
|
try the request again.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for LAN Operation X'0001'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/0</td>
|
||
|
<td align="left" valign="top" width="40%">User data received successfully.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong><a name="HDRRECVXRR">X.25 Return and Reason Codes</a></strong></p>
|
||
|
|
||
|
<p>The following table shows the return and reason codes that indicate data
|
||
|
could not be received from the QOLRECV API.</p>
|
||
|
|
||
|
<p><strong>Note:</strong> When these return and reason codes are returned, all
|
||
|
output parameters except the return and reason codes will contain hexadecimal
|
||
|
zeros.</p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/3203</td>
|
||
|
<td align="left" valign="top" width="40%">No data available to be
|
||
|
received.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure that user-defined
|
||
|
communications support has data available to be received before calling the
|
||
|
QOLRECV API. Try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/2200</td>
|
||
|
<td align="left" valign="top" width="40%">Queue error detected. Escape message
|
||
|
CPF91F1 will be sent to the application program when this return and reason
|
||
|
code is received.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. Correct the error, enable the
|
||
|
link, and try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/2401</td>
|
||
|
<td align="left" valign="top" width="40%">Input buffer or input buffer
|
||
|
descriptor error detected. Escape message CPF91F1 will be sent to the
|
||
|
application program when this return and reason code is received.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. Correct the error, enable the
|
||
|
link, and try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/3002</td>
|
||
|
<td align="left" valign="top" width="40%">A previous error occurred on this
|
||
|
link that was reported to the application program by escape message CPF91F0 or
|
||
|
CPF91F1. However, the application program has attempted another operation.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. If escape message CPF91F0 was
|
||
|
sent to the application program, then report the problem using the ANZPRB
|
||
|
command. Otherwise, correct the error, enable the link, and try the request
|
||
|
again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/4000</td>
|
||
|
<td align="left" valign="top" width="40%">Error recovery has been canceled for
|
||
|
this link.</td>
|
||
|
<td align="left" valign="top" width="40%">Ensure the link is disabled and see
|
||
|
messages in the job log for further information. Correct the condition, enable
|
||
|
the link, and try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">80/9999</td>
|
||
|
<td align="left" valign="top" width="40%">Internal system error detected.
|
||
|
Escape message CPF91F0 will be sent to the application program when this return
|
||
|
and reason code is received.</td>
|
||
|
<td align="left" valign="top" width="40%">See messages in the job log for
|
||
|
further information. Report the problem using the ANZPRB command.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3001</td>
|
||
|
<td align="left" valign="top" width="40%">Link not enabled.</td>
|
||
|
<td align="left" valign="top" width="40%">Correct the communications handle
|
||
|
parameter. Try the request again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3004</td>
|
||
|
<td align="left" valign="top" width="40%">Link is enabling.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait for the enable-complete entry to
|
||
|
be sent to the data queue or user queue. If the link was successfully enabled,
|
||
|
try the request again.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'0001'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/0</td>
|
||
|
<td align="left" valign="top" width="40%">User data received successfully.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'B001'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/0</td>
|
||
|
<td align="left" valign="top" width="40%">The X'B000' output operation was
|
||
|
successful.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/1999</td>
|
||
|
<td align="left" valign="top" width="40%">Incorrect data was specified in
|
||
|
output buffer when the X'B000' output operation was issued.
|
||
|
|
||
|
<p><strong>Note:</strong> The data specified in the output buffer will be
|
||
|
copied into the input buffer and the error offset field in the diagnostic data
|
||
|
parameter will point to the incorrect data.</p>
|
||
|
</td>
|
||
|
<td align="left" valign="top" width="40%">Correct the incorrect data. Then, try
|
||
|
the X'B000' output operation again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3204</td>
|
||
|
<td align="left" valign="top" width="40%">Connection ending because a X'B100'
|
||
|
output operation was issued.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait for notification of the
|
||
|
completion of the X'B100' output operation from the QOLRECV API (X'B101'
|
||
|
operation).</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4001</td>
|
||
|
<td align="left" valign="top" width="40%">Link failure, system starting error
|
||
|
recovery for this link. The connection has ended.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait for the link to recover. Then,
|
||
|
try the X'B000' output operation again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4002</td>
|
||
|
<td align="left" valign="top" width="40%">Connection failure. The connection
|
||
|
has ended. The diagnostic data parameter will contain more information on this
|
||
|
error.</td>
|
||
|
<td align="left" valign="top" width="40%">Correct any errors and try the
|
||
|
X'B000' output operation again.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4005</td>
|
||
|
<td align="left" valign="top" width="40%">All SVC channels are currently in
|
||
|
use, or the requested PVC channel is already in use.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait for a virtual circuit to become
|
||
|
available. Then, try the X'B000' output operation again.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'B101'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/0</td>
|
||
|
<td align="left" valign="top" width="40%">The X'B100' output operation was
|
||
|
successful. The connection has ended.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/1007</td>
|
||
|
<td align="left" valign="top" width="40%">Connection identifier not valid
|
||
|
because connection has already ended.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/1999</td>
|
||
|
<td align="left" valign="top" width="40%">Incorrect data was specified in
|
||
|
output buffer when the X'B100' output operation was issued.
|
||
|
|
||
|
<p><strong>Note:</strong> The data specified in the output buffer will be
|
||
|
copied into the input buffer and the error offset field in the diagnostic data
|
||
|
parameter will point to the incorrect data.</p>
|
||
|
</td>
|
||
|
<td align="left" valign="top" width="40%">Correct the incorrect data. Then, try
|
||
|
the X'B100' output operation again.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'B111'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/0</td>
|
||
|
<td align="left" valign="top" width="40%">The X'B100' output operation was
|
||
|
successful. The connection has ended.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/1007</td>
|
||
|
<td align="left" valign="top" width="40%">Connection identifier not valid
|
||
|
because connection has already ended.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3205</td>
|
||
|
<td align="left" valign="top" width="40%">The X'B110' operation is rejected
|
||
|
because the application has not received the X'B311' operation prior to
|
||
|
requesting the X'B110' operation.</td>
|
||
|
<td align="left" valign="top" width="40%">Correct the application.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'B201'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/0</td>
|
||
|
<td align="left" valign="top" width="40%">Incoming X.25 SVC call received
|
||
|
successfully.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'B301'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3201</td>
|
||
|
<td align="left" valign="top" width="40%">The maximum amount of incoming user
|
||
|
data that can be held by user-defined communications support for the
|
||
|
application program on this connection has been exceeded.</td>
|
||
|
<td align="left" valign="top" width="40%">Issue the X'B100' output operation to
|
||
|
end the connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3202</td>
|
||
|
<td align="left" valign="top" width="40%">A reset indication has been received
|
||
|
on this connection. The X.25 cause and diagnostic code fields in the diagnostic
|
||
|
data parameter will contain the cause and diagnostic codes of the reset
|
||
|
indication.</td>
|
||
|
<td align="left" valign="top" width="40%">Issue the X'BF00' output operation to
|
||
|
send a reset confirmation packet.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4001</td>
|
||
|
<td align="left" valign="top" width="40%">Link failure, system starting error
|
||
|
recovery for this link.</td>
|
||
|
<td align="left" valign="top" width="40%">Issue the X'B100' output operation to
|
||
|
end the connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4002</td>
|
||
|
<td align="left" valign="top" width="40%">Connection failure. The diagnostic
|
||
|
data parameter will contain more information on this error.</td>
|
||
|
<td align="left" valign="top" width="40%">Issue the X'B100' output operation to
|
||
|
end the connection.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'B311'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="top">Return / Reason Code</th>
|
||
|
<th valign="top">Meaning</th>
|
||
|
<th valign="top">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4001</td>
|
||
|
<td align="left" valign="top" width="40%">Link failure, system starting error
|
||
|
recovery for this link. All connections that were active on this link are
|
||
|
closed or cleared.</td>
|
||
|
<td align="left" valign="top" width="40%">Issue the X'B110' operation to free
|
||
|
the connections.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4002</td>
|
||
|
<td align="left" valign="top" width="40%">A network error has occurred that
|
||
|
affects all connections on this link. All connections that were active on this
|
||
|
link are closed or cleared. The diagnostic data contains more information on
|
||
|
this error.</td>
|
||
|
<td align="left" valign="top" width="40%">Issue the X'B110' operation to free
|
||
|
the connections.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<p><strong>Return and Reason Codes for X.25 Operation X'BF01'</strong></p>
|
||
|
|
||
|
<table border width="80%">
|
||
|
<tr>
|
||
|
<th valign="bottom">Return / Reason Code</th>
|
||
|
<th valign="bottom">Meaning</th>
|
||
|
<th valign="bottom">Recovery</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">0/0</td>
|
||
|
<td align="left" valign="top" width="40%">The X'BF00' output operation was
|
||
|
successful. The diagnostic data parameter will contain information indicating
|
||
|
if a reset request or reset confirmation packet was sent.</td>
|
||
|
<td align="left" valign="top" width="40%">Continue processing.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/1006</td>
|
||
|
<td align="left" valign="top" width="40%">Operation not valid.</td>
|
||
|
<td align="left" valign="top" width="40%">Do not issue the X'BF00' output
|
||
|
operation on connections that do not support resets.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3201</td>
|
||
|
<td align="left" valign="top" width="40%">The maximum amount of incoming user
|
||
|
data that can be held by user-defined communications support for the
|
||
|
application program on this connection has been exceeded.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait to receive a failure
|
||
|
notification from the QOLRECV API indicating this condition (X'B301' operation,
|
||
|
83/3201 return and reason code). Then issue the X'B100' output operation to end
|
||
|
the connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/3204</td>
|
||
|
<td align="left" valign="top" width="40%">Connection ending because a X'B100'
|
||
|
output operation was issued.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait for notification of the
|
||
|
completion of the X'B100' output operation from the QOLRECV API (X'B101'
|
||
|
operation).</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4001</td>
|
||
|
<td align="left" valign="top" width="40%">Link failure, system starting error
|
||
|
recovery for this link.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait to receive a failure
|
||
|
notification from the QOLRECV API indicating this condition (X'B301' operation,
|
||
|
83/4001 return and reason code). Then, issue the X'B100' output operation to
|
||
|
end the connection.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="center" valign="top" width="20%">83/4002</td>
|
||
|
<td align="left" valign="top" width="40%">Connection failure.</td>
|
||
|
<td align="left" valign="top" width="40%">Wait to receive a failure
|
||
|
notification from the QOLRECV API indicating this condition (X'B301' operation,
|
||
|
83/4002 return and reason code). Then, issue the X'B100' output operation to
|
||
|
end the connection.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
<br>
|
||
|
<h3>Error Messages</h3>
|
||
|
|
||
|
<table width="100%" cellpadding="3">
|
||
|
<!-- cols="15 85" -->
|
||
|
<tr>
|
||
|
<th align="left" valign="top">Message ID</th>
|
||
|
<th align="left" valign="top">Error Message Text</th>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF3C90 E</td>
|
||
|
<td valign="top">Literal value cannot be changed.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF91F0 E</td>
|
||
|
<td valign="top">Internal system error.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF91F1 E</td>
|
||
|
<td valign="top">User-defined communications application error.</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td align="left" valign="top">CPF9872 E</td>
|
||
|
<td valign="top">Program or service program &1 in library &2 ended.
|
||
|
Reason code &3.</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<br>
|
||
|
|
||
|
|
||
|
<hr>
|
||
|
API introduced: V2R1
|
||
|
|
||
|
<hr>
|
||
|
<center>
|
||
|
<table cellpadding="2" cellspacing="2">
|
||
|
<tr align="center">
|
||
|
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
|
||
|
"comm.htm">Communications APIs</a> | <a href="aplist.htm">APIs by
|
||
|
category</a></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</center>
|
||
|
</body>
|
||
|
</html>
|
||
|
|