ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/qsyadvle.htm

751 lines
21 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>Add Validation List Entry (QSYADVLE) 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. -->
<!-- Sec SCRIPT A converted by B2H R4.1 (346) (CMS) by V2KEA304 -->
<!-- at RCHVMW2 on 17 Feb 1999 at 11:05:09 -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- Edited by Kersten Jan 02 -->
<!--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>Add Validation List Entry (QSYADVLE) API</h2>
<div class="box" style="width: 80%;">
<br>
&nbsp;&nbsp;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%">Qualified validation list name</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(20)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Entry ID information</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Data to encrypt information</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">Entry data information</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Attribute information</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Error code</td>
<td align="left" valign="top">I/O</td>
<td align="left" valign="top">Char(*)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Add Validation List Entry (QSYADVLE) API adds an entry to a validation
list object. Entries are stored in hexadecimal sort sequence. The first entry
will always be the one in which the entry ID has the smallest hexadecimal
value.</p>
<p>Conversions are not done on any data when entries are added. The CCSID value
for each field is stored as part of the record but is not used when the entry
is added to the validation list.</p>
<br>
<h3>Authorities and Locks</h3>
<dl>
<dt><em>Validation List Object</em></dt>
<dd>*USE and *ADD</dd>
<dt><em>Validation List Object Library</em></dt>
<dd>*EXECUTE</dd>
</dl>
<br>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Qualified validation list name</strong></dt>
<dd>INPUT; CHAR(20)
<p>The qualified object name of the validation list to add the entry to. The
first 10 characters specify the validation list name, and the second 10
characters specify the library.</p>
<p>You can use these special values for the library name:</p>
<table cellpadding="5">
<!-- cols="15 85" -->
<tr>
<td align="left" valign="top"><em>*CURLIB</em></td>
<td align="left" valign="top">The current library is used to locate the
validation list. If there is no current library, QGPL (general purpose library)
is used.</td>
</tr>
<tr>
<td align="left" valign="top"><em>*LIBL</em></td>
<td align="left" valign="top">The library list is used to locate the validation
list.</td>
</tr>
</table>
<br>
<br>
</dd>
<dt><strong>Entry ID information</strong></dt>
<dd>INPUT; CHAR(*)
<p>The format of the entry ID information is as follows. See the <a href=
"#HDRSYADVE5">Field Descriptions</a> for more information.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Length of entry ID</td>
</tr>
<tr>
<td align="center" valign="top">&gt;4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID of entry ID</td>
</tr>
<tr>
<td align="center" valign="top">&gt;8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Entry ID</td>
</tr>
</table>
<br>
<br>
</dd>
<dt><strong>Data to encrypt information</strong></dt>
<dd>INPUT; CHAR(*)
<p>Data that is associated with the entry ID and is encrypted by the system
when it is stored.</p>
<p>The format of the data to encrypt information is as follows. See the <a
href="#HDRSYADVE5">Field Descriptions</a> for more information.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Length of data to encrypt</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID of data to encrypt</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Data to encrypt</td>
</tr>
</table>
<br>
<br>
</dd>
<dt><strong>Entry data information</strong></dt>
<dd>INPUT; CHAR(*)
<p>Data information that is associated with the entry ID. The format of the
entry data information is as follows. See the <a href="#HDRSYADVE5">Field
Descriptions</a> for more information.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Length of data</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">CCSID of data</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Data</td>
</tr>
</table>
<br>
<br>
</dd>
<dt><strong>Attribute information</strong></dt>
<dd>INPUT; CHAR(*)
<p>Attribute information that is associated with the entry. The format of the
attribute information is as follows. See the <a href="#HDRSYADVE5">Field
Descriptions</a> for more information.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Number of attributes</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Attribute structures</td>
</tr>
</table>
<br>
<br>
<p>The format of the attribute structure is as follows. See the <a href=
"#HDRSYADVE5">Field Descriptions</a> for more information.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Length of attribute entry</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Attribute location</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Attribute type</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Displacement to attribute ID</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of attribute ID</td>
</tr>
<tr>
<td align="center" valign="top">20</td>
<td align="center" valign="top">14</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Displacement to attribute data</td>
</tr>
<tr>
<td align="center" valign="top">24</td>
<td align="center" valign="top">18</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of attribute data</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Attribute ID</td>
</tr>
<tr>
<td align="center" valign="top">&nbsp;</td>
<td align="center" valign="top">&nbsp;</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Attribute data</td>
</tr>
</table>
<br>
<br>
<p>For attributes that are stored in the validation list object, the format of
the attribute data is as follows. See the <a href="#HDRSYADVE5">Field
Descriptions</a> for more information.</p>
<table border width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">CCSID of attribute</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Length of attribute</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">CHAR(8)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">CHAR(*)</td>
<td align="left" valign="top">Attribute value</td>
</tr>
</table>
<br>
<br>
</dd>
<dt><strong>Error code</strong></dt>
<dd>I/O; CHAR(*)
<p>The structure in which to return error information. For the format of the
structure, see <a href="../apiref/error.htm#hdrerrcod">Error Code Parameter</a>.</p>
</dd>
</dl>
<br>
<h3><a name="HDRSYADVE5">Field Descriptions</a></h3>
<p><strong>Attribute data.</strong> The information that describes the
attribute data.</p>
<p><strong>Attribute ID.</strong> The ID of the attribute. For system-defined
attributes, the allowed values are:</p>
<br>
<table border cellpadding="5">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">String value</th>
<th align="left" valign="top">Description</th>
</tr>
<tr>
<td align="left" valign="top">QsyEncryptData</td>
<td align="left" valign="top">This is the attribute that is associated with the
data to encrypt.</td>
</tr>
</table>
<p><strong>Attribute location.</strong> Where the attribute should be
stored.</p>
<p>The allowed value is:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The attribute is stored in the validation list
object.</td>
</tr>
</table>
<p><strong>Attribute structures.</strong> Zero or more attribute structures
that define the attributes to be associated with the entry.</p>
<p><strong>Attribute type.</strong> The type of attribute.</p>
<p>The allowed value follows:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">This is a system-defined attribute.</td>
</tr>
</table>
<br>
<p><strong>Attribute value.</strong> The value of the attribute that is
associated with the entry.</p>
<p>For the QsyEncryptData attribute, the allowed values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The data to be encrypted can only be used to
verify an entry. This is the default.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">The data to be encrypted can be used to verify an
entry and can be returned on a find operation. The system value QRETSVRSEC
(Retain server security data) is used to determine if the data to be encrypted
is stored in the entry or not.
<p>If the system value is set to 0 (Do not retain data), the entry will be
added, but the data to be encrypted will not be stored with the entry. The
return value from this function will be -2 to indicate that the entry was
added, but the data to be encrypted was not stored.</p>
<p>If the system value is set to 1 (Retain data), then the data to be encrypted
will be stored in encrypted form when the entry is added.</p>
</td>
</tr>
</table>
<br>
<p><strong>CCSID of attribute.</strong> An integer that represents the CCSID
for the attribute. Valid CCSID values are in the range -1 through 65535.</p>
<p>The special values follow:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top" nowrap><em>-1</em></td>
<td align="left" valign="top">No CCSID value is stored with the attribute. If
the attribute is QsyEncryptData, this value must be specified.</td>
</tr>
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The default CCSID for the current user is
stored.</td>
</tr>
</table>
<p><strong>CCSID of data to encrypt.</strong> An integer that represents the
CCSID for the data to encrypt. Valid CCSID values are in the range 1 through
65535.</p>
<p>The special value follows:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The default CCSID for the current user is
stored.</td>
</tr>
</table>
<p><strong>CCSID of data.</strong> An integer that represents the CCSID for the
entry data. Valid CCSID values are in the range 1 through 65535.</p>
<p>The special value follows:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The default CCSID for the current user is
stored.</td>
</tr>
</table>
<p><strong>CCSID of entry ID.</strong> An integer that represents the CCSID for
the entry ID. Valid CCSID values are in the range 1 through 65535.</p>
<p>The special value follows:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">The default CCSID for the current user is
stored.</td>
</tr>
</table>
<p><strong>Data.</strong> The data to store in the validation list entry.</p>
<p><strong>Data to encrypt.</strong> The data to be encrypted before storing it
in the validation list entry.</p>
<p><strong>Displacement to attribute data.</strong> The displacement in the
attribute entry to the start of the attribute data information.</p>
<p><strong>Displacement to attribute ID.</strong> The displacement in the
attribute entry to the start of the attribute ID value.</p>
<p><strong>Entry ID.</strong> The data that is used to identify this entry in
the validation list.</p>
<p><strong>Length of attribute.</strong> The number of bytes of data in the
attribute value. The length must be greater than 0. For the QsyEncryptData
attribute, the length must be 1.</p>
<p><strong>Length of attribute data.</strong> The number of bytes of data in
the attribute data structure. The length must be greater than 0.</p>
<p><strong>Length of attribute entry.</strong> The length (in bytes) of the
current entry. This length can be used to access the next entry, and must be a
multiple of 4.</p>
<p><strong>Length of attribute ID.</strong> The number of bytes of data in the
attribute ID. The length must be greater than 0.</p>
<p><strong>Length of data to encrypt.</strong> The number of bytes of data to
be encrypted and stored in this validation list entry. Possible values are 0
through 600. If the length is 0, no encrypted data will be stored in the
entry.</p>
<p><strong>Length of data.</strong> The number of bytes of data to be stored in
this validation list entry. Possible values are 0 through 1000. If the length
is 0, no data will be stored in the entry.</p>
<p><strong>Length of entry ID.</strong> The number of bytes of data that is
provided as the entry ID. Possible values are 1 through 100.</p>
<p><strong>Number of attributes.</strong> The number of attributes to be added.
This value must be greater than or equal to 0. If this value is 0, then no
attributes will be added to the entry.</p>
<p><strong>Reserved.</strong> This is an ignored field.</p>
<br>
<h3>Error Messages</h3>
<table width="100%" cellpadding="5">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td width="15%" valign="top">CPFA0AA E</td>
<td width="85%" valign="top">Error occurred while attempting to obtain
space.</td>
</tr>
<tr>
<td align="left" valign="top">CPF226A E</td>
<td align="left" valign="top">Validation list entry already exists.</td>
</tr>
<tr>
<td align="left" valign="top">CPF226D E</td>
<td align="left" valign="top">Not all information stored.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF1 E</td>
<td align="left" valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C36 E</td>
<td align="left" valign="top">Number of parameters, &amp;1, entered for this
API was not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C90 E</td>
<td align="left" valign="top">Literal value cannot be changed.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9801 E</td>
<td align="left" valign="top">Object &amp;2 in library &amp;3 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9802 E</td>
<td align="left" valign="top">Not authorized to object &amp;2 in &amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9803 E</td>
<td align="left" valign="top">Cannot allocate object &amp;2 in library
&amp;3.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9804 E</td>
<td align="left" valign="top">Object &amp;2 in library &amp;3 damaged.</td>
</tr>
<tr>
<td align="left" valign="top">CPF9872 E</td>
<td align="left" valign="top">Program or service program &amp;1 in library
&amp;2 ended. Reason code &amp;3.</td>
</tr>
</table>
<br>
<hr>
API introduced: V4R1
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center"><a href="#Top_Of_Page">Top</a> | <a href=
"sec.htm">Security APIs</a> | <a href="aplist.htm">APIs by category</a></td>
</tr>
</table>
</center>
</body>
</html>